Skip to content

新模型别自动放行:availableModelsMatch=exact 与 deniedModels ​

团队里最怕的不是「没模型」,而是新模型一上线就被人默默切过去——账单、合规、提示词兼容性都还没过审。CLI 2.1.283 给托管设置补了两把锁:availableModelsMatch(配合已有的 availableModels)和 deniedModels。

默认模型与 Opus 5.5 见 Opus 5.5 成默认;本文只讲「允许名单怎么钉死、怎么单独拉黑」。

exact 在管什么 ​

公开 changelog 的表述很直白:把 availableModelsMatch 设为 "exact" 时,availableModels 里的每一项只放行它点名的那个模型版本;新发布的版本不会自动进名单,要等管理员显式写进去。

对比直觉:

模式(概念)行为
未开 exact(或等价宽松匹配)白名单常按「系列 / 别名」理解,新版本可能悄悄可用
availableModelsMatch: "exact"只认名单上的精确版本;新 release 默认被挡

对已用 availableModels 做组织管控的环境,这等于把「允许」从「这一家」收成「这一个具体型号」。

deniedModels:白名单里也能拉黑 ​

同版本还加了 deniedModels:即使某模型按 availableModels 逻辑会被放行,只要出现在拒绝列表里,仍然禁止选用。

典型用法:

  1. 白名单先放一批「可用系列」。
  2. 某一旧日期戳 / 有问题的别名单独进 deniedModels。
  3. 新模型默认不进 exact 名单,评审后再加一行。

示意(键名与取值以 changelog / 托管配置为准,勿臆造完整 schema):

json
{
  "availableModels": ["claude-opus-5-5", "claude-sonnet-5"],
  "availableModelsMatch": "exact",
  "deniedModels": ["claude-3-5-sonnet-20240620"]
}

谁该开、谁别急 ​

适合:

  • 公司 / 团队统一发镜像或托管 settings,要控模型上线节奏。
  • 合规要求「未审批模型不可用」。
  • 提示词、Skills、计费策略还按旧模型校准,暂时不想全员冲到最新版。

不太急:

  • 个人本机随便切模型试玩。
  • 还没配置过 availableModels——先建白名单,再谈 exact。

注意:官方设置文档可能滞后于 changelog;键名以 2.1.283 发布说明为准。混用多版本 CLI 时,旧客户端会无视这些新键,策略会看起来「时灵时不灵」。

落地检查清单 ​

  1. 舰队统一到 @anthropic-ai/[email protected]+(或等价渠道同版本)。
  2. 在托管 settings 写入 availableModels + availableModelsMatch: "exact"。
  3. 需要「名单上也不给用」的,补 deniedModels。
  4. 用 /model、启动参数、子代理/技能选模各试一次:名单外应失败;新 release 未写入前应失败。
  5. 审批通过某新版本后,显式追加到 availableModels,而不是指望「自动跟新」。

想收紧「Default」是否落在名单外,还要看既有的 enforceAvailableModels 一类开关——那是另一条线,别和 exact 混成一个开关。

实践建议 ​

  1. 变更当发布:改名单像发版本,写清何时允许哪一 id。
  2. 先试后推:用一台金丝雀机验证 exact + deny,再全量托管。
  3. 文档同步:对内说明「为什么新模型点不开」——少一轮工单。
  4. 个人开发者:不必强行上 exact;把精力放在项目该用的默认模型即可。

模型更新越勤,管控就越要「具名」。availableModelsMatch=exact 和 deniedModels 把「放行」和「拉黑」拆开,正是团队该有的默认姿势。

Claude-cn.org,专注于 Claude Code 中文教程