Claude docs changes for July 24th, 2026 [diff]

Executive Summary

  • /code-review now runs as a background subagent by default, so it no longer fills your conversation window; a new doc section explains when it still runs in the foreground and how ultra now accepts a plain-language note describing what to review.
  • Agent view's background/foreground switching () got a big UX pass: a confirmation step before switching away from an emptied prompt, a "conversation moved to the background" banner, and a fix for an "Ambiguous ←" double-press issue on Windows.
  • Read-only Bash command detection got more precise: docker pointed at another daemon, file with path-opening flags, Windows UNC paths, and unparseable commands now correctly prompt instead of silently running.
  • New error reference entries cover API Error: 401 Invalid authentication credentials, Claude Code process exited with code N (wrapper/IDE errors), and the --print input-required error.
  • New Claude API refusal category general_harms, and a new Admin API FAQ on what happens to a user's API keys after they leave the organization.

Claude Code changes

Changed documents

agent-view [Source]

  • v2.1.218: pressing within two seconds of emptying the prompt or moving through prompt history now asks you to confirm with a second press instead of switching immediately, and a inside pasted/scripted input no longer triggers the switch. [line 167] [Source]
  • Backgrounding a foreground session with now shows "Your conversation moved to the background" above the list, and Esc at the agent-view root returns to that conversation instead of exiting. [line 26] [Source]
  • On Windows, pressing within about half a second of attaching now shows Ambiguous ←, press again to detach instead of misfiring on a redelivered keypress. [line 162] [Source]
  • Full version history table entries added for v2.1.218, v2.1.216, and v2.1.213 covering the background-session dialog history. [lines 662-664] [Source]

checkpointing [Source]

  • New "Subagent edits not restored" section: edits from a subagent (including background /code-review --fix and forked skills running in the background) land outside your session's checkpoints, so /rewind can't undo them — use git instead. Foreground forks still restore normally. [line 75] [Source]

claude-security [Source]

  • Documented that Fable 5's cybersecurity safety classifiers may block certain scan activities and auto-downgrade to Opus, and that this is expected. [line 133] [Source]

cli-reference [Source]

  • --max-budget-usd: subagent spend now counts toward the cap; once reached, spawning a subagent fails with Budget limit reached and running background subagents are stopped (requires v2.1.217+). [line 88] [Source]

code-review [Source]

  • The "Review a diff locally" section was rewritten into a step-by-step walkthrough: /code-review now runs as a background subagent with its own context window by default (previously it ran inline), and findings arrive in your conversation when it completes. [line 278] [Source]
  • New "Run in the foreground" section listing the three cases that still run the review inline: a second concurrent /code-review, non-interactive mode (-p/Agent SDK), or CLAUDE_CODE_DISABLE_BACKGROUND_TASKS=1. Also notes /code-review can't be used as a scheduled-task prompt since it's marked disable-model-invocation. [line 298] [Source]
  • Stacking /code-review /fix-issue 123 now treats everything after /code-review as review-target text rather than expanding /fix-issue as a second stacked skill, since /code-review runs as a forked subagent as of v2.1.218. [line 295] [Source]
  • New "Escalate to ultrareview" section: you can now start a cloud ultrareview from a script or CI with claude -p '/code-review ultra', which launches and prints a tracking link (requires v2.1.218+); if the run would bill usage credits, it stops and directs you to claude ultrareview instead, since billing confirmation needs an interactive session. [line 308] [Source]

desktop-ios-simulator [Source]

  • Named the managed policy key that disables the simulator pane and Claude's tools entirely: requireCoworkFullVmSandbox, which runs Claude's tools inside an isolated VM instead of on your Mac. [line 92] [Source]

errors [Source]

  • New "API Error: 401 Invalid authentication credentials" section: covers the case where a credential's format is valid but the account/organization behind it was revoked, disabled, or deactivated, with guidance to check /status to know whether your API key or your login is active. [line 533] [Source]
  • New "Input must be provided either through stdin or as a prompt argument when using --print" section, covering bare claude falling into non-interactive mode when stdout isn't a real terminal (e.g. PowerShell ISE, some IDE panes). [line 1160] [Source]
  • New "Wrapper and IDE errors" section and Claude Code process exited with code N entry, covering errors printed by the launching program (IDE extension, Agent SDK app) rather than Claude Code itself. [line 1399] [Source]
  • Clarified that "Auto mode cannot determine the safety of an action" can now also mean an Amazon Bedrock account can't invoke the named classifier model (a persistent, not transient, failure), in addition to the classifier being overloaded/rate-limited. [lines 197-207] [Source]
  • Usage-limits section now distinguishes plan-quota errors from Server is temporarily limiting requests (a server-side throttle) and Usage credits required for 1M context (an entitlement check, not a quota). [line 265] [Source]

fast-mode [Source]

  • A Fast mode ON/OFF confirmation and the icon now appear consistently whenever a model switch changes fast mode state, including switches via /config model=<model> or Remote Control (previously those two paths changed fast mode silently). [line 35] [Source]

