Claude Code 2.1.212:子 Agent 并发上限、MCP 自动后台化与自定义网关 Prompt 缓存修复

2.1.212 新增每会话子 Agent 生成上限与 WebSearch 调用上限,超时 MCP 工具调用自动转入后台运行,并修复了自定义 API 网关及 Bedrock/Vertex 上的 Prompt 缓存失效问题。

发布于 来源 Anthropic Claude Code

归档条目:由 AI 根据所引信源辅助生成,发布时未经逐篇审阅。责任编辑:Joe Werner。

抽象路由架构图,展示会话治理控制与 Agent 委托上限

让 Claude Code 会话可以无限生成子 Agent、无限触发 WebSearch 的治理漏洞,现已关闭。本周发布的 2.1.212 版本新增了两个可调节的硬性会话上限,同时将超时 MCP 工具调用自动转入后台,并修复了通过自定义 API 网关、Bedrock 或 Vertex 端点路由时 Prompt 缓存失效的问题。

以下是具体变更及其对规模化运营 Claude Code 的工程团队的影响。

发生了什么

Anthropic 发布 Claude Code 2.1.212,带来四项面向 Operator 的关键改动,同时包含大量稳定性修复:

  1. 子 Agent 生成上限 — 默认每会话上限 200 个子 Agent,可通过 CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION 覆盖;/clear 会重置预算计数。
  2. WebSearch 会话上限 — 默认每会话上限 200 次工具调用,可通过 CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION 覆盖,防止长时间 Agent 任务中的 WebSearch 失控循环。
  3. MCP 自动后台化 — 运行超过 2 分钟的 MCP 工具调用会自动转入后台,保持会话可用状态。可通过 CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS 调整阈值,设为 0 可禁用该功能。
  4. 自定义网关 Prompt 缓存修复 — 会话中段系统消息块(mid-conversation system block)现已能在 LLM 网关及自定义 base URL(含 Bedrock、Vertex AI)后端正常缓存。

此外,/fork 命令的行为发生了重大变化:现在它会将当前对话复制到一个新的后台会话(在 claude agents 中单独显示一行),而非此前启动一个会话内子 Agent。原先的会话内子 Agent 行为已改由 /subtask 命令承接。

还有两项安全相关的 bug 修复:

  • 计划模式 Bash 命令权限 — 此前计划模式可在未触发权限提示或 SDK canUseTool 回调的情况下,自动执行修改文件的 Bash 命令(如 touch、rm)。该 bug 已修复。
  • Worktree 符号链接逃逸 — 此前 Worktree 创建时可能跟随仓库中提交的 .claude/worktrees 符号链接,在仓库外创建文件。该 bug 也已修复。

对 AI 工程团队的影响

失控 Agent 治理是本次变更的核心。当 Claude Code 运行多 Agent 工作流时——并行子 Agent、递归 Agent 派发、配合 WebSearch 的深度研究循环——无上限的会话活动会直接转化为无法预测的 API 成本和任务耗时。

在 2.1.212 之前,平台层面没有任何机制可以限制单个会话能生成多少个子 Agent,或能触发多少次 WebSearch。团队只能依赖应用层计费逻辑或在 System Prompt 中注入预算约束,而两种方式都会在 Agent 偏离预期工作流时失效。

新增的环境变量上限为 Operator 提供了可调节的兜底控制。默认值(每项 200)足够宽松,不会打断常规工作流,同时又足够严格,能防止指数级失控的 Agent 派发。对于通过网关路由 Claude Code 的 Operator 而言——成本可见性存在延迟——这是第一级可靠性控制手段。

MCP 自动后台化解决的是另一种故障模式:长时间运行的 MCP 工具调用会阻塞整个会话。对于将 MCP 调用路由到慢速外部服务(文档处理、数据库查询、长时编排调用)的 Operator,2 分钟自动后台阈值可防止会话看起来像挂起状态。需要确定性行为或希望在调试时禁用该功能的团队,可设置 CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS=0。

路由层与 Operator 视角

Prompt 缓存修复是本次对网关 Operator 影响最深但最不显眼的变更。会话中段系统消息块能让 Claude Code 在不消耗缓存的情况下注入上下文,但对于通过自定义 base URL 路由的团队,这一机制此前并不生效。受影响场景包括:

  • 通过自托管 AI 网关(如 LiteLLM 代理、TheRouter、Azure AI Foundry 自定义端点)路由 Claude 的 Operator
  • 使用 Bedrock 或 Vertex AI 并配置了自定义 base URL 覆盖的团队
  • ANTHROPIC_BASE_URL 指向内部代理的企业部署

在修复前,上述部署方式中每条会话中段系统消息都会产生完整的重新处理成本。修复后,缓存行为将恢复正常。如果你发现网关路由的 Claude Code 会话的 Token 消耗高于预期,升级到 2.1.212 应能降低这一成本。

对于 /fork 重命名:如果团队的 Shell 脚本、CI 流水线或自动化工具依赖 /fork 来触发一个受控的会话内子 Agent,这些工作流现在会创建一个独立的后台会话。请审查所有依赖旧版 /fork 行为的自动化,并迁移到 /subtask 来实现会话内模式。

计划模式 Bash 修复对于无人值守运行 Claude Code 的 CI/CD 流水线尤为重要。修复前的行为——在无权限提示的情况下自动执行破坏性文件操作——是自动化部署场景中真实存在的攻击面。在计划模式下运行 Claude Code 的 Operator 应确认当前版本为 2.1.212 或更高。

建议行动

  • 根据基准调整上限:用 CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION=50 和 CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION=50 运行一周生产会话,了解典型会话预算后再做调整。
  • 审查 /fork 使用情况:在团队 playbook、脚本和 CI 配置中搜索 /fork,并将会话内场景迁移到 /subtask。
  • 验证网关上的 Prompt 缓存:升级后,对比网关路由会话与直接 API 会话的 Token 消耗差异,差距应会缩小。
  • 检查 MCP 服务延迟:如果 MCP 集成中存在定期超过 2 分钟的调用,测试自动后台化是否影响工作流预期。
  • 复核计划模式部署:确认所有无头 Claude Code 流水线在使用计划模式时能正确触发 canUseTool 回调后再执行 Bash 命令。

对于通过自定义 API 网关路由 Claude Code 的团队,2.1.212 的变更——尤其是 Prompt 缓存修复和子 Agent 上限——值得在本迭代中安排升级窗口。

帮助与联系