A nano code agent built from scratch in pure Python.
Project description
nanoPyCodeAgent
A nano code agent built in pure Python.
"What I cannot create, I do not understand." — Richard Feynman, 1988
Usage
nanoPyCodeAgent requires Python 3.13 or newer.
How to Run
There are a few ways to run it — pick whichever fits your workflow.
Run without installing
Use uvx to run the latest release without installing anything:
uvx nanoPyCodeAgent
Run after installing
Install it as a persistent command-line tool, then run it from anywhere:
uv tool install nanoPyCodeAgent # or: pipx install nanoPyCodeAgent
nanoPyCodeAgent
Run a branch or tagged version
Run an unreleased branch or a specific release tag straight from GitHub:
# latest commit on a branch
uvx --from "git+https://github.com/minixalpha/nanoPyCodeAgent@main" nanoPyCodeAgent
# a specific tag
uvx --from "git+https://github.com/minixalpha/nanoPyCodeAgent@v0.1.0" nanoPyCodeAgent
Configuration
Credentials and the model come from two sources: environment variables and
an optional user-level config file at ~/.nanoPyCodeAgent/settings.json.
Environment variables take precedence — the config file only fills in keys you
have not set in the environment.
The config file mirrors Claude Code's settings:
put the values under an env object. Empty or whitespace-only values are ignored.
{
"env": {
"ANTHROPIC_API_KEY": "",
"ANTHROPIC_BASE_URL": "",
"ANTHROPIC_MODEL": ""
}
}
| Variable | Required | Default | Description |
|---|---|---|---|
ANTHROPIC_API_KEY |
Yes | — | Your Anthropic API key, or the key for a third-party / proxy service. |
ANTHROPIC_BASE_URL |
No | https://api.anthropic.com |
Point the SDK at a non-official / proxy endpoint. Leave it unset to use the official API — an empty value breaks requests. |
ANTHROPIC_MODEL |
No | claude-sonnet-4-6 |
Override the model. An empty or whitespace-only value falls back to the default. |
How to Update
Upgrade an installed tool to the latest release:
uv tool upgrade nanoPyCodeAgent # or: pipx upgrade nanoPyCodeAgent
Releasing
For maintainers: see docs/RELEASING.md for the release process and prerequisites.
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 nanopycodeagent-0.4.0.tar.gz.
File metadata
- Download URL: nanopycodeagent-0.4.0.tar.gz
- Upload date:
- Size: 65.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","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":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8756852356598e84430fef5892f14fdb6def8dcfd3e44faeed8acebb8d524f4e
|
|
| MD5 |
74437fd237b99b680ebd329436418e25
|
|
| BLAKE2b-256 |
747a523c4743cd4135b3dcc6442af952fc30bef385fb64cc31d6af2405c56f0e
|
File details
Details for the file nanopycodeagent-0.4.0-py3-none-any.whl.
File metadata
- Download URL: nanopycodeagent-0.4.0-py3-none-any.whl
- Upload date:
- Size: 8.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","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":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
709cb898e83d86ba14c46d4721b4b8805f604feed57f254b8e1aaff2246a0363
|
|
| MD5 |
eca666288a811315a064a845367e000a
|
|
| BLAKE2b-256 |
addea372661499be1d6ff9ec983bca31dcf08aa69871fdc75ab7d770702f0bb4
|