Claude Code主模型设为Opus 4.6时调用Opus 5子Agent的方式

甘道凌 2026-08-08 12:08 1

个人体验发现 Opus 4.6 的写作能力和文风是目前 A÷ 系列模型里最好的,AI 味相对较少,对话中很少不说人话。Opus 4.7 之后的模型却做不到(Opus 4.5 本来更好,但已被官方停用)。所以我设置了 Claude Code 的主会话默认模型为 Opus 4.6,需要更强推理和编程能力时再派 Opus 5 子 Agent 去干活或者拓展思考。


但新版 CC 调用子 Agent 的工具限制 model 参数只接受别名枚举(sonnet/opus/haiku/fable),不接受完整 model ID。主会话是 Opus 4.6 时,model:"opus" 解析出来的还是 Opus 4.6,无法切换到 Opus 5。


绕过方法为用 .claude/agents/ 自定义 Agent 定义文件。比如在 .claude/agents/opus5.md 里写为:


---
name: opus5
description: General-purpose agent pinned to Claude Opus 5
model: claude-opus-5
---

You are a general-purpose agent powered by Claude Opus. Execute the task given in the prompt thoroughly and precisely. Return results directly — no preamble, no trailing summary.

frontmatter 的 model 字段支持完整 model ID,不受别名枚举限制。文件建好后重启 CC 生效。


然后可以在 CLAUDE.md 里加一段,让主会话模型知道怎么用:


## 子 Agent 模型切换

- Agent 工具的 `model` 参数只支持别名(sonnet/opus/haiku/fable),无法区分同系列版本(如 Opus 4.6 vs 5)
- 需要指定模型版本时,用 `.claude/agents/` 下的自定义 Agent 定义文件,通过 `subagent_type` 调用
- 当前可用:`subagent_type:"opus5"` → Claude Opus 5

验证方式:查本地 JSONL 日志(subagents/*.jsonl),API 响应里 message.model 字段返回 claude-opus-5(服务端返回)。


附:CC 自己总结的三种子 Agent 模型指定方式对比




























方式 支持完整 model ID 优先级
CLAUDE_CODE_SUBAGENT_MODEL 环境变量 最高(覆盖一切,不推荐)
.claude/agents/*.md frontmatter model
Agent 工具 model 参数 否(枚举限制)

注意不要在 .claude/settings.json 里设置 CLAUDE_CODE_SUBAGENT_MODEL 环境变量,它会覆盖所有子 Agent 的模型选择,导致无法按需切换。

最新回复 (5)
  • Galaxy_Ron 08-08 12:16
    1

    不错不错,目前写作确实还得是 opus 4.6,但画图审美和精准度得用 opus 5。之前也尝试过 opus 4.6 指定 advisor 没成功,能调用 subagents 也挺好

  • 飞天拜鱼人 08-08 12:20
    2

    一样想吐槽,4.6的文风和写作真的可以,但接下来哪怕是5.0和fable,写作都是一股gpt味,追求精简概括和不说人话。不敢想以后4.6如果下了怎么办。

  • 甘道凌 楼主 08-08 12:50
    3

    老版本CC调用子Agent没那么多限制,想用哪个模型直接说就行,现在还得想办法绕过去

  • 甘道凌 楼主 08-08 12:52
    4

    希望 A÷ 知道部分用户当 Opus 4.6 钉子户的原因。我用 Opus 4.6 每次遇到反馈弹出都会选 Good ^-^

  • Totoria 08-08 12:54
    5

    我感觉Fable的写作能力和文风是4.6的强化版啊,像是继承下来的

* 帖子来源Linux.do
返回