Claude docs changes for May 1st, 2026 [diff]

Executive Summary

  • New claude project purge command cleans up all local Claude Code state (transcripts, tasks, history) for a project with dry-run and interactive options
  • bypassPermissions mode now truly bypasses all paths including .git, .claude, .vscode; previously-protected paths now only retain a circuit breaker for root/home directory removals like rm -rf /
  • LLM gateway model auto-discovery: when ANTHROPIC_BASE_URL points at a compatible gateway, Claude Code automatically populates the /model picker from the gateway's /v1/models endpoint (requires v2.1.126+)
  • max_tokens=0 now supported in the Messages API to pre-warm the prompt cache without generating a response
  • 1M token context window beta retired for Claude Sonnet 4.5 and Claude Sonnet 4; migrate to Claude Sonnet 4.6 or Opus 4.6 where it's generally available

New Claude Code versions

2.1.126

New features

  • /model picker now lists models from a gateway's /v1/models endpoint when ANTHROPIC_BASE_URL points at an Anthropic-compatible gateway
  • Added claude project purge [path] command to delete all Claude Code state for a project (transcripts, tasks, debug logs, file-edit history, prompt history, config entry); supports --dry-run, -y/--yes, -i/--interactive, and --all
  • claude auth login now accepts the OAuth code pasted into the terminal when the browser callback can't reach localhost (WSL2, SSH, containers)
  • claude_code.skill_activated OpenTelemetry event now fires for user-typed slash commands and carries a new invocation_trigger attribute ("user-slash", "claude-proactive", or "nested-skill")

Existing feature improvements

  • --dangerously-skip-permissions now bypasses prompts for writes to .claude/, .git/, .vscode/, shell config files, and other previously-protected paths (catastrophic removal commands like rm -rf / still prompt as a safety net)
  • Auto mode: the spinner now turns red when a permission check stalls, instead of looking like the tool is running
  • Host-managed deployments (CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST) no longer auto-disable analytics on Bedrock/Vertex/Foundry
  • Windows: PowerShell 7 installed via the Microsoft Store, MSI without PATH, or .NET global tool is now detected
  • Windows: when the PowerShell tool is enabled, Claude now treats PowerShell as the primary shell instead of defaulting to Bash
  • Read tool: removed the per-file malware-assessment reminder that could cause spurious refusals on legacy models

Major bug fixes

  • Security: Fixed allowManagedDomainsOnly / allowManagedReadPathsOnly being ignored when a higher-priority managed-settings source lacked a sandbox block
  • Fixed pasting an image larger than 2000px breaking the session — images are now downscaled on paste, and oversized images in history are automatically removed and the request retried
  • Fixed OAuth login failing with timeout on slow or proxied connections, in IPv6-only devcontainers, and when the browser callback can't reach localhost
  • Fixed "Stream idle timeout" error after waking Mac from sleep mid-request
  • Fixed background and remote sessions falsely aborting with "Stream idle timeout" during long model thinking pauses
  • Fixed a hang where the assistant could finish thinking but show no output after a run of empty turns
  • Fixed overly fast trackpad scrolling in Cursor and VS Code 1.92–1.104 integrated terminals
  • Fixed Japanese/Korean/Chinese text rendering as garbled characters on Windows in no-flicker mode
  • Fixed Ctrl+L clearing the prompt input — it now only forces a screen redraw, matching readline behavior
  • Fixed deferred tools (WebSearch, WebFetch, etc.) not being available to skills with context: fork and other subagents on their first turn
  • Fixed plan-mode tools being unavailable in interactive sessions launched with --channels
  • Fixed Agent SDK hang when the model emits a malformed tool name in a parallel tool call batch
  • Windows: clipboard writes no longer expose copied content in process command-line arguments visible to EDR/SIEM telemetry; also fixes >22KB selections not reaching the clipboard

Claude Code changes

Changed documents

