模型与推理强度
/emet 会自动为每个角色选择模型和推理强度;运行中无需手动切换任何设置。所有配置键都在配置参考中。
| 角色 | 模型 | 推理强度 | 设置位置 |
|---|---|---|---|
| 规划(阶段 1–4) | Opus,通过 opusplan |
取决于你的会话 | 由你设置,仅需一次 |
| 协调者,阶段 5 起 | Sonnet,通过 opusplan |
取决于你的会话 | 由你设置,仅需一次 |
| 工作者(阶段 7) | Sonnet | medium |
agents/emet-worker.md 或 models.worker |
评审,passive 层级(仅文档的 diff) |
无 | — | emet assess |
评审,medium 层级(普通源码变更) |
Opus | medium |
models.reviewer.medium |
评审,high 层级(高风险路径或敏感调用) |
Opus | 默认为 medium |
models.reviewer.high |
| CI 日志分诊(阶段 8) | Haiku | — | models.triage |
两个代理定义文件(由 install.sh 安装到 ~/.claude/agents/)在 frontmatter 中固定了各自的 model/effort,因此协调者自己选择的模型和推理强度不会影响工作者或评审者。如果其中任一文件丢失,emet doctor 只会报告,不会阻止。而 emet preflight 在 emet-worker 或 emet-reviewer 缺失时会阻止派发,因为阶段 6 和阶段 8 是通过 subagent_type 进行派发的。
按风险层级路由
阶段 8 会运行 emet assess --base <trunk> --head <integration branch>,它以确定性的方式对 diff 分类,并输出包含层级、原因以及推荐的评审者模型和推理强度的 JSON:
passive:仅文档的 diff;不会派发评审者。medium:评审者使用models.reviewer.medium运行。high:diff 涉及认证、安全、支付、webhook、CI、安装程序、锁文件、迁移、危险的敏感调用(原始 SQL、管道传给 shell 等),或匹配review.highRiskPaths的路径。评审者使用models.reviewer.high运行,只有在检查全部通过且没有未处理的评审问题时,自动合并才会落地该 PR。
涉及高风险路径的工单可以带有一行 Model:(例如 Model: opus 或 Model: opus/high),它只会覆盖该工作者的 models.worker。
Haiku 分诊
协调者从不完整读取 CI 日志。失败的检查会交给使用 models.triage(默认 haiku)的代理,它最多返回约 2k 个 token,并附带用于修复的 file:line 指引。
配置
所有键都是可选的,默认值与上表一致:
{ "models": { "worker": { "model": "sonnet", "effort": "medium" }, "reviewer": { "medium": { "model": "opus", "effort": "medium" }, "high": { "model": "opus", "effort": "medium" } }, "triage": "haiku" }, "review": { "highRiskPaths": [] }}review.highRiskPaths 是一组额外的、不区分大小写的路径子串,用于强制进入 high 层级。若想对高风险波次加强审查,可以提高 models.reviewer.high.effort(例如提高到 high)。
为什么只用一个评审者
为什么使用一个上下文全新的评审者,而不是多角度并行:目前没有公开基准直接比较两者,但并行方案会按角度把整个 diff 重读一遍,并且在这个仓库中曾挂起超过一个小时;而 Anthropic 和第三方关于 Opus 级模型的报告表明,升级模型带来的收益与增加角度相当。对于高风险的波次,请在之后手动运行 /code-review ultra;/emet 不会自行派发它。
需要你自己设置一次的内容
/emet 无法在运行中切换这些设置:
~/.claude/settings.json中的model: "opusplan":这使阶段 1–4 使用 Opus,阶段 5 起使用 Sonnet,无需/model。如果未设置,emet doctor会发出警告(不会修改你的设置)。- 会话的推理强度设为
medium或high,而不是xhigh:无论你如何设置,工作者和评审者都有各自的推理强度;而全局默认值设得过高,只会增加协调者自身轮次(派发管理、合并、报告)的成本,这些轮次并不需要。 - 能够无人值守运行的
permissions.defaultMode(auto、acceptEdits或bypassPermissions),以及阻止git push * main|master和git push --force *的permissions.deny规则。emet doctor会对这两项发出警告,因为一个卡在权限提示上的波次,或者能强行越过主干分支的波次,会让无人值守运行失去意义。
这些只是起点,并非定论。Opus 5.5 于 2026-09-22 发布,面向编码代理的推理强度与模型选择仍是活跃的研究领域;请在实际运行几个波次后再重新调整,而不要把这张表当作最终结论。