作者:蓝小鲸 🐋 日期:2026年6月2日
前言
2026年,一个名为 ultraworkers/claw-code[1] 的 GitHub 仓库在短短时间内突破了 10万 Stars,成为历史上增长最快的仓库之一。这是一个用 Rust 编写的 AI 编程助手 CLI 工具,它不仅仅是 Claude Code 的开源实现,更是一套自主软件开发系统的完整演示。
今天,我将带你深入了解这个项目,从核心设计哲学到详细安装教程,从技术架构到未来路线图,全方位解析这个可能改变你编程方式的工具。
一、项目概述:Claw Code 是什么?
1.1 基本定义
Claw Code 是 claw CLI agent harness 的公开 Rust 实现。它的核心定位是一个可扩展的 AI 编程助手框架,通过模块化的设计支持多模型、多 provider、插件系统和 Skill 扩展。
官方 repo 描述中明确指出:
Claw Code is the public Rust implementation of the
clawCLI agent harness. The canonical implementation lives inrust/.
1.2 项目规模一览
| 指标 | 数值 |
|---|---|
| Stars | 100K+ |
| Rust 代码量 | ~20,000 行 |
| Crates 数量 | 9 个 |
| 提交数 | 292+ commits |
| 支持的语言 | Rust (核心) + Python (参考实现) |
1.3 技术栈与依赖
核心语言:Rust(高性能、安全、并发友好)
支持的服务商:
- • Anthropic (Claude 系列)
- • OpenAI (GPT 系列)
- • xAI (Grok 系列)
- • DashScope (阿里 Qwen 系列)
- • OpenRouter / Ollama (第三方兼容)
关键依赖:
- •
reqwest- HTTP 客户端 - •
rustyline- 交互式 REPL - • tokio - 异步运行时
- • serde - 序列化
二、设计哲学:真正值得研究的东西
2.1 停止盯着代码文件看
这是项目 PHILOSOPHY.md 中最重要的一句话:
If you only look at the generated files in this repository, you are looking at the wrong layer.
Claw Code 团队认为,Python 重写只是副产品,Rust 重写也是副产品。真正值得研究的是产生它们的系统——一个基于 clawhip 的协调循环,人类给出方向,自主式 Claw 执行工作。
2.2 三个核心组件构成的系统
┌─────────────────────────────────────────────────────────────┐
│ 人类接口:Discord │
│ (人类从手机输入指令,离开,睡觉,做其他事) │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ OmX (oh-my-codex) │ clawhip │
│ - 工作流层 │ - 事件和通知路由器 │
│ - 规划关键字 │ - 监听 git commits │
│ - 执行模式 │ - tmux sessions │
│ - 持久验证循环 │ - GitHub issues/PRs │
│ - 并行多 Agent 工作流 │ - Agent 生命周期事件 │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ OmO (oh-my-openagent) │
│ - 多 Agent 协调 │
│ - 规划、交接、分歧解决 │
│ - 验证循环 │
└─────────────────────────────────────────────────────────────┘2.3 核心理念:人类设定方向,Claw 执行劳动
项目文档明确表达:
The real bottleneck changed. 当 Agent 系统可以在几小时内重建代码库时,稀缺资源变成了:
- • 架构清晰度
- • 任务分解
- • 判断力
- • 品味
- • 对什么值得构建的信念
- • 知道哪些部分可以并行,哪些必须保持约束
2.4 随着编程智能变得廉价,什么仍然重要?
在设计哲学文档中,项目团队给出了清晰的回答:
- 1. 产品品味 (Product Taste)
- 2. 方向 (Direction)
- 3. 系统设计 (System Design)
- 4. 人类信任 (Human Trust)
- 5. 运营稳定性 (Operational Stability)
- 6. 判断力 (Judgment)
在那个世界里,人类的工作不是比机器打字更快。
人类的工作是决定什么值得存在。
三、核心功能详解
3.1 工具系统 (Tool System)
Claw Code 暴露了 40 个工具规范,核心工具包括:
| 工具 | 功能 |
|---|---|
bash | 执行 Shell 命令 |
read_file | 读取文件内容 |
write_file | 写入文件 |
edit_file | 编辑文件 |
glob_search | 文件模式搜索 |
grep_search | 内容搜索 |
WebFetch | 获取网页内容 |
WebSearch | 网络搜索 |
TodoWrite | 任务跟踪 |
Agent | 子 Agent 调用 |
MCP | Model Context Protocol |
LSP | Language Server Protocol |
3.2 安全机制
3.2.1 Bash 验证子模块
- •
readOnlyValidation- 只读验证 - •
destructiveCommandWarning- 危险命令警告 - •
modeValidation- 模式验证 - •
sedValidation- sed 命令验证 - •
pathValidation- 路径验证 - •
commandSemantics- 命令语义分析
3.2.2 文件操作安全
- • 二进制检测: 检测 NUL 字节
- • 大小限制: MAX_READ_SIZE / MAX_WRITE_SIZE
- • 工作区边界: 规范路径验证,防止 symlink 逃逸
- • 权限模式: read-only / workspace-write / danger-full-access
3.2.3 权限执行器 (PermissionEnforcer)
PermissionEnforcer::check() // 工具门控
check_file_write() // 文件写边界检查
check_bash() // Bash 只读和确认模式检查3.3 多模型支持
Claw Code 支持 3 种内置 provider 后端,模型选择通过名称自动路由:
| Provider | 协议 | Auth 环境变量 |
|---|---|---|
| Anthropic (direct) | Anthropic Messages API | ANTHROPIC_API_KEY / ANTHROPIC_AUTH_TOKEN |
| xAI | OpenAI-compatible | XAI_API_KEY |
| OpenAI-compatible | OpenAI Chat Completions | OPENAI_API_KEY |
| DashScope (阿里) | OpenAI-compatible | DASHSCOPE_API_KEY |
模型别名
| 别名 | 解析为 | Provider | 最大输出 |
|---|---|---|---|
opus | claude-opus-4-6 | Anthropic | 32,000 |
sonnet | claude-sonnet-4-6 | Anthropic | 64,000 |
haiku | claude-haiku-4-5 | Anthropic | 64,000 |
grok / grok-3 | grok-3 | xAI | 64,000 |
kimi | kimi-k2.5 | DashScope | 16,384 |
3.4 MCP (Model Context Protocol) 生命周期
MCP 工具桥接层 (mcp_tool_bridge.rs) 提供了完整的服务器生命周期管理:
- • 服务器连接状态跟踪
- • 资源列表 / 资源读取
- • 工具列表 / 工具调度
- • 认证状态
- • 连接断开处理
3.5 技能系统 (Skills)
Claw Code 支持通过 SKILL.md 文件扩展功能:
# 列出已安装的技能
claw skills list
# 安装外部技能
claw skills install /path/to/skill
# 调用技能
claw skills my-skill四、安装与配置详细教程
4.1 前置要求
- • Rust 工具链 (包含 cargo)
- • Anthropic API Key (注意:是 API key,不是 Claude 订阅登录)
4.2 Linux / macOS 安装
# 1. 克隆仓库
git clone https://github.com/ultraworkers/claw-code
cd claw-code/rust
# 2. 构建工作区
cargo build --workspace
# 3. 设置 API Key
export ANTHROPIC_API_KEY="sk-ant-..."
# 4. 运行健康检查
./target/debug/claw doctor
# 5. 运行测试提示
./target/debug/claw prompt "say hello"4.3 Windows PowerShell 安装
# 1. 安装 Rust (从 rustup.rs)
# 下载并运行 rustup-init.exe
# 2. 验证 Rust 安装
cargo --version
# 3. 克隆并构建
git clone https://github.com/ultraworkers/claw-code
cd claw-code/rust
cargo build --workspace
# 4. 设置 API Key 并运行
$env:ANTHROPIC_API_KEY = "sk-ant-..."
.\target\debug\claw.exe prompt "say hello"4.4 添加到 PATH (可选)
方式 1:符号链接 (Linux/macOS)
ln -s $(pwd)/rust/target/debug/claw /usr/local/bin/claw方式 2:cargo install (全平台)
cd rust
cargo install --path . --force方式 3:Shell 配置文件
# 添加到 ~/.bashrc 或 ~/.zshrc
export PATH="$(pwd)/rust/target/debug:$PATH"4.5 初始化项目
cd /path/to/your/repo
claw init这将创建:
- •
.claw/配置目录 - •
.claw.json配置文件 - •
.gitignore条目 - •
CLAUDE.md指导文件
4.6 认证配置详解
重要:Claw Code 接受两个 Anthropic 凭证环境变量,它们不可互换:
| 凭证类型 | 环境变量 | HTTP Header | 来源 |
|---|---|---|---|
sk-ant-* API Key | ANTHROPIC_API_KEY | x-api-key: sk-ant-... | console.anthropic.com |
| OAuth Access Token | ANTHROPIC_AUTH_TOKEN | Authorization: Bearer ... | 代理或 OAuth flow |
⚠️ 如果将
sk-ant-*密钥放入ANTHROPIC_AUTH_TOKEN,Anthropic API 会返回401 Invalid bearer token。修复方法是将密钥移动到ANTHROPIC_API_KEY。
4.7 多 Provider 切换
# Anthropic Direct
export ANTHROPIC_API_KEY="sk-ant-..."
claw prompt "hello"
# OpenAI-compatible (OpenRouter)
export OPENAI_BASE_URL="https://openrouter.ai/api/v1"
export OPENAI_API_KEY="sk-or-v1-..."
claw --model "openai/gpt-4.1-mini" prompt "hello"
# 本地 Ollama
export OPENAI_BASE_URL="http://127.0.0.1:11434/v1"
claw --model "llama3.2" prompt "hello"
# 阿里 DashScope (Qwen)
export DASHSCOPE_API_KEY="sk-..."
claw --model "qwen-plus" prompt "hello"五、使用模式详解
5.1 交互式 REPL
cd rust
./target/debug/claw
# 在 REPL 中可用命令:
/help # 帮助
/doctor # 健康检查
/status # 状态
/model # 切换模型
/permissions # 权限设置
/session # 会话管理
/skills # 技能管理
/agents # Agent 管理
/mcp # MCP 管理5.2 一次性提示
# 标准形式
claw prompt "summarize this repository"
# 简短形式
claw "explain src/main.rs"
# JSON 输出 (用于脚本)
claw --output-format json prompt "status"5.3 高级斜杠命令
/ultraplan — 深度规划
/ultraplan refactor the auth module to use async/await
/ultraplan design a caching layer for database queries/teleport — 跳转到文件或符号
/teleport UserService
/teleport authenticate_user
/teleport src/auth.rs/bughunter — 扫描潜在 bug
/bughunter
/bughunter src/handlers
/bughunter rust/crates/runtime5.4 会话管理
# 恢复最新会话
claw --resume latest
# 在恢复的会话中运行命令
claw --resume latest /status /diff会话存储在 .claw/sessions/ 目录下。
5.5 模型与权限控制
# 指定模型
claw --model sonnet prompt "review this diff"
# 只读模式
claw --permission-mode read-only prompt "summarize Cargo.toml"
# 工作区写权限
claw --permission-mode workspace-write prompt "update README.md"
# 限制可用工具
claw --allowedTools read,glob "inspect the runtime crate"六、技术架构解析
6.1 Crate 结构
rust/
├── Cargo.toml # Workspace 根配置
└── crates/
├── api/ # Provider 客户端 + 流式 + 认证
├── commands/ # 斜杠命令注册表
├── compat-harness/ # TS manifest 提取
├── mock-anthropic-service/ # 确定性 Mock 服务
├── plugins/ # 插件管理系统
├── runtime/ # 核心运行时
├── rusty-claude-cli/ # 主 CLI 二进制
├── telemetry/ # 会话追踪
└── tools/ # 内置工具集6.2 各 crate 职责
| Crate | 职责 |
|---|---|
| api | Provider 客户端、SSE 流式、请求预检、认证 |
| commands | 斜杠命令定义、解析、帮助文本生成 |
| compat-harness | 从上游 TS 源提取工具/prompt manifest |
| mock-anthropic-service | 用于 CLI 一致性测试的确定性 Mock |
| plugins | 插件元数据、安装/启用/禁用流程 |
| runtime | 会话运行时、配置加载、权限策略、MCP 生命周期 |
| rusty-claude-cli | REPL、命令解析、流式显示 |
| telemetry | 会话追踪事件和遥测载荷 |
| tools | 工具规范 + 执行:文件、bash、Web、Agent 等 |
6.3 配置加载优先级
~/.claw.json
~/.config/claw/settings.json
<repo>/.claw.json
<repo>/.claw/settings.json
<repo>/.claw/settings.local.json ← 最高优先级七、Parity 状态:9 车道检查点
7.1 已合并的 9 个功能车道
| 车道 | 状态 | 关键文件 | 代码量 |
|---|---|---|---|
| 1. Bash 验证 | merged | bash_validation.rs | +1004 |
| 2. CI 修复 | merged | sandbox.rs | +22/-1 |
| 3. 文件工具 | merged | file_ops.rs | +195/-1 |
| 4. TaskRegistry | merged | task_registry.rs | +336 |
| 5. Task 路由 | merged | tools/src/lib.rs | +79/-35 |
| 6. Team+Cron | merged | team_cron_registry.rs | +441/-37 |
| 7. MCP 生命周期 | merged | mcp_tool_bridge.rs | +491/-24 |
| 8. LSP 客户端 | merged | lsp_client.rs | +461/-9 |
| 9. 权限执行 | merged | permission_enforcer.rs | +357 |
7.2 Mock Parity Harness
项目包含一个确定性 Mock 服务,用于 CLI 一致性测试:
cd rust
./scripts/run_mock_parity_harness.sh覆盖场景:
- •
streaming_text - •
read_file_roundtrip - •
grep_chunk_assembly - •
write_file_allowed - •
write_file_denied - •
multi_tool_turn_roundtrip - •
bash_stdout_roundtrip - •
bash_permission_prompt_approved - •
bash_permission_prompt_denied - •
plugin_tool_roundtrip
八、路线图:下一代 Clawable Coding Harness
8.1 定义 "Clawable"
一个可 claw 化的 harness 是:
- • 确定性启动
- • 状态和失败模式机器可读
- • 无需人工监控即可恢复
- • 感知分支/测试/worktree
- • 感知插件/MCP 生命周期
- • 事件优先,非日志优先
- • 支持自主下一步执行
8.2 阶段一:可靠的 Worker 启动
1. 显式状态机
- •
spawning→trust_required→ready_for_prompt→prompt_accepted→running→blocked→finished→failed
2. 首次 Prompt 接受 SLA
- • 在bounded窗口内暴露第一个任务是否被接受
- • 追踪:
ready_for_prompt→ 首次 prompt 发送 →prompt_accepted的时间
3. 信任提示解析器
- • 信任仓库自动清除信任提示
- • 非信任仓库保持门控
4. 结构化会话控制 API
create_worker() // 创建 worker
await_ready() // 等待就绪
send_task() // 发送任务
fetch_state() // 获取状态
fetch_last_error() // 获取最后错误
restart_worker() // 重启 worker
terminate_worker() // 终止 worker8.3 阶段二:事件原生 Clawhip 集成
规范车道事件 Schema
{
"event": "lane.started|lane.ready|lane.red|lane.green|...",
"source": "live_lane|test|healthcheck|replay|transport",
"lane_id": "...",
"timestamp": "..."
}关键事件合约
- •
session_identity完整性 - • 重复终端事件抑制
- • 车道所有权/范围绑定
- • 按键追踪/去重合约
- • 稳定 roadmap-id 分配
- • 事实/假设/置信度标签
- • 负面证据/已搜索未发现合约
九、观点与结论
9.1 Claw Code 的核心价值
- 1. 开源实现:提供了 Claude Code 工作流的完整开源实现,打破了闭源垄断
- 2. 多模型支持:不是 Claude-only,支持任何 OpenAI-compatible provider
- 3. 事件驱动架构:通过 clawhip 实现事件路由,将通知推送到 context window 之外
- 4. 并行多 Agent:通过 OmO 实现多 Agent 协调,分歧解决和验证循环
- 5. Rust 实现:高性能、高安全性、适合生产环境部署
9.2 设计哲学的启示
Claw Code 传达了一个重要信息:在 AI 编程时代,人类的角色是决定什么值得构建,而不是亲自写代码。
这不是关于"AI 取代程序员"的恐慌,而是关于分工的重新定义:
- • AI 负责执行、测试、重构
- • 人类负责方向、品味、判断
9.3 技术亮点
- 1. 确定性 Mock Harness:12 个脚本场景,21 个捕获的
/v1/messages请求 - 2. 完整的权限系统:三层权限模式 + PermissionEnforcer
- 3. 文件操作安全:二进制检测、大小限制、路径边界验证
- 4. 多 Provider 路由:模型名前缀自动路由到对应 provider
9.4 适用场景
- • 个人开发者:需要一个强大的本地 AI 编程助手
- • 团队协作:通过 Discord 频道协调多个 AI Agent
- • CI/CD 集成:自动化代码审查和测试
- • 本地模型:使用 Ollama/vLLM 运行本地 LLM
9.5 局限性
- • ACP/Zed daemon 尚未实现
- • 部分功能(如 LSP、完整 MCP)仍为 registry-backed approximations
- • Bash 深度验证仍在 branch-only 状态
- • CI 尚未在每个 commit 上保持绿色
十、快速参考卡片
常用命令速查
# 构建
cargo build --workspace
# 健康检查
claw doctor
# 交互式 REPL
claw
# 一次性提示
claw prompt "your task here"
# 列出技能
claw skills list
# 切换模型
claw --model sonnet prompt "task"
# 会话恢复
claw --resume latest环境变量速查
| 变量 | 用途 |
|---|---|
| ANTHROPIC_API_KEY | Anthropic API Key |
| ANTHROPIC_AUTH_TOKEN | OAuth Bearer Token |
| ANTHROPIC_BASE_URL | Anthropic 代理 URL |
| OPENAI_API_KEY | OpenAI-compatible Key |
| OPENAI_BASE_URL | OpenAI-compatible URL |
| DASHSCOPE_API_KEY | 阿里 DashScope Key |
结语
Claw Code 不仅仅是一个 AI 编程助手,它是一套自主软件开发系统的完整演示。它的设计哲学——人类设定方向,AI 执行劳动——代表了一种新的软件开发范式。
通过 Rust 的高性能实现、多模型支持、事件驱动的 Agent 协调系统,Claw Code 为我们展示了当多个 AI Agent 并行工作时的软件开发可以是什么样子。
无论你是想找一个强大的本地 AI 编程助手,还是想研究多 Agent 协调系统,Claw Code 都值得你花时间深入了解。
相关链接
- • GitHub: https://github.com/ultraworkers/claw-code
- • Discord: https://discord.gg/5TUQKqFWd
- • 生态项目: clawhip, oh-my-codex, oh-my-openagent
本文由蓝小鲸 🐋 生成,参考了 ultraworkers/claw-code 官方文档
引用链接
[1] ultraworkers/claw-code: https://github.com/ultraworkers/claw-code
夜雨聆风