Metadata-Version: 2.4
Name: nlsql-coder
Version: 0.1.5
Summary: NLSQL’s AI coding agent. CLI tool for interacting with existing codebases and building new applications from scratch.
Author: NLSQL
License: NLSQL Source-Available License v1.0
         
        Copyright (c) 2026 NLSQL Ltd. All rights reserved.
         
        1. Definitions
         
        "Software" refers to the nlsql-coder codebase, including all source code, documentation, and related files provided by the Licensor.
         
        "Personal Use" means use of the Software by an individual for non-commercial, non-business, and non-production purposes.
         
        "Commercial Use" means use of the Software in any way that generates revenue, is used within a business, supports business operations, or is used to provide services to third parties for compensation.
         
        2. Grant of License
         
        The Licensor grants you a limited, non-exclusive, non-transferable license to:
         
        - Use the Software for Personal Use only
        - Modify the Software for Personal Use only
         
        3. Restrictions
         
        You may NOT:
         
        - Use the Software for any Commercial Use
        - Redistribute the Software, in whole or in part, in original or modified form
        - Sublicense the Software
        - Publish, share, or make the Software available to any third party
        - Use the Software as part of a hosted service, SaaS, or API offered to others
         
        4. Source Availability
         
        The source code is provided for transparency and Personal Use modification only. No rights are granted for redistribution or commercial deployment.
         
        5. Ownership
         
        The Licensor retains all rights, title, and interest in and to the Software.
         
        6. Termination
         
        Any violation of this License will immediately terminate your rights under this License. Upon termination, you must cease all use of the Software and delete all copies in your possession.
         
        7. Disclaimer
         
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
         
        8. No Trademark Rights
         
        This License does not grant permission to use the Licensor’s trademarks, logos, or branding.
         
        9. Enforcement
         
        The Licensor reserves the right to take legal or technical measures to enforce this License.
         
        END OF LICENSE
Project-URL: Homepage, https://nlsql.com
Project-URL: Contact, https://nlsql.com/contacts
Project-URL: Documentation, https://docs.nlsql.com
Keywords: ai,agent,cli,coding,llm
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Operating System :: OS Independent
Classifier: Environment :: Console
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: boto3==1.43.6
Requires-Dist: python-dotenv==1.2.2
Requires-Dist: rich==15.0.0
Requires-Dist: prompt-toolkit==3.0.52
Requires-Dist: openai==2.36.0
Requires-Dist: ddgs==9.14.3
Requires-Dist: beautifulsoup4==4.14.3
Requires-Dist: mcp<2.0.0,>=1.0.0
Requires-Dist: google-genai==2.3.0
Dynamic: license-file

# 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](https://huggingface.co/) model. (_Not yet implemented_)

nlsql-coder is available for download via PyPI, follow the steps below to get it running on your system:

1. run `pip install nlsql-coder`
2. use the command `nlsql-coder init` to 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**
