Source: ai-research/claude-code-docs-changelog-2026-09-25.md (changelog v2.1.280–v2.1.283, September 22–25, 2026). No official W39 digest page was published at code.claude.com/docs/en/whats-new/2026-w39 as of 2026-09-25 (current week; returns HTTP 404). This article is compiled from the changelog only. Continues Week 38.

W39’s headline is the Claude Opus 5.5 launch (v2.1.280, September 22): a new model at a lower price point than Opus 5, now the default Opus model. The week also brings: default model changes for Pro/Team Standard accounts, /doctor prompt-audit, new managed settings for model access control, MCP OTel span events, and a wave of gateway and bug-fix work.

Key Takeaways

  • Claude Opus 5.5 is live (v2.1.280, September 22) — claude-opus-5-5, 1M context, 20 per Mtok input/output (cheaper than Opus 5 at 25), $0.20/Mtok cache reads. Now the default Opus model. See Claude Opus 5.5 for the full entity article.
  • Default model on Pro/Team Standard changed from Sonnet to Opus (v2.1.280 + v2.1.282) — Pro and Team Standard plan users who have not pinned a model will now use Opus by default. The change appears in both v2.1.280 and v2.1.282 changelog entries, suggesting it was rolled out in stages.
  • /doctor prompt-audit (v2.1.283) — new diagnostic subcommand audits your CLAUDE.md files and prompting patterns, surfacing issues before they cause unexpected behavior in runs.
  • availableModelsMatch and deniedModels managed settings (v2.1.283) — two new managed settings for fine-grained model access control: availableModelsMatch filters the allowed model list by regex or pattern, and deniedModels explicitly blocks named models regardless of other allowlists.
  • "attribution": false in settings.json (v2.1.281) — add this to hide the attribution footer that Claude Code appends to GitHub comments, commit messages, and PR bodies.
  • MCP URL-mode elicitation (v2.1.281) — MCP servers using the 2026-07-28 protocol revision can now use URL-mode elicitation. Required for some server-side interactive flows that need to redirect the client to a URL.
  • MCP tool outputs to OpenTelemetry spans (v2.1.283) — MCP tool results are now captured in the claude_code.llm_request OTel span events, enabling end-to-end tracing through tool calls.
  • x-claude-code-prompt-id gateway header (v2.1.283) — new hint header in gateway mode that carries a stable prompt ID, allowing gateways to group multiple requests from the same prompt together.
  • assume_role on Bedrock upstreams (v2.1.281) — Claude apps gateway Bedrock upstreams can now specify assume_role: {arn, external_id} for cross-account IAM access.
  • maxProseWidth setting (v2.1.282) — cap the maximum prose column width in wide terminals; avoids line wrap issues on very wide displays.
  • CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH (v2.1.280) — env var to cap MCP server description length in the context sent to the model. Useful when a verbose MCP server is consuming excessive context.

Claude Opus 5.5 — the W39 headline

Claude Opus 5.5 (claude-opus-5-5) shipped in v2.1.280 on September 22, 2026. It becomes the default Opus model, replacing Opus 5 (claude-opus-5). Pricing:

MetricOpus 5.5Opus 5
Input$4/Mtok$5/Mtok
Output$20/Mtok$25/Mtok
Cache reads$0.20/Mtok—
Context1M tokens1M tokens

The -5-5 suffix continues the pattern established by Fable 5.1 (claude-fable-5-1): a point release on the -5 generation at a lower price. The pricing cut is 20% on input and 20% on output vs. Opus 5.

See Claude Opus 5.5 — full entity article for capability notes and routing guidance.

/doctor prompt-audit (v2.1.283)

A new claude doctor prompt-audit subcommand audits your CLAUDE.md files and prompting patterns. The tool surfaces issues such as conflicting rules, overly long system prompts, and patterns that can degrade model behavior on newer models (the “unhobbling” problem documented in the Context Engineering article).

Run it against any CLAUDE.md to get a report before a long unattended session where bad prompting patterns would be costly.

claude doctor prompt-audit        # audit current project's CLAUDE.md
claude doctor prompt-audit --path /path/to/CLAUDE.md   # explicit path

The existing claude doctor subcommand already ran environment and config checks; prompt-audit adds a quality layer on top of that.

Default model changes

Both v2.1.280 and v2.1.282 list “Changed default model on Pro/Team Standard from Sonnet to Opus.” This appears to be a staged rollout:

  • v2.1.280 (September 22): initial rollout for Pro/Team Standard
  • v2.1.282 (September 24): extended or completed rollout

Pro and Team Standard accounts not using a pinned model or organization-level availableModels policy will now default to Opus. The effort level default that accompanies this model change is governed by the “Changed effort level behavior for newly released models” note in both entries.