network-config [Source]

  • In Claude Desktop sessions where the app manages the provider connection (Code tab on a third-party provider, Cowork sessions), Claude Code now reads proxy/TLS environment variables only from managed settings and ~/.claude/settings.json, ignoring a repository's own settings files, so a checked-out repo can't redirect the connection (requires v2.1.217+ for this scoping). [line 94] [Source]

permission-modes [Source]

  • Clarified that the "auto mode cannot determine the safety" message means a classifier request failed — usually transient, but on Amazon Bedrock it can repeat until the account is granted access to the named model. [line 166] [Source]

permissions [Source]

  • Read-only Bash commands now correctly prompt in more cases: docker/Podman pointed at another daemon (-H, --context, --url, --connection), file with -m/-f path-opening flags, commands containing a Windows UNC network path, and commands longer than 10,000 characters or otherwise unparseable. [lines 176-179] [Source]
  • Clarified that a single-segment relative directory pattern like src/** matches differently by rule type: as an allow rule it matches only <cwd>/src, but as a deny/ask rule it matches a src directory at any depth. Added a worked example table. [lines 274-277] [Source]

plugins-reference [Source]

  • Boolean frontmatter fields (e.g. disable-model-invocation) in plugin skills/commands now accept yes/no/on/off/1/0 in any case, in addition to true/false (v2.1.218+). [line 34] [Source]

sessions [Source]

  • Clarified that resuming a session started with a custom --agent now looks in two places for that agent — the session's original directory (if trusted), then the directory you resume from — so a project-scoped agent still loads from elsewhere. [line 26] [Source]

settings [Source]

  • New managed-settings-only key disableMobileSimulatorTools to block Claude's access to the desktop app's iOS Simulator pane while leaving manual use intact. [line 236] [Source]

skills [Source]

  • New background frontmatter field (applies with context: fork): set to false to wait for the forked subagent's result in the invoking turn instead of running it in the background. Default is now true — forked skills run in the background by default as of v2.1.218 (previously they always blocked the turn). [line 230] [Source]
  • Documented exceptions that still force a forked skill to wait for its result (non-interactive mode, CLAUDE_CODE_DISABLE_BACKGROUND_TASKS=1, a second concurrent invocation, or a scheduled task), and that a backgrounded fork uses the narrower background-subagent tool set. Background fork edits also land outside session checkpoints. [line 482 onward]
  • Boolean frontmatter fields now accept yes/no/on/off/1/0 in any case, in addition to true/false (v2.1.218+). [line 213] [Source]

sub-agents [Source]

  • Clarified that conversation-forking subagents are exempt from the smaller tool set that otherwise applies to background subagents. [line 674] [Source]

troubleshoot-install [Source]

  • New section on running scripts is disabled on this system / PSSecurityException when npm's .ps1 launchers are blocked by PowerShell's execution policy, with three fixes (allow local scripts, use the .cmd launcher, or use the PowerShell installer). [line ~469]
  • "Native binary not found after npm install" rewritten: explains the new explicit Error: claude native binary not installed message (macOS/Linux) when postinstall didn't run or the optional platform dependency wasn't downloaded, plus a cli-wrapper.cjs fallback launcher and Windows placeholder-executable behavior. [line 711] [Source]
  • Broadened the PowerShell "install script returns HTML" symptom description to cover version/language-dependent parse errors (ParserError/ParseException, Missing expression after unary operator), not just the single message shown before. [lines 277-289] [Source]

troubleshooting [Source]

  • Added a lookup-table row pointing Claude Code process exited with code 1 in VS Code or an SDK app to the new error-reference entry. [line 14] [Source]

ultrareview [Source]

  • Reorganized into dedicated subsections ("Review against a different base," "Review a pull request," "Diff limits and fallbacks") and added a new "Pass a request in plain words" section: on v2.1.218+, /code-review ultra check my auth changes reviews your current branch and relates findings to your note; a single word is still read as a branch/PR reference. [line 47] [Source]
  • Non-interactive /code-review ultra (e.g. claude -p '/code-review ultra') now launches the cloud review and prints a tracking link without waiting, instead of running a local review as before v2.1.218; it still stops before launching if the run would bill usage credits, since that needs interactive confirmation. [line 95] [Source]

workflows [Source]

  • /deep-research now only runs when explicitly invoked; before v2.1.218, Claude could start it on its own. [line 72] [Source]

API changes

Changed documents

refusals-and-fallback [Source]

  • Added a new refusal category "general_harms" to the stop_details table: requests related to an area determined to be harmful, which may also trigger on benign work. [line 78] [Source]

user-management [Source]

  • New FAQ: "What happens to an Admin API key when the person who created it leaves?" — keys are org-scoped and don't expire, so they keep working after the creator is removed or downgraded; admins must manually delete and replace them when offboarding a key creator. [line 655] [Source]