Administrators can now configure an availableModels allowlist in policy settings to restrict which Claude models users and agents are permitted to use. When enforceAvailableModels is set to true alongside a non-empty availableModels list, any attempt to use a model outside the list is silently redirected to the next allowed model, and a warning is displayed.
Details
Controlled via the enforceAvailableModels and availableModels keys in organization policy settings
If the user's preferred model (from CLI flag, SDK request, or /model switch) is not in the allowlist, Claude Code falls back to the nearest allowed model
Model overrides (modelOverrides) allow admins to map model aliases or families to specific allowed variants
The system applies a "cascade trust" model: if an admin policy source exists but fails to load, enforcement is suspended and a warning is logged rather than silently defaulting to less-restricted behavior
Plan mode also respects the allowlist — if the Opus or Haiku upgrade model used during planning is not in the allowlist, planning falls back to the resting model with a logged warning
Agent and skill model requests are checked against the allowlist; blocked models trigger a notification rather than silently using an unauthorized model
Evidence
New policy enforcement engine (search for "enforceAvailableModels: a policy source exists but failed to load")
Strings lifted out of the shipped bundle, so the claim above can be checked against them.
How sure we are
One source agreesOne thing we can check says the same as this entry.
Anthropic's release notes agreeAdded enforceAvailableModels managed setting — when enabled, the availableModels allowlist also constrains the Default model (a Default that…