Terminal · animica chat
An agentic coding assistant with no API key.
animica chat reads and edits the files in your working directory, runs commands,
and asks before anything with a consequence — the way Claude Code and Codex do.
There is no account to make, no key to paste, and no GPU to own.
# a venv keeps it out of your system Python
python3 -m venv .venv && source .venv/bin/activate
pip install animica
animica chat
On Windows the activate line is .venv\Scripts\activate. Prefer one command?
curl -fsSL https://animica.dev/install.sh | sh — and you can
read it first; it needs no sudo.
The honest part, before you install anything. Inference comes from volunteer miners, not a datacentre, so a turn usually takes 30–150 seconds — and right now very few machines serve chat, so the first request after an idle period is the slowest. The CLI streams as it writes and re-submits to another miner when one does not answer, but it will never feel like a hosted API. If you need sub-second replies, use something else and come back when the network is bigger.
What it actually does
Tools are live on every message — there is no separate agent mode. Ask what a function does and ask for it to be fixed in the same session.
- Reads, greps and globs your files; writes, edits and moves them; runs shell commands and Python.
- Streams its answer as it arrives, so a long wait shows work rather than a spinner.
- Reads an
AGENTS.md(orCLAUDE.md,.animica/instructions.md) from the directory or any parent, and says in the banner which file it is following. - Takes a pipe:
pytest 2>&1 | animica chat "why is this failing?" - Sessions are plain JSON on your machine.
animica chat -ccontinues the last one. - Arrow-key history, and
/swarmfor parallel agents.
# one shot, then exit animica chat "find the N+1 query in this repo and fix it" # start with edits pre-approved, shell still asks animica chat -p auto-edit
You decide what it may touch
Four approval modes, switchable mid-session with /mode or set at start with
--permission-mode. The mode is always on screen, because an agent that
auto-approves shell commands without saying so is indistinguishable from a careful one
until something is already gone.
Reads only. Writes, shell and network are refused — it will not even ask.
The default. Asks before writing a file, deleting, running a shell command or fetching a URL.
Edits apply as it goes; shell and delete still ask. What most coding sessions want.
Everything, unattended. Switching into it mid-session makes you type auto to confirm.
Modes are built on a tool category map rather than one safe/unsafe bit, which is what lets “edit freely, ask before shell” exist as a real setting. A tool nobody has categorised is treated as executable, so it stays gated.
/swarm — and a reviewer that tries to prove it wrong
Type /swarm audit this codebase for auth bugs inside a session. It splits the work
into parallel subtasks, runs them together, then has a separate agent try to refute
each result and merges only what survives. A review that comes back inconclusive
counts as refuted, not confirmed.
Free runs two agents at once, a paid plan runs eight. The cost cap bounds work started, not turns already in flight — so an overrun of up to one turn per running agent is expected, and it is documented rather than pretended away.
Free, and where the ceiling is
| Free | Any paid plan | |
|---|---|---|
| Chat | unlimited | unlimited |
| Agentic tasks | 10 a day | unlimited |
| Tool-call rounds per task | 10 | 50 |
Parallel agents in /swarm | 2 | 8 |
| Approval modes | all four | all four |
| API key required | none | none |
The CLI is part of every paid plan rather than a separate subscription, and
plans start at $4.99/mo. Paste the licence key from your plan into a session with
/licence <key>.
The free caps are a JSON counter in your own home directory. Anyone who wants to delete it can — it is friction on a free tier, not DRM, and saying otherwise would be silly for an open-source CLI.
See plans → Read the docs →Deploy from the same terminal
Write a Python function, deploy it to Animica Cloud, and get paid when people call it.
animica cloud login animica cloud init # writes a handler.py to start from animica deploy handler.py # validates, uploads, anchors on-chain, activates
Then animica cloud invoke, logs, status and
earnings do what they say. animica deploy is a shortcut for
animica cloud deploy.
Serving it yourself
The slowness above is a capacity problem, and the same package is the fix: animica up
serves chat to the network and earns ANM for the work. A machine that can import
torch and transformers starts advertising capacity on its own.