Codewhale dives into the deep
so you don't have to.
Codewhale is an open-source coding agent for your terminal. Give it a model and a task — it reads your code, edits files, runs its own checks, and stops when the job's done or it needs you. Bring any model, or mix them: pin a different model to each role.
npm install -g codewhale
cwLatest release v0.9.7Current source v0.9.742 provider routesMIT

An underwater terminal shell. Any model. On your machine.
Bring the model you already use — hosted, gateway, or local. Plan / Work / Operate and explicit permission postures keep the dive under your control.
Law you can watch in the trace
Real session excerpts — ranked project law visible in the model's reasoning, not just a landing-page claim.
From task to verified change.
- 01
Inspect
Read the repository, its instructions, and the task.
- 02
Act
Edit files through explicit approval boundaries.
- 03
Verify
Run checks and inspect the result.
- 04
Report
Leave a concise, durable receipt.
New to Codewhale? Four steps end to end.
Install → keyless first session → connect a provider → set up your fleet. Nouns defined on the vocabulary page.
Install Codewhale
One npm command installs the dispatcher and terminal runtime. Cargo, archives, Docker, Nix, and China mirrors are documented alternatives — published releases only.
Full install guide →npm install -g codewhale codewhale doctorOpen a first session — no key needed
Launches without any API key: short constitution-first setup, then the full interface. Explore in Plan mode — always read-only. Model replies need a provider; that's the next step.
Learn the product nouns first →codewhaleConnect a provider
Pick a supported route — hosted key, gateway, or keyless local runtime (Ollama, vLLM, SGLang). Provider and model stay explicit; reasoning and routing provenance stay separate, and unavailable values stay unavailable.
Providers and models →codewhale auth set --provider deepseekSet up your ideal fleet
Add every provider you use — one auth set per hosted route; keyless local runtimes need nothing — then author the team: /fleet setup walks one role at a time (a model from any configured provider, a thinking tier, permissions) and saves a reusable profile for this repo or every repo on this machine. Fleet state lives in the workspace ledger; ordinary single tasks need none of this.
Fleet and Workflow docs →/fleet setup codewhale fleet status
Your model.
Your boundaries.
Choose the model, working mode, and permission posture explicitly. Unknown cost stays unknown, and preview surfaces stay labeled as such.
- 42 provider routes
- Hosted, gateway, and local models
- Plan · Work · Operate
- Read-only planning through autonomous operation
- Ask · Auto-Review · Full Access
- Choose the permission posture for the work
- TUI · exec · web · API
- Interactive and headless runtime surfaces
Use the runtime where the work happens.
Start with one command.
npm install -g codewhale
CargoBinariesDockerNixWindowsAndroid / TermuxChina mirrors
Read the install guide →Built in public
MIT-licensed and shaped by contributors across runtimes, providers, platforms, documentation, and tests.