Agent SDK - TypeScript [Source]

  • Added new SDKMessageOrigin type documenting the provenance of user-role messages (human, channel, peer, task-notification, coordinator). [line 1007] [Source]
  • Added origin field to SDKUserMessage, SDKUserMessageReplay, and SDKResultMessage types, with explanation that origin: { kind: "task-notification" } identifies synthetic turns from background tasks. [line 844] [Source]
  • Added oauth_org_not_allowed to the SDKAssistantMessageError union type. [line 828] [Source]

Analytics [Source]

  • Added note that per-user token counts and cost estimates require configuring OpenTelemetry export. [line 26] [Source]

Authentication [Source]

  • Clarified that the OAuth code-paste flow occurs specifically when the browser can't reach Claude Code's local callback server (common in WSL2, SSH sessions, and containers). [line 15] [Source]

Auto Mode Configuration [Source]

  • Added explicit note that auto mode is available on Max, Team, Enterprise, and API plans only — not on Pro or on Bedrock/Vertex/Foundry. [line 10] [Source]

Claude Directory [Source]

  • Added comprehensive documentation for the new claude project purge command, including what it deletes, all flag options (--dry-run, --yes, -i, --all), and what it leaves untouched. [line 222] [Source]

CLI Reference [Source]

  • Added claude project purge [path] to the CLI command table with full flag documentation. [line 31] [Source]

Commands [Source]

  • Added clarification that a command is only recognized at the start of a message; text following the command name is passed as arguments. [line 11] [Source]

Data Usage [Source]

  • Added note that as of v2.1.126, when CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST is set, Statsig metrics default to on for Vertex/Bedrock/Foundry and follow the standard DISABLE_TELEMETRY opt-out. [line 106] [Source]

Environment Variables [Source]

  • Added CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST variable: set by host platforms to manage provider routing and skip automatic telemetry opt-outs. [line 128] [Source]
  • Added DISABLE_GROWTHBOOK variable to disable GrowthBook feature-flag fetching and use code defaults. [line 173] [Source]
  • Updated CLAUDE_STREAM_IDLE_TIMEOUT_MS: default and minimum is now 300000 (5 min) for both byte-level and event-level watchdogs. [line 164] [Source]

Fullscreen [Source]

  • Updated Ctrl+L description: the first press now redraws the screen (no longer clears input) and shows a hint; the second press clears the conversation. [line 108] [Source]

Headless Mode [Source]

  • Added oauth_org_not_allowed to the error category enum in the system/api-retry event. [line 124] [Source]

Hooks [Source]

  • Added oauth_org_not_allowed as a new error type for the StopFailure hook event. [line 201] [Source]

Hooks Guide [Source]

  • Added oauth_org_not_allowed as a new error type for the StopFailure hook event matcher. [line 561] [Source]

Interactive Mode [Source]

  • Updated Ctrl+L description: now only redraws screen, input and history are preserved. [line 27] [Source]
  • Added Ctrl+S shortcut to cycle history search scope between session, project, and all projects. [line 214] [Source]

Keybindings [Source]

  • Updated chat:clearInput (Ctrl+L) description: now forces a screen redraw while preserving input. [line 103] [Source]
  • Added historySearch:cycleScope action (Ctrl+S) to cycle between session, project, and everywhere scopes. [line 173] [Source]

LLM Gateway [Source]

  • Documented new automatic model discovery: when ANTHROPIC_BASE_URL points at an Anthropic-format gateway, Claude Code queries /v1/models at startup and adds results to the /model picker labeled "From gateway". Results are cached to ~/.claude/cache/gateway-models.json. Requires v2.1.126+. [line 47] [Source]

Memory [Source]

  • Clarified CLAUDE.md load order: content is ordered from filesystem root down to working directory, so instructions closer to the launch directory are read last (higher priority). [line 126] [Source]

Model Configuration [Source]

  • Updated ANTHROPIC_CUSTOM_MODEL_OPTION description: clarified it's mainly for models not returned by gateway auto-discovery; for LLM gateways, the picker is now auto-populated. [line 232] [Source]

