Skip to main content

A lightweight terminal-based AI coding assistant

Project description

nanocode

A lightweight terminal-based AI coding assistant.

nanocode is used to help building itself, including features such as @file path completion.

Screenshots

Screenshot 1 Screenshot 2

Features

  • Constrained Output: Force model replies into auditable action frames.
  • Verified Edits: Reject stale range edits before they touch files.
  • Autonomous Loop: Chain reading, editing, running, and verification.
  • Live Telemetry: Stream tool intent, token use, and status.

Install

uv tool install nanocode-cli

Upgrade an existing install:

uv tool upgrade nanocode-cli

For local development:

uv sync --extra dev
uv run nanocode

Usage

Start nanocode:

nanocode

Show available commands:

/help

Ask a source-aware question about nanocode itself:

/help how does compact work?

CLI arguments:

  • --yolo: Skip tool execution confirmations.
  • --debug: Write request prompts to .nanocode/debug.
  • --config <path>: Path to config file (default: ~/.nanocode/config.toml).
  • --init-config: Create a default config file.
  • -v, --version: Show program version.

Safety

nanocode does NOT provide sandbox protection. It can run shell commands and edit files in the environment where you start it.

If you do not fully trust the model, tools, prompts, or workspace, run nanocode inside your own sandbox, container, VM, or other isolated environment.

USE AT YOUR OWN RISK.

Tools

  • File: Read, LineCount, ListDir, Search.
  • Edit: Edit, ReplaceRange, ApplyPatch.
  • Shell: Bash, Git.
  • Memory: Recall reads stored tool results by key.

Commands

  • Info: /help [question], /status, /rules, /knowledge [update], /compact.
  • Config: /config, /set <key> <value>, /model [model_name], /provider [name], /yolo.
  • Maintenance: /clean-logs.
  • Exit: /exit, /quit.

Configuration

Run nanocode --init-config to create ~/.nanocode/config.toml.

  • Provider config: [provider] active = "<name>" plus [provider.<name>] url, key, model, and model options.
  • Runtime config: [paths] and [runtime].

Status

  • Status bar: active model, reasoning, conversation context, current-turn tool calls, tokens, elapsed time, and active model-call time.
  • /status: active provider, model state, runtime state, conversation/tool counters, per-model calls/tokens, task, goal, and verification.

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

nanocode_cli-0.3.16.tar.gz (60.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nanocode_cli-0.3.16-py3-none-any.whl (59.9 kB view details)

Uploaded Python 3

File details

Details for the file nanocode_cli-0.3.16.tar.gz.

File metadata

  • Download URL: nanocode_cli-0.3.16.tar.gz
  • Upload date:
  • Size: 60.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for nanocode_cli-0.3.16.tar.gz
Algorithm Hash digest
SHA256 b289bc36e6766bd69c8e4b90270062d11798459953bac6aa8d5873ab3342dc4a
MD5 3b0d25f862f7b1b4dc1a4ee7c4a827b1
BLAKE2b-256 85e0525fbc219ed22be06a4bc32738ac5e4dbc3221f4519db0d8abe632b7f9ab

See more details on using hashes here.

File details

Details for the file nanocode_cli-0.3.16-py3-none-any.whl.

File metadata

  • Download URL: nanocode_cli-0.3.16-py3-none-any.whl
  • Upload date:
  • Size: 59.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for nanocode_cli-0.3.16-py3-none-any.whl
Algorithm Hash digest
SHA256 03f6a44d7dcd54537e7f07be94dabeb7ed50efd99530b7fc9075cc2fa644cf31
MD5 7bf2a1be59b5b219603d46001c65f3f9
BLAKE2b-256 0d995b8303ca3898a8dd4199a2ced6a4c9b66b2f2502aeda84c8ae08717f1374

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page