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
/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
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]
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]
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]
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]
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]
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]
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]
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]
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]
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]
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]
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]
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]
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]
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]
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]
Updated notification section: referenced new preferredNotifChannel setting as an alternative to hooks for terminals that don't receive desktop notifications. [line 54] [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]
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]
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]
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]
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]