跳到主内容

Claude Code v2.1.283:管理员可锁死可调用模型,新增 /doctor prompt-audit 审计过时提示词

Claude Code v2.1.283(2026-09-27)新增 availableModelsMatch 与 deniedModels 托管设置:管理员可把可调用模型版本锁死为白名单,并单独否决指定模型。附 /doctor prompt-audit 用法与 2.1.282 名称回退提醒。

2026-09-28 · Claude Code 官方 CHANGELOG(GitHub,2026-09-27 核对)

发布 2026-09-28核实 2026-09-28

要点

  • v2.1.283 的主线是企业管控:新增 availableModelsMatch 托管设置,设为 "exact" 时,白名单里写的模型版本才可用——新发布的模型版本不会因为升级而被悄悄启用。
  • 新增 deniedModels 托管设置:可以单独拦掉指定模型,即使它在 availableModels 名单里。白名单管「默认放行什么」,黑名单管「绝对不许出现什么」,两者是硬否决关系。
  • 新增 /doctor prompt-audit(别名 /checkup prompt-audit):审计 CLAUDE.md、skills、agents、commands 里为旧模型写的提示词模式。这是换模型换代后最容易留下的一批技术债。
  • 可观测性补强:OTEL_LOG_TOOL_CONTENT=1 时,MCP 工具、WebFetch、WebSearch 的输出会写入 tool.output OpenTelemetry span 事件;新增 x-claude-code-prompt-id 网关提示头(CLAUDE_CODE_GATEWAY_HINT_HEADERS=1 开启),让 LLM 网关能把同一次用户提问的多个请求归组。
  • 回退了 2.1.282 的 claude-ai 名称保留:2.1.282 曾把 claude-ai 这个名称保留,导致同名 skills / commands / workflows / MCP prompts 被拦;2.1.283 恢复加载,且 Skill(claude-ai:*) 规则降级为普通前缀规则。
  • 沙箱托管设置修了一个「整体失效」的坑:此前 managed sandbox 设置只要有一个嵌套值非法,整块被忽略;现在非法值 fail closed,其余部分仍然生效。
  • 无障碍修复:屏幕阅读器模式下,权限对话框会把被引用的命令与路径读成对话框自己的文本,容易让人授权错对象——2.1.283 已修。
  • /model 显示口径变化:Opus 行与默认模型名去掉了「(1M context)」后缀(因为 Opus 本身已是 1M 上下文),上下文窗口本身没变。
  • 日期口径说明:官方 CHANGELOG 的版本标题下不标注发布日期,本条日期为本站核对当日(2026-09-28)所见的最新版本,非厂商公布的发布日。

背景与分析

为什么「能调哪些模型」会变成一项企业需求

这件事在 2026 年变得具体,是因为默认模型会变。

Claude Code 自 v2.1.280(2026-09-22) 起把默认 Opus 换成了 Claude Opus 5.5,与 Anthropic 同日发布 Opus 5.5 同步。对普通用户这是「默认变强了」,但对受监管行业是另一回事:金融、医疗这类环境里,能跑什么模型通常要先过合规确认,而一次 CLI 升级就把默认模型换掉,等于绕过了那道确认。

availableModelsMatch: "exact" 就是把这个口子钉死:

设置作用典型的失败模式
availableModels(无 exact)列出可用模型新版本发布后可能自动可选用
availableModelsMatch: "exact"只放行写明的版本想用新模型得先改名单(这是设计意图)
deniedModels硬否决指定模型白名单误配时的兜底

注意三者的组合语义:deniedModels 的优先级高于 availableModels。也就是说它可以用来在「白名单写得太宽」时补一道闸——这对白名单由多个团队分别维护的大型组织尤其有用。

/doctor prompt-audit 补的是一个真实的历史欠账

模型换代之后,团队知识库里通常留着一批针对旧模型弱点写的提示词:

  • 「请一步步思考」——为不擅长推理的旧模型写的;
  • 「不要编造文件路径」——为幻觉严重的旧版本写的;
  • 「输出前先复述需求」——为指令跟随弱的模型写的。

这些句子在强模型上不只是冗余,还会拖慢输出、挤占上下文,有些甚至会诱导模型做出奇怪的自我约束。问题是没人记得它们为什么在那,删又不敢删。

/doctor prompt-audit 的价值在于把这件事变成一次可执行的体检:扫 CLAUDE.md、skills、agents、commands,找出为旧模型写的提示模式。CHANGELOG 还提到它会把陈旧路径、陈旧命令与互相矛盾的指令文件排在报告前面——真正的痛点往往不是提示词措辞,而是「这份 CLAUDE.md 里引用的脚本三个月前就删了」。

2.1.282 的 claude-ai 保留被回退:一次命名空间的教训

这轮里最值得记的一条其实是回退。

2.1.282 保留了 claude-ai 这个名称,并让 anthropic-skills / claude-ai 命名空间下的技能、命令、workflow 命令不再加载,MCP 服务若叫这两个名字也不列出 skills 与 prompts。本意大概是收敛官方命名空间,但实际效果是一批正常配置静默失效。

2.1.283 恢复了加载,并把 Skill(claude-ai:*) 规则降级为普通前缀规则(不再有特殊语义)。

教训很直白:命名空间保留是破坏性变更,因为它作用在「用户已经写好的配置」上,而不是「用户即将写的代码」上。凡是把已有名称变成保留字的改动,都应该默认按 breaking change 处理。

沙箱托管设置的「整块失效」为什么危险

2.1.283 修的这条值得单独提:managed settings 里的 sandbox 块,只要有一个嵌套值非法,整块设置被忽略。

