跳转至

Agent Harness 源码课程总目录

这套中文源码课程会从各项目共同面对的问题走进真实实现,不按产品逐项罗列功能,并且始终追问同一件事:模型给出下一步意图以后,Agent Harness(智能体框架)怎样把它变成真实动作,又怎样控制、恢复并核对这些动作?全书就从这个问题展开。

全书会反复处理一个很具体的任务:修好运费计算的边界错误,因为订单金额刚好为 100 元时,系统仍会收取 10 元运费。任务虽小,链条却很完整。你不用陷进业务代码,可以把注意力放在 Harness 怎样读取、编辑、执行测试、处理失败并判断是否结束,这些动作已经覆盖了编程智能体的一条主链。

下载完整中文 PDF

PDF 和本站使用同一份内容,CI 会从 MkDocs 导航里的这套 Markdown 生成它,因此两个版本不会各自演变。

姊妹项目

这套教材只回答「模型的下一步意图怎样变成可以控制的真实动作」。动作做完以后,究竟由谁判断它是否真的做对,则要看另一套系统,详见 Eval Harness 源码内核: 它会讲任务与数据集怎样定义、运行器如何并发与重试、评分和统计如何得出结论,以及发布门禁凭什么放行。 两套教材采用同一种读法,都从锁定到具体行号的源码出发。

第一部分:建立共同语言

顺序很重要。如果这是你第一次读 Agent Harness 源码,按顺序看完这一部分,更容易知道每次进入新项目时该去哪里找相同的问题。

  1. 从这里开始:先跟完一次任务
  2. Model、Harness 与 Environment
  3. 一次任务怎样形成 Agent Loop
  4. 工具、权限与执行边界
  5. Session、Context、Memory 与恢复
  6. Trace、Eval 与结果核对

这一部分只帮你建立读后续源码必需的坐标。读完以后,你应该能画出输入、决定、动作和观察怎样连成闭环,系统又怎样选择继续或结束,并解释模型、Harness 和环境分别能做什么、不能做什么。

第二部分:六条核心源码课程

六条课程都是主线,所以这里不按项目热度或模型能力排序。你先完整读完一条,等进入第二条课程以后,自然会看出各项目在相同位置用了哪些不同做法,到那时再比较更合适。

课程 最适合作为切入点的问题 入口
DeepSeek Harness 多包、Prompt、工具、Code Mode 与 Session 怎样装配成运行时 进入课程
Codex Rust 核心怎样连接 Thread、Turn、审批、Sandbox 与多种客户端 进入课程
Gemini CLI Turn、Scheduler、Policy 与工具生命周期怎样协作 进入课程
Claude 闭源产品契约与公开 Agent SDK 源码之间的证据边界在哪里 进入课程
pi 最小智能体核心怎样逐层长成编程智能体、会话与协议 进入课程
OpenCode 服务化 Session、Provider、Processor、Permission 和多客户端怎样共享核心 进入课程

每条课程都会带你走完一条完整任务链,但不会为了排版整齐,硬把不同项目塞进相同的目录和篇数。读六条课程时,真正该互相对照的是这六个问题:模型看到了什么,循环由谁控制,工具怎样执行,权限在哪里判断,状态怎样恢复,以及结果由谁观察。

第三部分:横向比较

至少读完两条源码课程以后再看这一部分。比较页不会给项目打总分,而会把同一个工程问题放回各项目的源码中,让你顺着调用和状态去找差异从哪里产生。

  1. 运行时、配置与模型输入
  2. Agent Loop、工具与执行
  3. 权限、状态与恢复
  4. 编排、协议与产品表面
  5. 可观测性、Eval 与部署边界

第四部分:机制案例

每个扩展项目只用来讲清一种机制,六条主课程已经走过的完整路径不会在这里重复一遍。

第五部分:实践与核对

实践会从能够稳定复核的任务起步,再逐渐增加依赖,所以你一开始不用调用真实模型。

  1. 浏览器核对:打开永久链接,复原为什么存在、调用者、输入、状态、返回和下一站。
  2. 最小 Agent Loop:运行确定性 Model Stub、工具请求、结果回填和停止条件。
  3. 权限与崩溃恢复:区分获准、执行、记录和未知副作用。
  4. 独立评测管线:把执行 Trace 与结果判定分离。

需要真实模型的练习始终可以跳过,因为只用浏览器、锁定源码和确定性本地脚本,你也能完成核心学习路线。

查阅资料

开始第一课