CodeWhale
[live]
PR#2717fix(tui): make provider key replacement discoverable· 18mISS#2662provider picker: API key replacement is not discoverable from provider managem· 22mISS#2716auth: status should show all providers and support provider-scoped checks· 26mPR#2708fix: Windows sub-agent completion halves TUI render width· 27mPR#2715fix(tui): clear MiMo auth state after logout· 28mISS#2661auth: provider UI can show MiMo as set while auth get reports no key· 31mPR#2686docs: v0.8.53 tool-surface-diet design + north-star direction (#2681, #2680)· 34mPR#2684fix(subagent): clearer role vocab, lifecycle signals, and eval ergonomics (v0.· 34mPR#2688feat(project): deprecate WHALE.md; add .codewhale/constitution.json authority · 34mPR#2685fix(tools): activate read-only git history + actionable RLM/field errors (v0.8· 34mPR#2714fix(tui): clarify /logout credential scope· 38mISS#2660auth: /logout is ambiguous in multi-provider credential flows· 40mPR#2717fix(tui): make provider key replacement discoverable· 18mISS#2662provider picker: API key replacement is not discoverable from provider managem· 22mISS#2716auth: status should show all providers and support provider-scoped checks· 26mPR#2708fix: Windows sub-agent completion halves TUI render width· 27mPR#2715fix(tui): clear MiMo auth state after logout· 28mISS#2661auth: provider UI can show MiMo as set while auth get reports no key· 31mPR#2686docs: v0.8.53 tool-surface-diet design + north-star direction (#2681, #2680)· 34mPR#2684fix(subagent): clearer role vocab, lifecycle signals, and eval ergonomics (v0.· 34mPR#2688feat(project): deprecate WHALE.md; add .codewhale/constitution.json authority · 34mPR#2685fix(tools): activate read-only git history + actionable RLM/field errors (v0.8· 34mPR#2714fix(tui): clarify /logout credential scope· 38mISS#2660auth: /logout is ambiguous in multi-provider credential flows· 40m
v0.8.52·MIT·DeepSeek V4 native

Terminal coding agent for DeepSeek V4.

CodeWhale wraps DeepSeek V4 in a harness — a written Constitution that ranks every source of authority for each turn, live tool output fed back as evidence between turns, and V4's prefix cache making that Constitution cheap to reference recursively, so the model stays oriented through long tool-using sessions instead of drifting.

Planread-only·Agentwith approval·YOLOauto-approve
# Recommended: npm — no Rust toolchain
$ npm install -g codewhale
$ codewhale --model auto

# Or Cargo / Homebrew / direct download — see /install
config lives at ~/.codewhale/all methods →
How it works

A written Constitution makes authority arbitrable, and a feedback loop makes drift correctable.

Every turn, the agent has to arbitrate between the user's intent, the project's rules, system defaults, live tool output, and stale memory. CodeWhale answers that with a written Constitution that ranks nine sources of authority explicitly (current user message above stale project instructions, live tool output above assumptions, verification above confidence), and uses V4's prefix cache to keep that Constitution almost free to reference recursively — roughly 100× cheaper per turn than a cold read — so the model spends a long session reading an open book rather than guessing from memory.

The feedback half closes itself: non-zero exit codes, type errors that rust-analyzer reports between edits, and sandbox denials come back into the context as correction vectors, so the model uses its own drift to self-correct. When you run with --model auto, CodeWhale spends a cheap Flash call at the start of each turn to route — keeping short conversations on Flash, and escalating coding, debugging, and architecture work to Pro at higher thinking depth.