Issue 2026-07-12
v0.8.67
CodeWhale
any model, open models first
Open source · Any model · Runs in your terminal

Coding agents run on code. CodeWhale also runs on law.

CodeWhale is an open-source terminal coding agent — a TUI and a CLI — for any model, with DeepSeek and open weights first-class. Instructions pile up and conflict: the old spec, a stale handoff, your request, fresh test output. Most agents resolve that by guess. CodeWhale resolves it by rank — a nested constitution: bundled base law, your standing rules, your repo's own law. Enforced in the harness, intact when you swap models.

one-line install
npm install -g codewhale
needs Node 18+ — no Rust toolchainother ways (Cargo / Homebrew / mirrors) →
Maintained by Hmbownv0.8.6830 providersMIT
See how it decides
codewhale — thinking
reasoning trace
# When the prior session's summary didn't match the real repo state…
Let me be careful and truthful here. Per Article II (truth) and V (verification), I need to report what's actually in the tree — not what the previous agent claimed.
Article II · TruthArticle V · Verification
Reported the uncommitted work the summary left out, instead of repeating the claim.

Faithful excerpts from a real session — the constitution is observable in the model's reasoning, not a claim on a landing page.

实 时LIVE
PR#4352feat: add MiniMax Messages-compatible route· 49mISS#3915ux(skills): `$skill <task>` and `/<skill> <task>` silently discard the task te· 5hISS#4335Make offline scorecard pricing provider-aware· 9hISS#4329Anthropic API error· 13hPR#4351fix(scorecard): bind costs to provider routes· 15hISS#4350Cargo Build in android with termux meet rquickjs doesn't ship bindings for pla· 22hISS#4227feat: 🐋 help JayBeest map the CodeWhale tsunami 🌊· 23hPR#4349Update Cargo.toml to allow build under NetBSD· 23hPR#4348fix(tui): bill Anthropic cache-write tokens at published rates (#4318)· 1dPR#4347i18n: add Korean (ko) locale support· 1dPR#4346fix: sanitize tool input_schema for Anthropic adapter· 1dISS#4345key 太不友好了,不能放在终端进行吗?· 1dPR#4352feat: add MiniMax Messages-compatible route· 49mISS#3915ux(skills): `$skill <task>` and `/<skill> <task>` silently discard the task te· 5hISS#4335Make offline scorecard pricing provider-aware· 9hISS#4329Anthropic API error· 13hPR#4351fix(scorecard): bind costs to provider routes· 15hISS#4350Cargo Build in android with termux meet rquickjs doesn't ship bindings for pla· 22hISS#4227feat: 🐋 help JayBeest map the CodeWhale tsunami 🌊· 23hPR#4349Update Cargo.toml to allow build under NetBSD· 23hPR#4348fix(tui): bill Anthropic cache-write tokens at published rates (#4318)· 1dPR#4347i18n: add Korean (ko) locale support· 1dPR#4346fix: sanitize tool input_schema for Anthropic adapter· 1dISS#4345key 太不友好了,不能放在终端进行吗?· 1d

Three layers of law

New in v0.8.67: constitution-first setup

Approval, sandbox, network, and trust controls are enforced in code — constitution text never overrides them.

Why law →
Stars · 星标
39.7k
Forks · 复刻
3.4k
Contributors · 贡献者
177
Latest · 版本
v0.8.67

Get started

Three steps: install it, point it at a model key, and run it in a project. The install guide walks through each one.

Any model, honestly

30 providers, one runtime. Bring your own key, no inference markup, no silent model switching. Where things stand right now:

Recommended right now: GLM 5.2 on high reasoning — working very well in CodeWhale.
OpenAI Codex login is working.
Kimi OAuth is temporarily broken; on the list.
All providers →Don't see a model or endpoint you want? Open an issue.

What's going on

Quiet release week — install paths and contributor guides up to date.

This dispatch is regenerated by DeepSeek V4-Flash on a six-hour cron. Until the cron fills in fresh repo activity, the static links below are the best starting points.

  • shipped
    Install

    npm, Cargo, Homebrew, or a direct download.

  • opened
    Open issues

    Start with anything labelled good first issue.

  • discussion
    Roadmap

    What is confirmed, what is being weighed, what is ruled out.

Need help?

v0.8.68 credits

Every patch and report counts

What CodeWhale doesn't do

Some boundaries are worth stating outright. Each line below is true of this codebase and checkable in the source — not a marketing turn of phrase.

No cloud account

It runs locally on your machine — no CodeWhale account, no sign-up. A local vLLM or Ollama model needs no key at all.

No code telemetry

Your code and usage stay on your machine; nothing is sent for analytics. The only call it makes on its own is an opt-out check for a newer release, which sends no code.

No inference markup

Bring your own key. Requests go straight to the provider you configured, at the provider's price. No proxy, no margin.

No CLA

Contributing is MIT in, MIT out. There is no contributor license agreement and no copyright assignment to sign.

No silent model switching

The model you pick is the model that runs. Switching is an explicit command; automatic routing is opt-in and shown.

Constitution can't override runtime controls

Approval, sandbox, network, and trust are enforced in code. No constitution text — bundled, yours, or a repo's — can loosen them.

The last one is load-bearing and verifiable — enforced in the harness code, not the prose. Read the constitution →

The project

Developers from all over have made CodeWhale what it is.

CodeWhale started as one person's DeepSeek side project, and contributors from many countries have shaped it into what it is — the contributor list on every release is the proof. No CLA, no sponsor lockouts, issues triaged in the open, releases cut from main.

“All feedback is a gift.” Something I learned early in teaching, and the way I maintain CodeWhale. Every issue, PR, bug report, or idea is how I understand real use cases and make better decisions.

If you hit something that doesn't work, or want a model that isn't listed — that's the most useful thing you can tell the project.

version0.8.68
providers30
licenseMIT