NLSQL’s AI coding agent. CLI tool for interacting with existing codebases and building new applications from scratch.
Project description
nlsql-coder
nlsql-coder is NLSQL's coding agent, a privacy & security focused, tool-driven, workspace-aware AI system designed to help with both personal and client-based development tasks.
Features
- User-friendly command line interface.
- Wide array of LLM/provider support acorss many cloud ecosystems, including locally hosted model support (local support not yet implemented).
- Primary privacy & security focus.
- Full MCP support (stdio, sse and streamable-http supported).
How it Works
The agent operates using a ReAct-style loop. A user submits a prompt, and the agent processes it by reasoning about the task, performing actions using available tools, and evaluating the results.
If the outcome is insufficient or incomplete, the agent continues this cycle, refining its approach and taking further actions until it can produce a final response.
Usage
To get started, you'll need an NLSQL API key, simply sign up to NLSQL to obtain your free API key.
You'll also need your own LLM instance from one of the following providers:
- AWS Bedrock
- Azure AI
- Google Cloud (GCP)
- AWS SageMaker (Not yet implemented)
- Or select a locally hosted Hugging Face model. (Not yet implemented)
nlsql-coder is available for download via PyPI, follow the steps below to get it running on your system:
- run
pip install nlsql-coder - use the command
nlsql-coder initto run from your CWD.
for other options or extended usage, see Arguments section below.
Arguments
Use the init command to start the application from the current working directory.
| Short | Long | Description | Defaults to |
|---|---|---|---|
-w |
--workspace |
The root directory of the project you want to work on. | . |
-u |
--usage |
Displays usage data after each conversation turn (input & output tokens) | False |
Modes
The agent has three modes:
- Plan mode
- Code (manual) mode
- Auto mode
Use Shift+Tab to switch between the modes.
Plan mode means the agent has read-only access and is configured to plan a task or project with the user. When a sufficent plan has been created the user can choose to proceed with the plan in either Auto or Manual mode, give feedback and amend the plan, or discard the plan.
Manual mode means the user will have to actively confirm tool calls.
Auto mode means only certain tool calls will need to be confirmed by the user (e.g. delete, git commands...)
Tools
By default the agent has access to several tools:
- read_file
- edit_file
- write_file
- delete (for files and directories in the CWD)
- execute_bash_command (can execute bash command on an internally supplied whitelist only)
- search_the_web (allows for both search engine results and URL content extraction)
The agent also has MCP support (add MCP servers via mcp.json)
Feedback and Issues
To provide feedback or report an issue contact us at https://nlsql.com/contacts or email info@nlsql.com
Please note: nlsql-coder is under active development
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nlsql_coder-0.1.7.tar.gz.
File metadata
- Download URL: nlsql_coder-0.1.7.tar.gz
- Upload date:
- Size: 42.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
236ce9ca92df3b58129b6cb04e62ff2f4d53add4a45700c2e4878a57124db3dd
|
|
| MD5 |
7b1149ec7c2ff2b1ac26bde7b985ff93
|
|
| BLAKE2b-256 |
ea9363977d9f90cf3d2fb1058c315370f1aa7bade9853cb37553aeeec2df6765
|
File details
Details for the file nlsql_coder-0.1.7-py3-none-any.whl.
File metadata
- Download URL: nlsql_coder-0.1.7-py3-none-any.whl
- Upload date:
- Size: 52.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bb566503f916bc90dc7112c954a391fa8c06d69030bd6124fc5916a90715642a
|
|
| MD5 |
15fdf1f6ba4a617407489d2d3cac2056
|
|
| BLAKE2b-256 |
2116e460c8ecfd4970eaae73dde381bd2563b1fd10ae68c8385a062edcac1aa9
|