Monitoring Usage [Source]

  • Added invocation_trigger attribute to the claude_code.skill_activated OTel event, indicating how the skill was triggered ("user-slash", "claude-proactive", or "nested-skill"). [line 686] [Source]

Permission Modes [Source]

  • Updated bypassPermissions mode description: as of v2.1.126 it now bypasses all paths including previously-protected ones; only root/home directory removals still prompt as a circuit breaker. [line 213] [Source]
  • Updated protected paths section to clarify they apply in every mode except bypassPermissions. [line 225] [Source]
  • Added that acceptEdits mode auto-approves PowerShell file-write cmdlets (Set-Content, Add-Content, etc.) on in-scope paths when the PowerShell tool is enabled. [line 92] [Source]

Permissions [Source]

  • Updated bypassPermissions mode table entry and description to reflect that it now skips all prompts; removals of root/home still prompt as a circuit breaker. [line 42] [Source]
  • Added new PowerShell permission rules section documenting wildcard matching, alias canonicalization, and AST-based compound command parsing. [line 148] [Source]

Settings [Source]

  • Added preferredNotifChannel setting to control notification method ("auto", "terminal_bell", "iterm2", "iterm2_with_bell", "kitty", "ghostty", or "notifications_disabled"). [line 202] [Source]

Setup [Source]

  • Added note that if claude still runs after uninstall, it may be a second installation or leftover shell alias from an older installer, with a link to the troubleshooting guide. [line 429] [Source]

Sub-Agents [Source]

  • Added note that permissionMode, mcpServers, and hooks frontmatter fields are ignored for plugin subagents. [line 234] [Source]
  • Updated bypassPermissions caution note: it now skips all prompts including .git/.claude/.vscode/.idea/.husky; root/home removals still prompt. [line 361] [Source]

Terminal Configuration [Source]

  • Updated notification section: referenced new preferredNotifChannel setting as an alternative to hooks for terminals that don't receive desktop notifications. [line 54] [Source]

Tools Reference [Source]

  • Updated Windows PowerShell tool description: when enabled, Claude now treats PowerShell as the primary shell; Bash remains available for POSIX scripts when Git Bash is installed. [line 108] [Source]

Troubleshoot Installation [Source]

  • Expanded OAuth troubleshooting section (renamed from "WSL2" to "WSL2, SSH, or containers") to cover SSH sessions and containers. Improved guidance for pasting the OAuth code and using claude auth login as a fallback. [line 681] [Source]

API changes

Changed documents

API Beta Reference [Source]

  • Added user-profiles-2026-03-24 to the list of recognized beta header values (now 20+ members). [line 63] [Source]
  • Added xhigh effort level to BetaEffortCapability, expanding the capability from 2 to 3 additional members. [line 295] [Source]

Beta Messages Create [Source]

  • max_tokens minimum changed from 1 to 0; added documentation that max_tokens: 0 populates the prompt cache without generating a response. [line 82] [Source]
  • Added encrypted_content field to BetaCompactionBlockParam for round-tripping opaque metadata from prior compaction. [line 2501] [Source]
  • Added xhigh effort level to the output_config.effort enum. [line 2841] [Source]

Beta Models [Source]

  • Added xhigh effort level to BetaEffortCapability in model capability info. [line 59] [Source]

Messages Create (TypeScript) [Source]

  • max_tokens minimum changed from 1 to 0 with added documentation for cache pre-warming use case. [line 31] [Source]
  • Added xhigh to the effort enum in output_config. [line 2280] [Source]

Pricing [Source]

  • Removed "Long context premium" from the list of pricing modifiers that do not apply to Claude Managed Agents — long context pricing now applies to Managed Agents sessions. [line 304] [Source]

Release Notes Overview [Source]

  • Added April 30, 2026 entry: the 1M token context window beta (context-1m-2025-08-07) is retired for Claude Sonnet 4.5 and Claude Sonnet 4. Requests exceeding 200k tokens now return an error. Users should migrate to Claude Sonnet 4.6 or Claude Opus 4.6 where 1M context is GA at standard pricing. [line 9] [Source]