Metadata-Version: 2.4
Name: nemocode
Version: 0.1.12
Summary: Terminal-first control plane for NVIDIA Nemotron 3 — agentic coding, RAG, doc-ops, and multi-model formations.
Project-URL: Homepage, https://github.com/Hmbown/NeMoCode
Project-URL: Repository, https://github.com/Hmbown/NeMoCode
Project-URL: Documentation, https://github.com/Hmbown/NeMoCode#readme
Project-URL: Bug Tracker, https://github.com/Hmbown/NeMoCode/issues
License: MIT
License-File: LICENSE
Keywords: agentic-ai,formations,nemocode,nemotron,nim,nvidia
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Code Generators
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Typing :: Typed
Requires-Python: >=3.11
Requires-Dist: anyio>=4.0
Requires-Dist: httpx>=0.27
Requires-Dist: prompt-toolkit>=3.0
Requires-Dist: pydantic>=2.0
Requires-Dist: pygments>=2.17
Requires-Dist: pyyaml>=6.0
Requires-Dist: rich>=13.0
Requires-Dist: textual>=1.0.0
Requires-Dist: typer>=0.12
Provides-Extra: aiq
Requires-Dist: agentiq>=1.0; extra == 'aiq'
Provides-Extra: all
Requires-Dist: keyring>=25.0; extra == 'all'
Requires-Dist: tiktoken>=0.7; extra == 'all'
Provides-Extra: dev
Requires-Dist: keyring>=25.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.24; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.5; extra == 'dev'
Requires-Dist: tiktoken>=0.7; extra == 'dev'
Provides-Extra: keyring
Requires-Dist: keyring>=25.0; extra == 'keyring'
Provides-Extra: tokens
Requires-Dist: tiktoken>=0.7; extra == 'tokens'
Description-Content-Type: text/markdown

# NeMoCode

Agentic coding CLI for [NVIDIA NIM](https://build.nvidia.com). Reads your code, makes edits, runs commands — powered by any model on the NIM API or your own GPU via vLLM.

> **Community project** — not affiliated with or endorsed by NVIDIA.

## Install

From source (editable):
```bash
pip install -e .
```

Or from PyPI:
```bash
pip install nemocode
```

## Setup

Get a free API key from [build.nvidia.com](https://build.nvidia.com):

```bash
export NVIDIA_API_KEY="nvapi-..."
nemo code
```

Or serve a model locally with [vLLM](https://docs.vllm.ai/) on any NVIDIA GPU:

```bash
vllm serve nvidia/NVIDIA-Nemotron-Nano-9B-v2 \
  --trust-remote-code --mamba_ssm_cache_dtype float32 \
  --enable-auto-tool-choice \
  --tool-parser-plugin nemotron_toolcall_parser.py \
  --tool-call-parser nemotron_json
nemo code -e local-vllm-nano9b
```

No GPU? Rent one via [Brev](https://console.brev.dev) — L40S from $1.03/hr:

```bash
nemo setup brev
```

## Usage

```bash
nemo code                              # interactive REPL
nemo code "fix the bug in auth.py" -y  # one-shot, auto-approve tools
nemo chat "explain this error"         # chat, no tools
cat log.txt | nemo code "diagnose"     # pipe input
nemo code -f super-nano "refactor"     # multi-model formation
```

## Endpoints

Works with any OpenAI-compatible API. Pre-configured:

| Endpoint | Model | Access |
|----------|-------|--------|
| `nim-super` | Nemotron 3 Super (12B/120B MoE) | NIM API key |
| `nim-nano` | Nemotron 3 Nano (3B/30B MoE) | NIM API key |
| `nim-nano-9b` | Nemotron Nano 9B v2 | NIM API key |
| `openrouter-super` | Super via OpenRouter | OpenRouter key |
| `together-super` | Super via Together AI | Together key |
| `local-vllm-*` | Any model on local vLLM | GPU + vLLM |
| `local-nim-*` | Local NIM container | GPU + Docker |

## Formations

Multi-model pipelines — Super plans, Nano executes, Super reviews:

```bash
nemo code -f super-nano "implement caching"
```

| Formation | Pipeline |
|-----------|----------|
| `solo` | Super does everything (default) |
| `super-nano` | Super plans + reviews, Nano executes |
| `local` | Nano on local GPU, no internet needed |

## Local GPU setup

```bash
nemo setup          # show all options
nemo setup vllm     # vLLM serving guide
nemo setup nim      # NIM container guide
nemo setup brev     # rent a cloud GPU
```

## More commands

```bash
nemo endpoint ls / test     # manage endpoints
nemo model ls / show        # inspect model manifests
nemo formation ls / show    # inspect formations
nemo hardware recommend     # GPU-based recommendations
nemo session ls             # past conversations
nemo obs pricing            # token pricing
nemo init                   # create .nemocode.yaml
```

## Contributing

```bash
pip install -e ".[dev]"
ruff check src/ tests/ && ruff format --check src/ tests/
pytest tests/ -v
```

## License

[MIT](LICENSE). NVIDIA, Nemotron, and NIM are trademarks of NVIDIA Corporation.