Implication for cost: Opus is significantly more expensive than Sonnet. Teams relying on the Pro/Team Standard default without explicit model selection should check their monthly spend after the upgrade. Use availableModels managed settings or /model in-session to lock to a specific model.

Managed settings for model control (v2.1.283)

Two new managed settings give administrators finer control over which models are accessible:

availableModelsMatch — a pattern (regex or glob) that further filters the availableModels list. Use it when you want to allow a family of models without enumerating each version: e.g., "opus-5.*" to allow any Opus 5.x variant as new point releases ship.

deniedModels — an explicit blocklist. Models listed here are denied even if they appear in availableModels. Useful for blocking a specific version that has a known issue without rebuilding the entire allowlist.

These join the existing availableModels and enforceAvailableModels settings in the managed-settings governance layer.

attribution: false in settings.json (v2.1.281)

Adding "attribution": false to your settings.json (user or project scope) hides the attribution footer (Generated by Claude Code) that Claude Code appends to GitHub comments, PR bodies, and commit messages.

{
  "attribution": false
}

Use case: teams that prefer clean commit histories or have style guidelines against AI attribution markers. This was previously only possible by manually editing every commit message.

Bedrock gateway: assume_role and guardrail (v2.1.281)

Two new fields for Bedrock upstreams in Claude apps gateway config:

assume_role — enables cross-account IAM access. Add {arn, external_id} to an upstream’s config and the gateway will STS-assume that role before sending requests to Bedrock. Eliminates the need to provision Bedrock access in every account that hosts a gateway instance.

guardrail — apply an Amazon Bedrock Guardrail to all requests through a given upstream. Add {id, version} to the upstream config. Useful for organizations that have Guardrails-based content policies separate from Claude Code’s own safety systems.

v2.1.280–v2.1.283: bug fixes worth noting

  • Opus 5.5 / auto mode: fixed auto mode retrying safety-declined actions indefinitely (v2.1.280)
  • Resume: fixed resumed sessions re-sending earlier turns in changed form (v2.1.281, v2.1.282)
  • Compaction: fixed compaction failing on summarization refusal (v2.1.282)
  • MCP: fixed progress notifications discarded during long-running tool calls (v2.1.283); fixed stdio MCP servers left running when sessions ended (v2.1.283)
  • SDK: fixed SDK sessions losing deferred tool calls or finished tool results (v2.1.283)
  • Permissions: fixed repository/user skills pre-approving their own tools (v2.1.282) — a security-relevant fix; skills should not be able to approve their own tool calls
  • Bash quota: fixed Bash and PowerShell hiding full disk quota behind “Exit code 1” (v2.1.282)
  • Proxy resilience: fixed responses cut short by proxy stream closure being shown as complete (v2.1.281)

Try It

  • Upgrade and check /model — Opus 5.5 should appear as the default Opus option after v2.1.280.
  • Run claude doctor prompt-audit on your main project’s CLAUDE.md — identify rules that may be conflicting or redundant before the next long session.
  • Add "attribution": false to ~/.claude/settings.json if you prefer clean commit messages.
  • Set CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH if your MCP servers have verbose descriptions eating context — check /context first to see whether MCP descriptions are a significant fraction.
  • Bedrock gateway operators: add assume_role to cross-account upstream configs to consolidate IAM management.
  • Check your Pro/Team Standard default model — if you haven’t pinned a model and cost is a concern, verify your sessions are using the model you intend after the Sonnet→Opus default switch.

Open Questions

  • Opus 5.5 capability vs. Opus 5 — the changelog gives pricing but not benchmarks. Typical for point releases on the -5 line (compare Fable 5.1 which also shipped without a separate benchmark table). Watch for community comparisons.
  • Why does the default model change appear in both v2.1.280 and v2.1.282? Could be a staged account-tier rollout, a bug in the first deployment, or changelog duplication. Unclear from the entries alone.
  • availableModelsMatch pattern syntax — is this PCRE regex, glob, or something else? The entry doesn’t specify. Relevant for admins writing patterns.
  • /doctor prompt-audit output format — does it produce a machine-readable report (JSON / markdown) or only terminal output? The changelog entry doesn’t say.
  • Claude Opus 5.5 — full entity article on the new model.
  • Claude Opus 5 — predecessor model; compare pricing and capabilities.
  • What’s New — Week 38 — preceding digest; auto mode server-side classifier.
  • CLI Reference — CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH, CLAUDE_CODE_AUTO_MODE_SERVER, attribution, maxProseWidth, availableModelsMatch, deniedModels, /doctor prompt-audit.
  • Essential MCP Servers — MCP tool outputs now in OTel spans; MCP progress notification fix; CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH.
  • MCP Configuration — MCP URL-mode elicitation for 2026-07-28 protocol; MCP OTel span events.
  • Agent Teams — skills security fix (v2.1.282: skills no longer pre-approve their own tools).