这一页汇总全书反复出现的可迁移设计模式。它们不是 Codex 独有技巧,而是任何能检查文件、运行命令、调用外部工具或服务多种客户端的 LLM 产品都要面对的架构动作。
先读类型边界
先读 enum 和 struct,再读长函数。`Op`、`Submission`、`Event` 和 app-server requests 会先暴露产品契约。
第 4 章
Queue Pair Runtime
客户端提交 operation,同时监听 events。TUI、exec 和 app-server 因此可以共享一个 core runtime。
第 5 章
Turn 作为控制单元
一次 turn 聚合上下文、模型采样、工具、hooks、compaction 和完成条件。
第 6 章
工具即产品契约
工具不是函数指针。它携带 schema、可变性、hooks、取消、输出格式和用户可见效果。
第 9 章
用 Patch 而不是盲写文件
结构化补丁让编辑可审查、可审批、可生成 diff,也更容易归因到某次 turn。
第 11 章
审批作为控制面
approval policy、permission hooks、Guardian review 和网络策略 amendment 位于单个工具之上。
第 12 章
沙箱作为运行时变换
Codex 把沙箱看成对执行请求的变换,由平台、策略、权限和 retry 语义共同决定。
第 13 章
通过注入扩展
Skills、plugins、app mentions 和 MCP inventory 变成 turn-scoped context 和 tools,而不是散落的特殊循环。
第 17 章 / 第 18 章
一个 Runtime,多种接入面
TUI 和 app-server 的呈现方式不同,但都消费同一个 session model 产生的结构化 events。
第 14 章 / 第 16 章