源码解析文档库 · 39 章

配套技术报告的源码级解析文档,每章均含"本章导读→分节精讲→设计原理剖析→小结"结构,关键结论附真实源码路径。

🎯 按主题切入

你想搞懂…阅读章节
智能体主循环怎么转07 → 08 → 09 → 10 → 11
长任务记忆怎么不丢13 → 14 → 15 → 16 → 17 → 18 → 19(核心)
自主与安全怎么平衡20 → 24 → 27 → 30 → 32
多智能体怎么协作33 → 34
如何嵌入自己的产品35 → 36 → 39
我想自己造一个 Agent Harness01 → 03 → 08 → 13 → 20 → 27 → 35

第一部分:总体架构与基础设施(Ch 01–06)

Ch01

项目全景与发展演进

本地优先的编码智能体定位、Rust+TS 混合架构、运行模式与同类产品对比。

Ch02

工作区拓扑与分层架构

137 个 crate 的四层组织(接口/核心/基础/扩展),依赖单向化避免"大泥球"。

Ch03

启动链路与进程模型

从 Node.js 包装层到 Rust 主进程;arg0 分派实现"一进程多角色"。

Ch04

配置系统与用户控制面

四级配置层级(组织>用户>项目>会话)、profiles、类型安全枚举。

Ch05

模型接入层与API协议

ModelProvider trait 模型无关设计、Responses API、SSE 流式传输。

Ch06

功能开关与插件体系

Feature Flag 五阶段生命周期、Extension API、快速迭代与稳定控制的平衡。

第二部分:核心会话循环(Ch 07–12)

Ch07

会话与线程模型

CodexThread/Session/ThreadManager 三层架构;不可变配置快照保证并发安全。

Ch08

Turn引擎与执行循环

全书最重要的一章:run_turn 六态状态机(PreTurn→Compacting→ContextBuilding→Sampling→ToolExecution→Complete)。

Ch09

模型流式交互与响应处理

WebSocket/HTTP 双传输、增量事件模型、重试策略与 sticky routing。

Ch10

事件系统与状态广播

EventMsg/ThreadEvent 事件模型、broadcast channel 多订阅者、背压缓冲。

Ch11

中断取消与错误恢复

input_queue 插队、AgentControl 控制面、中断传播——长任务的"逃生舱"。

Ch12

状态持久化与线程存储

StateService、thread-store 的 Store trait 抽象、SQLite 元数据。

第三部分:长程上下文工程(Ch 13–19)⭐

Ch13

上下文管理总论

ContextManager 架构:上下文的建模、组装、更新与 token 预算追踪。

Ch14

历史记录与窗口组装

ResponseItem 历史、窗口内条目增删改、输出余量计算。

Ch15

自动压缩机制-本地compaction

token 阈值触发、摘要提示词、压缩后历史重建、模型降级回退。

Ch16

自动压缩机制-远程compaction

v1→v2 协议演进、服务端压缩流程、与本地压缩的差异与回退关系。

Ch17

Rollout持久化与会话恢复

JSONL 逐事件落盘、文件压缩、resume 重放原理——断点续跑的基石。

Ch18

会话前缀与实时上下文

环境信息/git 状态/时间等前缀材料、fragment 片段化按需注入。

Ch19

提示词工程与记忆系统

分层系统提示词、memories 持久化注入、AGENTS.md 发现与合并规则。

第四部分:工具系统(Ch 20–26)

Ch20

工具系统总论

registry/router/orchestrator 骨架、工具 schema 暴露、并行调用调度。

Ch21

Shell命令执行引擎

命令规范化、unified_exec、超时与输出截断、跨平台差异。

Ch22

Apply-Patch代码编辑

补丁格式与解析器、流式应用、失败回退到 view/edit 流程。

Ch23

检索能力-文件搜索与网络

file-search 双线程架构(walker+nucleo)、limit=20 截断防上下文爆炸。

Ch24

工具审批流

三层优先级 Hooks→Guardian→User;"只缓存批准、不缓存拒绝"。

Ch25

技能系统Skills

SKILL.md 四级作用域、显式/隐式调用、技能=工作流知识封装。

Ch26

MCP客户端与Hooks

外部 MCP 工具统一收编、Hook 三拦截点、暴露策略四档。

第五部分:安全与沙箱体系(Ch 27–32)

Ch27

安全体系总论

"沙箱内自由,沙箱外审批";SandboxMode×ApprovalPolicy 组合矩阵。

Ch28

Linux沙箱实现

Landlock LSM、seccomp、命名空间、bwrap 集成。

Ch29

macOS与Windows沙箱

Seatbelt SBPL 声明式策略 vs Restricted Token+Job Object+ACL。

Ch30

命令策略引擎ExecPolicy

Starlark 声明式规则、命令执行前静态分析、"批准一次,学习一次"。

Ch31

提权与进程加固

UDS 客户端-服务器提权架构、pre-main 阶段加固、最小权限原则。

Ch32

安全护栏与网络策略

Guardian 子智能体独立审查、失败关闭原则、断路器防死循环。

第六部分:多智能体与接口层(Ch 33–39)

Ch33

多智能体架构总论

agent registry/resolver、内置代理体系、与主代理的关系。

Ch34

代理委派与通信机制

interactive/one-shot 双模式委派、Spawn/Message/Followup/Result 协议、Ed25519 代理身份。

Ch35

AppServer协议层

20+ JSON-RPC 方法、10 层优先级配置覆盖、IDE 集成。

Ch36

MCP服务器形态

Codex 作为 MCP server:stdio 传输、双向 MCP 生态、暴露面三重约束。

Ch37

非交互执行与云端任务

codex exec 无头模式、exec-server、cloud-tasks 云端编排。

Ch38

TUI交互界面架构

app 事件循环、chatwidget 订阅核心事件流、斜杠命令与审批界面。

Ch39

SDK生态与扩展接口

TypeScript/Python SDK、VS Code 扩展、外部智能体迁移、code-mode。