CodeWhale
终端内运行的 DeepSeek 编程 Agent,用 Rust 构建「宪法层」实现责任可追溯
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
终端内运行的 DeepSeek 编程 Agent,用 Rust 构建「宪法层」实现责任可追溯
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
图1:CodeWhale 多语言配置界面

想象一下:你给 AI 编程助手开通了最高权限,它却在你睡觉时把整个仓库重构了一遍——没有记录、没有回滚、不知道听了谁的指令。这就是当前大多数 AI Coding Agent 的真实处境:能力很强,责任很弱。
CodeWhale 来自一个叫 Hmbown 的独立开发者,GitHub Stars 已突破 37,986,收到了来自 DataWhale 的认可和 DeepSeek 的官方支持。多数编程 Agent 的思路是「堆能力」:更多工具、更长上下文、更强自主性。CodeWhale 走了条相反的路——先给 AI 一个地址,再给它一套法律。
「地址」就是 ego 层:Agent 必须知道自己在哪台终端、哪个用户、哪个分支、哪个会话里运行。不是为了「酷」,而是为了让每一次操作都能追溯到具体的执行上下文。
「法律」就是 Constitution(宪法):真实开发场景里,多个信号源会同时争夺 Agent 的注意力——用户最新指令、仓库文档、旧记忆、上一次交接的备注、安全策略、未完成的改动。CodeWhale 通过宪法对这些信号排出优先级:当前用户意图 > 实时证据 > 仓库规则 > 历史记忆。这样 Agent 不会因为「之前文档里写过」就忽略用户当下的明确指令。
CodeWhale 的底层模型支持非常广泛。DeepSeek V4 是「一等公民」——开箱即用,API Key 配置最简洁。但这不意味着绑定:OpenRouter、Xiaomi MiMo、NVIDIA NIM、Arcee、SiliconFlow、Fireworks、Novita,以及自托管的 SGLang/vLLM/Ollama 全部支持,通过统一的 Provider 路由层切换。模型是选择,框架是基础设施。
图2:作者头像

CodeWhale 全部用 Rust 编写,要求 Rust 1.88+ 工具链。Rust 不是银弹,但它在这里的选择是合理的:Agent 需要长时间运行、实时响应用户输入、管理多个并发子进程,Rust 的内存安全+零成本抽象能保证 TUI 界面的流畅度,不掉帧、不卡顿。crates 工作空间拆成了 17 个独立 crate:
| 核心模块 | 职责 |
|---|---|
crates/core | 核心协议与状态机 |
crates/agent | Agent 逻辑与决策引擎 |
crates/tui | 终端 UI 渲染 |
crates/tools | 工具集(文件/Shell/Git/Web/MCP/RLM) |
crates/mcp | MCP(Model Context Protocol)协议支持 |
crates/config | 配置管理与 Constitution 加载 |
crates/state | 持久化状态与会话管理 |
crates/whaleflow | WhaleFlow 工作流引擎 |
crates/execpolicy | 执行策略与审批门 |
crates/secrets | 密钥安全管理 |
这种模块化设计的最大好处是每个 crate 可以独立测试和演进,社区可以只引入部分能力而不必全套绑死。
CodeWhale 的工具集覆盖了开发全流程,不只是代码生成:
每个工具都有 schema 定义,Agent 不会盲目调用——失败的工具调用会如实报告为失败,而不是生成一段看似合理但实际跑不通的代码。这就是 Constitution 中「Evidence outranks narration」原则的实现。
这是 CodeWhale 区别于大多数 CLI Agent 的关键差异:
/restore 可以一键回滚到任意历史状态。安装出奇简单:
cargo install codewhale-cli --locked
cargo install codewhale-tui --locked
codewhale auth set --provider deepseek
codewhale doctor # 诊断检查
codewhale # 启动
如果不想装 Rust 工具链,官方还提供:
配置有门槛:需要申请 DeepSeek API Key(或其他 Provider 的 Key),这对有编程经验的用户不算难,但对纯新手有一点摩擦。首次运行需要选择 Provider、配置 Model、设置 Constitution 路径。
cargo install 要求本地有 Rust 工具链,Windows 用户可能遇到编译问题(推荐用预编译包或 Docker)。.codewhale/constitution.json)的编写需要理解项目的权限模型,初学者可能觉得晦涩。CodeWhale 出现在 AI Coding Agent 大爆发的时间点。Cursor、Windsurf、Cline 等工具已经让「AI 写代码」变得普遍,但安全性和可控性始终是隐患——Agent 越强,失控的代价越大。
CodeWhale 的思路是:不要让 Agent 越来越强,而是让 Agent 越来越可靠。通过宪法层、执行策略层、证据反馈层的组合,它在「AI 自主性」和「人类控制权」之间找到了一个务实的平衡点。
这个方向是对的。随着 Agent 能力继续增强,行业需要的不只是更强的模型,而是更成熟的责任机制。CodeWhale 是这个方向上一个值得关注的技术实验。
本文基于 GitHub 仓库 v0.8.58 版本分析,报告撰写于 2026-06-11。