Source Intelligence

DisclaimerUnofficial, and not affiliated with Anthropic. Nearly all of this is read straight out of what ships: npm bundles, captured prompts, published docs. Anthropic's own notes go in verbatim, marked as theirs. The rest is my reading, and every entry carries the strings behind it. If one looks wrong, vote it down and say why.

All of v2.1.219 Home All releases olderv2.1.218 v2.1.220newer
Claude Code v2.1.219

Opus 5 replaces Opus 4.8 as the default Opus model

You'll notice
Useful5 Signal0
Models Notable

Opus 5 is now the default Opus, with a 1M-context option in the model picker.

opusclaude-opus-5VERTEX_REGION_CLAUDE_5_OPUS
What

The bundled model catalog gains claude-opus-5 and the opus alias now points at it, so anything resolving the newest Opus resolves Opus 5 instead of Opus 4.8.

Details
  • Catalog entry: display name "Opus 5", knowledge cutoff "May 2026", 1M-token context with supports_1m_suffix, max_output_tokens default 64000 and upper 128000, pricing: "tier_5_25", default_effort: "high", fallback_3p: "claude-opus-4-8", vertex_region_env_var "VERTEX_REGION_CLAUDE_5_OPUS", and a new capability tag opus_5_prompt_bundle.
  • Provider ids ship for bedrock (us.anthropic.claude-opus-5), vertex, foundry, mantle (anthropic.claude-opus-5) and gateway. The opus alias resolves to claude-opus-5 for first-party, bedrock, vertex, mantle and anthropic_aws; foundry still maps to claude-opus-4-6 and gateway to claude-opus-4-7.
  • Three internal default-model constants changed from the literal "opus48" to "opus5", and the first-party preference order went from ["opus48","opus47","opus46","opus45"] to ["opus5","opus48","opus47","opus46","opus45"]. The alias table gained "claude-opus-5": "opus5" and latest_per_family.opus moved to claude-opus-5.
  • The picker shows a plain "Opus" row plus an "Opus (1M context)" variant, and Opus 4.8 is demoted to "Opus 4.8 ยท Previous Opus version". OPUS_NAME is now "Claude Opus 5" with the old pair kept as PREV_OPUS_ID / PREV_OPUS_NAME.
  • Pricing suffix lookups now query claude-opus-5, unrecognized-model fallbacks return "claude-opus-5" instead of "claude-opus-4-8", and claude-fable-5 falls back to it via fallback_3p.
  • The catalog data is unconditional in this build; whether a row is offered still depends on the model being available for the active account and provider, which the picker checks via provider id / modelOverrides.
Evidence

Opus 5 - best for everyday, complex tasks, Opus 5 with 1M context window - for long sessions with large codebases, opus_5_prompt_bundle, PREV_OPUS_NAME: "Claude Opus 4.8", claude-opus-5

Strings lifted out of the shipped bundle, so the claim above can be checked against them.

Related

Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.

See this entry in the whole of v2.1.219 →