Patch release: clearer permission-denial and Max-plan messaging, better artifact dark-mode defaults, SDK search results now include total file counts, and reliability work on remote-control nudges and background processes.
Changelog
[changed] Tool permission denials now surface as an explicit “permission denied” outcome (with optional user guidance), instead of reading as a generic “user doesn’t want to proceed” rejection — so the model can try another approach or report the limit more cleanly.
[changed] Shipped artifact templates treat the default styling as a dual-theme base (every paint token has a dark counterpart), so restyles start from a dark-mode-ready foundation rather than a light-only palette.
[new] When you’re already on the highest Max plan, usage guidance points you to /login in an interactive terminal to switch to an API usage-billed account instead of implying a higher Max tier.
[changed] Search/tool result payloads can include a totalFiles count alongside existing match and line metadata, so clients can show how large the hit set was.
[changed] Remote Control long-turn and permission nudges are better gated and can be forced or tuned via environment flags when a session runs long or hits permission prompts.
[changed] Background launcher/daemon spawn paths are more resilient (fallback launcher, fork-and-exit, worker-refuse, and respawn-downgrade handling) so background work is less likely to stall or leave a bad process state.
[new] Optional process-wrapper support (CLAUDE_CODE_PROCESS_WRAPPER) for environments that need Claude Code launched under a custom process supervisor.
[new] Bedrock content-type guard can be disabled with CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD when a Bedrock path needs to bypass that check.
[changed] Rate-limit surfaces can show promotional notices when usage limits are hit.
[changed] Refusal handling documents catch-all fallback behaviour more precisely when no per-category fallback map entry exists (including when catch-all retry is explicitly disabled).
[changed] Subagents that end up with zero tools, and teammate turns that fail transiently, are handled more explicitly so orchestration doesn’t hang on empty or flaky worker states.
[changed] SDK compatibility list now includes 0.3.207.
Models & prompts
Permission-denied tool results and related “how to proceed” follow-ups use the clearer denial wording above so the model stops and waits or pivots instead of treating every denial like a soft user cancel.
Focus mode guidance is unchanged in intent: only the final text message is user-visible; intermediate tool chatter should stay out of the reply.
Context compaction still distinguishes full-session summaries from “recent portion only” summaries so long sessions can keep earlier retained context intact.
After a PR is created or updated, Slack posting still only runs when CLAUDE.md mentions it, a Slack send tool is discoverable, and the user confirms — failures stay silent.
Artifact HTML guidance emphasizes working mechanics (layout, sorting, filtering) with restyle-on-top defaults that include dark counterparts.
Onboarding/help copy for keybindings still documents that user bindings are additive and that moving a binding requires unbinding the old key.
Under the hood
New env flags: CLAUDE_CODE_RC_PERMISSION_NUDGE, CLAUDE_CODE_FORCE_RC_LONG_TURN_NUDGE, CLAUDE_CODE_PROCESS_WRAPPER, CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD.
Remote Control nudge show/once telemetry, background-daemon outcome branches, artifact session/thumb paths, official-plugin prompt overrides, memory rating writeback, and on-branch default guards for teleport/branch workflows.
Cleanup of older auto-mode opt-in dialog events and assorted one-off probes/telemetry; removed the unused /api/frame/track4 backend route.
Design-agent consent/revoke handling in this session path was tightened so those words are not treated as a design brief when the action isn’t available.
Upgrade notes
If you scrape or type tool-result shapes in the SDK, accept optional totalFiles on the relevant search-style results.
Bedrock users who need the previous content-type behaviour can set CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD.
Remote Control / long-running session operators can use CLAUDE_CODE_RC_PERMISSION_NUDGE and CLAUDE_CODE_FORCE_RC_LONG_TURN_NUDGE if they need to drive those nudges explicitly.
content/
Browse captured content/
Same tree as claude-code/latest/content for this version. Open the full browser for sidebar navigation between docs and other files.