What's changed
- Added PowerShell tool for Windows as an opt-in preview. Learn more at https://code.claude.com/docs/en/tools-reference#powershell-tool
- Added
ANTHROPIC_DEFAULT_{OPUS,SONNET,HAIKU}_MODEL_SUPPORTSenv vars to override effort/thinking capability detection for pinned default models for 3p (Bedrock, Vertex, Foundry), and_MODEL_NAME/_DESCRIPTIONto customize the/modelpicker label - Added
CLAUDE_STREAM_IDLE_TIMEOUT_MSenv var to configure the streaming idle watchdog threshold (default 90s) - Added
TaskCreatedhook that fires when a task is created viaTaskCreate - Added
WorktreeCreatehook support fortype: "http"— return the created worktree path viahookSpecificOutput.worktreePathin the response JSON - Added
allowedChannelPluginsmanaged setting for team/enterprise admins to define a channel plugin allowlist - Added
x-client-request-idheader to API requests for debugging timeouts - Added idle-return prompt that nudges users returning after 75+ minutes to
/clear, reducing unnecessary token re-caching on stale sessions - Deep links (
claude-cli://) now open in your preferred terminal instead of whichever terminal happens to be first in the detection list - Rules and skills
paths:frontmatter now accepts a YAML list of globs - MCP tool descriptions and server instructions are now capped at 2KB to prevent OpenAPI-generated servers from bloating context
- MCP servers configured both locally and via claude.ai connectors are now deduplicated — the local config wins
- Background bash tasks that appear stuck on an interactive prompt now surface a notification after ~45 seconds
- Token counts ≥1M now display as "1.5m" instead of "1512.6k"
- Global system-prompt caching now works when
ToolSearchis enabled, including for users with MCP tools configured - Fixed voice push-to-talk: holding the voice key no longer leaks characters into the text input, and transcripts now insert at the correct position
- Fixed up/down arrow keys being unresponsive when a footer item is focused
- Fixed
Ctrl+U(kill-to-line-start) being a no-op at line boundaries in multiline input, so repeatedCtrl+Unow clears across lines - Fixed null-unbinding a default chord binding (e.g.
"ctrl+x ctrl+k": null) still entering chord-wait mode instead of freeing the prefix key - Fixed mouse events inserting literal "mouse" text into transcript search input
- Fixed workflow subagents failing with API 400 when the outer session uses
--json-schemaand the subagent also specifies a schema - Fixed missing background color behind certain emoji in user message bubbles on some terminals
- Fixed the "allow Claude to edit its own settings for this session" permission option not sticking for users with
Edit(.claude)allow rules - Fixed a hang when generating attachment snippets for large edited files
- Fixed MCP tool/resource cache leak on server reconnect
- Fixed a startup performance issue where partial clone repositories (Scalar/GVFS) triggered mass blob downloads
- Fixed native terminal cursor not tracking the text input caret, so IME composition (CJK input) now renders inline and screen readers can follow the input position
- Fixed spurious "Not logged in" errors on macOS caused by transient keychain read failures
- Fixed cold-start race where core tools could be deferred without their bypass active, causing Edit/Write to fail with InputValidationError on typed parameters
- Improved detection for dangerous removals of Windows drive roots (
C:\,C:\Windows, etc.) - Improved interactive startup by ~30ms by running
setup()in parallel with slash command and agent loading - Improved startup for
claude "prompt"with MCP servers — the REPL now renders immediately instead of blocking until all servers connect - Improved Remote Control to show a specific reason when blocked instead of a generic "not yet enabled" message
- Improved p90 prompt cache rate
- Reduced scroll-to-top resets in long sessions by making the message window immune to compaction and grouping changes
- Reduced terminal flickering when animated tool progress scrolls above the viewport
- Changed issue/PR references to only become clickable links when written as
owner/repo#123— bare#123is no longer auto-linked - Slash commands unavailable for the current auth setup (
/voice,/mobile,/chrome,/upgrade, etc.) are now hidden instead of shown - [VSCode] Added rate limit warning banner with usage percentage and reset time
- Stats screenshot (Ctrl+S in /stats) now works in all builds and is 16× faster