Claude Code 2.1.200:权限模式改名为 Manual 以及 AskUserQuestion 行为变更,每位 operator 必须审查

Claude Code 2.1.200 将默认权限模式重命名为「Manual」,并取消了 AskUserQuestion 对话框的自动继续——这两项变更将在没有明确配置更新的情况下导致 CI 流水线和后台 agent 工作流挂起。

发布于 来源 Anthropic Claude Code

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

分割图示,左侧显示 Claude Code 权限模式从自动继续切换为手动确认,下方展示 CI 流水线流程

Claude Code 2.1.200 今日发布,其中两项行为变更将在未采取对应行动的情况下悄悄破坏现有 CI 配置和后台 agent 工作流。

第一项:AskUserQuestion 对话框不再默认自动继续。任何依赖旧版自动推进行为的无人值守流水线将在等待输入时挂起。第二项:此前称为 "default" 的权限模式在 CLI、VS Code 和 JetBrains 中正式更名为 "Manual",即便提供了兼容性别名,"defaultMode": "default" 配置项仍需审查更新。

除此之外,本次发布还包含十余项后台 agent 和 daemon 可靠性修复,对大规模运行 Claude Code 的团队具有重要意义。

发生了什么

Claude Code 2.1.200 现已通过 npm install -g @anthropic-ai/claude-code 发布,变更分为三大类:

权限模式重命名。 过去需要对每次工具调用进行手动审批的模式——此前标记为 "default"——现在正式命名为 "Manual"。CLI --help、VS Code 扩展和 JetBrains 插件均已反映新标签。现有使用 "defaultMode": "default" 或 --permission-mode default 的配置可作为兼容性别名继续使用,短期内不会造成问题,但建议迁移到 "manual" 以与最新文档保持一致。

AskUserQuestion 不再自动继续。 当 Claude Code 在无人值守运行期间向用户提出澄清问题时,该对话框过去会在超时后自动推进。在 2.1.200 中,它将无限等待用户响应——除非通过 /config 选择开启空闲超时。在 CI、后台 daemon 模式或 subagent 下运行 Claude Code 的团队期望零交互执行,此变更引入了一种新的挂起场景。

后台 agent 和 daemon 加固。 本次发布包含十二项 daemon 生命周期修复:

  • OS 重用 PID 的残留 daemon.lock 文件不再重启崩溃的 agent 循环。
  • 构建时效性现通过内嵌时间戳而非版本字符串判断,防止旧版安装包劫持 daemon。
  • 永久禁用孤儿清理的损坏问题已修复。
  • 旧版二进制文件在重启 daemon 时不再丢弃新版本写入的字段。
  • socket 认证令牌在 daemon 重启时得以保留。
  • 被 rate limit 打断且未产生任何输出的 subagent 现在返回清晰的失败信息,而非空结果。
  • 后台 agent 输出中的控制字节不再出现在终端。
  • 项目级插件现可从同一仓库的 git worktree 中正确加载。

为什么这对 AI 工程团队重要

AskUserQuestion 变更是优先级最高的问题。此前的自动继续行为在技术上从未有明确文档保证,但实践中团队已依赖它构建流程。在后台 daemon 模式下运行的 subagent 可以在任务中途提出澄清问题后继续执行;现在它们会停下来等待。如果你的 routing 层将 Claude Code 作为无人值守的 worker 调用(例如作为 orchestrator agent 下的 subagent),工具执行路径中的任何 AskUserQuestion 都将导致下游任务超时,而非带着部分输出完成。

权限模式重命名属于优先级较低的迁移,但存在文档和入职成本:任何引用 "defaultMode": "default" 的 runbook、Terraform 模块、Kubernetes manifest 或配置指南现在在技术上已经过时,即便它仍然能够工作。现在花时间审查更新是低成本的,拖延只会增加文档技术债。

daemon 修复对大规模运行的团队至关重要。daemon.lock PID 重用 bug 和孤儿清理损坏可能导致崩溃的 daemon 循环重启 worker agent 或积累僵尸进程。如果你曾观察到 Claude Code 后台 session 在崩溃后消耗异常资源,2.1.200 解决了根本原因。

git worktree 插件加载修复对 monorepo 配置很重要——这是在同一仓库的 worktree 中维护 agent 配置的团队常见模式。

router/operator 视角

无人值守工作流审查。 任何通过系统提示或编排指令在后台模式下路由 Claude Code 的系统,都应针对 2.1.200 进行测试,重点关注 AskUserQuestion 触发场景。识别哪些工具调用、文件读取或规划步骤可能产生澄清问题;通过系统提示抑制它们、预先批准工具以避免问题产生,或在可接受少量交互的情况下通过 /config 设置空闲超时。

配置漂移管理。 通过托管设置运行 Claude Code 的团队——例如通过 CLAUDE.json 文件或分发到团队成员的共享 Cursor 配置——应审查每个 "defaultMode" 或 --permission-mode 实例,确保字符串从 "default" 更新为 "manual"。行为不变,标签已变。写着 "default" 的配置仍然有效,但阅读文档的人将期望与当前描述不同的行为。

邻近 gateway 的 daemon 稳定性。 如果你通过监控 daemon 健康状况的本地 gateway 进程代理 Claude Code 请求,构建时效性和锁文件修复降低了重装或 OS 级 PID 重用导致 daemon 被接管的风险。在 CI 中固定 Claude Code 版本,如果使用任何检查运行 daemon 版本的健康检查逻辑,请记录预期的构建时间戳。

rate limit 表面变化。 使 subagent 在被 rate limit 打断时报告清晰失败(而非空结果)的修复将改变 routing 层的可观测行为:过去静默返回空内容的调用现在将返回错误对象。请更新将空响应视为成功信号的任何结果处理逻辑。

routing 团队应关注和尝试的事项

  • 在更新到 2.1.200 之前检查 CI 和无人值守流水线配置。 用可能触发 AskUserQuestion 的任务进行测试,确认它要么优雅超时(如果设置了空闲超时),要么不再产生该问题(如果预先批准了相关工具)。
  • 审查所有托管配置文件中的 defaultMode。 兼容性别名意味着这并不紧迫,但趁现在还有上下文时清理它是值得的。
  • 如果你追踪 daemon.lock PID 或版本字符串,请检查 daemon 监控逻辑——这些语义在 2.1.200 中已发生变化。
  • 使用 claude-code-2199 可靠性版本 的团队应规划顺序升级:2.1.199 修复与 2.1.200 daemon 加固相互补充,共同稳定完整的后台 agent 生命周期。
帮助与联系