Prerequisites
- macOS or Linux (WSL works) with 4 GB+ RAM — the installer warns below ~3.7 GB
- git to clone the repository
- A Claude subscription (Pro or Max), an OAuth token, or an Anthropic API key
The one-command flow
Clone and run
pnpm run setup:auto). If a step fails during the wizard, it offers AI-assisted recovery inline and resumes from the step that broke instead of starting over.Answer the wizard
Press Enter on Standard setup (or pick Advanced to override defaults), then the wizard walks through:
- System check — verifies your environment
- Sandbox build — builds the agent container image. First build pulls a base image and takes 3–10 minutes on a fresh machine.
- OneCLI vault — installs the credential vault, or offers to reuse an existing OneCLI instance. Your agent never sees your API keys; the vault injects them into approved requests as they leave the sandbox.
- Choose your agent runtime and connect — Claude is the default: press Enter, then sign in with your Claude subscription (opens a browser), paste an OAuth token (
sk-ant-oat…), or paste an API key (sk-ant-api…). Or pick Codex to install it inline and authenticate with a ChatGPT subscription or OpenAI API key — either way the credential lands in the vault, never the container - Access rules — writes the assistant’s filesystem access rules (empty to start — the sandbox only sees what you explicitly share later)
- Background service — starts NanoClaw under launchd (macOS) or a systemd user service (Linux)
- Your name — what the assistant should call you
- First contact — the wizard pings your assistant and waits for a reply. First startup takes 30–60 seconds while the sandbox warms up. You can pause here and chat from the terminal.
- Timezone — auto-detected, confirmed with you
- Channel — connect Telegram (recommended), Discord, WhatsApp, Signal, iMessage, Slack, or Microsoft Teams — or skip and use the terminal. Other channels install after setup with
/add-<name>in Claude Code. - Final check — makes sure everything works together: credentials, service, and configured channels, flagging anything left to fix
What just happened
You now have a host service (launchd or systemd) running NanoClaw from this checkout. It routes messages between your channels and agents, where each agent runs in its own Docker container sandbox that wakes on incoming messages and sleeps when idle. Your Anthropic credential lives in the OneCLI vault — never inside the container. Agent workspaces live undergroups/, runtime state under data/, and logs under logs/. See Architecture for the full picture.
Claude is the default agent provider that the wizard connects you to. You can switch a group to Codex, OpenCode, or a local Ollama model afterward — see Agent providers.
Coming from NanoClaw v1? Run
bash migrate-v2.sh before setup — see the migration guide.Re-running
bash nanoclaw.sh on a folder that already has an install lets you keep it and continue, or uninstall this copy and exit — see Uninstall NanoClaw.Next steps
Add more channels
Connect Telegram, Discord, WhatsApp, Slack, and more — during setup or any time after.
The ncl CLI
Inspect agents, groups, and sessions from the command line.
Customize an agent
Edit instructions, mounts, and behavior for your first agent.
Troubleshooting
Setup logs live in
logs/setup.log; runtime issues start at logs/nanoclaw.log.