(无侵入版本)Any牌路由器 SubAgent 和 Haiku 模型无法正常调用的解决办法

2026-04-29 08:451阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐
问题描述:

基于哈雷彗星大佬 原帖 #1991311 的优化版。原方案用 AST 补丁改 cli.js,每次 Claude Code 升级都得重打;本版不动 Claude Code 本体,外挂一个本地反向代理,Claude Code 升级自动生效,还顺带兼容 v2.1.116+ 新的请求形态。

问题回顾(两种形态)

Claude Code 的 SubAgent 请求在不同版本里,发给 AnyRouter 的 thinking 字段有两种错配形态,AnyRouter(new-api 后端)对 Haiku / Opus 4.7 [1M] / Sonnet 4.6 这些 reasoning 模型都会 500(nil pointer dereference):

  • v2.1.112 ~ v2.1.115:cli.js 里 SubAgent 启动器 _u 把 thinking 硬编码为 {type:"disabled"}

    thinkingConfig: D ? _.options.thinkingConfig : { type: "disabled" }

    D = useExactTools 只有 Fork agent 为 true,所有带 subagent_type 的 SubAgent 永远走 disabled 分支

  • v2.1.116+:SubAgent 请求完全不带 thinking 字段thinking absent)。但 AnyRouter 对 Haiku 仍要求 thinking 字段存在 —— 缺失就直接 crash。

阅读全文
问题描述:

基于哈雷彗星大佬 原帖 #1991311 的优化版。原方案用 AST 补丁改 cli.js,每次 Claude Code 升级都得重打;本版不动 Claude Code 本体,外挂一个本地反向代理,Claude Code 升级自动生效,还顺带兼容 v2.1.116+ 新的请求形态。

问题回顾(两种形态)

Claude Code 的 SubAgent 请求在不同版本里,发给 AnyRouter 的 thinking 字段有两种错配形态,AnyRouter(new-api 后端)对 Haiku / Opus 4.7 [1M] / Sonnet 4.6 这些 reasoning 模型都会 500(nil pointer dereference):

  • v2.1.112 ~ v2.1.115:cli.js 里 SubAgent 启动器 _u 把 thinking 硬编码为 {type:"disabled"}

    thinkingConfig: D ? _.options.thinkingConfig : { type: "disabled" }

    D = useExactTools 只有 Fork agent 为 true,所有带 subagent_type 的 SubAgent 永远走 disabled 分支

  • v2.1.116+:SubAgent 请求完全不带 thinking 字段thinking absent)。但 AnyRouter 对 Haiku 仍要求 thinking 字段存在 —— 缺失就直接 crash。

阅读全文