Nanocoder
An open coding agent for your terminal that lets you bring your own model and keep code local.
- Source repo
- Nano-Collective/nanocoder
- Stars
- ★ 2.5k
- Last updated
- today
- License
- NOASSERTION
- Primary language
- TypeScript
- FA score
- 50/100 · Major gaps
At a glance
- How it runs
- Works with
- Universal · cross-platformOpenAI API · Claude API
- Cost
- Free software; you pay for model usage
- Setup effort
- Low · running in minutes
- You'll need
- Typical use
- A developer who wants to use local models for coding while keeping code private on their machine.
- Not a fit if
- Users who need a GUI or IDE extension
- Automation that pipes or redirects review output to a file
- Source review
- 50/100 · Major gaps
What does this agent do, and when should you use it?
Nanocoder is an open-source coding agent for the terminal, built by the Nano Collective community, not a company. It allows you to bring your own model, using local models via Ollama or any OpenAI-compatible API such as OpenRouter, Anthropic, and Google. It is privacy-respecting and local-first, ensuring your code stays on your machine. Install via npm with npm install -g @nanocollective/nanocoder, then run nanocoder. It supports various CLI flags for provider, model, and mode, and offers both inline and fullscreen rendering. There are no paid tiers, no telemetry, and the roadmap is community-driven. The documentation is comprehensive, covering installation, configuration, features, and command references.
Nanocoder executes coding tasks using the model you specify. It runs from the terminal, with commands like nanocoder --provider openrouter --model google/gemini-3.1-flash run "analyze src/app.ts" for non-interactive analysis, or nanocoder --provider ollama --model llama3.1 for interactive sessions. It supports development modes: normal, auto-accept, yolo, and plan, and a fullscreen mode via --alt-screen. It provides built-in slash commands like /clear and /exit. It reads project files, executes commands, calls model APIs, generates code changes or analysis, and outputs to the terminal. Configuration includes MCP servers, preferences, logging, and timeouts.
- A developer who wants to use local models for coding while keeping code private on their machine.
- A team that needs a uniform coding agent but allows members to choose different providers (e.g., Ollama or OpenRouter).
- A user who wants a coding agent with no paid tiers and no telemetry.
- A developer managing multiple projects who wants a standardized toolchain across them.
- A contributor who wants to influence the roadmap of a community-driven AI tool.
How do you install or deploy this agent?
Install globally via npm: npm install -g @nanocollective/nanocoder. Also available via Homebrew (macOS/Linux) and Nix Flakes. After installation, run nanocoder to start. Requires Node.js.
How do you use this agent?
Run nanocoder to start an interactive session. Use --provider and --model to specify provider and model, e.g., nanocoder --provider openrouter --model google/gemini-3.1-flash run "analyze src/app.ts". Modes are normal, auto-accept, yolo, plan; use --mode to specify. Use --alt-screen for fullscreen mode. Slash commands include /clear and /exit.
What are this agent's strengths and limitations?
- True local-first, code never leaves your machine.
- Multi-provider support (Ollama, OpenRouter, Anthropic, Google) avoids lock-in.
- No paid tiers; all features are open to the community.
- Community collective governance, not company-driven, so roadmap reflects user needs.
- Requires you to bring your own model, which may incur API costs.
- Depends on Node.js environment and npm package installation.
- Documentation is extensive but may require time to learn CLI and configuration.
- Fullscreen mode is not default; must use --alt-screen.
How does this agent compare with similar options?
Compared to Claude Code and Codex, Nanocoder emphasizes multi-provider support, local-first design, and no corporate governance.
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| Nanocoder This agent | 50 · Major gaps | CLIFree + model costs | ★ 2.5k | today | TypeScript | OpenAI API · Claude API |
| OpenClaude — Universal Terminal AI Coding Agent | 42 · Major gaps | CLIFree + model costs | ★ 34k | today | TypeScript | Claude Code · OpenAI API · Claude API |
| pigo | 68 · Some gaps | CLIFree + model costs | ★ 481 | 1mo ago | Go | OpenAI API · Claude API |
| Claude Council | 74 · Some gaps | Agent plugin / skillFree + model costs | ★ 890 | 1d ago | Shell | Claude Code · OpenAI API · Claude API |
How does FollowAgents rate this agent?
Why each dimension lost points
Evidence shows emphasis on local-first, bring-your-own-model, no telemetry, but lacks implementation details. Deductions: no specific mechanisms for least privilege, user confirmation, data flow transparency, sensitive data handling; dependency security has audit scripts but no results; external effects and rollback not specified; source attribution only mentions collective, unverified.
Self-consistency: README, package.json, CI config are consistent, but no runtime behavior evidence. Dependency availability: dependency list complete, but version availability not verified. Failure messages: no specific error handling examples. Deductions: static review cannot verify runtime reliability.
Audience clearly developers, scenarios cover installation, configuration, features. Capability boundaries: docs mention skills, subagents, etc., but not detailed limitations. Trigger precision: CLI flags and modes described, but not in-depth. Environment fit: multiple installation methods, but not verified. Deductions: insufficient evidence for capability boundaries and trigger precision.
Information architecture: clear documentation structure. Install notes: npm, Homebrew, Nix provided. Naming stability: version number clear, but no naming conventions. Examples and FAQ: examples present, no FAQ. Known limitations: not explicitly listed. License: MIT license clear. Versioning/changelog: changeset process, but no actual changelog. Maintenance responsibility: collective, but not explicit. Deductions: insufficient evidence for known limitations, naming stability, maintenance responsibility.
Output usability: CLI and docs provided, but actual output not verified. Marginal value: emphasizes local-first, multi-provider, but not quantified. Cost-benefit: free and open source, but no performance data. Deductions: static review cannot verify actual effectiveness.
Claim traceability: claims in README lack specific evidence. Cross-source corroboration: only relies on repository files. Fact-inference separation: not clearly distinguished. Deductions: lack of external verification and clear separation.
- Static review cannot verify runtime behavior; all security and reliability claims need actual testing.
- Dependency security audit scripts exist but no results provided; check for dependency vulnerabilities.
- No explicit mechanisms for least privilege, user confirmation, and data flow transparency; review source code to confirm.
Recent releases
Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.
-
v1.31.0 nanocoder v1.31.0
Release notes excerpt
What's Changed - Added a first-class provider template for Cheaper Inference, an OpenAI-compatible gateway, to the /settings providers wizard. Selecting it fills in the base URL (https://api.cheaperinference.com/v1) so only an API key and a model name are needed, and the wizard can fetch the account's model list over the standard /models endpoint. …View on GitHub ↗ -
v1.30.0 nanocoder v1.30.0
Release notes excerpt
What's Changed - Added first-class provider template for Groq to the setup wizard. - Added first-class provider template for OrcaRouter to the setup wizard. - Added a /commit slash command that generates Conventional Commit messages from staged Git diffs using the active LLM client. Thanks to @DeepamJha. Closes #757. - Consolidated upload actions under a single '+' menu in the VS Code webview to reduce UI clutter and improve scalability for future attachment types. - Added context attachment functionality with UI for file/folder chips and drag-and-drop support. …View on GitHub ↗ -
v1.29.0 nanocoder v1.29.0
Release notes excerpt
What's Changed - Added the ability to attach to a running subagent session from the terminal UI for interactive debugging. This feature allows users to inspect exactly what a subagent is doing in real-time, including streaming text and reasoning. You can press Ctrl+S while a subagent is running to attach to it, cycle between multiple running subagents, and press Esc to detach. …View on GitHub ↗