危险之处在于它fail open:管理员以为沙箱策略生效了,实际上因为一个字段拼错,整块没加载——比报错更糟的是静默。修完之后非法值 fail closed、其余部分仍生效,这才符合「安全策略」应有的默认值。

同一条线上还有 2.1.282 修的同类问题(permissions、autoMode、worktree、attribution 四块也是「一个嵌套值非法 → 整块忽略」)。

对开发者的影响

  1. 受监管团队优先看 availableModelsMatch。 如果贵司的模型使用需要合规确认,把它设成 "exact",升级 CLI 不再等于变更可用模型集。
  2. deniedModels 当兜底而不是主力。 白名单写宽是常态,黑名单用来堵已知风险;两者配合比只写一个更稳。
  3. 换过默认模型的团队跑一次 /doctor prompt-audit。 尤其是 2.1.280 之后没清理过 CLAUDE.md 的项目。
  4. 升级后复核沙箱策略是否真的加载了。 2.1.283 之前,「一个拼错的字段」会让整块托管沙箱设置静默失效。
  5. 网关部署的团队看 x-claude-code-prompt-id。 想把「同一次提问产生的多个请求」串起来做审计或计费归组,需要显式设 CLAUDE_CODE_GATEWAY_HINT_HEADERS=1。
  6. 别被 /model 里消失的「(1M context)」误导。 那是显示口径调整,上下文窗口没变。

AI 之家 观点

其一,这一版标志着 Claude Code 的竞争维度从「能力强」转向「可管」。 模型白名单、模型黑名单、沙箱 fail closed、审计命令——四项里有三项都指向同一件事:让企业把边界攥在自己手里。对个人开发者这些是噪音,但对「能不能进内网」这个问题,它们是决定性的。

其二,availableModelsMatch: "exact" 实际上是在给「模型漂移」定价。 过去默认模型变更是厂商的单方面决定,用户只能在事后发现账单变了。现在把它变成一处显式配置,等于承认「模型版本是生产依赖,不是产品细节」。这条思路应该被其他 CLI 抄走——Codex CLI 与 Gemini CLI 目前都没有对等的托管级模型锁。

其三,/doctor prompt-audit 解决的是「提示词技术债」,而这类债几乎不会被主动清理。 它不会自己报错、不会让流程失败,只是让每次输出慢一点、偏一点。把它做成一条可执行命令,比写十篇「提示词最佳实践」有用。

其四,两处「静默整块失效」的修复提醒我们:安全配置的默认值应该是 fail closed。 一个拼错的字段名让整块沙箱策略不生效,本质上和「锁坏了但门看着是关着的」是一回事。这类问题在 2.1.282 修了四处、2.1.283 又修一处,说明它曾是系统性的。

相关阅读

来源

本条由 AI 之家 编辑部根据 Claude Code 官方 CHANGELOG 原文整理,未做一手实测(未在本机升级验证各条行为)。待确认项:① 官方 CHANGELOG 的版本标题下不标注发布日期,本文日期为本站核对当日所见最新版,非厂商公布发布日;② 上述托管设置需配合企业托管配置(managed settings)下发,具体字段名与生效范围请以官方 文档 为准;③ 本站未验证 deniedModels 与 availableModels 在边缘组合下的实际优先级表现。欢迎在 反馈邮箱 反馈更新。

相关对比

Aider vs Claude Code:终端 AI 编程双雄怎么选

Aider vs Claude Code 2026 选型对比:开源 BYOK 多模型 vs Anthropic 订阅长任务 Agent,从编程能力、多模型支持、价格、Git 集成、国内可用性和适合人群判断,帮你选对终端 AI 编程工具。

Cursor vs Aider:GUI IDE 还是 CLI?2026 对比

Cursor vs Aider 2026 选型对比:GUI IDE vs Git 原生 CLI,从 Composer vs Architect 双模型、Tab 补全、多模型 BYOK、价格计费、开源与否和适合人群判断,帮开发者选对。Cursor 是闭源 VS Code fork 月费 $20,Aider 是开源 Apache-2.0 CLI 自带 API key。

Augment Code vs Cursor:企业 AI 编程怎么选?Context Engine vs AI IDE 对比

Augment Code vs Cursor 2026 选型对比:Context Engine 全仓索引的企业 AI 平台 vs SpaceX 收购的 AI IDE 天花板,从形态、Context 覆盖、长任务、价格、合规、中文支持和适合人群 8 个维度判断,帮你选对企业 AI 编程工具。

Claude Code vs Cline:CLI AI Agent 怎么选?2026 对比

Claude Code vs Cline 2026 选型对比:Anthropic 官方闭源 CLI Agent vs Apache-2.0 开源 VS Code 插件。从模型绑定、工作流、MCP 支持、价格、隐私和适合人群 6 个维度帮你选对 CLI AI 编程工具。

Claude Code vs Codex CLI:终端 AI Agent 双雄对比

Claude Code vs Codex CLI 2026 选型对比:Anthropic 与 OpenAI 两大官方终端 Agent 的模型、长任务、MCP 生态、Windows 支持、订阅打包价格和国内可用性全方位对比,帮你判断该用哪个终端 AI Agent,以及能不能两个一起用。

Claude Code vs Crush:Anthropic 官方 vs 多模型 TUI(2026 实测选型)

Claude Code vs Crush 2026 选型对比:Anthropic 官方 CLI Agent(Claude only + 长任务最稳 + MCP 一等公民)vs Charmbracelet 开源 TUI Agent(多模型 mid-session 切换 + LSP + FSL-1.1-MIT)。从模型、长任务、生态、价格、国内可用性帮你选对终端 AI 编程工具。

相关评测