| 1 | <!-- source: README.md sha256:a87c9f323f35 --> |
| 2 | # Codewhale |
| 3 | |
| 4 | 一个面向终端的开源编程智能体——模型由你自带。 |
| 5 | |
| 6 | Codewhale 最初是为 DeepSeek 打造的原生体验,如今已成长为一个由社区驱动的项目:一套契合日益壮大的国际社区需求的编程工具,尽可能支持更多的模型与 provider——开放模型优先,托管或本地皆可,彼此之间没有谁被优先对待。 |
| 7 | |
| 8 | 给它一个 provider、一个模型和一个任务:它会读你的代码、改文件、跑命令、检查自己的工作,并在任务完成或需要你介入时停下。任务中途用 `/model` 切换模型。交互式工作用 TUI,脚本和 CI 用 `codewhale exec`。它用 Rust 编写,采用 MIT 许可,运行在你自己的机器上。 |
| 9 | |
| 10 | 我们一直在寻找贡献者和改进的方式。如果你在用的某个模型或 provider 还不支持,或者有什么东西坏了,告诉我们就是你能做的最有用的事之一——见[贡献](#贡献)。 |
| 11 | |
| 12 | [English](README.md) · [日本語](README.ja-JP.md) · [Tiếng Việt](README.vi.md) · [Bahasa Indonesia](README.id.md) · [한국어](README.ko-KR.md) · [Español](README.es-419.md) · [Português](README.pt-BR.md) · [Русский](README.ru.md) · [Українська](README.uk.md) · [codewhale.net](https://codewhale.net/) · [Docs](docs) · [Changelog](CHANGELOG.md) · [Discord 社区](https://discord.gg/37gfS3ksug) |
| 13 | |
| 14 | [](https://github.com/Hmbown/CodeWhale/actions/workflows/ci.yml) |
| 15 | [](https://crates.io/crates/codewhale-cli) |
| 16 | [](https://www.npmjs.com/package/codewhale) |
| 17 | [](https://discord.gg/37gfS3ksug) |
| 18 | |
| 19 |  |
| 20 | |
| 21 | ## 安装 |
| 22 | |
| 23 | ```bash |
| 24 | npm install -g codewhale |
| 25 | ``` |
| 26 | |
| 27 | Cargo、Docker、Nix、Scoop、预编译归档、Android/Termux,以及面向无法访问 GitHub 用户的 CNB 镜像,均见 [docs/INSTALL.md](docs/INSTALL.md)。从 `deepseek-tui` 迁移过来?你的配置和会话可以直接沿用——见 [docs/REBRAND.md](docs/REBRAND.md)。 |
| 28 | |
| 29 | ## 使用 |
| 30 | |
| 31 | ```bash |
| 32 | codewhale auth set --provider deepseek # or export ANTHROPIC_API_KEY, etc. |
| 33 | codewhale # open the TUI |
| 34 | codewhale exec "fix the failing test" # headless |
| 35 | codewhale web # local browser client on 127.0.0.1 |
| 36 | ``` |
| 37 | |
| 38 | |
| 39 | 在 TUI 中:`/model` 同时切换 provider 和模型,`/fleet` 运行一组 worker,`/undo` 撤销上一轮,`/restore <N>` 把工作区回滚到更早的快照(不带参数的 `/restore` 只列出快照)。输入区为空时,`Tab` 在 Plan / Act / Operate 之间循环切换;输入区有内容时,`Tab` 改为补全斜杠命令和 `@` 提及。`Shift+Tab` 在任何时候都能循环切换 Ask / Auto-Review / Full Access 权限姿态。`!` 让 shell 命令经由正常的审批路径运行。 |
| 40 | |
| 41 | ## 功能 |
| 42 | |
| 43 | - **任意模型,任意 provider。** DeepSeek、Claude、GPT、Kimi、GLM 等 30 多家 provider,以及你自己的 vLLM、SGLang、Ollama——无需 key——全都跑在同一套运行时和同一套工具之上。上下文预算与价格取自真实路由;价格未知时显示未知,而不是 $0。 |
| 44 | - **默认只读,放开权限才更进一步。** Plan 模式不改动文件,审批把关每一次高风险命令。只有当命令确实被 OS 沙箱包装时,Codewhale 才会如实标明:macOS 上是可用时启用的 Seatbelt,Linux 上是需显式启用的 bubblewrap。仓库的 `constitution.json` 会编译成写入拦截,连 Full Access 也无法跳过。 |
| 45 | - **随时可以续跑的工作。** Fleet 把每一步记录在只追加的账本里,`fleet resume` 从你停下的地方继续。 |
| 46 | |
| 47 | ## 了解更多 |
| 48 | |
| 49 | - [docs/PROVIDERS.md](docs/PROVIDERS.md) — 每一条 provider 路由:托管、网关与本地 |
| 50 | - [docs/FLEET.md](docs/FLEET.md) — Fleet、账本与恢复 |
| 51 | - [docs/WORKFLOW_EXPERIMENTAL_SEARCH.md](docs/WORKFLOW_EXPERIMENTAL_SEARCH.md) — Workflow 内已冻结、provider 中立的实验性搜索 |
| 52 | - [docs/CONFIGURATION.md](docs/CONFIGURATION.md) — `config.toml`、hooks 与 constitution |
| 53 | - [docs/AUTHORIZATION_ORDER.md](docs/AUTHORIZATION_ORDER.md) — 模式、hook、权限规则、安全下限、仓库规则、审批和沙箱如何组合 |
| 54 | - [docs/HOOKS.md](docs/HOOKS.md) — 十一个 TUI 生命周期 hook 事件、其载荷,以及其中可引导回合的三个事件(`codewhale exec` 和 CLI 子命令不会触发 hooks) |
| 55 | - [docs/WEB.md](docs/WEB.md) — 仅限回环地址的内置浏览器客户端及其一次性身份验证边界 |
| 56 | |
| 57 | 其余内容——模式、键位绑定、沙箱细节、MCP、运行时 API、架构——见 [docs](docs) 与 [codewhale.net](https://codewhale.net/)。 |
| 58 | |
| 59 | ## 贡献 |
| 60 | |
| 61 | Issue、PR、复现步骤、日志和功能请求,在这里都算真实的项目工作,也欢迎第一次贡献。当一个 PR 无法原样合并时,维护者会吸收其中可用的部分,并保留作者的署名——在提交、更新日志和 [docs/CONTRIBUTORS.md](docs/CONTRIBUTORS.md) 中。 |
| 62 | |
| 63 | - [开放 issue](https://github.com/Hmbown/CodeWhale/issues) —— 适合入门的贡献在这里 |
| 64 | - [CONTRIBUTING.md](CONTRIBUTING.md) —— 开发环境搭建与 PR 流程 |
| 65 | - [docs/CONTRIBUTORS.md](docs/CONTRIBUTORS.md) —— 每一位塑造过这个项目的人 |
| 66 | - [Buy me a coffee](https://www.buymeacoffee.com/hmbown) |
| 67 | |
| 68 | 感谢 [DeepSeek](https://github.com/deepseek-ai) 提供让项目起步的模型与支持,感谢 [DataWhale](https://github.com/datawhalechina) 🐋 欢迎我们加入“鲸兄弟”大家庭,也感谢 [OpenWarp](https://github.com/zerx-lab/warp) 与 [Open Design](https://github.com/nexu-io/open-design) 在终端智能体体验上的协作。 |
| 69 | |
| 70 | ## 许可证 |
| 71 | |
| 72 | [MIT](LICENSE)。独立的社区项目,与任何模型 provider 均无隶属关系。 |
| 73 | |
| 74 | [](https://www.star-history.com/?repos=Hmbown%2FCodeWhale&type=date) |
| 75 |