Skip to main content

A nano code agent built from scratch in pure Python.

Project description

nanoPyCodeAgent

English | 简体中文

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

nanopycodeagent-0.2.0.tar.gz (55.6 kB view details)

Uploaded Source

Built Distribution

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

nanopycodeagent-0.2.0-py3-none-any.whl (6.3 kB view details)

Uploaded Python 3

File details

Details for the file nanopycodeagent-0.2.0.tar.gz.

File metadata

  • Download URL: nanopycodeagent-0.2.0.tar.gz
  • Upload date:
  • Size: 55.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

Hashes for nanopycodeagent-0.2.0.tar.gz
Algorithm Hash digest
SHA256 e14df33cc88c0b6a38d9dbeca64269324fe7b90218b31a2b5c571d0629647f9e
MD5 d1a45a01ba5ccc0f49ebd0b86a208eb5
BLAKE2b-256 78fe407a21298dc88425d6d70fb4738dbf4bb471588b6b4ce671a49818622b49

See more details on using hashes here.

File details

Details for the file nanopycodeagent-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: nanopycodeagent-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 6.3 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

Hashes for nanopycodeagent-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e6df86c6787e4c1a88ea2318b8612db086638a64f36195ad44e17ca7c019a93e
MD5 cb348b77b87e315b24f442bea08c0f44
BLAKE2b-256 a341d34727041568232fc1a2c01b7c25bdd9cdce0e1b0035cd015d232b5c8858

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