本节摘要:两个被使用得最广的终端编码智能体,恰好代表了两种可研究性:Claude Code 闭源但系统提示词与权限设计有大量公开泄露资料(社区),Codex CLI 直接开源(官方)。本节按六组件模板逐格填写:Claude Code 的工具表(Read/Write/Edit/Bash/Grep 等十件套)、三级权限判定(ask/allow/deny)与 hooks 挂载点、项目级上下文文件与压缩策略;Codex CLI 的沙箱模式分级(read-only / workspace-write / danger-full-access)与审批策略。两相对照能看到同骨架下的两种取舍:Claude Code 把功夫下在权限粒度与 hooks 生态,Codex 把功夫下在隔离与可审计。资料口径声明:本节内容基于公开泄露资料与官方文档整理(社区),产品演进很快,细节以各家官方文档为准。
阅读完本节,你应当能够:
选样本的标准是"可研究性"与"代表性":Claude Code 是终端编码智能体的标杆,其系统提示词、工具定义、权限设计有完整的公开泄露资料(社区整理,《System Prompts Leaks:系统提示词泄露库》有汇编)——相当于拿到一份工业级 harness 的"设计图纸";Codex CLI 整个开源(官方),可以直接读源码验证。两者都跑在工程师的终端里、干同一类活,差异 therefore 全部来自 harness 设计——是绝佳的对照样本。
以下按六组件模板填写(资料:公开泄露资料 + 官方文档,社区):
② 工具系统——公开工具表的主干(泄露资料整理):
| 工具 | 职责 | 备注 |
|---|---|---|
| Read / Write / Edit | 读、写、精确编辑文件 | Edit 用旧串→新串的替换语义,而非整文件重写 |
| Bash | 执行 shell 命令 | 权限判定的重点对象 |
| Glob / Grep | 文件名匹配 / 内容检索 | 与 Bash 分离:结构化检索不进 shell,天然低危 |
| Task | 派生子智能体(受限上下文) | 上下文管理手段:脏活外包,结果摘要回流 |
| WebFetch / WebSearch | 取网页 / 搜索 | 网络能力单列,便于权限控制 |
| TodoWrite | 维护任务清单 | 让模型显式管理自己的计划,抗跑偏 |
💡 注意工具表的两个设计语言:其一,结构化操作与任意执行分离(Grep 与 Bash 分开)——分离才能分级授权;其二,TodoWrite 这种"给模型自己的备忘工具"——上下文工程工具化的例子(第 7 章展开)。
③ 权限门——三级判定 + 作用域匹配(官方文档):每个工具调用按 ask(默认,问人)/ allow(白名单静默放行)/ deny(硬拒)三级判定;allow 列表支持按工具与参数模式配置(如允许 Read、允许特定前缀的 Bash 命令);另有会话级的权限模式切换。这是第 5 章 allowlist 设计的原型。
暗线 Hook——生命周期挂载点(官方):提供 PreToolUse、PostToolUse、会话开始/结束、压缩(compaction)前后等挂载点,用外部脚本在固定时机注入策略或拦截改写——第 8 章的主角在此露脸。
💡 泄露资料里还能看到 skills(可安装的技能包:工具 + 提示词 + 资源的打包分发)与 Task 子智能体的组合使用——前者解决"能力如何被复用与分享",后者解决"脏活如何不污染主上下文"。两者分别预告了第 7 章(上下文)与第 8 章(Hook)的主题。
⑤ 上下文——分层供料(泄露资料 + 官方):系统提示词(身份、环境、风格约束)+ 项目级上下文文件(CLAUDE.md,随仓库走,团队共享约定)+ 会话历史 + 工具结果;窗口将满时自动压缩(compaction):摘要化旧对话、保留关键文件与最近操作。第 7 章展开原理。
Codex CLI 开源(官方),六组件里最有辨识度的是 ④ 沙箱——它把"模型能碰到什么"做成了显式分档的配置:
| 沙箱模式 | 承诺 | 适用 |
|---|---|---|
| read-only | 只能读文件系统,不写不联网 | 最高危环境、纯分析任务 |
| workspace-write | 只能写工作区目录;网络默认禁,可按需放行 | 日常开发的主力档位 |
| danger-full-access | 无隔离 | 需要全权操作时的显式自担选项 |
配套的审批策略决定哪些命令要人点确认、哪些放行自动执行,与沙箱档位正交组合——"隔离强度"与"打断频率"两个旋钮分开拧,用户按场景配对。这套"沙箱分档 + 审批正交"是第 6 章沙箱设计的核心参照。
其余组件(工具、循环、上下文)与 Claude Code 同构,开源仓库可直接阅读源码对照本书第 3、4 章的示意实现(延伸阅读:同站教程库相关精读)。
| 维度 | Claude Code | Codex CLI |
|---|---|---|
| 可研究性 | 泄露资料 + 官方文档(社区) | 开源(官方) |
| 工具表 | 结构化检索与执行分离 + 子智能体 + TodoWrite | 精简核心集,执行类为主 |
| 权限 | ask/allow/deny 三级 + 参数级 allowlist,粒度细 | 审批策略 + 沙箱档位正交组合 |
| 隔离 | 依赖权限门与用户监督(终端环境) | 原生沙箱分档,隔离是一等公民 |
| 上下文 | 系统提示词 + CLAUDE.md + compaction | 系统提示词 + 仓库引导文件 |
两条路线没有对错:权限派赌"把每个动作判准",隔离派赌"就算判错也困在沙箱里"。成熟的内部平台通常两者都要——这正是第 5、6 章连续两章的原因:刹车(权限)与防爆舱(沙箱)解决的是同一信任问题的两半。
组合的现实:不少团队在内部平台同时部署两套思路——日常开发走 Codex 式沙箱兜底,需要跨仓库或高权限的任务走 Claude Code 式精细 allowlist;两套的运维成本,就是"既要又要"的代价。
从这两个产品能直接抄走的三条经验(后续章节逐一展开):
解剖的方法论也值得带走:先找资料口径(官方文档 / 开源仓库 / 泄露汇编),再按六组件模板逐格填写,最后才做对照——顺序错了,结论就是 rumor 的排列组合。
终端双雄看完,下一个样本换种形态:一个不吃终端、住在聊天软件里、24 小时在线的 harness——OpenClaw 与开源 harness 家族。