Claude Code Changelog: Complete Version History
Every Claude Code release, version by version. Features, fixes, and breaking changes from v0.2 beta through the latest 2026 updates.
Stop configuring. Start shipping.Everything you're reading about and more..
Agentic Orchestration Kit for Claude Code.
Agentic Orchestration Kit for Claude Code.
Looking for the latest releases? This changelog documents Claude Code's version history through April 2026. For the most current updates, run
claude --versionin your terminal.
v2.1.111
- Opus 4.7 xhigh - Claude Opus 4.7 with new
xhigheffort level (betweenhighandmax) now available via/effort,--effort, and the model picker; other models fall back tohigh - Auto mode for Max - Auto mode is available for Max subscribers when using Opus 4.7, and no longer requires
--enable-auto-mode - /effort slider -
/effortopens an interactive slider when called without arguments, with arrow-key navigation and Enter to confirm - Auto theme - Added "Auto (match terminal)" theme that matches your terminal's dark/light mode, selectable from
/theme - /less-permission-prompts skill - Scans transcripts for common read-only Bash and MCP tool calls and proposes a prioritized allowlist for
.claude/settings.json - /ultrareview - Runs comprehensive code review in the cloud using parallel multi-agent analysis; invoke with no args to review the current branch or
/ultrareview <PR#>for a specific GitHub PR - PowerShell tool rollout - Windows PowerShell tool progressively rolling out; opt in or out with
CLAUDE_CODE_USE_POWERSHELL_TOOL(requirespwshon PATH on Linux/macOS) - Fewer Bash prompts - Read-only bash commands with glob patterns (e.g.
ls *.ts) and commands starting withcd <project-dir> &&no longer trigger permission prompts - Typo suggestions -
claude <word>suggests the closest subcommand on near-miss typos (e.g.claude udpatehintsclaude update) - Named plan files - Plan files are now named after your prompt (e.g.
fix-auth-race-snug-otter.md) instead of purely random words - Setup wizard polish -
/setup-vertexand/setup-bedrockshow the actualsettings.jsonpath whenCLAUDE_CONFIG_DIRis set, seed model candidates from existing pins, and offer a "with 1M context" option - Ctrl+U / Ctrl+L -
Ctrl+Uclears the entire input buffer (restore withCtrl+Y);Ctrl+Lforces a full screen redraw - OTEL raw bodies - Added
OTEL_LOG_RAW_API_BODIESenv var to emit full API request/response bodies as OpenTelemetry log events - Revert streaming cap - Reverted the v2.1.110 non-streaming fallback retry cap that traded long waits for more outright failures during overload
- Display tearing fix - Fixed random character tearing and drifting input in iTerm2 + tmux when terminal notifications are sent
- LSP diagnostics fix - Fixed stale pre-edit LSP diagnostics appearing after an edit and causing Claude to re-read files it just edited
- Bedrock/Vertex 429 fix - Fixed 429 rate-limit errors on Bedrock/Vertex/Foundry referencing status.claude.com, which only covers Anthropic-operated providers
- Windows fixes -
CLAUDE_ENV_FILEand SessionStart hook env files now apply on Windows; drive-letter paths in permission rules are correctly root-anchored and case-insensitive - Misc fixes - Fixed
@file suggestions re-scanning on every turn in non-git dirs,/resumetab-completion auto-resuming,/contextblank-line rendering,/cleardropping/renamenames, feedback surveys appearing back-to-back, unclickable wrapped bare URLs, plugin dependency error clarity, and the non-existentcommitskill reference
v2.1.110
- /tui fullscreen - Added
/tuicommand andtuisetting for switching to flicker-free fullscreen rendering mid-conversation - Push notifications - Claude can send mobile push notifications when Remote Control and "Push when Claude decides" config are enabled
- Ctrl+O / /focus split -
Ctrl+Onow only toggles normal vs verbose transcript; focus view is a separate/focuscommand - Auto-scroll toggle - Added
autoScrollEnabledconfig to disable conversation auto-scroll in fullscreen mode - External editor context - Added option to show Claude's last response as commented context in the
Ctrl+Gexternal editor - /plugin sorting - Installed tab surfaces items needing attention and favorites at the top, hides disabled items behind a fold, and supports
fto favorite the selected item - MCP scope doctor -
/doctornow warns when an MCP server is defined in multiple config scopes with different endpoints - Scheduled task recovery -
--resume/--continuenow resurrects unexpired scheduled tasks - Remote Control parity -
/context,/exit, and/reload-pluginsnow work from Remote Control (mobile/web) clients - Write tool edit awareness - Write tool now informs the model when you edit the proposed content in the IDE diff before accepting
- Session recap - Session recap enabled for telemetry-disabled users (Bedrock, Vertex, Foundry,
DISABLE_TELEMETRY); opt out via/configorCLAUDE_CODE_ENABLE_AWAY_SUMMARY=0 - SSE hang fix - Fixed MCP tool calls hanging indefinitely when the server connection drops mid-response on SSE/HTTP transports
- Non-streaming retry fix - Fixed non-streaming fallback retries causing multi-minute hangs when the API is unreachable
- Security hardening - Hardened "Open in editor" actions against command injection from untrusted filenames; fixed
PermissionRequesthooks not re-checkingupdatedInputagainst deny rules;setMode:'bypassPermissions'now respectsdisableBypassPermissionsMode - Misc fixes - Fixed high CPU in fullscreen when selecting text during tool calls, plugin install not honoring
plugin.jsondeps,disable-model-invocation: trueskills failing mid-message,--resumeshowing the first prompt instead of the/renamename, dropped keystrokes after CLI relaunch, garbled startup in Terminal.app,PreToolUsehookadditionalContextbeing dropped on tool failure, and stdio MCP servers disconnecting on stray non-JSON stdout lines
v2.1.109
- Thinking indicator - Improved the extended-thinking indicator with a rotating progress hint
v2.1.108
- 1-hour prompt cache - Added
ENABLE_PROMPT_CACHING_1Henv var to opt into 1-hour prompt cache TTL on API key, Bedrock, Vertex, and Foundry;FORCE_PROMPT_CACHING_5Mforces 5-minute TTL - Session recap - Added recap feature for returning to a session, configurable in
/configand manually invocable with/recap; force withCLAUDE_CODE_ENABLE_AWAY_SUMMARYwhen telemetry is disabled - Built-in slash command discovery - The model can now discover and invoke built-in slash commands like
/init,/review, and/security-reviewvia the Skill tool - /undo alias -
/undois now an alias for/rewind - Model switch warning -
/modelnow warns before switching mid-conversation since the next response re-reads the full history uncached - Resume picker default -
/resumepicker defaults to sessions from the current directory; pressCtrl+Ato show all projects - Better error messages - Server rate limits distinguished from plan usage limits; 5xx/529 errors show a status.claude.com link; unknown slash commands suggest the closest match
- Memory reduction - Reduced memory footprint for file reads, edits, and syntax highlighting by loading language grammars on demand
- Prompt caching warning - Added startup warning when prompt caching is disabled via
DISABLE_PROMPT_CACHING*env vars - Login paste fix - Fixed paste not working in the
/logincode prompt (regression in 2.1.105) - Subscriber caching fix - Fixed subscribers who set
DISABLE_TELEMETRYfalling back to 5-minute prompt cache TTL instead of 1 hour - Auto mode classifier fix - Fixed Agent tool prompting for permission in auto mode when the safety classifier's transcript exceeded its context window
- Resume reliability - Fixed
claude --resume <session-id>losing custom name/color set via/rename, and--resumetruncating sessions containing a self-referencing message - Misc fixes - Fixed
CLAUDE_ENV_FILEBash output failure on trailing#comment, placeholder session titles on short greetings, terminal escape codes after--teleport,/feedbackretry requiring a re-edit, silent precondition-error exits on--teleport/--resume, Remote Control titles being overwritten after three messages, dropped diacritical marks whenlanguageis set, and silent transcript-write failures
v2.1.107
- Thinking hints - Show thinking hints sooner during long operations
v2.1.105
- EnterWorktree path param - Added
pathparameter to theEnterWorktreetool to switch into an existing worktree of the current repository - PreCompact blocking - PreCompact hooks can now block compaction by exiting with code 2 or returning
{"decision":"block"} - Plugin monitors - Added background monitor support for plugins via a top-level
monitorsmanifest key that auto-arms at session start or on skill invoke - /proactive alias -
/proactiveis now an alias for/loop - Stalled stream handling - Streams now abort after 5 minutes of no data and retry non-streaming instead of hanging indefinitely
- Network errors - Connection errors now show a retry message immediately instead of a silent spinner
- File write display - Long single-line writes (e.g. minified JSON) are truncated in the UI instead of paginating across many screens
- /doctor improvements - New layout with status icons; press
fto have Claude fix reported issues - Skill description cap - Raised skill listing cap from 250 to 1,536 characters with a startup warning when descriptions are truncated
- WebFetch cleanup - WebFetch now strips
<style>and<script>contents from fetched pages so CSS-heavy pages no longer exhaust the content budget - Stale worktree cleanup - Stale agent worktree cleanup now removes worktrees whose PR was squash-merged
- MCP truncation hints - MCP large-output truncation prompts now give format-specific recipes (
jqfor JSON, computed Read chunk sizes for text) - Queued image fix - Fixed images attached to queued messages being dropped when sent while Claude is working
- Rendering fixes - Fixed screen blanking on wrapped prompts in long conversations, leading-whitespace trimming breaking ASCII art and indented diagrams, garbled bash output on clickable file links, and alt+enter/Ctrl+J newline regressions from 2.1.100
- Plugin fixes - Marketplace plugins with
package.jsonand lockfiles now auto-install deps on install/update; fixed marketplace auto-update leaving the official marketplace broken when a plugin held files open - Channel notifications - Fixed inbound channel notifications being silently dropped after the first message for Team/Enterprise users
- Misc fixes - Fixed one-shot scheduled tasks re-firing, duplicate "Creating worktree" text, queued prompts disappearing in focus mode, resume hint not printing after
/resume/--worktree//branch, feedback survey shortcut firing mid-prompt, malformed stdio MCP output hanging sessions, MCP tools missing on first turn of headless sessions, Bedrockus.*model IDs persisting in non-US regions, raw JSON dumps on 429 errors, resume crashes on malformed text blocks,/helpcutoff at short heights, washed-out 16-color palettes over SSH/mosh, andacceptEditssuggestions that would downgrade permissions
v2.1.101
- /team-onboarding - Added command to generate a teammate ramp-up guide from your local Claude Code usage
- OS CA cert trust - Claude Code now trusts the OS CA certificate store by default so enterprise TLS proxies work without extra setup (set
CLAUDE_CODE_CERT_STORE=bundledto revert) - Auto cloud env -
/ultraplanand other remote-session features now auto-create a default cloud environment instead of requiring web setup - Brief mode retry - Brief mode now retries once when Claude responds with plain text instead of a structured message
- Focus mode summaries - Claude writes more self-contained summaries in focus mode since it knows you only see the final message
- Better tool errors - Tool-not-available errors now explain why and how to proceed when a tool exists but isn't available in the current context
- Rate-limit clarity - Rate-limit retry messages now show which limit was hit and when it resets instead of an opaque countdown
- Print mode resume names -
claude -p --resume <name>now accepts session titles set via/renameor--name - Settings resilience - Unrecognized hook event names in
settings.jsonno longer cause the entire file to be ignored - Tracing privacy - Beta tracing now honors
OTEL_LOG_USER_PROMPTS,OTEL_LOG_TOOL_DETAILS, andOTEL_LOG_TOOL_CONTENT; sensitive attributes are opt-in - SDK cleanup - SDK
query()cleans up subprocess and temp files when consumersbreakfromfor awaitor useawait using - POSIX which CVE - Fixed a command injection vulnerability in the POSIX
whichfallback used by LSP binary detection - Memory leak fix - Fixed a long-session memory leak retaining dozens of historical message-list copies in the virtual scroller
- Resume reliability - Fixed
--resume/--continuelosing context on large sessions when the loader anchored on a dead-end branch, subagent chain bridging, crashes on missingfile_path, and failures after worktree cleanup left stale directories - Timeout override - Fixed a hardcoded 5-minute request timeout that ignored
API_TIMEOUT_MS, aborting slow backends (local LLMs, extended thinking, slow gateways) - Hook deny enforcement - Fixed
permissions.denynot overriding a PreToolUse hook'spermissionDecision: "ask"(previously the hook could downgrade a deny into a prompt) - Cleanup scoping fix - Fixed
--setting-sourceswithoutusercausing background cleanup to ignorecleanupPeriodDaysand delete history older than 30 days - Bedrock auth fix - Fixed Bedrock SigV4 failing with 403 when
ANTHROPIC_AUTH_TOKEN,apiKeyHelper, orANTHROPIC_CUSTOM_HEADERSset an Authorization header - Subagent fixes - Fixed subagents not inheriting dynamically-injected MCP servers, and isolated-worktree subagents being denied Read/Edit on files inside their own worktree
- Grep self-heal - Fixed Grep ENOENT when the embedded ripgrep binary path becomes stale; now falls back to system
rgand self-heals mid-session - Plugin fixes - Fixed duplicate
name:frontmatter resolving to the wrong plugin,/plugin updateENAMETOOLONG, Discover showing already-installed plugins, stale directory-source caches, and skills ignoringcontext: forkandagentfields - Misc fixes - Fixed
/btwwriting a full conversation copy on every use,/contextfree-space disagreement with header percentage,ctrl+]/ctrl+\/ctrl+^keybindings in Terminal.app and xterm,/loginURL padding breaking selection, crash on numericenvvalues, custom keybindings not loading on third-party providers,claude --continue -pnot continuing-p/SDK sessions, several Remote Control session issues, and/insightssometimes omitting the report file link
v2.1.98
- Vertex AI setup wizard - Interactive Google Vertex AI setup wizard from the login screen, guiding you through GCP auth, project/region config, credential verification, and model pinning
- Perforce mode - Added
CLAUDE_CODE_PERFORCE_MODEenv var so Edit/Write/NotebookEdit fail on read-only files with ap4 edithint instead of silently overwriting - Monitor tool - Added Monitor tool for streaming events from background scripts
- Subprocess sandboxing - Added Linux PID namespace isolation when
CLAUDE_CODE_SUBPROCESS_ENV_SCRUBis set, plusCLAUDE_CODE_SCRIPT_CAPSto limit per-session script invocations - Print mode caching - Added
--exclude-dynamic-system-prompt-sectionsflag for improved cross-user prompt caching - Worktree status - Added
workspace.git_worktreeto the status line JSON input - LSP client info - Claude Code now identifies itself to language servers via
clientInfoin the initialize request - Bash permission CVE - Fixed a permission bypass where a backslash-escaped flag could be auto-allowed as read-only and lead to arbitrary code execution
- Permission hardening - Fixed compound Bash commands bypassing safety prompts, env-var prefixes not prompting, redirects to
/dev/tcp/...auto-allowing, pipedcdsegments downgrading deny rules, and several false prompts on common commands - Managed settings fixes - Fixed allow rules staying active after admin removal until restart, and
permissions.additionalDirectorieschanges not applying mid-session - 429 backoff - Fixed 429 retries burning all attempts in ~13s when the server returned a small
Retry-After; exponential backoff now applies as a minimum - /agents redesign - Tabbed layout: a Running tab shows live subagents; the Library tab adds Run agent and View running instance actions
- Reload without restart -
/reload-pluginsnow picks up plugin-provided skills without requiring a restart - Accept Edits polish - Auto-approves filesystem commands prefixed with safe env vars or process wrappers (e.g.
LANG=C rm foo,timeout 5 mkdir out) - Vim mode nav -
j/kin NORMAL mode now navigate history and select the footer pill at the input boundary - OTEL span fixes - Interaction spans now correctly wrap full turns under concurrent SDK calls; headless turns end spans per-turn
- Misc fixes - Fixed
--dangerously-skip-permissionssilently downgrading to accept-edits after a protected-path write, scrollback crash on MCP tool hover,/resumepicker filter bugs,/exportpath and extension handling,/effort maxdenial for unknown models, plugin slash commands breaking on YAML-booleanname, MCPmaxResultSizeCharsbypass, voice-mode space leaks,DISABLE_AUTOUPDATERnot suppressing npm registry checks, and stale worktree cleanup removing untracked files
v2.1.97
- Focus view toggle - Added
Ctrl+Ofocus view inNO_FLICKERmode showing prompt, one-line tool summary with diffstats, and final response - Status line refresh - Added
refreshIntervalsetting to re-run the status line command every N seconds - Worktree status field - Added
workspace.git_worktreeto status line JSON input when in a linked git worktree - Live subagent count -
/agentsshowsN runningindicator next to agent types with live instances - Cedar highlighting - Added syntax highlighting for Cedar policy files (
.cedar,.cedarpolicy) - Permission hardening - Tightened Bash tool checks around env-var prefixes and network redirects, reducing false prompts on common commands
- MCP memory leak - Fixed MCP HTTP/SSE connections accumulating ~50MB/hr of unreleased buffers when servers reconnect
- MCP OAuth refresh - Fixed
oauth.authServerMetadataUrlnot being honored on token refresh after restart, fixing ADFS and similar IdPs - 429 backoff fix - Fixed 429 retries burning all attempts in ~13s when the server returns a small
Retry-After - Resume reliability - Fixed several
/resumepicker issues, file-edit diffs disappearing on resume when edited files were over 10KB, cache misses from attachment messages, and typed-while-working messages not persisting - Compaction dedup - Fixed compaction writing duplicate multi-MB subagent transcript files on prompt-too-long retries
- NO_FLICKER polish - Fixed rendering crashes on MCP tool hover, scroll artifacts in zellij, memory leak on API retries, slow mouse-wheel scrolling on Windows Terminal, custom status line display on short terminals, Shift+Enter and Alt/Cmd+arrow shortcuts in Warp, and Korean/Japanese Unicode copy corruption on Windows
- Bedrock empty-string fix - Fixed SigV4 authentication failing when
AWS_BEARER_TOKEN_BEDROCKorANTHROPIC_BEDROCK_BASE_URLare set to empty strings (as GitHub Actions does for unset inputs) - Accept Edits / auto mode - Accept Edits mode auto-approves commands with safe env vars or process wrappers; auto and bypass-permissions modes auto-approve sandbox network prompts;
sandbox.network.allowMachLookupnow takes effect on macOS - Image compression - Pasted and attached images are now compressed to the same token budget as images read via the Read tool
- CJK autocomplete - Slash command and
@-mention completion now triggers after CJK sentence punctuation - Context warning - Context-low warning is now a transient footer notification instead of a persistent row
- Transcript accuracy - Per-block entries now carry final token usage instead of streaming placeholders
- Misc fixes - Fixed markdown blockquote left bar rendering across wrapped lines, session transcript size from empty hook entries and stored pre-edit file copies, and Bridge session cards now show local git repo, branch, and working dir
v2.1.96
- Bedrock auth fix - Fixed Bedrock requests failing with
403 "Authorization header is missing"when usingAWS_BEARER_TOKEN_BEDROCKorCLAUDE_CODE_SKIP_BEDROCK_AUTH(regression in 2.1.94)
v2.1.94
- Mantle Bedrock support - Added support for Amazon Bedrock powered by Mantle; set
CLAUDE_CODE_USE_MANTLE=1 - Default effort bumped - Changed default effort level from medium to high for API-key, Bedrock/Vertex/Foundry, Team, and Enterprise users (control with
/effort) - Slack header - Added compact
Slacked #channelheader with a clickable channel link for Slack MCP send-message tool calls - Output style field - Added
keep-coding-instructionsfrontmatter field support for plugin output styles - Session title hook - Added
hookSpecificOutput.sessionTitletoUserPromptSubmithooks for setting the session title - Stable skill names - Plugin skills declared via
"skills": ["./"]now use the skill's frontmatternamefor invocation, giving a stable name across install methods - 429 agent hang - Fixed agents appearing stuck after a 429 with long Retry-After; errors now surface immediately
- macOS keychain - Fixed Console login silently failing with "Not logged in" when the login keychain is locked or out of sync;
claude doctornow diagnoses the fix - Plugin hook fixes - Fixed plugin skill hooks in YAML frontmatter being silently ignored, and plugin hooks failing with "No such file or directory" when
CLAUDE_PLUGIN_ROOTwas unset - Resume across worktrees -
--resumenow resumes sessions from other worktrees of the same repo directly instead of printing acdcommand - SDK interrupt fix - Fixed SDK/print mode not preserving the partial assistant response in conversation history when interrupted mid-stream
- Misc fixes - Fixed repeated scrollback diffs, multiline prompt indentation, Shift+Space inserting "space", double-tab hyperlinks in tmux+xterm.js terminals, alt-screen ghost lines,
FORCE_HYPERLINKviasettings.jsonenv, native cursor tracking for screen readers, Bedrock Sonnet 3.5 v2us.*inference profile, and stream-json CJK corruption on chunk boundaries - VSCode - Reduced cold-open subprocess work; fixed dropdown menu selection-under-mouse bug; added
settings.jsonparse-error warning banner
v2.1.92
- Fail-closed managed settings - Added
forceRemoteSettingsRefreshpolicy: when set, the CLI blocks startup until remote managed settings are freshly fetched, and exits if the fetch fails - Bedrock setup wizard - Interactive Bedrock setup wizard from the login screen, guiding you through AWS auth, region config, credential verification, and model pinning
- /cost breakdown - Added per-model and cache-hit breakdown to
/costfor subscription users - /release-notes picker - Interactive version picker
- Remote Control naming - Session names now default to your hostname as prefix (e.g.
myhost-graceful-unicorn); override with--remote-control-session-name-prefix - Cache-expiry hint - Pro users see a footer hint when returning after prompt cache expiry, showing roughly how many tokens the next turn will send uncached
- Subagent tmux fix - Fixed subagent spawning permanently failing with "Could not determine pane count" after tmux windows are killed or renumbered
- Hook semantics - Fixed prompt-type Stop hooks incorrectly failing when the fast model returns
ok:false, and restoredpreventContinuation:truefor non-Stop prompt-type hooks - Stream validation - Fixed tool input validation failures when streaming emits array/object fields as JSON-encoded strings
- Extended thinking 400 - Fixed an API 400 when extended thinking produced a whitespace-only text block alongside real content
- Survey polish - Fixed accidental feedback survey submissions from auto-pilot keypresses and consecutive-prompt digit collisions
- Homebrew channels - Fixed Homebrew install update prompts to use the cask's release channel (
claude-codestable,claude-code@latestlatest) - Plugin MCP dedup - Fixed plugin MCP servers stuck "connecting" when duplicating an unauthenticated claude.ai connector
- Write performance - Improved Write tool diff computation 60% faster on files with tabs/
&/$ - Removed commands - Removed
/tagand/vim(toggle vim mode via/config-> Editor mode) - Linux sandbox -
apply-seccomphelper now ships in both npm and native builds, restoring unix-socket blocking
v2.1.91
- MCP result override - Added
_meta["anthropic/maxResultSizeChars"]annotation (up to 500K) for larger results like DB schemas - Shell exec toggle - Added
disableSkillShellExecutionto disable inline shell execution in skills, custom slash commands, and plugin commands - Deep link newlines -
claude-cli://open?q=deep links now support multi-line prompts (encoded%0Ano longer rejected) - Plugin bin/ - Plugins can now ship executables under
bin/and invoke them as bare commands from the Bash tool - Resume chain fix - Fixed transcript chain breaks on
--resumethat could lose conversation history when async writes failed silently - cmd+delete fix - Fixed
cmd+deletenot deleting to start of line on iTerm2, kitty, WezTerm, Ghostty, and Windows Terminal - Plan mode in remote - Fixed plan mode in remote sessions losing track of the plan file after container restart
- Windows rollback - Fixed Windows version cleanup not protecting the active version's rollback copy
- /feedback clarity -
/feedbacknow explains why it's unavailable instead of disappearing from the slash menu - Edit tool anchors - Edit tool now uses shorter
old_stringanchors, reducing output tokens - Misc - JSON schema validation for
permissions.defaultMode: "auto", fasterstripAnsion Bun, improved/claude-apiskill guidance
v2.1.90
- /powerup - Interactive lessons teaching Claude Code features with animated demos
- Plugin offline cache - Added
CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILUREto keep the existing marketplace cache whengit pullfails - Husky protection - Added
.huskyto protected directories (acceptEdits mode) - Rate-limit loop fix - Fixed an infinite loop where the rate-limit options dialog would repeatedly auto-open, eventually crashing the session
- Cache miss regression fix - Fixed
--resumecausing a full prompt-cache miss on the first request for users with deferred tools, MCP servers, or custom agents (regression since v2.1.69) - Format-on-save race - Fixed
Edit/Writefailing with "File content has changed" when a PostToolUse format-on-save hook rewrites between consecutive edits - PreToolUse JSON exit - Fixed PreToolUse hooks that emit JSON to stdout and exit with code 2 not correctly blocking the tool call
- Auto mode boundaries - Fixed auto mode not respecting explicit user boundaries ("don't push", "wait for X before Y") even when the action would otherwise be allowed
- PowerShell hardening - Fixed trailing
&background-job bypass,-ErrorAction Breakdebugger hang, archive-extraction TOCTOU, and parse-fail fallback deny-rule degradation - Misc - Eliminated per-turn JSON.stringify of MCP schemas, SSE transport linear-time streaming, resume picker parallel load, collapsed tool summaries deduplicating,
--resumepicker no longer showing-por SDK sessions, DNS cache cmdlets removed from auto-allow
v2.1.89
- defer permission - Added
"defer"permission decision toPreToolUsehooks; headless sessions pause at a tool call and resume with-p --resumefor re-evaluation - NO_FLICKER opt-in - Added
CLAUDE_CODE_NO_FLICKER=1for flicker-free alt-screen rendering with virtualized scrollback - PermissionDenied hook - Added hook that fires after auto mode classifier denials; return
{retry: true}to tell the model it can retry - Subagent mentions - Added named subagents to
@mention typeahead suggestions - Print mode MCP - Added
MCP_CONNECTION_NONBLOCKING=trueto skip MCP connection wait in-pmode; bounded--mcp-configconnections at 5s - Auto mode retries - Denied commands now show a notification and appear in
/permissions-> Recent tab where you can retry withr - Symlink allow rules - Fixed
Edit(//path/**)andRead(//path/**)allow rules to check the resolved symlink target, not just the requested path - Voice and Windows fixes - Fixed voice push-to-talk for some modifier-combo bindings, Windows voice mode WebSocket upgrade failures, and CRLF doubling / Markdown hard-break stripping on Windows
- Structured output cache - Fixed
StructuredOutputschema cache bug causing ~50% failure rate with multiple schemas - Memory leaks - Fixed large-JSON LRU retention, oversized session file removal crashes, zombie LSP server state, and
/statsundercount excluding subagent usage - Autocompact thrash - Detects three consecutive immediate-refill compactions and stops with an actionable error instead of burning API calls
- Schema drift - Fixed prompt cache misses in long sessions caused by tool schema bytes changing mid-session
- Nested CLAUDE.md - Fixed nested CLAUDE.md files being re-injected dozens of times in long sessions
- Resume crashes - Fixed
--resumecrash when transcript contains a tool result from an older CLI version or interrupted write - Hook filtering - Fixed
ifcondition filtering not matching compound commands (ls && git push) or env-prefixed commands (FOO=bar git push) - Bash on
sed -n/cat- Edit now works on files viewed via Bash without requiring a separate Read call first - Large hook output - Changed over-50K character hook output to be saved to disk with a file path + preview instead of injected directly into context
- Thinking summaries - No longer generated by default in interactive sessions; set
showThinkingSummaries: truein settings.json to restore - PowerShell hardening - External-command arguments with both a double-quote and whitespace now prompt instead of auto-allowing (PS 5.1)
- /env extended -
/envnow applies to PowerShell tool commands - /buddy - April 1st feature: hatch a small creature that watches you code
- Misc fixes - CJK history boundary drops,
-p --resumehangs on large deferred tool inputs,claude-cli://on macOS, MCP multi-block error truncation, SDK image skill-reminder drops, PreToolUse/PostToolUsefile_pathabsolute path, entitlement error misreporting as rate limit, collapsed badge duplication, Devanagari combining marks, main-screen layout shift artifacts, macOS Apple Silicon voice permission, Shift+Enter on Windows Terminal Preview 1.25, iTerm2+tmux streaming jitter, PowerShell stderr progress false-failure, and potential >1GiB Edit OOM
v2.1.87
- Cowork fix - Fixed messages in Cowork Dispatch not getting delivered
v2.1.86
- Session ID header - Added
X-Claude-Code-Session-Idheader to API requests so proxies can aggregate without parsing the body - VCS exclusions - Added
.jjand.slto VCS exclusion lists so Grep and file autocomplete don't descend into Jujutsu or Sapling metadata - Resume regression fix - Fixed
--resumefailing with "tool_use ids were found without tool_result blocks" on sessions created before v2.1.85 - Outside-root edits - Fixed Write/Edit/Read failing on files outside the project root (e.g.
~/.claude/CLAUDE.md) when conditional skills or rules are configured - Config write storm - Fixed unnecessary config disk writes on every skill invocation that could cause performance issues and config corruption on Windows
- --bare regression fix - Fixed
--baremode dropping MCP tools in interactive sessions and silently discarding messages enqueued mid-turn - Plugin script permissions - Fixed official marketplace plugin scripts failing with "Permission denied" on macOS/Linux since v2.1.83
- Statusline cross-session - Fixed statusline showing another session's model when running multiple Claude Code instances and using
/modelin one - Startup latency - Reduced event-loop stalls when many claude.ai MCP connectors are configured (macOS keychain cache extended from 5s to 30s)
- Token efficiency - Reduced
@mention overhead by not JSON-escaping raw string content; capped skill descriptions in/skillslisting at 250 chars; Read tool uses compact line-number format and deduplicates unchanged re-reads - Cache hit rate - Improved prompt cache hit rate for Bedrock, Vertex, and Foundry by removing dynamic content from tool descriptions
- /skills sorting - Menu now sorts alphabetically for easier scanning
- Auto mode messaging - Shows "unavailable for your plan" when disabled by plan restrictions
- VSCode - Fixed "Not responding" during long operations; fixed Max plan users defaulting to Sonnet after 8-hour OAuth refresh
- Misc fixes -
cshortcut copying only ~20 chars of OAuth URL, masked-input token leaks on narrow terminals, scroll not following new messages after wheel-scroll,/pluginuninstallnpreserving data dir, blank transcript after click-then-Enter, lingeringultrathinkhint, and markdown/highlight render cache retention
v2.1.85
- MCP headersHelper env - Added
CLAUDE_CODE_MCP_SERVER_NAMEandCLAUDE_CODE_MCP_SERVER_URLenv vars so one helper can serve multiple servers - Hook if filter - Added conditional
iffield using permission rule syntax (e.g.,Bash(git *)) to filter when hooks run, reducing process-spawn overhead - Scheduled task timestamps - Added timestamp markers in transcripts when
/looporCronCreatefire - Deep link size -
claude-cli://open?q=now supports up to 5,000 characters with a "scroll to review" warning - MCP OAuth discovery - MCP OAuth now follows RFC 9728 Protected Resource Metadata discovery
- Org policy plugins - Plugins blocked by
managed-settings.jsoncan no longer be installed/enabled and are hidden from marketplace views - AskUserQuestion headless - PreToolUse hooks can satisfy
AskUserQuestionby returningupdatedInputalongsidepermissionDecision: "allow" - OTEL privacy -
tool_parametersin tool_result events are now gated behindOTEL_LOG_TOOL_DETAILS=1 - /compact oversized - Fixed
/compactfailing with "context exceeded" when the conversation outgrew the compact request itself - Plugin state fix - Fixed
/plugin enableand/plugin disablefailing when install location differs from declaration in settings - Worktree hook order - Fixed
--worktreeexiting beforeWorktreeCreatehook could run in non-git repos - deniedMcpServers - Fixed setting not blocking claude.ai MCP servers
- Step-up OAuth - Fixed MCP step-up authorization failing when a refresh token exists;
403 insufficient_scopenow correctly triggers re-auth - Memory leaks - Fixed leak in remote sessions on interrupted streaming response; fixed ECONNRESET persistence by using a fresh TCP connection on retry
- Kitty keyboard cleanup - Fixed terminal left in enhanced keyboard mode after exit in Ghostty, Kitty, WezTerm; Ctrl+C/Ctrl+D now work after quitting
- SDK MCP config - Fixed Python Agent SDK
type:'sdk'MCP servers passed via--mcp-configbeing dropped during startup - yoga-layout -> TS - Replaced WASM yoga-layout with a pure TypeScript implementation, improving scroll performance on large transcripts
- Misc fixes - Fixed @-mention autocomplete on large repos, PowerShell dangerous command detection, pasted-image placeholder trailing space, stuck queued prompts, raw key sequences appearing over SSH / VS Code integrated terminal, Remote Control stuck "Requires Action", stale content during streaming scroll-up, shift+enter/meta+enter interception by typeahead,
switch_displaycomputer-use on multi-monitor, crash onOTEL_*_EXPORTER=none, and diff syntax highlighting in non-native builds
v2.1.84
- PowerShell preview - Added PowerShell tool for Windows as an opt-in preview (https://code.claude.com/docs/en/tools-reference#powershell-tool)
- Third-party model tuning - Added
ANTHROPIC_DEFAULT_{OPUS,SONNET,HAIKU}_MODEL_SUPPORTSto override effort/thinking detection for pinned default models on Bedrock/Vertex/Foundry, plus_MODEL_NAME/_DESCRIPTIONfor custom/modelpicker labels - Stream watchdog - Added
CLAUDE_STREAM_IDLE_TIMEOUT_MSenv var to configure the streaming idle watchdog (default 90s) - TaskCreated hook - Added
TaskCreatedhook that fires when a task is created viaTaskCreate - HTTP WorktreeCreate - Added
WorktreeCreatehook support fortype: "http"(return path viahookSpecificOutput.worktreePath) - Channel allowlist - Added
allowedChannelPluginsmanaged setting for team/enterprise channel plugin allowlists - Request ID header - Added
x-client-request-idheader to API requests for debugging timeouts - Idle-return prompt - Nudges users returning after 75+ minutes to
/clear, reducing token re-caching on stale sessions - Deep link terminal -
claude-cli://now opens in your preferred terminal instead of first-in-detection-list - Frontmatter globs - Rules and skills
paths:frontmatter now accepts a YAML list of globs - MCP context caps - MCP tool descriptions and server instructions capped at 2KB to prevent OpenAPI-generated bloat
- MCP dedup - Locally configured and claude.ai connector MCP servers deduplicated; local config wins
- Background bash nudge - Bash tasks appearing stuck on an interactive prompt now surface a notification after ~45 seconds
- ToolSearch caching - Global system-prompt caching now works when
ToolSearchis enabled, including for MCP-tool users - Misc fixes - Voice push-to-talk character leaks, up/down arrows with footer focus,
Ctrl+Uat line boundaries in multiline, null-unbinding default chord binding freeing prefix, mouse event literals in search input, workflow subagent--json-schema400 errors, emoji bubble bg,Edit(.claude)allow rule persistence, large edited-file attachment snippet hang, MCP tool/resource cache leak on reconnect, partial clone mass blob downloads, native cursor tracking for IME/screen readers, transient keychain "Not logged in", cold-start race in core tool deferral, Windows drive-root removal detection, and bare#123auto-linking (now onlyowner/repo#123) - Startup speed - Parallel
setup()saves ~30ms;claude "prompt"with MCP servers renders REPL immediately instead of blocking on server connect; Remote Control blocked-reason clarity - VSCode - Added rate limit warning banner with usage percentage and reset time; stats screenshot (Ctrl+S in
/stats) works in all builds and is 16x faster
v2.1.83
- managed-settings.d/ - Added drop-in directory alongside
managed-settings.jsonfor separate teams to deploy independent policy fragments merged alphabetically - CwdChanged and FileChanged hooks - Added reactive environment-management hook events (e.g. for direnv)
- sandbox.failIfUnavailable - Added setting to exit with error when sandbox is enabled but cannot start, instead of running unsandboxed
- Credential scrub - Added
CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1to strip Anthropic and cloud provider credentials from subprocess envs (Bash tool, hooks, MCP stdio servers) - Transcript search - Press
/in transcript mode (Ctrl+O) to search,n/Nto step through matches - External editor alias - Added
Ctrl+X Ctrl+Eas readline-native alias for opening the external editor - [Image #N] chips - Pasted images now insert a chip at the cursor so you can reference them positionally
- Agent initialPrompt - Agents can declare
initialPromptin frontmatter to auto-submit a first turn - Rebindable shortcuts -
chat:killAgentsandchat:fastModeare now rebindable via~/.claude/keybindings.json - Deep link disable - Added
disableDeepLinkRegistrationsetting to preventclaude-cli://protocol handler registration - Voice startup latency - Fixed 1-8 second UI freeze on startup when voice input was enabled, caused by eagerly loading the native audio module
- MCP policy bypass - Fixed
--mcp-configCLI flag bypassingallowedMcpServers/deniedMcpServersmanaged policy enforcement - claude.ai print mode - Fixed claude.ai MCP connectors (Slack, Gmail, etc.) not available in single-turn
--printmode - macOS exit hang - Fixed Claude Code hanging on exit on macOS
- caffeinate cleanup - Fixed
caffeinateprocess not terminating when Claude Code exits, preventing Mac from sleeping - Background subagent visibility - Fixed background subagents becoming invisible after context compaction, causing duplicate spawns
- Transcript cleanup - Fixed tool result files never being cleaned up, ignoring
cleanupPeriodDays - Non-streaming fallback - Increased fallback token cap (21k -> 64k) and local timeout (120s -> 300s) so fallback requests are less likely to be truncated; added
CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACKenv var - Plugin options -
manifest.userConfigplugins can prompt for configuration at enable time, withsensitive: truevalues stored in keychain (macOS) or protected credentials file - WebFetch identity - WebFetch now identifies as
Claude-Userso site operators can recognize and allowlist viarobots.txt - Startup polish - Reduced 3s wait for claude.ai MCP config fetch; plugin commands/skills/agents load from disk cache without re-fetching;
claude -pwith unauthenticated HTTP/SSE MCP servers ~600ms faster - Key rebinds - Changed "stop all background agents" from
Ctrl+FtoCtrl+X Ctrl+Kto stop shadowing readline forward-char - Deprecation - Deprecated
TaskOutputtool in favor of usingReadon the background task's output file path - Misc fixes - Mouse-tracking escape leak to shell after exit, idle-screen blank-flash, large-file diff hang, hanging
rg | wc -lin Linux sandbox,--worktreewith forward-slash names, API 400 on queued pasted image during failing tool call, MCP SSE indefinite hangs on reconnect exhaustion, Remote Control container-restart history loss, bash mode tab-accept,/statuswhile responding, slash-command-as-text when processing, and several subagent/scroll/streaming polish items - VSCode - Red spinner with "Not responding" after 60s of backend silence; session history URL/restart reload; Esc-twice or
/rewindopens keyboard-navigable picker
v2.1.81
- Bare mode - Added
--bareflag for scripted-pcalls that skips hooks, LSP, plugin sync, and skill directory walks; requiresANTHROPIC_API_KEYorapiKeyHelpervia--settings - Channels permission relay - Added
--channelspermission relay so channel servers can forward tool approval prompts to your phone - OAuth session fix - Fixed multiple concurrent sessions requiring repeated re-authentication when one session refreshes its OAuth token
- Voice mode fixes - Fixed voice mode silently swallowing retry failures and audio not recovering when server drops the WebSocket connection
- Beta header fix - Fixed
CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETASnot suppressing structured-outputs beta header, causing 400 errors on proxy gateways forwarding to Vertex/Bedrock - Background agent fix - Fixed race condition where background agent task output could hang indefinitely between polling intervals
- Worktree resume - Resuming a session that was in a worktree now switches back to that worktree
- MCP UX - MCP read/search tool calls now collapse into a single
Queried {server}line (expand with Ctrl+O) - Plugin freshness - Ref-tracked plugins now re-clone on every load to pick up upstream changes
- MCP OAuth update - Updated MCP OAuth to support Client ID Metadata Document (CIMD / SEP-991) for servers without Dynamic Client Registration
- Plan mode change - Plan mode now hides "clear context" option by default (restore with
showClearContextOnPlanAccept: true) - Windows streaming - Disabled line-by-line response streaming on Windows (including WSL in Windows Terminal) due to rendering issues
- VS Code fix - Fixed Windows PATH inheritance for Bash tool when using Git Bash (regression in v2.1.78)
- Misc fixes - Fixed
/btwnot including pasted text, terminal tab title not updating, invisible hook attachments inflating message count, Node.js 18 crash, unnecessary bash permission prompts for dashes in strings, Remote Control session titles, and/renamenot syncing for Remote Control
v2.1.80
- Rate limits in statusline - Added
rate_limitsfield to statusline scripts for displaying Claude.ai rate limit usage (5-hour and 7-day windows withused_percentageandresets_at) - Settings plugin source - Added
source: 'settings'plugin marketplace source for declaring plugin entries inline in settings.json - Effort frontmatter - Added
effortfrontmatter support for skills and slash commands to override model effort level when invoked - Channels preview - Added
--channels(research preview) allowing MCP servers to push messages into your session - Resume fix - Fixed
--resumedropping parallel tool results; sessions with parallel tool calls now restore all tool_use/tool_result pairs instead of[Tool result missing]placeholders - Voice WebSocket fix - Fixed voice mode WebSocket failures caused by Cloudflare bot detection on non-browser TLS fingerprints
- Streaming fix - Fixed 400 errors when using fine-grained tool streaming through API proxies, Bedrock, or Vertex
- Large repo optimization - Reduced memory usage on startup in large repositories (~80MB saved on 250k-file repos)
- Managed settings fix - Fixed managed settings (
enabledPlugins,permissions.defaultMode, policy-set env vars) not being applied at startup when cached from prior session - Misc improvements - Improved
@file autocomplete responsiveness in large git repos,/effortshows what auto resolves to,/permissionstab/arrow key navigation, simplified plugin install tips, and CLI tool usage detection for plugin tips
v2.1.79
- Console auth - Added
--consoleflag toclaude auth loginfor Anthropic Console (API billing) authentication - Turn duration - Added "Show turn duration" toggle to the
/configmenu - Print mode fix - Fixed
claude -phanging when spawned as a subprocess without explicit stdin - Ctrl+C fix - Fixed Ctrl+C not working in print mode
- Voice startup fix - Fixed voice mode not activating correctly on startup when
voiceEnabled: trueis set - Rate limit fix - Fixed enterprise users being unable to retry on rate limit (429) errors
- Memory optimization - Improved startup memory usage by ~18MB across all scenarios
- Multiple seed dirs -
CLAUDE_CODE_PLUGIN_SEED_DIRnow supports multiple seed directories separated by platform path delimiter (:on Unix,;on Windows) - VS Code Remote Control - Added
/remote-controlto VS Code for bridging sessions to claude.ai/code to continue from a browser or phone - VS Code sessions - Session tabs now get AI-generated titles based on your first message
- Misc fixes - Fixed
/btwreturning main agent output instead of answering side question, custom status line blocked by workspace trust,SessionEndhooks not firing on interactive/resumesession switch, and non-streaming API fallback hanging indefinitely
v2.1.78
- StopFailure hook - Added
StopFailurehook event that fires when the turn ends due to an API error (rate limit, auth failure, etc.) - Plugin persistent state - Added
${CLAUDE_PLUGIN_DATA}variable for plugin persistent state that survives updates;/plugin uninstallprompts before deleting - Agent frontmatter - Added
effort,maxTurns, anddisallowedToolsfrontmatter support for plugin-shipped agents - tmux passthrough - Terminal notifications (iTerm2/Kitty/Ghostty) now reach outer terminal inside tmux with
set -g allow-passthrough on - Line-by-line streaming - Response text now streams line-by-line as it's generated
- Sandbox security - Fixed silent sandbox disable when
sandbox.enabled: trueis set but dependencies are missing; now shows visible startup warning - Git log fix - Fixed
git log HEADfailing with "ambiguous argument" inside sandboxed Bash on Linux, and stub files pollutinggit status - Session truncation fix - Fixed
cc logand--resumesilently truncating conversation history on large sessions (>5MB) that used subagents - Permission security - Fixed PreToolUse hooks returning
"allow"bypassingdenypermission rules, including enterprise managed settings - CRLF fix - Fixed Write tool silently converting line endings when overwriting CRLF files or creating files in CRLF directories
- Custom model picker - Added
ANTHROPIC_CUSTOM_MODEL_OPTIONenv var to add a custom entry to the/modelpicker - macOS startup - Faster startup on macOS (~60ms) by reading keychain credentials in parallel with module loading
- Resume performance - Faster
--resumeon fork-heavy and very large sessions (up to 45% faster, ~100-150MB less peak memory) - Plugin validation - Improved
claude plugin validateto check skill, agent, and command frontmatter plushooks/hooks.json - Misc fixes - Fixed infinite loop when API errors triggered stop hooks,
deny: ["mcp__servername"]not removing tools, sandbox with absolute paths, vim Backspace/Delete, hyperlinks opening twice in VS Code, background colors in tmux, iTerm2 crashes over SSH, CJK character bleeding, teammate panes not closing, and washed-out colors in terminals without truecolor
v2.1.77
- Higher token limits - Increased default max output tokens for Opus 4.6 to 64k, and upper bound for Opus 4.6 and Sonnet 4.6 to 128k
- Sandbox read control - Added
allowReadsandbox filesystem setting to re-allow read access withindenyReadregions - Copy index -
/copynow accepts an optional index:/copy Ncopies the Nth-latest assistant response - Auto-updater fix - Fixed overlapping binary downloads when slash-command overlay repeatedly opened, accumulating tens of gigabytes of memory
- Resume fix - Fixed
--resumesilently truncating recent history due to race between memory-extraction writes and transcript - Permission security - Fixed PreToolUse hooks returning
"allow"bypassingdenypermission rules, including enterprise managed settings - CRLF preservation - Fixed Write tool silently converting line endings when overwriting CRLF files
- Memory optimization - Fixed memory growth in long sessions from progress messages surviving compaction
- Agent tool change - Agent tool no longer accepts
resumeparameter; useSendMessage({to: agentId})to continue agents - SendMessage improvement -
SendMessagenow auto-resumes stopped agents in the background instead of returning an error - Fork renamed - Renamed
/forkto/branch(/forkstill works as alias) - Misc fixes - Fixed compound bash "Always Allow" saving dead rules, paste loss after pasting, vim Ctrl+D behavior, 0-byte image drag error, stale worktree cleanup race, input deadlock on
/mcp, ordered list rendering, clipboard in tmux, cost tracking in non-streaming mode, and various other stability fixes
v2.1.76
- MCP elicitation - MCP servers can now request structured input mid-task via interactive dialog (form fields or browser URL)
- Elicitation hooks - Added
ElicitationandElicitationResulthooks to intercept and override responses - Session naming - Added
-n/--name <name>CLI flag to set a display name for the session at startup - Sparse worktrees - Added
worktree.sparsePathssetting forclaude --worktreein large monorepos via git sparse-checkout - PostCompact hook - Added
PostCompacthook that fires after compaction completes - Effort command - Added
/effortslash command to set model effort level - Session quality survey - Enterprise admins can configure survey sample rate via
feedbackSurveyRatesetting - Deferred tools fix - Fixed deferred tools losing input schemas after compaction, causing array and number parameters to be rejected with type errors
- Auto-compaction fix - Circuit breaker now stops auto-compaction after 3 consecutive failures
- Worktree performance - Improved
--worktreestartup by reading git refs directly and skipping redundantgit fetch - Background agents - Killing a background agent now preserves its partial results in conversation context
- Model fallback - Model fallback notifications now always visible (not hidden behind verbose mode) with human-friendly names
- Misc fixes - Fixed slash commands showing "Unknown skill", plan re-approval after acceptance, voice keypresses during dialogs,
/voiceon Windows via npm, spurious "Context limit reached" with skill model frontmatter, adaptive thinking errors, Bash permission rules with#, MCP reconnect spinner, LSP plugin registration, clipboard in tmux over SSH, and various Remote Control issues
v2.1.75
- 1M context for Opus - Added 1M context window for Opus 4.6 by default for Max, Team, and Enterprise plans (previously required extra usage)
- Color command - Added
/colorcommand to set a prompt-bar color for your session - Session name display - Added session name display on the prompt bar when using
/rename - Memory timestamps - Added last-modified timestamps to memory files for freshness reasoning
- Hook source display - Hook permission prompts now show source (settings/plugin/skill)
- Voice fix - Fixed voice mode not activating correctly on fresh installs without toggling
/voicetwice - Model header fix - Fixed Claude Code header not updating displayed model name after switching with
/modelor Option+P - Bash fix - Fixed
!mangling in piped commands (e.g.,jq 'select(.x != .y)'now works correctly) - Token estimation fix - Fixed over-counting for thinking and tool_use blocks preventing premature context compaction
- Plugin visibility fix - Fixed managed-disabled plugins showing up in
/pluginInstalled tab
v2.1.74
- Context command - Added actionable suggestions to
/contextcommand identifying context-heavy tools, memory bloat, and capacity warnings with optimization tips - Auto-memory directory - Added
autoMemoryDirectorysetting to configure custom directory for auto-memory storage - Memory leak fix - Fixed streaming API response buffers not released when generator terminated early, causing unbounded RSS growth on Node.js/npm code path
- Policy enforcement - Fixed managed policy
askrules being bypassed by userallowrules or skillallowed-tools - Agent model fix - Fixed full model IDs (e.g.,
claude-opus-4-5) being silently ignored in agent frontmattermodel:field and--agentsJSON config - RTL text fix - Fixed Hebrew, Arabic, and other RTL text not rendering correctly in Windows Terminal, conhost, and VS Code
- LSP Windows fix - Fixed LSP servers not working on Windows due to malformed file URIs
- Plugin override -
--plugin-dirlocal dev copies now override installed marketplace plugins with the same name - Misc fixes - Fixed MCP OAuth hanging when callback port in use, MCP OAuth refresh with HTTP 200 errors (e.g., Slack), voice on macOS native binary microphone permission, SessionEnd hook 1.5s timeout (now configurable via
CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS), marketplace submodule sync, plugin install in REPL, and unknown slash commands dropping input - Breaking change - Removed deprecated Windows managed settings fallback at
C:\ProgramData\ClaudeCode\managed-settings.json; useC:\Program Files\ClaudeCode\managed-settings.json
v2.1.73
- Model overrides - Added
modelOverridessetting to map model picker entries to custom provider model IDs (e.g., Bedrock inference profile ARNs) - SSL error guidance - Added actionable guidance when OAuth login or connectivity fails due to SSL certificate errors (corporate proxies,
NODE_EXTRA_CA_CERTS) - CPU freeze fix - Fixed freezes and 100% CPU loops triggered by permission prompts for complex bash commands
- Skill deadlock fix - Fixed deadlock when many skill files changed at once (e.g., during
git pullin a large.claude/skills/directory) - Bash output fix - Fixed Bash tool output lost when running multiple Claude Code sessions in the same project directory
- Agent model fix - Fixed subagents with
model: opus/sonnet/haikubeing silently downgraded to older versions on Bedrock, Vertex, and Foundry - Default Opus 4.6 - Changed default Opus model on Bedrock, Vertex, and Microsoft Foundry to Opus 4.6 (was Opus 4.1)
- Output style deprecated - Deprecated
/output-stylecommand; use/configinstead. Output style is now fixed at session start for better prompt caching - Misc fixes - Fixed
/resumeshowing current session,/idecrash on auto-install,/loopnot available on Bedrock/Vertex/Foundry, SessionStart hooks firing twice on--resume, JSON-output hooks injecting no-op messages, voice session corruption on slow connections, Linux sandbox "rg not found", Linux native modules on Amazon Linux 2 (glibc 2.26), Remote Control image errors, and various other stability fixes
v2.1.72
- Tool search proxy fix - Fixed tool search to activate with
ANTHROPIC_BASE_URLas long asENABLE_TOOL_SEARCHis set - Copy to file - Added
wkey in/copyto write focused selection directly to a file, bypassing clipboard (useful over SSH) - Plan description - Added optional description argument to
/plan(e.g.,/plan fix the auth bug) that enters plan mode and immediately starts - ExitWorktree tool - Added
ExitWorktreetool to leave anEnterWorktreesession - Disable cron - Added
CLAUDE_CODE_DISABLE_CRONenv var to immediately stop scheduled cron jobs mid-session - Auto-approval expansion - Added
lsof,pgrep,tput,ss,fd,fdfindto bash auto-approval allowlist - Effort simplification - Simplified effort levels to low/medium/high (removed max) with new symbols and
/effort autoto reset - CLAUDE.md comments - HTML comments in CLAUDE.md now hidden from Claude when auto-injected; comments remain visible when read with Read tool
- Config improvements - Improved
/configwith Escape to cancel, Enter to save, Space to toggle - Voice accuracy - Improved voice transcription accuracy for repo names and common dev terms (regex, OAuth, JSON)
- Bash parsing - Switched to native module for bash command parsing (faster, no memory leak)
- Bundle size - Reduced bundle size by ~510KB
- Prompt cache fix - Fixed prompt cache invalidation in SDK
query()calls, reducing input token costs up to 12x - Misc fixes - Fixed slow exits with background tasks, agent task "Initializing..." progress, skill hooks firing twice, voice input lag and stale transcripts,
--continueafter--compact, sandbox permission issues, feedback survey frequency,--effortCLI flag reset,/clearkilling background tasks, worktree isolation issues, "Always Allow" matching, various hooks issues, and many other stability fixes - VS Code - Added effort indicator on input border,
vscode://anthropic.claude-code/openURI handler, and fixed scroll speed
v2.1.71
- Loop command - Added
/loopcommand to run a prompt or slash command on a recurring interval (e.g.,/loop 5m check the deploy) - Cron scheduling - Added cron scheduling tools for recurring prompts within a session
- Voice keybinding - Added
voice:pushToTalkkeybinding for rebindable voice activation key inkeybindings.json(default: space) - Auto-approval expansion - Added
fmt,comm,cmp,numfmt,expr,test,printf,getconf,seq,tsort,prto bash auto-approval allowlist - Stdin freeze fix - Fixed stdin freeze in long-running sessions where keystrokes stop being processed but process stays alive
- Voice startup freeze - Fixed 5-8 second startup freeze with voice mode enabled, caused by CoreAudio initialization blocking main thread after system wake
- Fork isolation - Fixed forked conversations (
/fork) sharing the same plan file, causing edits in one fork to overwrite the other - Bridge reconnection - Improved bridge session reconnection to complete within seconds after laptop wake (was up to 10 minutes)
- Debug logging - Updated
/debugto toggle debug logging on mid-session (no longer written by default) - Misc fixes - Fixed startup UI freeze with multiple OAuth connector token refresh, Read tool oversized images in long sessions, false-positive permission prompts for heredoc commands, plugin installations lost with multiple instances, connector reconnection, background agent notifications missing output path, duplicate
/permissionsentries,--printhanging with team agents, and "Tool loaded." appearing after ToolSearch
v2.1.70
- API proxy fix - Fixed API 400 errors when using
ANTHROPIC_BASE_URLwith third-party gateways; tool search now correctly detects proxy endpoints - Effort parameter fix - Fixed "model does not support effort parameter" error with custom Bedrock inference profiles or non-standard model identifiers
- ToolSearch fix - Fixed empty model responses after ToolSearch caused by system-prompt-style tags confusing models into stopping early
- Clipboard fix - Fixed non-ASCII text (CJK, emoji) corruption on Windows/WSL by using PowerShell
Set-Clipboard - Voice Windows fix - Fixed voice mode failing on Windows native binary with "native audio module could not be loaded"
- Compaction improvement - Images now preserved in summarizer request, allowing prompt cache reuse for faster and cheaper compaction
- Memory savings - Reduced startup memory by ~426KB for users without custom CA certificates; reduced Remote Control
/pollrate by ~300x - Prompt input optimization - Reduced prompt input re-renders during turns by ~74%
- VS Code - Added spark icon in activity bar listing all sessions as full editors, full markdown plan view with comment support, and native MCP server management via
/mcp - Misc fixes - Fixed prompt cache bust with MCP server instructions, Enter over slow SSH, extra VS Code windows on Windows, push-to-talk on session start, markdown link
#NNNreferences, repeated model notification, plugins showing inaccurately installed,/security-reviewon old git,/colorreset, feature flag caching, permission mode in Claude Code Remote, skill re-injection on resume, and AskUserQuestion performance regression
v2.1.69
- Claude API skill - Added
/claude-apiskill for building applications with the Claude API and Anthropic SDK - Voice languages - Added Voice STT support for 10 new languages (20 total): Russian, Polish, Turkish, Dutch, Ukrainian, Greek, Czech, Danish, Swedish, Norwegian
- Remote Control naming - Added optional name argument to
/remote-controlfor custom session titles visible in claude.ai/code - Effort display - Added effort level display (e.g., "with low effort") to the logo and spinner
- Sandbox network - Added
sandbox.enableWeakerNetworkIsolationsetting (macOS only) for Go programs likegh,gcloud,terraformusing custom MITM proxy - Git instructions toggle - Added
includeGitInstructionssetting andCLAUDE_CODE_DISABLE_GIT_INSTRUCTIONSenv var to remove built-in commit/PR instructions from system prompt - Reload plugins - Added
/reload-pluginscommand to activate pending plugin changes without restarting - Skill directory variable - Added
${CLAUDE_SKILL_DIR}variable for skills to reference their own directory in SKILL.md - InstructionsLoaded hook - Added
InstructionsLoadedhook event when CLAUDE.md or.claude/rules/*.mdfiles are loaded - Hook agent context - Added
agent_idandagent_typeto hook events for subagents and--agent - Worktree statusline - Added
worktreefield to status line hook commands with name, path, branch, and original repo directory - Security fixes - Fixed nested skill discovery loading from gitignored directories (e.g.,
node_modules), trust dialog silently enabling all.mcp.jsonservers, and symlink bypass escaping working directory inacceptEditsmode - Remote Control fix - Fixed
claude remote-controlcrashing on npm installs with "bad option: --sdk-url" - Model resolution fix - Fixed
--model claude-opus-4-0and--model claude-opus-4-1resolving to deprecated versions - macOS keychain fix - Fixed keychain corruption with multiple OAuth MCP servers due to overflow of
security -istdin buffer - Performance - Improved spinner performance, UI rendering with React Compiler,
--worktreestartup, macOS startup, MCP-pstartup, voice startup, reduced baseline memory by ~16MB by deferring Yoga WASM - Misc fixes - Fixed ghost dotfiles after sandboxed bash, Shift+Enter in Ghostty over SSH, stash clearing on Ctrl+S, ctrl+o freezing in long sessions, plan mode feedback input,
/statscrash, duplicate CLAUDE.md in nested worktrees, plugin hooks dropped on same command template, memory leaks in SDK/CCR/REPL/React sessions, and many other stability and memory improvements - VS Code - Fixed RTL text rendering, added compaction as collapsible card, bypass permissions respects managed settings
v2.1.68
- Opus 4.6 medium effort - Opus 4.6 now defaults to medium effort for Max and Team subscribers. Medium effort is the sweet spot between speed and thoroughness; change anytime with
/model - Ultrathink - Re-introduced the "ultrathink" keyword to enable high effort for the next turn
- Model cleanup - Removed Opus 4 and 4.1 from Claude Code on the first-party API; users with these models pinned are automatically moved to Opus 4.6
v2.1.66
- Error logging - Reduced spurious error logging
v2.1.63
- HTTP hooks - Added HTTP hooks that POST JSON to a URL and receive JSON back instead of running a shell command. Configure with
"type": "http"in settings, supports custom headers with env var interpolation viaallowedEnvVars - Bundled slash commands - Added
/simplifyand/batchbundled slash commands - Worktree config sharing - Project configs and auto memory now shared across git worktrees of the same repository
- Claude.ai MCP opt-out - Added
ENABLE_CLAUDEAI_MCP_SERVERS=falseenv var to opt out from claude.ai MCP servers - Model picker -
/modelcommand now shows the currently active model in the menu - Copy improvements - Added "Always copy full response" option to the
/copypicker - VS Code sessions - Added session rename and remove actions to VS Code sessions list
- MCP OAuth fallback - Added manual URL paste fallback during MCP OAuth authentication
- Memory leak fixes - Fixed multiple memory leaks: hooks config menu, permission handler, bash prefix cache, MCP tool/resource cache, git root detection cache, JSON parsing cache, WebSocket transport, IDE host IP cache, file count cache, and long-running teammates retaining messages after compaction
- Slash command fix - Fixed local slash command output appearing as user messages instead of system messages
- VS Code remote fix - Fixed remote sessions not appearing in VS Code conversation history
- REPL bridge fix - Fixed race condition in REPL bridge message ordering
- Clear fix - Fixed
/clearnot resetting cached skills
v2.1.62
- Suggestion cache fix - Fixed prompt suggestion cache regression
v2.1.61
- Windows config fix - Fixed concurrent config file corruption on Windows
v2.1.59
- Auto-memory - Claude automatically saves useful context to auto-memory, manage with /memory
- Copy command - Added
/copycommand with interactive picker for code blocks - Better suggestions - Better prefix suggestions for compound bash commands
- Task list ordering - Improved task list ordering
- Multi-agent memory - Improved memory usage in multi-agent sessions
- OAuth token fix - Fixed MCP OAuth token refresh race condition with multiple instances
- Shell CWD fix - Fixed shell errors when working directory is deleted
- Config corruption fix - Fixed config file corruption during simultaneous multi-instance runs
v2.1.58
- Remote Control - Expanded Remote Control to more users
v2.1.56
- VS Code fix - Fixed 'command claude-vscode.editor.openLast not found' crashes
v2.1.55
- Windows BashTool fix - Fixed BashTool failing on Windows with EINVAL error
v2.1.53
- UI flicker fix - Fixed UI flicker where user input briefly disappears after submission
- Bulk agent kill - Fixed bulk agent kill (ctrl+f) sending one notification per agent instead of aggregate
- Remote Control cleanup - Fixed graceful shutdown leaving stale sessions with Remote Control
- Worktree flag fix - Fixed --worktree sometimes being ignored on first launch
- Windows stability - Fixed panic on corrupted value, crash spawning many processes, and crash on ARM64 after 2 minutes
- WASM crash fix - Fixed crash in WebAssembly interpreter on Linux x64 and Windows x64
v2.1.52
- VS Code Windows fix - Fixed extension crash on Windows ('command claude-vscode.editor.openLast not found')
v2.1.51
- Remote Control CLI - Added
claude remote-controlsubcommand for external builds - Plugin marketplace - Updated git timeout from 30s to 120s, added custom npm registries and version pinning
- Shell optimization - BashTool skips login shell by default when shell snapshot available
- Hook security fix - Fixed security issue where hook commands could execute without workspace trust
- Tool result persistence - Tool results larger than 50K chars now persisted to disk (previously 100K)
- API error fix - Fixed duplicate control_response messages causing API 400 errors
- Account env vars - Added CLAUDE_CODE_ACCOUNT_UUID, CLAUDE_CODE_USER_EMAIL, CLAUDE_CODE_ORGANIZATION_UUID env vars
- Model picker labels - /model picker shows human-readable labels instead of raw model IDs
- Managed settings - Managed settings via macOS plist or Windows Registry
- Autocomplete fix - Fixed slash command autocomplete crashing with non-string plugin descriptions
v2.1.50
- Opus 4.6 fast mode - Full 1M context window now included in Opus 4.6 fast mode
- Agents CLI - Added
claude agentsCLI command - Worktree isolation - Added isolation: worktree in agent definitions
- LSP startup timeout - Added startupTimeout config for LSP servers
- Worktree hooks - WorktreeCreate and WorktreeRemove hook events
- Simple mode overhaul - CLAUDE_CODE_SIMPLE now also disables MCP tools, attachments, hooks, CLAUDE.md
- 1M context toggle - Added CLAUDE_CODE_DISABLE_1M_CONTEXT env var
- VS Code extra usage - Added /extra-usage command support in VS Code
- Memory improvements - Improved cache clearing after compaction, clearing large tool results, capped file history snapshots, and multiple leak fixes (TaskOutput, CircularBuffer, shell execution)
- Headless performance - Improved startup performance for headless mode (-p flag)
- Symlink session fix - Fixed resumed sessions invisible with symlinked working directory
- Linux compatibility - Fixed native modules on glibc older than 2.30 (e.g., RHEL 8)
- MCP tool search fix - Fixed MCP tools not discovered with tool search + launch argument prompt
- Suggestion cache fix - Fixed prompt suggestion cache regression
v2.1.49
- MCP OAuth improvements - Improved OAuth with step-up auth and discovery caching
- Worktree flag - Added --worktree (-w) flag for isolated git worktree sessions
- Worktree subagents - Subagents support isolation: 'worktree' for temporary git worktrees
- Background agents - Ctrl+F to kill background agents (two-press confirmation), agent definitions support background: true
- Plugin settings - Plugins can ship settings.json for default config
- Simple mode edit - Simple mode now includes file edit tool
- Model changes - Sonnet 4.5 with 1M context removed from Max plan in favor of Sonnet 4.6
- ConfigChange hook - Added ConfigChange hook event
- Path suggestions - Fixed file-not-found errors to suggest corrected paths
- Permission prompts - Improved prompts to show restriction reasons, suggestions populated on safety check triggers
- Memory fixes - Fixed unbounded WASM memory growth with periodic tree-sitter parser resets and Yoga WASM linear memory
- Background agent fixes - Fixed Ctrl+C and ESC being silently ignored with background agents
- Headless performance - Improved non-interactive mode by skipping unnecessary startup API calls and caching MCP auth failures
- Plugin and config fixes - Fixed plugin enable/disable auto-detecting scope, verbose mode not updating, managed settings hierarchy, and resume picker showing raw XML tags
v2.1.47
- Sonnet 4.6 support - Added support for Claude Sonnet 4.6
- Agent Teams fix - Fixed Agent Teams on Bedrock, Vertex, and Foundry
- Plugin ecosystem - Added enabledPlugins and extraKnownMarketplaces from --add-dir, fixed plugin commands/agents/hooks availability
- Worktree improvements - Fixed background tasks in worktrees, custom agents/skills not discovered from git worktrees
- File handling fixes - Fixed FileWriteTool stripping intentional trailing blank lines, Edit tool corrupting Unicode curly quotes, single file write/edit error aborting parallel operations
- Ctrl+F agent kill - Use ctrl+f to kill all background agents instead of double-ESC
- Hook improvements - Fixed hooks failing on Windows (now uses Git Bash), added last_assistant_message to Stop and SubagentStop hook inputs
- Resume improvements - Increased picker from 10 to 50 sessions, fixed /resume dropping and failing with >16KB first message, fixed custom session titles lost after resuming
- Memory improvements - Improved memory by releasing API stream buffers, trimming agent task history, clearing large shell output, removing eager session history loading
- Windows fixes - Fixed terminal rendering bugs from os.EOL, bold/colored text shifting due to \r\n, CWD tracking temp files never cleaned, drive letter casing issues for worktrees and CLAUDE.md, Right Alt leaving escape sequence residue, image pasting on WSL2
- Performance fixes - Improved startup by deferring SessionStart hook (~500ms faster), fixed O(n^2) message accumulation in progress updates, improved @ file mention performance
- Compaction fixes - Fixed compaction failing with many PDF documents, plan mode lost after compaction, skills invoked by subagents appearing in main session
- UI polish - Simplified teammate navigation to Shift+Down, fixed collapsed read/search hint overflow, CJK wide characters causing misaligned layout, spinner showing '0 tokens'
- Miscellaneous fixes - Fixed bash permission classifier validation, user-defined agents only loading one file on NFS/FUSE, inline code spans parsed as bash commands, zsh heredoc failing with read-only file system in sandbox, and various other stability fixes
v2.1.46
- macOS process cleanup - Fixed orphaned CC processes after terminal disconnect on macOS
- MCP connectors - Added support for claude.ai MCP connectors in Claude Code
v2.1.45
- Sandbox temp fix - Fixed sandbox 'operation not permitted' errors for temp files on macOS
- Task tool crash fix - Fixed Task tool (backgrounded agents) crashing with ReferenceError
- Spinner tips - Added spinnerTipsOverride setting
- SDK rate limits - Added SDKRateLimitInfo and SDKRateLimitEvent types to SDK
- Autocomplete fix - Fixed autocomplete not accepted on Enter when images pasted
- Startup performance - Improved startup by removing eager loading of session history
- Memory improvement - Improved memory for large shell output (RSS no longer grows unboundedly)
- Collapsed groups - Improved collapsed read/search groups showing current file/pattern
- VS Code permissions - Improved permission destination choice persisting across sessions
- Backup cleanup - Fixed excessive .claude.json.backup files accumulating on startup
v2.1.44
- Path length fix - Fixed ENAMETOOLONG errors for deeply-nested directory paths
- Auth refresh fix - Fixed auth refresh errors
v2.1.43
- AWS auth timeout - Fixed AWS auth refresh hanging indefinitely (added 3-minute timeout)
- Agent file warning - Fixed spurious warnings for non-agent markdown files in .claude/agents/
- Vertex/Bedrock header - Fixed structured-outputs beta header sent unconditionally on Vertex/Bedrock
v2.1.42
- Startup optimization - Deferred Zod schema construction for faster startup performance
- Prompt cache improvement - Better cache hit rates by moving date out of system prompt
- Resume fix - Fixed /resume showing interrupt messages as session titles
- Image dimension fix - Fixed image dimension limit errors to suggest /compact
v2.1.41
- Auth CLI commands - New
claude auth login,claude auth status, andclaude auth logoutsubcommands - Windows ARM64 native - Added win32-arm64 native binary support
- Smart rename -
/renameauto-generates session name from conversation context when called without arguments - Agent Teams model fix - Fixed wrong model identifier for Bedrock, Vertex, and Foundry customers
- @-mention anchors - Fixed file resolution for @-mentions with anchor fragments (e.g.,
@README.md#installation) - Nesting guard - Added guard against launching Claude Code inside another session
- Narrow terminal layout - Improved prompt footer layout for narrow terminals
- Session preview fix - Fixed /resume previews showing raw XML tags instead of readable command names
- Hook blocking errors - Fixed exit code 2 not showing stderr to the user
v2.1.39
- Rendering performance - Improved terminal rendering performance
- Fatal error display - Fixed fatal errors being swallowed instead of displayed
- Process hang fix - Fixed process hanging after session close
- Screen boundary fix - Fixed character loss at terminal screen boundary
v2.1.38
- VSCode scroll fix - Fixed terminal scroll-to-top regression from v2.1.37
- Tab completion fix - Fixed Tab key queueing slash commands instead of autocompleting
- Bash permission fix - Fixed bash permission matching for commands using environment variable wrappers
- Heredoc security - Improved heredoc delimiter parsing to prevent command smuggling
- Sandbox skills protection - Blocked writes to
.claude/skillsdirectory in sandbox mode - Duplicate sessions fix - Fixed duplicate sessions when resuming in VS Code extension
v2.1.37
- Fast mode fix - Fixed /fast not immediately available after enabling /extra-usage
v2.1.36
- Fast mode for Opus 4.6 - Fast mode now available for Opus 4.6 with faster output at the same quality
v2.1.34
- Agent Teams crash fix - Fixed crash when agent teams setting changed between renders
- Sandbox bypass fix - Fixed excluded commands bypassing Bash ask permission when
autoAllowBashIfSandboxedwas enabled
v2.1.33
- Agent Teams tmux fix - Fixed agent teammate sessions in tmux to send and receive messages
- TeammateIdle/TaskCompleted hooks - New hook events for multi-agent workflows
- Agent memory -
memoryfrontmatter field for agents withuser,project, orlocalscope - Sub-agent restrictions - Restrict spawnable sub-agents via
Task(agent_type)syntax in agent "tools" frontmatter - Improved error messages - API connection failures now show specific cause instead of generic errors
- VSCode remote sessions - OAuth users can browse and resume sessions from claude.ai
- VSCode branch search - Git branch and message count in session picker with branch name search
v2.1.32
- Claude Opus 4.6 - New Opus 4.6 model now available with 1M token context window (beta) and top Terminal-Bench 2.0 scores
- Agent Teams - Research preview multi-agent collaboration with team leads, teammates, and shared task lists (requires
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1) - Auto memories - Claude now automatically records and recalls memories as it works
- Summarize from here - Partial conversation summarization via message selector
- Additional directory skills - Skills in
.claude/skills/within--add-dirdirectories now load automatically - Skill budget scaling - Skill character budget scales with context window (2% of context)
- Model timeline - Browse the complete Claude model history from Claude 3 through Opus 4.6
v2.1.31
- Session resume hint - Shows how to continue your conversation on exit
- PDF lock fix - Fixed PDF errors permanently locking up sessions
- Sandbox bash fix - Fixed bash commands reporting "Read-only file system" in sandbox mode
- Temperature override fix - Fixed
temperatureOverridebeing silently ignored in streaming API path - Improved tool guidance - System prompts more clearly guide toward dedicated tools instead of bash equivalents
- Layout stability - Reduced layout jitter when spinner appears/disappears during streaming
v2.1.30
- PDF page ranges - New
pagesparameter for reading specific PDF page ranges (e.g.,pages: "1-5") - MCP OAuth credentials - Pre-configured OAuth client credentials for servers without Dynamic Client Registration (e.g., Slack)
- /debug command - New
/debugcommand for Claude to help troubleshoot the current session - Task metrics - Token count, tool uses, and duration metrics in Task tool results
- Reduced motion mode - Added reduced motion setting to config
- Permission focus fix - Fixed permission dialogs stealing focus while typing
- Resume memory optimization - 68% memory reduction for
/resumewith lightweight stat-based session loading - Windows .bashrc fix - Fixed regression where Windows users with
.bashrccould not run bash commands
v2.1.29
- Startup performance fix - Fixed performance issues when resuming sessions with
saved_hook_context
v2.1.27
- --from-pr flag - Resume sessions linked to a specific GitHub PR number or URL
- Auto PR linking - Sessions automatically linked to PRs when created via
gh pr create - Debug logging - Added tool call failures and denials to debug logs
- Windows console fix - Fixed console windows flashing when spawning child processes
- VSCode OAuth fix - Fixed token expiration causing 401 errors after extended sessions
v2.1.25
- Beta header fix - Fixed beta header validation error for gateway users on Bedrock and Vertex
v2.1.23
- Custom spinner verbs -
spinnerVerbssetting for customizable spinner text - mTLS and proxy fix - Fixed connectivity for users behind corporate proxies or using client certificates
- Ripgrep timeout fix - Fixed search timeouts silently returning empty results
- Rendering performance - Optimized terminal rendering with improved screen data layout
- Merged PR indicator - Purple status indicator for merged pull requests in prompt footer
v2.1.22
- Structured outputs fix - Fixed structured outputs for non-interactive (
-p) mode
v2.1.21
- Japanese IME support - Full-width (zenkaku) number input in option selection prompts
- Read/search progress - Shows "Reading..." while in progress, "Read" when complete
- Improved tool preference - Claude now prefers file operation tools (Read, Edit, Write) over bash equivalents
- Shell completion fix - Fixed shell completion cache files being truncated on exit
- API resume fix - Fixed API errors when resuming sessions interrupted during tool execution
- Auto-compact fix - Fixed auto-compact triggering too early on models with large output token limits
- VSCode Python venvs - Automatic Python virtual environment activation (configurable via
claudeCode.usePythonEnvironment)
v2.1.20
- Vim arrow history - Arrow key history navigation in vim normal mode when cursor cannot move further
- Editor shortcut visibility - External editor shortcut (Ctrl+G) added to help menu for discoverability
- PR review status - PR state indicator (approved, changes requested, pending, draft) as colored dot with clickable link in prompt footer
- Additional directories CLAUDE.md - Load CLAUDE.md files from directories specified via
--add-dirflag (requiresCLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1) - Task deletion - Delete tasks via the
TaskUpdatetool - Session compaction fix - Fixed resume loading full history instead of compact summary
- Agent message fix - Fixed agents sometimes ignoring user messages sent while actively working
- Wide character rendering - Fixed emoji/CJK rendering artifacts where trailing columns weren't cleared
- MCP Unicode fix - Fixed JSON parsing errors when MCP tool responses contain special Unicode characters
- Multi-line navigation - Up/down arrows prioritize cursor movement over history navigation in multi-line input
- Draft prompt preservation - Fixed draft being lost when pressing UP arrow for command history
- Ghost text fix - Fixed flickering when typing slash commands mid-input
- Marketplace removal fix - Fixed source removal not properly deleting settings
- Duplicate output fix - Fixed duplicate output in commands like
/context - Task list positioning - Fixed task list sometimes showing outside main conversation view
- Diff syntax highlighting - Fixed highlighting for diffs within multiline constructs like Python docstrings
- Cancel crash fix - Fixed crashes when cancelling tool use
- Sandbox UI - Improved
/sandboxcommand showing dependency status with installation instructions - Thinking animation - Subtle shimmer animation for thinking status text
- Dynamic task list - Task list dynamically adjusts visible items based on terminal height
- Fork hint - Shows how to resume original session when forking conversations
- Read/search tense - Shows "Reading"/"Searching" while in progress, "Read"/"Searched" when complete
- ToolSearch notifications - Results appear as brief notification instead of inline
- Background agent permissions - Background agents now prompt for tool permissions before launching
- Config backups - Timestamped and rotated backups (keeping 5 most recent)
v2.1.19
- Task system toggle -
CLAUDE_CODE_ENABLE_TASKS=falseenv var to use old system temporarily - Argument shorthand -
$0,$1, etc. for accessing individual arguments in custom commands - AVX crash fix - Fixed crashes on processors without AVX instruction support
- Process cleanup - Fixed dangling processes when terminal closed by catching EIO errors
- Rename/tag directory fix - Fixed
/renameand/tagnot updating correct session in git worktrees - Resume by title fix - Fixed resuming sessions by custom title from different directories
- Prompt stash fix - Fixed pasted text being lost when using Ctrl+S stash and restore
- Agent model display - Fixed showing "Sonnet (default)" instead of "Inherit (default)" for agents
- Background hook fix - Fixed backgrounded hook commands not returning early
- File preview fix - Fixed write preview omitting empty lines
- Skill approval - Skills without additional permissions or hooks allowed without approval
- Argument syntax change - Indexed arguments changed from
$ARGUMENTS.0to$ARGUMENTS[0] - VSCode fork/rewind - Session forking and rewind enabled for all VSCode users
v2.1.18
- Customizable keybindings - Configure keyboard shortcuts per context, create chord sequences, and personalize workflow via
/keybindings
v2.1.17
- AVX crash fix - Fixed crashes on processors without AVX instruction support
v2.1.16
- Task management - New task management system with dependency tracking
- VSCode plugins - Native plugin management support in VSCode
- Remote sessions - OAuth users can browse and resume remote Claude sessions from Sessions dialog
- Memory fix - Fixed out-of-memory crashes when resuming sessions with heavy subagent usage
- Compact warning - Fixed context warning not hiding after
/compact - Language setting - Session titles now respect user's language setting
- Windows sidebar fix - Fixed race condition where VSCode sidebar wouldn't appear on Windows startup
v2.1.15
- npm deprecation - Added deprecation notification for npm installations with migration guidance
- React Compiler - Improved UI rendering performance with React Compiler
- MCP timeout fix - Fixed MCP stdio server timeout not killing child processes (could cause UI freezes)
v2.1.14
- Bash history autocomplete - Type partial command and press Tab to complete from bash history in bash mode
- Plugin search - Search installed plugins list by name or description
- Plugin pinning - Support for pinning plugins to specific git commit SHAs
- Context limit fix - Fixed regression blocking users at ~65% context instead of ~98%
- Parallel subagent fix - Fixed memory issues causing crashes with parallel subagents
- Stream cleanup - Fixed memory leak where stream resources weren't cleaned after shell commands
- VSCode usage - Added
/usagecommand in VSCode extension - iTerm2 fix - Fixed progress bar not clearing properly on exit
v2.1.12
- Rendering fix - Fixed message rendering bug
v2.1.11
- MCP connections - Fixed excessive MCP connection requests for HTTP/SSE transports
v2.1.10
- Setup hook - New
Setuphook event triggered via--init,--init-only, or--maintenanceflags - OAuth URL copy - Press 'c' to copy OAuth URL when browser doesn't open automatically
- Heredoc fix - Fixed crash with bash heredocs containing JavaScript template literals
- File suggestions - Improved to show as removable attachments instead of inserting text
- VSCode plugins - Added install count display and trust warnings for plugins
v2.1.9
- MCP auto threshold -
auto:Nsyntax for configuring MCP tool search auto-enable threshold - Plans directory -
plansDirectorysetting to customize plan file storage location - PreToolUse context - Hooks can return
additionalContextto the model - Session ID variable -
${CLAUDE_SESSION_ID}string substitution for skills - Session URL attribution - Commits and PRs from web sessions include session URL
- Ctrl+Z fix - Fixed suspend not working in Kitty keyboard protocol terminals
v2.1.7
- Turn duration setting -
showTurnDurationsetting to hide "Cooked for X" messages - Permission feedback - Ability to provide feedback when accepting permission prompts
- Agent notifications - Inline display of agent's final response in task notifications
- Security fix - Fixed wildcard permission rules matching compound commands with shell operators
- Windows file watch - Fixed false "file modified" errors from cloud sync/antivirus tools
- MCP tool search default - Auto mode enabled by default (defers tools >10% context to MCPSearch)
- OAuth URL change - Changed OAuth URLs from console.anthropic.com to platform.claude.com
v2.1.6
- Config search - Search functionality in
/configcommand - Doctor updates - Updates section showing auto-update channel and npm versions
- Stats filtering - Date range filtering in
/stats(Last 7 days, 30 days, All time) - Nested skills - Auto-discovery of skills from nested
.claude/skillsdirectories - Permission bypass fix - Fixed bypass via shell line continuation
- External CLAUDE.md - Improved approval dialog showing which files are imported
v2.1.5
- Custom temp directory -
CLAUDE_CODE_TMPDIRenvironment variable for custom temp directory
v2.1.4
- Disable background tasks -
CLAUDE_CODE_DISABLE_BACKGROUND_TASKSenvironment variable
v2.1.3
- Slash commands merged - Merged slash commands and skills for simpler mental model
- Release channel toggle - Toggle between
stableandlatestin/config - Unreachable rules - Detection and warnings for unreachable permission rules
- Subagent model fix - Fixed sub-agents using wrong model during compaction
- Hook timeout change - Tool hook execution timeout increased from 60s to 10 minutes
v2.1.2
- Image source metadata - Source path added to images dragged onto terminal
- Clickable file paths - Hyperlinks for file paths in terminals supporting OSC 8
- Winget support - Windows Package Manager installation detection and update instructions
- Plan mode shortcut - Shift+Tab to quickly select "auto-accept edits" in plan mode
- Command injection fix - Fixed vulnerability in bash command processing
- Memory leak fix - Fixed tree-sitter parse trees not being freed
- Large outputs - Bash outputs saved to disk instead of truncated
v2.1.0
- Skill hot-reload - Skills in
~/.claude/skillsor.claude/skillsimmediately available without restart - Forked skill context - Run skills in forked sub-agent context with
context: fork - Language setting - Configure Claude's response language (e.g.,
language: "japanese") - Shift+Enter fix - Works out of the box in iTerm2, WezTerm, Ghostty, and Kitty
- Security fix - Fixed sensitive data exposure in debug logs
- Wildcard bash permissions -
*at any position in rules (e.g.,Bash(npm *),Bash(git * main)) - Unified backgrounding - Ctrl+B backgrounds both bash commands and agents simultaneously
- MCP list_changed - Support for dynamic tool updates without reconnection
- /teleport command - Resume and configure remote sessions for claude.ai subscribers
- Agent hooks - Hooks support in agent frontmatter for PreToolUse, PostToolUse, and Stop
- New Vim motions -
;,,for repeat,y/yy/Yfor yank,p/Pfor paste, text objects,>>,<<,J - /plan command - Shortcut to enable plan mode directly
- --tools flag - Restrict built-in tools in interactive sessions
- No plan mode permission - Removed permission prompt when entering plan mode
v2.0.76
- macOS signing fix - Fixed code-sign warning with Claude in Chrome integration
v2.0.75
- Minor bugfixes
v2.0.74
- LSP tool - Language Server Protocol support for go-to-definition, find references, hover docs
- Terminal setup -
/terminal-setupsupport for Kitty, Alacritty, Zed, and Warp - Theme shortcuts - Ctrl+T to toggle syntax highlighting in
/theme - Context improvements - Grouped skills and agents by source in
/contextcommand
v2.0.73
- Clickable images -
[Image #N]links open attached images in default viewer - Yank-pop - Alt+Y to cycle through kill ring history after Ctrl+Y
- Plugin search - Type to filter in plugin discover screen
- Custom session IDs - Support with
--session-idcombined with--resume/--continue - VSCode tab badges - Pending permissions (blue) and unread completions (orange)
v2.0.72
- Claude in Chrome - Beta feature to control browser directly from Claude Code via Chrome extension
- Terminal flickering - Reduced flickering
- @ mention speed - ~3x faster file suggestions in git repositories
- Thinking toggle change - Changed from Tab to Alt+T to avoid accidental triggers
v2.0.71
- Prompt suggestions toggle -
/configtoggle to enable/disable - Settings alias -
/settingsas alias for/config - Glob pattern fix - Fixed permission rules rejecting valid bash commands with globs
- Bedrock base URL -
ANTHROPIC_BEDROCK_BASE_URLnow respected for token counting - Syntax highlighting - New engine for native build
v2.0.70
- Enter to accept suggestions - Enter accepts and submits prompt suggestions immediately
- MCP wildcard permissions -
mcp__server__*syntax to allow/deny all tools from a server - Plugin auto-update - Per-marketplace control over automatic updates
- Memory improvement - 3x improvement for large conversations
- Removed # shortcut - Quick memory entry removed (use Claude to edit CLAUDE.md)
v2.0.69
- Minor bugfixes
v2.0.68
- IME support - Fixed Input Method Editor for Chinese, Japanese, Korean
- CJK navigation - Option+Arrow now navigates by word in CJK text
- Plan mode exit UX - Simplified yes/no dialog for empty/missing plans
- Enterprise settings - Support for enterprise managed settings
v2.0.67
- Thinking mode default - Now enabled by default for Opus 4.5
- Thinking config moved - Configuration moved to
/config - Permissions search - Search functionality in
/permissionswith/shortcut - Non-Latin text fix - Fixed word deletion/navigation for Cyrillic, Greek, Arabic, Hebrew, Thai, Chinese
- Windows MCP fix - Fixed plugin MCP servers failing due to colons in log paths
v2.0.65
- Model switching - Switch models mid-prompt with Alt+P (Option+P on Mac)
- Context info - View detailed context window information
- File suggestions - Added setting to configure file suggestion behavior
- Shell detection - New environment variable for shell detection customization
- Prompt history fix - Fixed issues with prompt history navigation
- Image format - Improved image format detection
v2.0.64
- Instant auto-compacting - Faster context management with instant auto-compaction
- Async execution - Agents and bash commands can now run asynchronously
- Stats command -
/statscommand shows usage metrics and statistics - Named sessions - Support for named sessions via
/renameand/resumecommands - Rules directory - Support for
.claude/rules/directory for project rules - Image metadata - Added image dimension metadata support
- Environment files - Fixed auto-loading of environment files
- System prompt flags - Fixed system prompt flag handling
- Resume UI - Improved
/resumeinterface experience - VSCode clipboard - Added clipboard button in VSCode extension
- Windows ARM64 - Fixed Windows ARM64 compatibility issues
- Bedrock tokens - Improved token counting efficiency for Bedrock
- Unified TaskOutputTool - Consolidated agent output handling
v2.0.62
- Recommended indicator - Added "(Recommended)" indicator for multiple-choice questions
- Attribution setting - New setting for commit/PR attribution preferences
- Slash command fix - Fixed slash command duplication issue
- Symlink fix - Fixed issues with symlinked directories
- Skill symlinks - Resolved circular symlink issues in skill files
- Version lock - Fixed version lock file staleness detection
- IDE diff fix - Fixed diff tab close behavior in IDE
v2.0.61
- VSCode revert - Reverted VSCode support for multiple terminal clients due to responsiveness issues
v2.0.60
- Background agents - Agents run in the background while you work
- CLI flag - Added
--disable-slash-commandsCLI flag to disable all slash commands - Commit attribution - Added model name to "Co-Authored-By" commit messages
- MCP toggle -
/mcp enable [server-name]or/mcp disable [server-name]for quick toggling - Fetch optimization - Updated Fetch to skip summarization for pre-approved websites
- VSCode multi-client - Added support for multiple terminal clients connecting to IDE server
v2.0.59
- Agent CLI flag - Added
--agentCLI flag to override the agent setting for current session - Agent setting - Configure main thread with a specific agent's system prompt, tool restrictions, and model
- VSCode fix - Fixed
.claude.jsonconfig file being read from incorrect location
v2.0.58
- Opus 4.5 for Pro - Pro users now have access to Opus 4.5 as part of their subscription
- Timer fix - Fixed timer duration showing "11m 60s" instead of "12m 0s"
- Windows paths - Managed settings now prefer
C:\Program Files\ClaudeCode
v2.0.57
- Plan feedback - Added feedback input when rejecting plans, allowing users to tell Claude what to change
- VSCode streaming - Added streaming message support for real-time response display
v2.0.56
- Progress bar setting - Added setting to enable/disable terminal progress bar (OSC 9;4)
- VSCode secondary sidebar - Support for VS Code's secondary sidebar (VS Code 1.97+)
v2.0.55
- Proxy DNS fix - Fixed proxy DNS resolution being forced on by default (now opt-in via
CLAUDE_CODE_PROXY_RESOLVES_HOSTS=true) - Keyboard nav fix - Fixed keyboard navigation becoming unresponsive in memory location selector
- AskUserQuestion improvement - Auto-submit single-select questions on the last question
- Fuzzy matching - Improved
@file suggestions with faster, more accurate results
v2.0.54
- PermissionRequest hooks - Enable hooks to process 'always allow' suggestions
- iTerm fix - Fix issue with excessive iTerm notifications
v2.0.52
- Duplicate message fix - Fixed duplicate message display when starting Claude with command line argument
- Usage command fix - Fixed
/usageprogress bars to fill up as usage increases - Linux image paste - Fixed image pasting on Linux systems running Wayland
- Bash improvement - Permit some uses of
$!in bash commands
v2.0.51
- Opus 4.5 released - Opus 4.5 is now available
- Claude Code for Desktop - Introducing Claude Code for Desktop
- Updated usage limits - Updated limits for Claude Code users
- Pro extra usage - Pro users can purchase extra usage for Opus 4.5
- Plan Mode improvements - More precise plans and more thorough execution
- Usage notifications - Easier to understand usage limit notifications
v2.0.50
- MCP nested refs fix - Fixed bug preventing calling MCP tools with nested references in input schemas
- Ultrathink display - Improved ultrathink text display
- Session limit clarity - Improved clarity of 5-hour session limit warning
v2.0.49
- Readline paste - Added readline-style ctrl-y for pasting deleted text
- Warning clarity - Improved clarity of usage limit warning message
- Subagent permissions - Fixed handling of subagent permissions
v2.0.47
- Teleport improvements - Improved error messages and validation for
claude --teleport - Usage error handling - Improved error handling in
/usage - History fix - Fixed race condition with history entry not getting logged at exit
- Vertex fix - Fixed Vertex AI configuration not being applied from
settings.json
v2.0.45
- Microsoft Foundry - Added support for Microsoft Foundry
- PermissionRequest hook - Automatically approve or deny tool permission requests with custom logic
- Web background tasks - Send background tasks to Claude Code on the web by starting a message with
&
v2.0.43
- Agent permissionMode - Added
permissionModefield for custom agents - Hook tool_use_id - Added
tool_use_idfield to hook input types - Skills frontmatter - Declare skills to auto-load for subagents
- SubagentStart hook - Added the
SubagentStarthook event - CLAUDE.md fix - Fixed nested
CLAUDE.mdfiles not loading when @-mentioning files - NotebookEdit fix - Fixed cell insertion at incorrect positions
v2.0.42
- SubagentStop fields - Added
agent_idandagent_transcript_pathfields toSubagentStophooks
v2.0.41
- Stop hook model - Added
modelparameter to prompt-based stop hooks - Slash command fix - Fixed slash commands from user settings being loaded twice
- Plugin hook fix - Fixed crash when plugin command hooks timeout
- Bedrock model fix - Bedrock users no longer see duplicate Opus entries
- Security links - Fixed broken security documentation links
v2.0.37
- Notification idleness - Fixed how idleness is computed for notifications
- Hook matchers - Added matcher values for Notification hook events
- Output styles option - Added
keep-coding-instructionsoption to frontmatter
v2.0.36
- Autoupdater fix -
DISABLE_AUTOUPDATERnow properly disables package manager update notifications - Queue fix - Fixed queued messages being incorrectly executed as bash commands
v2.0.35
- Fuzzy search - Improved fuzzy search results when searching commands
- VSCode fonts - Extension respects
chat.fontSizeandchat.fontFamilysettings - Exit delay - Added
CLAUDE_CODE_EXIT_AFTER_STOP_DELAYfor automated workflows - ignorePatterns migration - Migrated to deny permissions in localSettings
v2.0.34
- VSCode permission mode - Added setting to configure initial permission mode for new conversations
- Rust fuzzy finder - Improved file path suggestion performance with native Rust-based fuzzy finder
- OAuth fix - Fixed infinite token refresh loop for MCP servers with OAuth
- Memory fix - Fixed memory crash when reading or writing large files
v2.0.33
- Native launch speed - Native binary installs now launch quicker
- Doctor fix - Fixed
claude doctorincorrectly detecting Homebrew vs npm-global installations - MCP serve fix - Fixed
claude mcp serveexposing tools with incompatible outputSchemas
v2.0.32
- Output styles restored - Un-deprecated output styles based on community feedback
- Company announcements - Added
companyAnnouncementssetting for startup announcements - Hook progress fix - Fixed hook progress messages not updating during PostToolUse hook execution
v2.0.31
- Windows mode switch - Native installation uses shift+tab for mode switching (instead of alt+m)
- Vertex web search - Add support for Web Search on supported models
- VSCode gitignore - Added
respectGitIgnoreconfiguration for file searches - MCP tool names fix - Fixed "Tool names must be unique" error with subagents
- Compact fix - Fixed
/compactfailing withprompt_too_long - Plugin uninstall - Fixed plugin uninstall not removing plugins
v2.0.30
- macOS keychain hint - Added helpful hint to run
security unlock-keychainfor API key errors - Sandbox setting - Added
allowUnsandboxedCommandssandbox setting - Agent disallowedTools - Added
disallowedToolsfield to custom agent definitions - Prompt-based stop hooks - Added prompt-based stop hooks
- SSE MCP on native - Enabled SSE MCP servers on native build
- Output styles deprecated - Deprecated output styles (use --system-prompt-file or plugins instead)
- Explore agent fix - Fixed Explore agent creating unwanted .md files
v2.0.28
- Plan subagent - Introduced new Plan subagent for plan mode
- Subagent resume - Claude can now choose to resume subagents
- Dynamic model selection - Claude can dynamically choose the model used by subagents
- SDK budget flag - Added
--max-budget-usdflag - Git plugins - Add branch and tag support for git-based plugins using fragment syntax
v2.0.27
- New permission UI - New UI for permission prompts
- Branch filtering - Added current branch filtering and search to session resume screen
- Directory @-mention fix - Fixed "No assistant message found" error
- VSCode gitignore - Added config setting to include .gitignored files in searches
v2.0.25
- Legacy SDK removed - Removed legacy SDK entrypoint. Please migrate to @anthropic-ai/claude-agent-sdk
v2.0.24
- Skills fix - Fixed project-level skills not loading with
--setting-sources 'project' - Web teleport - Claude Code Web: Support for Web -> CLI teleport
- Sandbox mode - Releasing sandbox mode for BashTool on Linux & Mac
- Bedrock auth - Display awsAuthRefresh output when auth is required
v2.0.22
- Layout shift fix - Fixed content layout shift when scrolling through slash commands
- IDE thinking toggle - Add toggle to enable/disable thinking
- Permission prompt fix - Fixed duplicate permission prompts with parallel tool calls
- Enterprise MCP - Added support for enterprise managed MCP allowlist and denylist
v2.0.21
- MCP structuredContent - Support for MCP
structuredContentfield in tool responses - Interactive questions - Added interactive question tool for better user interaction
- Enhanced plan mode - Claude will now ask you questions more often in plan mode
- Haiku 4.5 for Pro - Added Haiku 4.5 as a model option for Pro users
- Queued commands fix - Fixed issue where queued commands don't have access to previous messages' output
v2.0.20
- Claude Skills - Added support for Claude Skills
v2.0.19
- Auto-background commands - Auto-background long-running bash commands instead of killing them (customizable via
BASH_DEFAULT_TIMEOUT_MS) - Print mode fix - Fixed bug where Haiku was unnecessarily called in print mode
v2.0.17
- Haiku 4.5 released - Added Haiku 4.5 to model selector
- Smart model switching - Haiku 4.5 automatically uses Sonnet in plan mode, Haiku for execution
- Explore subagent - Introducing the Explore subagent powered by Haiku for efficient codebase searching
- OTEL improvements - Support for HTTP_PROXY and HTTPS_PROXY
- Traffic control -
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICnow disables release notes fetching
v2.0.15
- Resume fixes - Fixed bug with resuming where previously created files needed to be read again before writing
- Print mode fix - Fixed bug with
-pmode where @-mentioned files needed to be read again before writing
v2.0.14
- MCP @-mentions - Fix @-mentioning MCP servers to toggle them on/off
- Permission improvements - Improve permission checks for bash with inline env vars
- Ultrathink fixes - Fix ultrathink + thinking toggle
- Login optimization - Reduce unnecessary logins
- Documentation - Document --system-prompt
v2.0.13
- Native build fix - Fixed
/pluginnot working on native build
v2.0.12
- Plugin System Released - Extend Claude Code with custom commands, agents, hooks, and MCP servers from marketplaces
- Plugin commands -
/plugin install,/plugin enable/disable,/plugin marketplacefor plugin management - Team collaboration - Repository-level plugin configuration via
extraKnownMarketplaces - Plugin validation -
/plugin validatecommand for validating plugin structure - Diagnostics - Comprehensive error messages via
/doctorcommand
v2.0.11
- System prompt optimization - Reduced system prompt size by 1,400 tokens
- IDE improvements - Fixed keyboard shortcuts and focus issues
- Rate limit fixes - Fixed Opus fallback rate limit errors appearing incorrectly
- Command fixes - Fixed
/add-dircommand selecting wrong default tab
v2.0.10
- Terminal renderer rewrite - Rewrote terminal renderer for buttery smooth UI
- MCP toggle - Enable/disable MCP servers by @mentioning, or in
/mcp - Tab completion - Added tab completion for shell commands in bash mode
- Hook enhancements - PreToolUse hooks can now modify tool inputs
- Editor integration - Press Ctrl-G to edit your prompt in your system's configured text editor
v2.0.9
- Bash backgrounding fix - Fix regression where bash backgrounding stopped working
v2.0.8
- Bedrock model update - Update Bedrock default Sonnet model to
global.anthropic.claude-sonnet-4-5-20250929-v1:0 - IDE drag-and-drop - Add drag-and-drop support for files and folders in chat
- Context fixes - Fix counting for thinking blocks in
/context - Theme improvements - Improve message rendering for users with light themes on dark terminals
v2.0.5
- IME fixes - Fix IME unintended message submission with Enter and Tab
- Terminal link - Add "Open in Terminal" link in login screen
- OAuth fixes - Fix unhandled OAuth expiration 401 API errors
v2.0.1
- Bedrock/Vertex updates - Skip Sonnet 4.5 default model setting change for Bedrock and Vertex
- Bug fixes - Various bug fixes and presentation improvements
v2.0.0
- Native VS Code extension - New native VS Code extension
- Fresh UI - Fresh coat of paint throughout the whole app
- Rewind feature -
/rewinda conversation to undo code changes - Usage tracking -
/usagecommand to see plan limits - Thinking toggle - Tab to toggle thinking (sticky across sessions)
- History search - Ctrl-R to search history
- SDK rename - The Claude Code SDK is now the Claude Agent SDK
- Dynamic agents - Add subagents dynamically with
--agentsflag
Version 1.0 Series
v1.0.126
- Context command - Enable
/contextcommand for Bedrock and Vertex - mTLS support - Add mTLS support for HTTP-based OpenTelemetry exporters
v1.0.124
- Bash login control - Set
CLAUDE_BASH_NO_LOGINenvironment variable to skip login shell for BashTool - Security improvements - No longer inform Claude of the list of allowed tools when permission is denied
- Bash security - Fixed security vulnerability in Bash tool permission checks
v1.0.123
- Bash permission rules - Now support output redirections when matching
- Thinking mode fix - Fixed thinking mode triggering on negation phrases like "don't think"
- SlashCommand tool - Added SlashCommand tool enabling Claude to invoke your slash commands
v1.0.120
- Input lag fix - Fix input lag during typing, especially noticeable with large prompts
- Security fix - Fixed security vulnerability where Bash tool permission checks could be bypassed
v1.0.119
- Windows fix - Fix Windows issue where process visually freezes on entering interactive mode
- Dynamic MCP headers - Support dynamic headers for MCP servers via headersHelper configuration
v1.0.117
- History search - Add Ctrl-R history search to recall previous commands like bash/zsh
- Input lag fix - Fix input lag while typing, especially on Windows
v1.0.115
- Thinking display - Improve thinking mode display with enhanced visual effects
- Thinking toggle - Type /t to temporarily disable thinking mode in your prompt
v1.0.112
- Transcript mode - Added the model used to generate each assistant message
- Hooks improvements - Added systemMessage support for SessionEnd hooks
v1.0.110
- WezTerm support -
/terminal-setupcommand now supports WezTerm - OAuth refresh - MCP OAuth tokens now proactively refresh before expiration
v1.0.106
- Windows paths - Fixed path permission matching to consistently use POSIX format
v1.0.94
- Vertex global endpoints - Add support for global endpoints for supported models
- Memory editing - /memory command now allows direct editing of all imported memory files
- Todos command - Added /todos command to list current todo items
v1.0.90
- Settings reload - Settings file changes take effect immediately - no restart required
v1.0.88
- OAuth fix - Resolved "OAuth authentication is currently not supported" issue
- Status line - Now includes
exceeds_200k_tokensindicator - Model environment variables - Added
ANTHROPIC_DEFAULT_SONNET_MODELandANTHROPIC_DEFAULT_OPUS_MODEL
v1.0.85
- Cost visibility - Status line now shows real-time session costs
- Hooks enhancement - New SessionEnd hook for cleanup operations
v1.0.84
- Network stability - Fixed tool_use/tool_result ID mismatch errors during unstable connections
- Built-in ripgrep - Now default (disable with
USE_BUILTIN_RIPGREP=0)
v1.0.81
- Output styles released - New educational styles "Explanatory" and "Learning"
v1.0.77
- Opus Plan Mode - New
/modelsetting to use Opus only for planning
v1.0.73
- MCP flexibility - Support multiple config files:
--mcp-config file1.json file2.json - Alpine Linux support - Now works with musl-based distributions
v1.0.71
- Background commands - Ctrl+B runs commands in background (perfect for dev servers)
- Custom status line - Add terminal prompts with
/statusline
v1.0.70
- Performance boost - Optimized rendering for large contexts
- Windows fixes - Native file search, ripgrep, and subagents now working
v1.0.69
- Opus 4.1 - Major model upgrade with improved capabilities
v1.0.60
- Custom subagents - Create custom subagents for specialized tasks with /agents
v1.0.58
- PDF support - Added support for reading PDFs
v1.0.51
- Native Windows - Added support for native Windows (requires Git for Windows)
v1.0.38
- Hooks released - Custom automation hooks for pre/post tool execution
v1.0.27
- MCP improvements - Streamable HTTP MCP servers, OAuth support, @-mentionable resources
- Resume command -
/resumeslash command to switch conversations
v1.0.23
- SDK releases - Released TypeScript SDK and Python SDK
v1.0.11
- Claude Pro support - Claude Code can now be used with a Claude Pro subscription
v1.0.0
- General availability - Claude Code is now generally available
- New models - Introducing Sonnet 4 and Opus 4 models
Version 0.2 Series (Beta)
v0.2.96
- Claude Max - Claude Code can now be used with a Claude Max subscription
v0.2.93
- Resume conversations -
claude --continueandclaude --resume - Todo list - Claude now has access to a Todo list for organization
v0.2.75
- Message queuing - Hit Enter to queue additional messages while Claude works
- Image support - Drag in or copy/paste image files directly
- @-mentions - @-mention files to directly add them to context
v0.2.54
- Memory shortcut - Start your message with '#' to add to Memory
- Transcript mode - Press ctrl+r to see full output for long tool results
- MCP SSE transport - Added support for MCP SSE transport
v0.2.50
- MCP project scope - Add MCP servers to .mcp.json files and commit to repository
v0.2.47
- Auto-complete - Press Tab to auto-complete file and folder names
- Auto-accept toggle - Press Shift + Tab to toggle auto-accept for file edits
- Infinite conversations - Automatic conversation compaction
v0.2.44
- Thinking mode - Say 'think' or 'think harder' or 'ultrathink' for planning mode
v0.2.34
- Vim bindings - Enable with /vim or /config
v0.2.31
- Custom slash commands - Markdown files in .claude/commands/ directories appear as custom slash commands
- MCP debug mode - Run with --mcp-debug flag for more information about MCP server errors
v0.2.21
- Fuzzy matching - Fuzzy matching for /commands
Last updated on
