NanoHands

Minimal headless Python coding agent built from an OpenHands hard fork.

NanoHands is a hard fork of OpenHands reduced to the essential agent core: a CLI-first coding agent with a local subprocess runtime and optional web UI.

Why NanoHands

What was removed

Removed Reason
Docker runtime Local subprocess executor replaces it
Server infrastructure No daemon, no persistent process
Multi-agent orchestration Single focused loop
Cloud storage backends Local workspace only
~80% of the dependency surface litellm handles LLM routing

What remains

nanohands/          — active agent runtime
frontend/           — UI assets for optional GUI
openhands/server/   — retained server surface for GUI path

Quickstart

pip install poetry
poetry install

Required:

export MINIMAX_API_KEY=your-key

Run a task:

poetry run nanohands "Build a FastAPI app with a /health endpoint and tests"

Optional Web UI

poetry run nanohands-gui

Open http://127.0.0.1:3000.

Model Configuration

NanoHands defaults to MiniMax M2.7 via the OpenAI-compatible endpoint. Override with env vars:

export NANOHANDS_MODEL=openai/MiniMax-M2.7
export NANOHANDS_BASE_URL=https://api.minimax.io/v1
export NANOHANDS_WORKDIR=./workspace
export NANOHANDS_MAX_ITERATIONS=30

Any OpenAI-compatible provider works. Swap base URL and key as needed.

Test

poetry run pytest

Current Shape

License

MIT