What's changed
- Changed tool search to bypass the third-party proxy gate when the environment variable is set (replaces
CLAUDE_CODE_PROXY_SUPPORTS_TOOL_REFERENCE, now removed) - Added
wkey in/copyto write the focused selection directly to a file, bypassing the clipboard (useful over SSH) - Added optional description argument to
/plan(e.g.,/plan fix the auth bug) that enters plan mode and immediately starts - Added
claude pluginsas an alias forclaude plugin - Added
ExitWorktreetool to leave anEnterWorktreesession - Added
CLAUDE_CODE_DISABLE_CRONenvironment variable to immediately stop scheduled cron jobs mid-session - Added
lsof,pgrep,tput,ss,fd, andfdfindto the bash auto-approval allowlist, reducing permission prompts for common read-only operations - Added support for marketplace git URLs without
.gitsuffix (Azure DevOps, AWS CodeCommit) - Restored the
modelparameter on the Agent tool for per-invocation model overrides - Simplified effort levels to low/medium/high (removed max) with new symbols (○ ◐ ●) and a brief notification instead of a persistent icon. Use
/effort autoto reset to default - Improved
/config— Escape now cancels changes, Enter saves and closes, Space toggles settings - Improved up-arrow history to show current session's messages first when running multiple concurrent sessions
- Improved voice input transcription accuracy for repo names and common dev terms (regex, OAuth, JSON)
- Improved marketplace clone failure messages to show diagnostic info even when git produces no stderr
- Improved
claude plugin validateto explain that marketplace.json source paths are relative to the repo root when rejecting../paths - Improved bash command parsing by switching to a native module — faster initialization and no memory leak
- Reduced false-positive bash permission prompts — tree-sitter parsing now handles
find -exec, variable assignments, command substitutions, and many other patterns that previously triggered unnecessary prompts. Also fixed tree-sitter not loading in npm-installed versions - Reduced bundle size by ~510 KB
- Changed CLAUDE.md HTML comments (
<!-- ... -->) to be hidden from Claude when auto-injected. Comments remain visible when read with the Read tool - Fixed slow exits when background tasks or hooks were slow to respond
- Fixed agent task progress stuck on "Initializing…"
- Fixed skill hooks firing twice per event when a hooks-enabled skill is invoked by the model
- Fixed several voice mode issues: occasional input lag, false "No speech detected" errors after releasing push-to-talk, and stale transcripts re-filling the prompt after submission
- Fixed
--continuenot resuming from the most recent point after--compact - Fixed bash security parsing edge cases
- Fixed several plugin issues: installation failing on Windows with
EEXISTerror in OneDrive folders, marketplace blocking user-scope installs when a project-scope install exists,CLAUDE_CODE_PLUGIN_CACHE_DIRcreating literal~directories, andplugin.jsonwith marketplace-only fields failing to load - Fixed feedback survey appearing too frequently in long sessions
- Fixed
--effortCLI flag being reset by unrelated settings writes on startup - Fixed backgrounded Ctrl+B queries losing their transcript or corrupting the new conversation after
/clear - Fixed
/clearkilling background agent/bash tasks — only foreground tasks are now cleared - Fixed worktree isolation issues: Task tool resume not restoring cwd, and background task notifications missing
worktreePathandworktreeBranch - Fixed
/modelnot displaying results when run while Claude is working - Fixed digit keys selecting menu options instead of typing in plan mode permission prompt's text input
- Fixed sandbox permission issues: certain file write operations incorrectly allowed without prompting, and output redirections to allowlisted directories (like
/tmp/claude/) prompting unnecessarily - Improved CPU utilization in long sessions
- Fixed prompt cache invalidation in SDK
query()calls, reducing input token costs up to 12x - Fixed Escape key becoming unresponsive after cancelling a query
- Fixed double Ctrl+C not exiting when background agents or tasks are running
- Fixed team agents to inherit the leader's model
- Fixed "Always Allow" saving permission rules that never match again
- Fixed several hooks issues:
transcript_pathpointing to the wrong directory for resumed/forked sessions, agentpromptbeing silently deleted from settings.json on every settings write, PostToolUse block reason displaying twice, async hooks not receiving stdin with bashread -r, and validation error message showing an example that fails validation - Fixed session crashes in Desktop/SDK when Read returned files containing U+2028/U+2029 characters
- Fixed terminal title being cleared on exit even when
CLAUDE_CODE_DISABLE_TERMINAL_TITLEwas set - Fixed several permission rule matching issues: wildcard rules not matching commands with heredocs, embedded newlines, or no arguments;
sandbox.excludedCommandsfailing with env var prefixes; "always allow" suggesting overly broad prefixes for nested CLI tools; and deny rules not applying to all command forms - Fixed oversized and truncated images from Bash data-URL output
- Fixed a crash when resuming sessions that contained Bedrock API errors
- Fixed intermittent "expected boolean, received string" validation errors on Edit, Bash, and Grep tool inputs
- Fixed multi-line session titles when forking from a conversation whose first message contained newlines
- Fixed queued messages not showing attached images, and images being lost when pressing ↑ to edit a queued message
- Fixed parallel tool calls where a failed Read/WebFetch/Glob would cancel its siblings — only Bash errors now cascade
- VSCode: Fixed scroll speed in integrated terminals not matching native terminals
- VSCode: Fixed Shift+Enter submitting input instead of inserting a newline for users with older keybindings
- VSCode: Added effort level indicator on the input border
- VSCode: Added
vscode://anthropic.claude-code/openURI handler to open a new Claude Code tab programmatically, with optionalpromptandsessionquery parameters