我用 Rust 写了一个从 0 到 1 学习 Claude Code Agent Harness 的项目
大家好,我最近在写一个 Rust 版本的 agent harness 学习项目:
https://github.com/wulawulu/learn-claude-code-rs
项目名叫 learn-claude-code-rs,目标是用 Rust 从最小 agent loop 开始,一步步实现一个类似 Claude Code / Codex / Cursor Agent 背后那类运行时框架的核心机制。
它不是一个完整产品,而是一个渐进式教程项目。每一章都是一个可以单独运行的 Rust crate,方便按章节阅读、运行和修改。
为什么写这个项目
现在很多 LLM 示例会停在 tool calling:定义几个工具,让模型调用一下。
但真正的 coding agent 不只是 tool calling。模型之外还有很多 runtime 工程问题:
- 工具如何注册、路由和执行
- 权限如何控制
- 上下文太长时如何压缩
- 如何加载按需知识和 skills
- 如何保存 memory
- 如何启动 subagent
- 如何处理后台任务
- 多 agent 之间如何协作
- 如何用 worktree 隔离并行任务
- MCP / plugin 工具如何接入
- 工具系统如何做成强类型路由
我想把这些机制用 Rust 拆开实现一遍,形成一条可以运行的学习路线。
这个项目受到 shareAI-lab/learn-claude-code 启发,但不是简单移植。原项目是 Python 方向,我这里更关注 Rust 生态下如何表达这些结构:trait、enum、async runtime、持久化状态、workspace、多 crate 组织等。
当前包含的章节
目前项目包含 20 个渐进章节和一个完整整合版本:
| 章节 | 主题 |
|---|---|
| 01 | 最小 Agent Loop |
| 02 | Tool Use |
| 03 | Todo Planning |
| 04 | Subagent |
| 05 | Skill Loading |
| 06 | Context Compact |
| 07 | Permission System |
| 08 | Hook System |
| 09 | Memory System |
| 10 | System Prompt |
| 11 | Error Recovery |
| 12 | Task System |
| 13 | Background Tasks |
| 14 | Cron Scheduler |
| 15 | Agent Teams |
| 16 | Team Protocols |
| 17 | Autonomous Agents |
| 18 | Worktree Task Isolation |
| 19 | MCP Plugin |
| 20 | Tool Refactor |
| Full | 完整整合版本 |
每一章都有对应的中英文说明文档。
快速运行
准备 Rust 环境后:
git clone https://github.com/wulawulu/learn-claude-code-rs
cd learn-claude-code-rs
cp .env.example .env
然后在 .env 里配置:
ANTHROPIC_API_KEY=your_api_key
ANTHROPIC_BASE_URL=your_anthropic_compatible_base_url
运行第一章:
cargo run -p s01_agent_loop
运行完整版本:
cargo run -p sfull
检查整个 workspace:
cargo check --workspace
适合谁看
这个项目比较适合:
- 想理解 coding agent 内部机制,而不只是调用现成产品的人
- 想用 Rust 写 AI agent、CLI agent 或自动化工具的人
- 已经了解 LLM API,但想系统学习 tool use、subagent、permission、hook、memory 等工程结构的人
- 对 Claude Code、Codex、Devin、Cursor Agent 这类 coding agent 背后 runtime 感兴趣的人
我希望得到的反馈
目前项目还在持续完善中,欢迎大家帮忙看看:
- 章节拆分是否合理
- Rust 实现是否有更自然的抽象方式
- 哪些地方需要更多解释、图示或运行示例
- 是否应该补更多测试
- MCP / plugin / tool routing 这些章节还有哪些可以改进
- 文档里的中文或英文表达是否清楚
如果你对 Rust + AI agent runtime / agent harness 这个方向感兴趣,也欢迎提 issue、PR 或 star。
项目地址:
https://github.com/wulawulu/learn-claude-code-rs
谢谢大家。
Ext Link: https://github.com/wulawulu/learn-claude-code-rs
评论区
写评论还没有评论