CodeWhale
[live]
ISS#1747Cache hit problem· 25mISS#1615docker 拉取直接跑乱码· 40mPR#2301fix(mcp): Fix legacy MCP SSE connections· 42mPR#2318feat(hooks): allow message_submit to transform submitted text· 42mPR#2319fix: update terminal tab title from 'DeepSeek TUI' to 'CodeWhale'· 43mPR#1867[codex] Document OpenAI-compatible provider setup· 58mPR#2272[codex] Fix task migration and session env isolation· 1hISS#2317The reply was too long, making it impossible to ask further questions.· 1hPR#1937feat(pricing): make DeepSeek V4 Pro 75% discount permanent· 2hPR#2316 fix(composer): allow slash-space messages· 3hPR#2308feat(state): add parent_entry_id on the message table for fork support· 3hPR#2284[codex] refine shell prompt and powershell invocation· 3hISS#1747Cache hit problem· 25mISS#1615docker 拉取直接跑乱码· 40mPR#2301fix(mcp): Fix legacy MCP SSE connections· 42mPR#2318feat(hooks): allow message_submit to transform submitted text· 42mPR#2319fix: update terminal tab title from 'DeepSeek TUI' to 'CodeWhale'· 43mPR#1867[codex] Document OpenAI-compatible provider setup· 58mPR#2272[codex] Fix task migration and session env isolation· 1hISS#2317The reply was too long, making it impossible to ask further questions.· 1hPR#1937feat(pricing): make DeepSeek V4 Pro 75% discount permanent· 2hPR#2316 fix(composer): allow slash-space messages· 3hPR#2308feat(state): add parent_entry_id on the message table for fork support· 3hPR#2284[codex] refine shell prompt and powershell invocation· 3h
v0.8.46·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.

Today's dispatch2026-05-26
V4-Flash · 6h