Claude Code Changelog

AUTO-SYNC

Updated daily at 06:00 KST · Last sync: 2026-05-19 22:20 UTC · Source · Repo

292
Total Versions
153
With New Commands
Latest Release
Badge NEW Added IMP Improved FIX Fixed DEL Removed
Version Date Commands / Flags Key Features
v2.1.1452026-05-19--jsonNEW /pluginIMP alt+tIMP /reviewFIX
  • Added claude agents --json to list live Claude sessions as JSON for scripting (tmux-resurrect, status bars, session pickers)
  • Added agent_id and parent_agent_id attributes to claude_code.tool OTEL spans, and fixed trace parenting so background subagent spans nest under the dispatching Agent tool span
  • Status line JSON input now includes GitHub repo and PR information when detected
  • /plugin Discover and Browse screens now show a plugin's commands, agents, skills, hooks, and MCP/LSP servers before installation
  • claude agents terminal tab title now shows the awaiting-input count so an alt-tabbed window tells you when an agent needs attention
  • Slash command and @-mention suggestion list now supports mouse hover and click in fullscreen mode
  • Stop and SubagentStop hook input now includes background_tasks and session_crons fields
  • Fixed /review using a deprecated projectCards GraphQL query that errored on repos with Classic Projects
v2.1.1442026-05-19/resumeNEW --bgNEW /pluginIMP /modelIMP /extra-usageIMP /usage-creditsIMP Ctrl+LFIX /branchFIX Ctrl+OFIX /bgIMP /add-dirIMP Ctrl+RIMP /doctorIMP /feedbackIMP
  • Added /resume support for background sessions — sessions started via claude --bg or agent view now appear alongside interactive ones, marked with bg
  • Added elapsed duration to background subagent completion notifications (e.g. "Agent completed · 3h 2m 5s")
  • The /plugin browse and discover panes now show when a plugin was last updated
  • /model now changes the model for the current session only; press d in the model picker to set a default for new sessions
  • Renamed "extra usage" to "usage credits" across CLI copy; /extra-usage is now /usage-credits (old name still works)
  • Fixed garbled terminal output after a missed window-resize event (e.g. dragging a VS Code split-pane divider) — now self-heals on the next frame instead of requiring Ctrl+L
  • Reduced terminal rendering glitches in VS Code by reducing spinner animation color count
  • Fewer spurious tool errors during search: head/tail file views now satisfy the read-before-edit check, and a "no matches" result (exit code 1) from egrep, fgrep, git grep, or git diff is no longer reported as a command failure
  • Fixed /branch failing with "No conversation to branch" after entering a worktree or in some background sessions
  • Resumed sessions now keep the model they were using instead of picking up another session's /model choice
  • Fixed Bedrock and Vertex users unable to select "Opus (1M context)" from the /model picker (regression in v2.1.129)
  • Fixed scrolling in attached background sessions on Windows — PgUp/PgDn, mouse wheel, and Ctrl+O transcript navigation now work
  • /bg and ←-detach now preserve directories added via /add-dir
  • Fixed /resume picker not showing sessions forked from a background session
  • claude agents / --bg rejection messages now name the specific gate (non-TTY, env var, or setting) instead of a generic message
  • claude --bg --name <label> now echoes the name in the post-spawn confirmation
  • claude agents: renaming a background session with Ctrl+R now updates the attached session's banner immediately
  • Background session worktree isolation guard now applies for non-git VCS users with WorktreeCreate hooks configured
  • Plugin marketplace add/update now respects CLAUDE_CODE_PLUGIN_PREFER_HTTPS
  • /plugin now returns to the Installed list after enabling, disabling, or uninstalling a plugin
  • /doctor now shows an exec-form example when a command hook is missing the command field
  • Skill-listing truncation is no longer shown as a startup notification — run /doctor for the full breakdown
  • The post-survey follow-up hint now appears after every non-dismiss survey response with context-aware copy, making it easier to share more detail via /feedback.
v2.1.1432026-05-15/pluginNEW Shift+TIMP /loopFIX Ctrl+CFIX /goalFIX /bgIMP --agent <name>FIX --add-dirIMP --settingsIMP --mcp-configIMP --plugin-dirIMP --permission-mode --model --effort --dangerously-skip-permissions --strict-mcp-configIMP --fallback-modelIMP --allow-dangerously-skip-permissionsIMP
  • Added plugin dependency enforcement: claude plugin disable now refuses when another enabled plugin depends on the target (with a copy-pasteable disable-chain hint), and claude plugin enable force-enables transitive dependencies
  • Added projected context cost (per-turn and per-invocation token estimates) to the /plugin marketplace browse pane
  • Added worktree.bgIsolation: "none" setting to let background sessions edit the working copy directly without EnterWorktree, for repos where worktrees are impractical
  • PowerShell tool now passes -ExecutionPolicy Bypass. Opt out with CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY=1
  • Background sessions now preserve the model and effort level you set after waking from idle
  • Shift+Tab in attached agent sessions now includes auto mode in the cycle
  • Fixed Esc/Ctrl+C not cancelling a pending /loop wakeup while Claude is idle between iterations
  • Fixed /goal evaluator firing while background shells or delegated subagents are still running
  • Fixed /bg without a prompt sending "continue" to the forked session — the fork now waits for input
  • Fixed --agent <name> not finding plugin-contributed agents without the plugin: prefix
  • The PowerShell tool is now enabled by default on Windows for Bedrock, Vertex, and Foundry users. Opt out with CLAUDE_CODE_USE_POWERSHELL_TOOL=0.
  • claude agents now accepts --add-dir, --settings, --mcp-config, and --plugin-dir and applies them to the dashboard and to background sessions dispatched from it
  • claude agents accepts --permission-mode, --model, --effort, and --dangerously-skip-permissions to set defaults for sessions dispatched from the view
  • claude --bg --dangerously-skip-permissions now persists across retire→wake
  • Worktree cleanup no longer falls back to rm -rf when git worktree remove fails, preventing loss of gitignored or in-progress files
  • /bg now preserves --mcp-config, --settings, --add-dir, --plugin-dir, and --strict-mcp-config, so backgrounded sessions keep their MCP servers and settings across respawn.
  • Background sessions launched from claude agents now honor permissions.defaultMode from settings.json (was previously overridden to auto mode)
  • /bg and ←-detach now preserve --fallback-model, so backgrounded workers degrade to the fallback model on overload instead of hard-failing.
  • /bg and ←-detach now preserve --allow-dangerously-skip-permissions, so the forked worker keeps bypass-permissions available in its Shift+Tab cycle.
  • Fixed claude agents --allow-dangerously-skip-permissions defaulting dispatched sessions to bypass mode instead of making it available in the permission cycle
v2.1.1422026-05-14--add-dirNEW --settingsNEW --mcp-configNEW --plugin-dirNEW --permission-modeNEW --modelNEW --effortNEW --dangerously-skip-permissionsNEW /pluginIMP /web-setup Ctrl+CFIX /modelDEL /model claude-sonnet-4-20250514DEL
  • Added new claude agents flags: --add-dir, --settings, --mcp-config, --plugin-dir, --permission-mode, --model, --effort, and --dangerously-skip-permissions to configure dispatched background sessions
  • Fast mode now uses Opus 4.7 by default (previously Opus 4.6). Set CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE=1 to pin fast mode to Opus 4.6
  • Plugins with a root-level SKILL.md and no skills/ subdirectory are now surfaced as a skill
  • The /plugin details pane and claude plugin details now show LSP servers a plugin provides
  • /web-setup warns before replacing an existing GitHub App connection
  • Fixed claude agents deadlocking on Windows with network-drive working directories; Ctrl+C now works during startup
  • Fixed claude --bg --dangerously-skip-permissions not persisting across retire/wake
  • Fixed redundant set_model requests from remote clients injecting duplicate /model breadcrumbs into the transcript
  • Fixed /plugin browse pane showing "0 installs" for newly published plugins
  • Removed stale /model claude-sonnet-4-20250514 suggestion from Usage Policy refusal messages
v2.1.1412026-05-13--cwdNEW /feedbackIMP /bgIMP /doctorFIX /modelFIX Ctrl+CFIX ctrl+eFIX /tuiFIX /mcpFIX /loginFIX Alt+VFIX
  • Added terminalSequence field to hook JSON output so hooks can emit desktop notifications, window titles, and bells without a controlling terminal
  • Added CLAUDE_CODE_PLUGIN_PREFER_HTTPS to clone GitHub plugin sources over HTTPS instead of SSH, for environments without a GitHub SSH key
  • Added ANTHROPIC_WORKSPACE_ID environment variable for workload identity federation — scopes the minted token to a specific workspace when the federation rule covers more than one
  • Added claude agents --cwd <path> to scope the session list to a directory
  • /feedback can now include recent sessions (last 24 hours or 7 days) for issues spanning more than the current session
  • Rewind menu: added "Summarize up to here" to compress earlier context while keeping recent turns intact
  • Auto mode permission dialog now explains when a permissions.ask rule caused the prompt
  • Restored the "view diff in your IDE" option on file-edit permission prompts when an IDE is connected
  • Background agents launched via /bg or ←← now preserve the current permission mode instead of reverting to default
  • claude agents: agents that finish work but leave a background shell running now move to Completed instead of staying under Working
  • Fixed claude daemon status and /doctor on Windows throwing when the daemon pipe key file is locked or unreadable — now shows the underlying error instead of an opaque failure
  • Fixed /model in one session silently changing the autocompact threshold in other concurrent sessions
  • Fixed prompts cancelled with Ctrl+C/Esc before any response being dropped from Up-arrow history
  • Fixed Ctrl+C not interrupting a running turn while in vim INSERT/VISUAL mode
  • Fixed alternative chat:submit keybindings (e.g. meta+enter, ctrl+enter) not working when enter is rebound to chat:newline
  • Fixed /tui silently dropping running background shells and subagents — now refuses and asks to wait for them to finish
  • Fixed /mcp server list not keeping the focused server visible in short terminals in fullscreen mode
  • Fixed redaction in /feedback bundles producing invalid JSON for quoted values like session IDs
  • Fixed Remote Control automatically re-enrolling a trusted device when the server rejects a stale token, instead of looping through /login
  • Fixed Windows Alt+V image paste reporting "no image found" when the clipboard contains a screenshot
  • Bedrock: awsCredentialExport now always runs when configured instead of being skipped when ambient AWS credentials resolve, fixing auth for cross-account access
v2.1.1402026-05-12/goalFIX /loopFIX /doctorIMP /pluginIMP
  • Updated agent color palette
  • Fixed /goal silently hanging when disableAllHooks or allowManagedHooksOnly is set — now shows a clear message instead of an indicator that never resolves
  • Fixed /loop scheduling redundant wakeups to poll for background tasks that already notify on completion
  • Plugins now warn when a default component folder (e.g. commands/) is silently ignored because plugin.json sets the matching key. Shown in /doctor, claude plugin list, and /plugin.
v2.1.1392026-05-11/goalNEW /scroll-speedNEW /mcpIMP /context allIMP /contextIMP /pluginIMP /scheduleIMP /modelFIX --printFIX Ctrl+SNEW
  • Added agent view (Research Preview): a single list of every Claude Code session — running, blocked on you, or done. Run claude agents to get started. See https://code.claude.com/docs/en/agent-view
  • Added /goal command: set a completion condition and Claude keeps working across turns until it's met. Works in interactive, -p, and Remote Control. Shows live elapsed/turns/tokens as an overlay panel
  • Added /scroll-speed command to tune mouse wheel scroll speed with a live preview
  • Added claude plugin details <name> to show a plugin's component inventory and projected per-session token cost
  • Added transcript view navigation: ? for keyboard shortcuts, {/} to jump between user prompts, v to toggle shortcut panel
  • Added hook args: string[] field (exec form) that spawns the command directly without a shell, so path placeholders never need quoting
  • Added hook continueOnBlock config option for PostToolUse — set to true to feed the hook's rejection reason back to Claude and continue the turn
  • MCP stdio servers now receive CLAUDE_PROJECT_DIR in their environment, matching hooks. Plugin configs can reference ${CLAUDE_PROJECT_DIR} in commands
  • Compaction prompt now asks the model to preserve sensitive user instructions
  • /mcp Reconnect now picks up .mcp.json edits without a restart, and shows the HTTP status and URL when reconnecting fails
  • /context all per-skill token estimates now account for the model's tokenizer and show rounded values
  • claude plugin install <name>@<marketplace> now auto-refreshes the marketplace and retries before reporting a plugin as not found
  • /plugin installed-plugin details now show hook event names and MCP server names cleanly
  • /context now shows the providing plugin's name for plugin-sourced skills
  • Remote Control, /schedule, claude.ai MCP connectors, and notification preferences are now disabled when ANTHROPIC_API_KEY / apiKeyHelper / ANTHROPIC_AUTH_TOKEN is set, even if a Claude.ai login also exists. Unset the API key to use these features
  • Fixed /model picker "Default" row not reflecting ANTHROPIC_DEFAULT_OPUS_MODEL/ANTHROPIC_DEFAULT_SONNET_MODEL overrides
  • Fixed claude_code.active_time.total OpenTelemetry metric not being emitted in --print mode
  • [VSCode] Press Cmd/Ctrl+Shift+T to reopen the most recently closed session tab, configurable via claudeCode.enableReopenClosedSessionShortcut
v2.1.1382026-05-09
  • Internal fixes
v2.1.1372026-05-09
  • [VSCode] Fixed extension failing to activate on Windows
v2.1.1362026-05-08/clearFIX --resumeFIX --continueFIX Ctrl+BFIX Ctrl+GFIX /usageFIX /insightsFIX /resumeFIX /branchFIX /install-github-appFIX /desktopFIX /web-setupFIX /doctorFIX /myplugin reviewFIX /mypluginFIX /clear <name>FIX /release-notesFIX /mcpFIX /settingsFIX /terminal-setupFIX --worktreeIMP
  • Added CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL to re-enable the session quality survey for enterprises capturing responses through OpenTelemetry
  • Added settings.autoMode.hard_deny for auto mode classifier rules that block unconditionally regardless of user intent or allow exceptions
  • Fixed MCP servers configured in .mcp.json, plugins, and claude.ai connectors silently disappearing after /clear in the VS Code extension, JetBrains plugin, and Agent SDK
  • Fixed --resume / --continue not finding sessions when the project path contains underscores
  • WSL2: image paste from Windows clipboard now works via a PowerShell fallback when xclip/wl-paste cannot read image data
  • Fixed Backspace and Ctrl+Backspace getting swapped after using Ctrl+G to open an external editor on terminals with persistent extended-key modes
  • Fixed /usage weekly reset showing time of day instead of the calendar date
  • Fixed /insights crash when session history contains tool calls with malformed input fields
  • Fixed env vars from CLAUDE_ENV_FILE SessionStart hooks going stale after /resume or /clear
  • Fixed /branch saving a multi-line session title when given a pasted multi-line name
  • Fixed Esc not dismissing dialogs in /install-github-app, /desktop, /resume, and /web-setup
  • Fixed /doctor MCP schema errors not naming the missing field or showing the source file path
  • Fixed plugin slash commands with spaces (e.g. /myplugin review) not resolving to their namespaced form
  • Fixed /clear <name> not labeling the cleared session for /resume
  • Fixed /release-notes getting stuck on an old version after a failed changelog refresh
  • Fixed /mcp server list not scrolling when there are more servers than fit in the terminal
  • Fixed /settings language change being reverted on Escape after confirming
  • Fixed /terminal-setup only appearing in autocomplete on exact name match instead of partial prefixes
  • Improved error message when --worktree collides with an existing or stale worktree
v2.1.1332026-05-07--worktreeNEW --add-dirFIX /effortFIX --remote-controlIMP --remote-control-session-name-prefixIMP
  • Added worktree.baseRef setting (fresh | head) to choose whether --worktree, EnterWorktree, and agent-isolation worktrees branch from origin/<default> or local HEAD. Note: the default fresh changes EnterWorktree's base back to origin/<default> (it has been local HEAD since 2.1.128) — set worktree.baseRef: "head" to keep unpushed commits in new worktrees
  • Added sandbox.bwrapPath and sandbox.socatPath managed settings (Linux/WSL) to specify custom bubblewrap and socat binary locations
  • Added parentSettingsBehavior admin-tier key ('first-wins' | 'merge') to let admins opt SDK managedSettings (parent tier) into the policy merge
  • Hooks now receive the active effort level via the effort.level JSON input field and the $CLAUDE_EFFORT environment variable, and Bash tool commands can read $CLAUDE_EFFORT
  • Fixed Read/Write/Edit being denied on mapped network drives passed via --add-dir / SDK additionalDirectories
  • Fixed /effort in one session unexpectedly changing the effort level of other concurrent sessions, and a related issue where an IDE effort change could be silently dropped
  • claude --help now lists --remote-control alongside --remote-control-session-name-prefix
  • [VSCode] Fixed claudeCode.claudeProcessWrapper failing with "Unsupported platform" when the extension build doesn't bundle a Claude binary
v2.1.1322026-05-06Ctrl+VNEW --resumeFIX --permission-modeFIX Ctrl+ZFIX Ctrl+EFIX /usageFIX Ctrl+SFIX /terminal-setupFIX Shift+EFIX /effortFIX /statusFIX Alt+TFIX /mcpFIX /loginIMP /upgradeIMP /extra-usageIMP /tui fullscreenIMP /tuiIMP
  • Added CLAUDE_CODE_SESSION_ID environment variable to the Bash tool subprocess environment, matching the session_id passed to hooks
  • Added CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1 env var to opt out of the fullscreen alternate-screen renderer and keep the conversation in the terminal's native scrollback
  • Added a "Pasting…" footer hint while a Ctrl+V image paste is being read from the clipboard
  • Fixed external SIGINT (e.g. IDE stop button, kill -INT) not running graceful shutdown — terminal modes are now restored and the --resume hint is printed instead of an abrupt exit
  • Fixed --resume failing with no low surrogate in string when a tool error truncation split an emoji; pre-corrupted sessions are sanitized on load
  • Fixed --permission-mode flag being ignored when resuming a plan-mode session with -p --continue/--resume, and plan mode not being re-applied after ExitPlanMode within the same session
  • Fixed fullscreen mode showing a blank screen after laptop sleep/wake or Ctrl+Z/fg until the next keystroke or stream output
  • Fixed cursor landing mid-grapheme on Ctrl+E/A/K/U/arrow keys when an Indic conjunct or ZWJ emoji wraps across lines
  • Fixed /usage Ctrl+S hanging when copying the stats screenshot to the clipboard on Linux/X11
  • Fixed /terminal-setup showing a contradictory error in Windows Terminal — Shift+Enter is natively supported there
  • Fixed /effort picker not reflecting the CLAUDE_CODE_EFFORT_LEVEL env var override
  • Fixed /status showing the wrong default model for some users
  • Fixed Alt+T (thinking toggle) not working on macOS terminals without "Option as Meta" enabled (iTerm2, Terminal.app defaults)
  • Fixed MCP servers that connect but fail tools/list silently showing 0 tools — they now retry once and show "connected · tools fetch failed" in /mcp
  • Improved visual consistency in slash command dialogs and /login, /upgrade, /extra-usage dialog spacing
  • Updated the /tui fullscreen startup banner to describe additional renderer benefits (lower memory usage, mouse support, auto-copy on select)
v2.1.1312026-05-06
  • Fixed VS Code extension failing to activate on Windows due to a hardcoded build path in the bundled SDK (createRequire polyfill bug)
  • Fixed Mantle endpoint authentication failing with missing x-api-key header
v2.1.1292026-05-06--plugin-url <url>NEW --plugin-urlNEW /modelIMP Ctrl+RIMP Ctrl+SIMP /clearFIX /renameFIX Ctrl+GFIX /contextFIX /agentsFIX /branchFIX /resumeFIX /effortFIX --debugFIX
  • Added --plugin-url <url> flag to fetch a plugin .zip archive from a URL for the current session
  • Added CLAUDE_CODE_FORCE_SYNC_OUTPUT=1 env var to force-enable synchronized output on terminals that auto-detection misses (e.g. Emacs eat)
  • Added CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE: when set on Homebrew or WinGet installations, Claude Code runs the upgrade command in the background and prompts to restart
  • Plugin manifests: themes and monitors should now be declared under "experimental": { ... }. Top-level declarations still work but claude plugin validate will warn
  • Gateway /v1/models discovery for the /model picker is now opt-in via CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1 (was automatic in 2.1.126–2.1.128)
  • Ctrl+R history picker now defaults to searching all prompts across all projects, matching pre-2.1.124 behavior. Press Ctrl+S to narrow to the current project or session
  • Third-party deployments (Bedrock, Vertex, Foundry, or ANTHROPIC_BASE_URL gateway) no longer see spinner tips pointing at first-party Anthropic surfaces
  • skillOverrides setting now works: off hides from model and /, user-invocable-only hides from model only, name-only collapses description
  • The claude_code.pull_request.count OTel metric now counts PRs/MRs created via MCP tools, not just shell commands
  • Policy refusal error messages now include the API Request ID for easier support debugging
  • Fixed /clear not resetting the terminal tab title after a conversation
  • Fixed session title chip from /rename disappearing while a permission or other dialog is active
  • Fixed external-editor handoff (Ctrl+G) blanking the conversation history above the prompt
  • Fixed /context dumping its rendered ASCII visualization grid into the conversation, wasting ~1.6k tokens per call
  • Fixed /agents Library list arrow-key navigation: the highlighted agent now stays visible when the list exceeds the viewport
  • Fixed /branch success message not including the new branch's session id for /resume
  • Fixed cache-miss warning appearing spuriously after /clear or compaction when changing /effort or /model
  • Fixed harmless WebSocket warning being logged as an error in --debug during voice mode
  • [VSCode] Fixed /clear not clearing the conversation context and displayed transcript
v2.1.1282026-05-04/colorIMP /mcpIMP --plugin-dirIMP --channelsIMP /modelIMP /compactIMP --debugIMP /exitFIX /pluginFIX /configFIX /fastFIX /renameFIX --resumeFIX --continueFIX /plugin updateFIX --output-format stream-jsonIMP
  • Bare /color (no args) now picks a random session color
  • /mcp now shows the tool count for connected servers and flags servers that connected with 0 tools
  • --plugin-dir now accepts .zip plugin archives in addition to directories
  • --channels now works with console (API key) authentication — console orgs with managed settings must set channelsEnabled: true to enable
  • Updated /model picker: collapsed duplicate Opus 4.7 entries, and current Opus now shows as "Opus" instead of "Opus 4.7"
  • Subprocesses (Bash, hooks, MCP, LSP) no longer inherit OTEL_* environment variables, so OTEL-instrumented apps run via the Bash tool no longer pick up the CLI's own OTLP endpoint
  • MCP: workspace is now a reserved server name — existing servers with that name will be skipped with a warning
  • Reconnecting MCP servers no longer flood the conversation with full tool-name lists on every reconnect — re-announced tools are summarized by server prefix
  • SDK hosts now receive a persistent localSettings suggestion for Bash permission prompts, so "Always allow" writes to .claude/settings.local.json
  • EnterWorktree now creates the new branch from local HEAD as documented, instead of origin/<default-branch> — unpushed commits are no longer dropped
  • Auto mode: when the classifier can't evaluate an action, the error now includes a hint (retry, /compact, or run with --debug)
  • Fixed stray "4;0;" desktop notification on every /exit in Kitty and other terminals that interpret OSC 9 as a notification
  • Fixed /plugin Components panel showing "Marketplace 'inline' not found" for plugins loaded via --plugin-dir
  • Fixed tab navigation in /config stranding focus — the tab header now stays focused so arrows and Esc keep working
  • Fixed /fast on 3P providers fuzzy-matching to an unrelated skill instead of showing "not available"
  • Fixed /rename without args failing on resumed sessions whose last entry is a compact boundary
  • Fixed stale "remote-control is active" status lines from prior sessions appearing after --resume/--continue
  • Fixed /plugin update never detecting new versions of npm-sourced plugins
  • Headless --output-format stream-json: init.plugin_errors now includes --plugin-dir load failures in addition to dependency demotions
v2.1.1262026-05-01/modelIMP --dry-runNEW --allNEW --yesNEW --interactiveNEW --dangerously-skip-permissionsIMP Ctrl+LFIX --channelsFIX /pluginFIX /remote-controlFIX --
  • The /model picker now lists models from your gateway's /v1/models endpoint when ANTHROPIC_BASE_URL points at an Anthropic-compatible gateway
  • Added claude project purge [path] to delete all Claude Code state for a project (transcripts, tasks, file history, config entry) — supports --dry-run, -y/--yes, -i/--interactive, and --all
  • --dangerously-skip-permissions now bypasses prompts for writes to .claude/, .git/, .vscode/, shell config files, and other previously-protected paths (catastrophic removal commands still prompt as a safety net)
  • claude auth login now accepts the OAuth code pasted into the terminal when the browser callback can't reach localhost (WSL2, SSH, containers)
  • claude_code.skill_activated OpenTelemetry event now fires for user-typed slash commands and carries a new invocation_trigger attribute ("user-slash", "claude-proactive", or "nested-skill")
  • Auto mode: the spinner now turns red when a permission check stalls, instead of looking like the tool is running
  • Host-managed deployments (CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST) no longer auto-disable analytics on Bedrock/Vertex/Foundry
  • Windows: PowerShell 7 installed via the Microsoft Store, MSI without PATH, or .NET global tool is now detected
  • Windows: when the PowerShell tool is enabled, Claude now treats PowerShell as the primary shell instead of defaulting to Bash
  • Read tool: removed the per-file malware-assessment reminder that could cause spurious refusals and "this is not malware" commentary on legacy models
  • Fixed Ctrl+L clearing the prompt input — it now only forces a screen redraw, matching readline behavior
  • Fixed plan-mode tools being unavailable in interactive sessions launched with --channels
  • Fixed /plugin Uninstall reporting "Enabled" instead of "Uninstalled"
  • Bounded total size of file-modified reminders when a linter touches many files at once
  • Fixed /remote-control retries appearing stuck on "connecting…" — each retry now shows its result
  • PowerShell tool: bare -- (e.g. git diff -- file) is no longer mis-flagged as the --% stop-parsing token
v2.1.1232026-04-29
  • Fixed OAuth authentication failing with a 401 retry loop when CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1 is set
v2.1.1222026-04-28/resumeIMP /mcpIMP /branchFIX /modelFIX
  • Added ANTHROPIC_BEDROCK_SERVICE_TIER environment variable to select a Bedrock service tier (default, flex, or priority), sent as the X-Amzn-Bedrock-Service-Tier header
  • Pasting a PR URL into the /resume search box now finds the session that created that PR (GitHub, GitHub Enterprise, GitLab, and Bitbucket)
  • /mcp now shows claude.ai connectors hidden by a manually-added server with the same URL, with a hint to remove the duplicate
  • Clarified the /mcp message shown when an MCP server is still unauthorized after the browser sign-in flow
  • OpenTelemetry: numeric attributes on api_request/api_error log events are now emitted as numbers, not strings
  • OpenTelemetry: added claude_code.at_mention log event for @-mention resolution
  • Fixed /branch producing forks that fail with "tool_use ids were found without tool_result blocks" when the source session contained entries from rewound timelines
  • Fixed /model not showing the Effort option for Bedrock application inference profile ARNs, and those ARNs not receiving output_config.effort
  • Voice mode: keybindings bound to Caps Lock now show an error since terminals don't deliver Caps Lock as a key event
v2.1.1212026-04-28--pruneNEW /skillsNEW --dangerously-skip-permissionsIMP /terminal-setupIMP /copyIMP ctrl+oIMP /contextIMP /usageFIX --resumeFIX Ctrl+LFIX /focusFIX
  • Added alwaysLoad option to MCP server config — when true, all tools from that server skip tool-search deferral and are always available
  • Added claude plugin prune to remove orphaned auto-installed plugin dependencies; plugin uninstall --prune cascades
  • Added a type-to-filter search box to /skills so you can find a skill in long lists without scrolling
  • PostToolUse hooks can now replace tool output for all tools via hookSpecificOutput.updatedToolOutput (previously MCP-only)
  • Fullscreen mode: typing into the prompt no longer jumps scroll back to the bottom after you've scrolled up to read earlier output
  • Dialogs that overflow the terminal are now scrollable with arrow keys, PgUp/PgDn, home/end, and mouse wheel in both fullscreen and non-fullscreen modes
  • Clicking any line of a long URL that wraps across rows in fullscreen mode now opens the full URL
  • SDK and claude -p: CLAUDE_CODE_FORK_SUBAGENT=1 now works in non-interactive sessions
  • --dangerously-skip-permissions no longer prompts for writes to .claude/skills/, .claude/agents/, and .claude/commands/
  • /terminal-setup now enables iTerm2's "Applications in terminal may access clipboard" setting so /copy works, including from tmux
  • MCP servers that hit a transient error during startup now auto-retry up to 3 times instead of staying disconnected
  • The terminal tab session title is now generated in your configured language setting
  • LSP diagnostic summaries now expand on click/ctrl+o and show the expand hint
  • [VSCode] /context now opens a native token usage dialog
  • Fixed /usage leaking up to ~2GB of memory on machines with large transcript histories
  • Fixed --resume crashing on startup in external builds
  • Fixed --resume failing on large sessions when a transcript line was corrupted by an unclean shutdown — the corrupt line is now skipped
  • Fixed scrollback duplication when pressing Ctrl+L or triggering a redraw in non-fullscreen mode on tmux, GNOME Terminal, Windows Terminal, and Konsole
  • Fixed /usage returning "rate limited" after a stale OAuth token — now refreshes automatically
  • Fixed /usage dialog content being clipped when no-flicker mode is off
  • Fixed /focus showing "Unknown command" when the fullscreen renderer is off — now explains how to enable it
v2.1.120/ultrareviewNEW --jsonNEW /rewindFIX /pluginFIX /usageIMP
  • Windows: Git for Windows (Git Bash) is no longer required — when absent, Claude Code uses PowerShell as the shell tool
  • Added claude ultrareview [target] subcommand to run /ultrareview non-interactively from CI or scripts — prints findings to stdout (--json for raw output) and exits 0 on completion or 1 on failure
  • Skills can now reference the current effort level with ${CLAUDE_EFFORT} in their content
  • Set AI_AGENT environment variable for subprocesses so gh can attribute traffic to Claude Code
  • Spinner tips that recommend installing the desktop app or creating skills/agents are now hidden when you already have them
  • Show a "use PgUp/PgDn to scroll" hint when the terminal sends arrow keys instead of scroll events
  • Faster session start when you have many claude.ai connectors configured but not authorized
  • The auto mode denial message now links to the configuration docs
  • claude plugin validate now accepts $schema, version, and description at the top level of marketplace.json and $schema in plugin.json
  • Fixed /rewind and other interactive overlays not responding to keyboard input after launching with claude --resume
  • Fixed /plugin marketplace failing to load when one entry uses an unrecognized source format — that entry is shown but installing it prompts you to update
  • [VSCode] /usage now opens the native Account & Usage dialog instead of returning plain-text session cost
v2.1.1192026-04-23/configIMP --from-prIMP --printIMP --agent <name>IMP --client-secretFIX /skillsFIX /agentsFIX /exportFIX /usageFIX /planFIX /plan openFIX /reload-pluginsFIX /doctorFIX /statusFIX
  • /config settings (theme, editor mode, verbose, etc.) now persist to ~/.claude/settings.json and participate in project/local/policy override precedence
  • Added prUrlTemplate setting to point the footer PR badge at a custom code-review URL instead of github.com
  • Added CLAUDE_CODE_HIDE_CWD environment variable to hide the working directory in the startup logo
  • --from-pr now accepts GitLab merge-request, Bitbucket pull-request, and GitHub Enterprise PR URLs
  • --print mode now honors the agent's tools: and disallowedTools: frontmatter, matching interactive-mode behavior
  • --agent <name> now honors the agent definition's permissionMode for built-in agents
  • PowerShell tool commands can now be auto-approved in permission mode, matching Bash behavior
  • Hooks: PostToolUse and PostToolUseFailure hook inputs now include duration_ms (tool execution time, excluding permission prompts and PreToolUse hooks)
  • Subagent and SDK MCP server reconfiguration now connects servers in parallel instead of serially
  • Plugins pinned by another plugin's version constraint now auto-update to the highest satisfying git tag
  • Vim mode: Esc in INSERT no longer pulls a queued message back into the input; press Esc again to interrupt
  • Slash command suggestions now highlight the characters that matched your query
  • Fixed MCP OAuth client secret stored via --client-secret not being sent during token exchange for servers requiring client_secret_post
  • Fixed /skills Enter key closing the dialog instead of pre-filling /<skill-name> in the prompt
  • Fixed /agents detail view mislabeling built-in tools unavailable to subagents as "Unrecognized"
  • Fixed /export showing the current default model instead of the model the conversation actually used
  • Fixed /usage progress bars overlapping with their "Resets …" labels
  • Fixed /plan and /plan open not acting on the existing plan when entering plan mode
  • Fixed /reload-plugins and /doctor reporting load errors for disabled plugins
  • Fixed disabled MCP servers appearing as "failed" in /status
  • Fixed /doctor warning about MCP server entries overridden by a higher-precedence scope
v2.1.1182026-04-23/cost /stats /usage /theme --continueIMP --resumeIMP /add-dirIMP /colorIMP /modelIMP /doctorIMP /pluginIMP /mcpFIX /loginFIX --dangerously-skip-permissionsFIX /forkFIX Alt+KFIX Alt+XFIX
  • Added vim visual mode (v) and visual-line mode (V) with selection, operators, and visual feedback
  • Merged /cost and /stats into /usage — both remain as typing shortcuts that open the relevant tab
  • Create and switch between named custom themes from /theme, or hand-edit JSON files in ~/.claude/themes/; plugins can also ship themes via a themes/ directory
  • Hooks can now invoke MCP tools directly via type: "mcp_tool"
  • Added DISABLE_UPDATES env var to completely block all update paths including manual claude update — stricter than DISABLE_AUTOUPDATER
  • WSL on Windows can now inherit Windows-side managed settings via the wslInheritsWindowsSettings policy key
  • Auto mode: include "$defaults" in autoMode.allow, autoMode.soft_deny, or autoMode.environment to add custom rules alongside the built-in list instead of replacing it
  • Added a "Don't ask again" option to the auto mode opt-in prompt
  • Added claude plugin tag to create release git tags for plugins with version validation
  • --continue/--resume now find sessions that added the current directory via /add-dir
  • /color now syncs the session accent color to claude.ai/code when Remote Control is connected
  • The /model picker now honors ANTHROPIC_DEFAULT_*_MODEL_NAME/_DESCRIPTION overrides when using a custom ANTHROPIC_BASE_URL gateway
  • When auto-update skips a plugin due to another plugin's version constraint, the skip now appears in /doctor and the /plugin Errors tab
  • Fixed /mcp menu hiding OAuth Authenticate/Re-authenticate actions for servers configured with headersHelper, and HTTP/SSE MCP servers with custom headers being stuck in "needs authentication" after a transient 401
  • Fixed macOS keychain race where a concurrent MCP token refresh could overwrite a freshly-refreshed OAuth token, causing unexpected "Please run /login" prompts
  • Fixed /login having no effect in a session launched with CLAUDE_CODE_OAUTH_TOKEN — the env token is now cleared so disk credentials take effect
  • Fixed unreadable text in the "new messages" scroll pill and /plugin badges
  • Fixed plan acceptance dialog offering "auto mode" instead of "bypass permissions" when running with --dangerously-skip-permissions
  • Fixed /fork writing the full parent conversation to disk per fork — now writes a pointer and hydrates on read
  • Fixed Alt+K / Alt+X / Alt+^ / Alt+_ freezing keyboard input
v2.1.1172026-04-22--agentIMP /modelIMP /resumeIMP --resumeIMP /compactIMP /loginFIX /contextFIX
  • Forked subagents can now be enabled on external builds by setting CLAUDE_CODE_FORK_SUBAGENT=1
  • Agent frontmatter mcpServers are now loaded for main-thread agent sessions via --agent
  • Improved /model: selections now persist across restarts even when the project pins a different model, and the startup header shows when the active model comes from a project or managed-settings pin
  • The /resume command now offers to summarize stale, large sessions before re-reading them, matching the existing --resume behavior
  • Faster startup when both local and claude.ai MCP servers are configured (concurrent connect now default)
  • plugin install on an already-installed plugin now installs any missing dependencies instead of stopping at "already installed"
  • Plugin dependency errors now say "not installed" with an install hint, and claude plugin marketplace add now auto-resolves missing dependencies from configured marketplaces
  • Managed-settings blockedMarketplaces and strictKnownMarketplaces are now enforced on plugin install, update, refresh, and autoupdate
  • Advisor Tool (experimental): dialog now carries an "experimental" label, learn-more link, and startup notification when enabled; sessions no longer get stuck with "Advisor tool result content could not be processed" errors on every prompt and /compact
  • The cleanupPeriodDays retention sweep now also covers ~/.claude/tasks/, ~/.claude/shell-snapshots/, and ~/.claude/backups/
  • OpenTelemetry: user_prompt events now include command_name and command_source for slash commands; cost.usage, token.usage, api_request, and api_error now include an effort attribute when the model supports effort levels. Custom/MCP command names are redacted unless OTEL_LOG_TOOL_DETAILS=1 is set
  • Native builds on macOS and Linux: the Glob and Grep tools are replaced by embedded bfs and ugrep available through the Bash tool — faster searches without a separate tool round-trip (Windows and npm-installed builds unchanged)
  • Fixed Plain-CLI OAuth sessions dying with "Please run /login" when the access token expires mid-session — the token is now refreshed reactively on 401
  • Fixed /login having no effect when launched with CLAUDE_CODE_OAUTH_TOKEN env var and that token expires
  • Fixed Opus 4.7 sessions showing inflated /context percentages and autocompacting too early — Claude Code was computing against a 200K context window instead of Opus 4.7's native 1M
v2.1.1162026-04-20/resumeFIX /terminal-setupIMP /configIMP /doctorIMP /reload-pluginsIMP --agentIMP /storageNEW Ctrl+ZFIX /branchFIX /pluginFIX /updateFIX /tuiFIX
  • /resume on large sessions is significantly faster (up to 67% on 40MB+ sessions) and handles sessions with many dead-fork entries more efficiently
  • Faster MCP startup when multiple stdio servers are configured; resources/templates/list is now deferred to first @-mention
  • Smoother fullscreen scrolling in VS Code, Cursor, and Windsurf terminals — /terminal-setup now configures the editor's scroll sensitivity
  • Thinking spinner now shows progress inline ("still thinking", "thinking more", "almost done thinking"), replacing the separate hint row
  • /config search now matches option values (e.g. searching "vim" finds the Editor mode setting)
  • /doctor can now be opened while Claude is responding, without waiting for the current turn to finish
  • /reload-plugins and background plugin auto-update now auto-install missing plugin dependencies from marketplaces you've already added
  • Bash tool now surfaces a hint when gh commands hit GitHub's API rate limit, so agents can back off instead of retrying
  • The Usage tab in Settings now shows your 5-hour and weekly usage immediately and no longer fails when the usage endpoint is rate-limited
  • Agent frontmatter hooks: now fire when running as a main-thread agent via --agent
  • Slash command menu now shows "No commands match" when your filter has zero results, instead of disappearing
  • Claude Code and installer now use https://downloads.claude.ai/claude-code-releases instead of https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases
  • Fixed Ctrl+Z hanging the terminal when Claude Code is launched via a wrapper process (e.g. npx, bun run)
  • Fixed /branch rejecting conversations with transcripts larger than 50MB
  • Fixed /resume silently showing an empty conversation on large session files instead of reporting the load error
  • Fixed /plugin Installed tab showing the same item twice when it appears under Needs attention or Favorites
  • Fixed /update and /tui not working after entering a worktree mid-session
v2.1.1142026-04-18
  • Fixed a crash in the permission dialog when an agent teams teammate requested tool permission
v2.1.1132026-04-17Ctrl+AIMP Ctrl+EIMP Ctrl+BIMP /loopIMP /extra-usageIMP /ultrareviewIMP /privateIMP Ctrl+UFIX /copyFIX /effort autoFIX /effortFIX /insightsFIX
  • Added sandbox.network.deniedDomains setting to block specific domains even when a broader allowedDomains wildcard would otherwise permit them
  • Fullscreen mode: Shift+↑/↓ now scrolls the viewport when extending a selection past the visible edge
  • Ctrl+A and Ctrl+E now move to the start/end of the current logical line in multiline input, matching readline behavior
  • Windows: Ctrl+Backspace now deletes the previous word
  • Long URLs in responses and bash output stay clickable when they wrap across lines (in terminals with OSC 8 hyperlinks)
  • Improved /loop: pressing Esc now cancels pending wakeups, and wakeups display as "Claude resuming /loop wakeup" for clarity
  • /extra-usage now works from Remote Control (mobile/web) clients
  • Remote Control clients can now query @-file autocomplete suggestions
  • Improved /ultrareview: faster launch with parallelized checks, diffstat in the launch dialog, and animated launching state
  • Subagents that stall mid-stream now fail with a clear error after 10 minutes instead of hanging silently
  • Bash tool: multi-line commands whose first line is a comment now show the full command in the transcript, closing a UI-spoofing vector
  • Running cd <current-directory> && git … no longer triggers a permission prompt when the cd is a no-op
  • Security: on macOS, /private/{etc,var,tmp,home} paths are now treated as dangerous removal targets under Bash(rm:*) allow rules
  • Fixed Cmd-backspace / Ctrl+U to once again delete from the cursor to the start of the line
  • Fixed /copy "Full response" not aligning markdown table columns for pasting into GitHub, Notion, or Slack
  • Fixed /effort auto confirmation — now says "Effort level set to max" to match the status bar label
  • Fixed /insights crashing with EBUSY on Windows
v2.1.1122026-04-16
  • Fixed "claude-opus-4-7 is temporarily unavailable" for auto mode
v2.1.1112026-04-16/effortNEW --effortNEW /themeNEW /less-permission-promptsNEW /ultrareviewNEW --enable-auto-mode /setup-vertexIMP /setup-bedrockIMP /skillsIMP Ctrl+UIMP Ctrl+YIMP Ctrl+LIMP --output-format stream-jsonIMP /resumeFIX /contextFIX /clearFIX /renameFIX /commitFIX
  • Claude Opus 4.7 xhigh is now available! Use /effort to tune speed vs. intelligence
  • Auto mode is now available for Max subscribers when using Opus 4.7
  • Added xhigh effort level for Opus 4.7, sitting between high and max. Available via /effort, --effort, and the model picker; other models fall back to high
  • /effort now opens an interactive slider when called without arguments, with arrow-key navigation between levels and Enter to confirm
  • Added "Auto (match terminal)" theme option that matches your terminal's dark/light mode — select it from /theme
  • Added /less-permission-prompts skill — scans transcripts for common read-only Bash and MCP tool calls and proposes a prioritized allowlist for .claude/settings.json
  • Added /ultrareview for running comprehensive code review in the cloud using parallel multi-agent analysis and critique — invoke with no arguments to review your current branch, or /ultrareview <PR#> to fetch and review a specific GitHub PR
  • Auto mode no longer requires --enable-auto-mode
  • Windows: PowerShell tool is progressively rolling out. Opt in or out with CLAUDE_CODE_USE_POWERSHELL_TOOL. On Linux and macOS, enable with CLAUDE_CODE_USE_POWERSHELL_TOOL=1 (requires pwsh on PATH)
  • Read-only bash commands with glob patterns (e.g. ls *.ts) and commands starting with cd <project-dir> && no longer trigger a permission prompt
  • Suggest the closest matching subcommand when claude <word> is invoked with a near-miss typo (e.g. claude udpate → "Did you mean claude update?")
  • Plan files are now named after your prompt (e.g. fix-auth-race-snug-otter.md) instead of purely random words
  • Improved /setup-vertex and /setup-bedrock to show the actual settings.json path when CLAUDE_CONFIG_DIR is set, seed model candidates from existing pins on re-run, and offer a "with 1M context" option for supported models
  • /skills menu now supports sorting by estimated token count — press t to toggle
  • Ctrl+U now clears the entire input buffer (previously: delete to start of line); press Ctrl+Y to restore
  • Ctrl+L now forces a full screen redraw in addition to clearing the prompt input
  • Transcript view footer now shows [ (dump to scrollback) and v (open in editor) shortcuts
  • The "+N lines" marker for truncated long pastes is now a full-width rule for easier scanning
  • Headless --output-format stream-json now includes plugin_errors on the init event when plugins are demoted for unsatisfied dependencies
  • Added OTEL_LOG_RAW_API_BODIES environment variable to emit full API request and response bodies as OpenTelemetry log events for debugging
  • Fixed tab-completing /resume immediately resuming an arbitrary titled session instead of showing the session picker
  • Fixed /context grid rendering with extra blank lines between rows
  • Fixed /clear dropping the session name set by /rename, causing statusline output to lose session_name
  • Fixed Claude calling a non-existent commit skill and showing "Unknown skill: commit" for users without a custom /commit command
v2.1.1102026-04-15/tuiNEW /tui fullscreenNEW /focusIMP Ctrl+OIMP /configNEW Ctrl+GNEW /pluginIMP /doctorIMP --resumeIMP --continueIMP /contextIMP /exitIMP /reload-pluginsIMP /renameFIX /skillsFIX
  • Added /tui command and tui setting — run /tui fullscreen to switch to flicker-free rendering in the same conversation
  • Added push notification tool — Claude can send mobile push notifications when Remote Control and "Push when Claude decides" config are enabled
  • Changed Ctrl+O to toggle between normal and verbose transcript only; focus view is now toggled separately with the new /focus command
  • Added autoScrollEnabled config to disable conversation auto-scroll in fullscreen mode
  • Added option to show Claude's last response as commented context in the Ctrl+G external editor (enable via /config)
  • Improved /plugin Installed tab — items needing attention and favorites appear at the top, disabled items are hidden behind a fold, and f favorites the selected item
  • Improved /doctor to warn when an MCP server is defined in multiple config scopes with different endpoints
  • --resume/--continue now resurrects unexpired scheduled tasks
  • /context, /exit, and /reload-plugins now work from Remote Control (mobile/web) clients
  • Write tool now informs the model when you edit the proposed content in the IDE diff before accepting
  • Bash tool now enforces the documented maximum timeout instead of accepting arbitrarily large values
  • SDK/headless sessions now read TRACEPARENT/TRACESTATE from the environment for distributed trace linking
  • Session recap is now enabled for users with telemetry disabled (Bedrock, Vertex, Foundry, DISABLE_TELEMETRY). Opt out via /config or CLAUDE_CODE_ENABLE_AWAY_SUMMARY=0.
  • Fixed plugin install not honoring dependencies declared in plugin.json when the marketplace entry omits them; /plugin install now lists auto-installed dependencies
  • Fixed --resume sometimes showing the first prompt instead of the /rename name for sessions still running or exited uncleanly
  • Fixed dropped keystrokes after the CLI relaunches (e.g. /tui, provider setup wizards)
  • Hardened "Open in editor" actions against command injection from untrusted filenames
  • Fixed /skills menu not scrolling when the list overflows the modal in fullscreen mode
v2.1.1092026-04-15
  • Improved the extended-thinking indicator with a rotating progress hint
v2.1.1082026-04-14/configNEW /recapNEW /initIMP /reviewIMP /security-reviewIMP /undoIMP /rewindIMP /modelIMP /resumeIMP Ctrl+AIMP Ctrl+ONEW /loginFIX /renameFIX --teleportFIX /feedbackFIX --resume <id>FIX --resumeFIX
  • Added ENABLE_PROMPT_CACHING_1H env var to opt into 1-hour prompt cache TTL on API key, Bedrock, Vertex, and Foundry (ENABLE_PROMPT_CACHING_1H_BEDROCK is deprecated but still honored), and FORCE_PROMPT_CACHING_5M to force 5-minute TTL
  • Added recap feature to provide context when returning to a session, configurable in /config and manually invocable with /recap; force with CLAUDE_CODE_ENABLE_AWAY_SUMMARY if telemetry disabled.
  • The model can now discover and invoke built-in slash commands like /init, /review, and /security-review via the Skill tool
  • /undo is now an alias for /rewind
  • Improved /model to warn before switching models mid-conversation, since the next response re-reads the full history uncached
  • Improved /resume picker to default to sessions from the current directory; press Ctrl+A to show all projects
  • Reduced memory footprint for file reads, edits, and syntax highlighting by loading language grammars on demand
  • Added "verbose" indicator when viewing the detailed transcript (Ctrl+O)
  • Added a warning at startup when prompt caching is disabled via DISABLE_PROMPT_CACHING* environment variables
  • Fixed paste not working in the /login code prompt (regression in 2.1.105)
  • Fixed claude --resume <session-id> losing the session's custom name and color set via /rename
  • Fixed terminal escape codes appearing as garbage text in the prompt input after --teleport
  • Fixed /feedback retry: pressing Enter to resubmit after a failure now works without first editing the description
  • Fixed --teleport and --resume <id> precondition errors (e.g. dirty git tree, session not found) exiting silently instead of showing the error message
  • Fixed --resume truncating sessions when the transcript contained a self-referencing message
v2.1.1072026-04-14
  • Show thinking hints sooner during long operations
v2.1.1052026-04-13/proactiveIMP /loopIMP /doctorIMP /configIMP alt+eFIX Ctrl+JFIX /resumeFIX --worktreeFIX /branchFIX /modelFIX /helpFIX
  • Added path parameter to the EnterWorktree tool to switch into an existing worktree of the current repository
  • Added PreCompact hook support: hooks can now block compaction by exiting with code 2 or returning {"decision":"block"}
  • Added background monitor support for plugins via a top-level monitors manifest key that auto-arms at session start or on skill invoke
  • /proactive is now an alias for /loop
  • Improved /doctor layout with status icons; press f to have Claude fix reported issues
  • Improved /config labels and descriptions for clarity
  • Fixed alt+enter not inserting a newline in terminals using ESC-prefix alt encoding, and Ctrl+J not inserting a newline (regression in 2.1.100)
  • Fixed "Resume this session with..." hint not printing on exit after /resume, --worktree, or /branch
  • Fixed /model picker on AWS Bedrock in non-US regions persisting invalid us.* model IDs to settings.json when inference profile discovery is still in-flight
  • Fixed /help dropping the tab bar, Shortcuts heading, and footer at short terminal heights
v2.1.1012026-04-10/team-onboardingNEW /ultraplanIMP /renameIMP --nameIMP /pluginIMP --resumeFIX --continueFIX --setting-sourcesFIX /resumeFIX /btwFIX /contextFIX /plugin updateFIX /mcpFIX /loginFIX /add-dir --rememberFIX /configFIX /add-dirFIX /remote-controlFIX /insightsFIX
  • Added /team-onboarding command to generate a teammate ramp-up guide from your local Claude Code usage
  • Added OS CA certificate store trust by default, so enterprise TLS proxies work without extra setup (set CLAUDE_CODE_CERT_STORE=bundled to use only bundled CAs)
  • /ultraplan and other remote-session features now auto-create a default cloud environment instead of requiring web setup first
  • Improved claude -p --resume <name> to accept session titles set via /rename or --name
  • Improved /plugin and claude plugin update to show a warning when the marketplace could not be refreshed, instead of silently reporting a stale version
  • Fixed --resume/--continue losing conversation context on large sessions when the loader anchored on a dead-end branch instead of the live conversation
  • Fixed --resume chain recovery bridging into an unrelated subagent conversation when a subagent message landed near a main-chain write gap
  • Fixed a crash on --resume when a persisted Edit/Write tool result was missing its file_path
  • Fixed --setting-sources without user causing background cleanup to ignore cleanupPeriodDays and delete conversation history older than 30 days
  • Fixed several /resume picker issues: narrow default view hiding sessions from other projects, unreachable preview on Windows Terminal, incorrect cwd in worktrees, session-not-found errors not surfacing in stderr, terminal title not being set, and resume hint overlapping the prompt input
  • Fixed /btw writing a copy of the entire conversation to disk on every use
  • Fixed /context Free space and Messages breakdown disagreeing with the header percentage
  • Fixed several plugin issues: slash commands resolving to the wrong plugin with duplicate name: frontmatter, /plugin update failing with ENAMETOOLONG, Discover showing already-installed plugins, directory-source plugins loading from a stale version cache, and skills not honoring context: fork and agent frontmatter fields
  • Fixed the /mcp menu offering OAuth-specific actions for MCP servers configured with headersHelper; Reconnect is now offered instead to re-invoke the helper script
  • Fixed /login OAuth URL rendering with padding that prevented clean mouse selection
  • Fixed in-app settings writes (e.g. /add-dir --remember, /config) not refreshing the in-memory snapshot, preventing removed directories from being revoked mid-session
  • Fixed claude --continue -p not correctly continuing sessions created by -p or the SDK
  • Fixed several Remote Control issues: worktrees removed on session crash, connection failures not persisting in the transcript, spurious "Disconnected" indicator in brief mode for local sessions, and /remote-control failing over SSH when only CLAUDE_CODE_ORGANIZATION_UUID is set
  • Fixed /insights sometimes omitting the report file link from its response
  • [VSCode] Fixed the file attachment below the chat input not clearing when the last editor tab is closed
v2.1.982026-04-09--exclude-dynamic-system-prompt-sectionsNEW --dangerously-skip-permissionsFIX --add-dirFIX --resumeFIX /resumeIMP --resume <name>FIX /exportFIX /effort maxFIX /effortFIX /agentsIMP /reload-pluginsIMP --debugIMP /claude-apiIMP /compact
  • Added interactive Google Vertex AI setup wizard accessible from the login screen when selecting "3rd-party platform", guiding you through GCP authentication, project and region configuration, credential verification, and model pinning
  • Added CLAUDE_CODE_PERFORCE_MODE env var: when set, Edit/Write/NotebookEdit fail on read-only files with a p4 edit hint instead of silently overwriting them
  • Added Monitor tool for streaming events from background scripts
  • Added subprocess sandboxing with PID namespace isolation on Linux when CLAUDE_CODE_SUBPROCESS_ENV_SCRUB is set, and CLAUDE_CODE_SCRIPT_CAPS env var to limit per-session script invocations
  • Added --exclude-dynamic-system-prompt-sections flag to print mode for improved cross-user prompt caching
  • Added workspace.git_worktree to the status line JSON input, set whenever the current directory is inside a linked git worktree
  • Added W3C TRACEPARENT env var to Bash tool subprocesses when OTEL tracing is enabled, so child-process spans correctly parent to Claude Code's trace tree
  • LSP: Claude Code now identifies itself to language servers via clientInfo in the initialize request
  • Fixed --dangerously-skip-permissions being silently downgraded to accept-edits mode after approving a write to a protected path via Bash
  • Fixed removing a directory from additionalDirectories revoking access to the same directory passed via --add-dir
  • Fixed agent team members not inheriting the leader's permission mode when using --dangerously-skip-permissions
  • Fixed file-edit diffs disappearing from the UI on --resume when the edited file was larger than 10KB
  • Fixed several /resume picker issues: --resume <name> opening uneditable, filter reload wiping search state, empty list swallowing arrow keys, cross-project staleness, and transient task-status text replacing conversation summaries
  • Fixed /export not honoring absolute paths and ~, and silently rewriting user-supplied extensions to .txt
  • Fixed /effort max being denied for unknown or future model IDs
  • Improved /resume filter hint labels and added project/worktree/branch names in the filter indicator
  • Improved /agents with a tabbed layout: a Running tab shows live subagents, and the Library tab adds Run agent and View running instance actions
  • Improved /reload-plugins to pick up plugin-provided skills without requiring a restart
  • Improved hook errors in the transcript to include the first line of stderr for self-diagnosis without --debug
  • Updated the /claude-api skill to cover Managed Agents alongside Claude API
  • [VSCode] Fixed false-positive "requires git-bash" error on Windows when CLAUDE_CODE_GIT_BASH_PATH is set or Git is installed at a default location
  • Dropped /compact hints when DISABLE_COMPACT is set.
v2.1.972026-04-08Ctrl+ONEW /agentsNEW --dangerously-skip-permissionsFIX --add-dirFIX /resumeFIX --resume <name>FIX Ctrl+AFIX --resumeFIX Shift+EFIX /claude-apiIMP
  • Added focus view toggle (Ctrl+O) in NO_FLICKER mode showing prompt, one-line tool summary with edit diffstats, and final response
  • Added refreshInterval status line setting to re-run the status line command every N seconds
  • Added workspace.git_worktree to the status line JSON input, set when the current directory is inside a linked git worktree
  • Added ● N running indicator in /agents next to agent types with live subagent instances
  • Added syntax highlighting for Cedar policy files (.cedar, .cedarpolicy)
  • Fixed --dangerously-skip-permissions being silently downgraded to accept-edits mode after approving a write to a protected path
  • Fixed removing a directory from settings.permissions.additionalDirectories revoking access to the same directory passed via --add-dir
  • Fixed several /resume picker issues: --resume <name> opening uneditable, Ctrl+A reload wiping search, empty list swallowing navigation, task-status text replacing conversation summary, and cross-project staleness
  • Fixed file-edit diffs disappearing on --resume when the edited file was larger than 10KB
  • Fixed --resume cache misses and lost mid-turn input from attachment messages not being saved to the transcript
  • Fixed Shift+Enter and Alt/Cmd+arrow shortcuts not working in Warp with NO_FLICKER mode
  • Updated /claude-api skill to cover Managed Agents alongside the Claude API
v2.1.962026-04-08
  • Fixed Bedrock requests failing with 403 "Authorization header is missing" when using AWS_BEARER_TOKEN_BEDROCK or CLAUDE_CODE_SKIP_BEDROCK_AUTH (regression in 2.1.94)
v2.1.942026-04-07/effortIMP Shift+SFIX alt+sFIX --resumeIMP
  • Added support for Amazon Bedrock powered by Mantle, set CLAUDE_CODE_USE_MANTLE=1
  • Changed default effort level from medium to high for API-key, Bedrock/Vertex/Foundry, Team, and Enterprise users (control this with /effort)
  • Added compact Slacked #channel header with a clickable channel link for Slack MCP send-message tool calls
  • Added keep-coding-instructions frontmatter field support for plugin output styles
  • Added hookSpecificOutput.sessionTitle to UserPromptSubmit hooks for setting the session title
  • Plugin skills declared via "skills": ["./"] now use the skill's frontmatter name for the invocation name instead of the directory basename, giving a stable name across install methods
  • Fixed Shift+Space inserting the literal word "space" instead of a space character in search inputs
  • Improved --resume to resume sessions from other worktrees of the same repo directly instead of printing a cd command
  • [VSCode] Reduced cold-open subprocess work on starting a session
  • [VSCode] Fixed dropdown menus selecting the wrong item when the mouse was over the list while typing or using arrow keys
  • [VSCode] Added a warning banner when settings.json files fail to parse, so users know their permission rules are not being applied
v2.1.922026-04-04/costNEW /release-notesIMP --remote-control-session-name-prefixIMP ctrl+eFIX /clearFIX /tagDEL /vimDEL /configDEL
  • Added forceRemoteSettingsRefresh policy setting: when set, the CLI blocks startup until remote managed settings are freshly fetched, and exits if the fetch fails (fail-closed)
  • Added interactive Bedrock setup wizard accessible from the login screen when selecting "3rd-party platform" — guides you through AWS authentication, region configuration, credential verification, and model pinning
  • Added per-model and cache-hit breakdown to /cost for subscription users
  • /release-notes is now an interactive version picker
  • Remote Control session names now use your hostname as the default prefix (e.g. myhost-graceful-unicorn), overridable with --remote-control-session-name-prefix
  • Pro users now see a footer hint when returning to a session after the prompt cache has expired, showing roughly how many tokens the next turn will send uncached
  • Fixed ctrl+e jumping to the end of the next line when already at end of line in multiline prompts
  • Fixed idle-return "/clear to save X tokens" hint showing cumulative session tokens instead of current context size
  • Removed /tag command
  • Removed /vim command (toggle vim mode via /config → Editor mode)
  • Linux sandbox now ships the apply-seccomp helper in both npm and native builds, restoring unix-socket blocking for sandboxed commands
v2.1.912026-04-02/openNEW --resumeFIX /feedbackIMP /claude-apiIMP
  • Added MCP tool result persistence override via _meta["anthropic/maxResultSizeChars"] annotation (up to 500K), allowing larger results like DB schemas to pass through without truncation
  • Added disableSkillShellExecution setting to disable inline shell execution in skills, custom slash commands, and plugin commands
  • Added support for multi-line prompts in claude-cli://open?q= deep links (encoded newlines %0A no longer rejected)
  • Plugins can now ship executables under bin/ and invoke them as bare commands from the Bash tool
  • Fixed transcript chain breaks on --resume that could lose conversation history when async transcript writes fail silently
  • /feedback now explains why it's unavailable instead of disappearing from the slash menu
  • Improved /claude-api skill guidance for agent design patterns including tool surface decisions, context management, and caching strategy
  • Edit tool now uses shorter old_string anchors, reducing output tokens
v2.1.902026-04-01/powerupNEW --resumeIMP /modelFIX /configFIX /resumeIMP /displaydnsDEL
  • Added /powerup — interactive lessons teaching Claude Code features with animated demos
  • Added CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE env var to keep the existing marketplace cache when git pull fails, useful in offline environments
  • Added .husky to protected directories (acceptEdits mode)
  • Fixed --resume causing a full prompt-cache miss on the first request for users with deferred tools, MCP servers, or custom agents (regression since v2.1.69)
  • Fixed headers disappearing when scrolling /model, /config, and other selection screens
  • Hardened PowerShell tool permission checks: fixed trailing & background job bypass, -ErrorAction Break debugger hang, archive-extraction TOCTOU, and parse-fail fallback deny-rule degradation
  • Improved /resume all-projects view to load project sessions in parallel, improving load times for users with many projects
  • Changed --resume picker to no longer show sessions created by claude -p or SDK invocations
  • Removed Get-DnsClientCache and ipconfig /displaydns from auto-allow (DNS cache privacy)
v2.1.892026-04-01--resumeNEW alt+sNEW --mcp-configNEW /permissionsIMP /pathFIX /statsFIX Shift+EFIX Ctrl+BIMP /envIMP /usageIMP /buddy
  • Added "defer" permission decision to PreToolUse hooks — headless sessions can pause at a tool call and resume with -p --resume to have the hook re-evaluate
  • Added CLAUDE_CODE_NO_FLICKER=1 environment variable to opt into flicker-free alt-screen rendering with virtualized scrollback
  • Added PermissionDenied hook that fires after auto mode classifier denials — return {retry: true} to tell the model it can retry
  • Added named subagents to @ mention typeahead suggestions
  • Added MCP_CONNECTION_NONBLOCKING=true for -p mode to skip the MCP connection wait entirely, and bounded --mcp-config server connections at 5s instead of blocking on the slowest server
  • Auto mode: denied commands now show a notification and appear in /permissions → Recent tab where you can retry with r
  • Fixed Edit(//path/) and Read(//path/) allow rules to check the resolved symlink target, not just the requested path
  • Fixed /stats undercounting tokens by excluding subagent usage, and losing historical data beyond 30 days when the stats cache format changes
  • Fixed -p --resume hangs when the deferred tool input exceeds 64KB or no deferred marker exists, and -p --continue not resuming deferred tools
  • Fixed --resume crash when transcript contains a tool result from an older CLI version or interrupted write
  • Fixed Shift+Enter submitting instead of inserting a newline on Windows Terminal Preview 1.25
  • Documented TaskCreated hook event and its blocking behavior
  • Preserved task notifications when backgrounding a running command with Ctrl+B
  • PowerShell tool on Windows: external-command arguments containing both a double-quote and whitespace now prompt instead of auto-allowing (PS 5.1 argument-splitting hardening)
  • /env now applies to PowerShell tool commands (previously only affected Bash)
  • /usage now hides redundant "Current week (Sonnet only)" bar for Pro and Enterprise plans
  • Image paste no longer inserts a trailing space
  • Pasting !command into an empty prompt now enters bash mode, matching typed ! behavior
  • /buddy is here for April 1st — hatch a small creature that watches you code
v2.1.872026-03-29
  • Fixed messages in Cowork Dispatch not getting delivered
v2.1.862026-03-27--resumeFIX /feedbackFIX --bareFIX /modelFIX /pluginFIX /skillsIMP
  • Added X-Claude-Code-Session-Id header to API requests so proxies can aggregate requests by session without parsing the body
  • Added .jj and .sl to VCS directory exclusion lists so Grep and file autocomplete don't descend into Jujutsu or Sapling metadata
  • Fixed --resume failing with "tool_use ids were found without tool_result blocks" on sessions created before v2.1.85
  • Fixed potential out-of-memory crash when using /feedback on very long sessions with large transcript files
  • Fixed --bare mode dropping MCP tools in interactive sessions and silently discarding messages enqueued mid-turn
  • Fixed statusline showing another session's model when running multiple Claude Code instances and using /model in one of them
  • Fixed /plugin uninstall dialog: pressing n now correctly uninstalls the plugin while preserving its data directory
  • Reduced startup event-loop stalls when many claude.ai MCP connectors are configured (macOS keychain cache extended from 5s to 30s)
  • Reduced token overhead when mentioning files with @ — raw string content no longer JSON-escaped
  • Memory filenames in the "Saved N memories" notice now highlight on hover and open on click
  • Skill descriptions in the /skills listing are now capped at 250 characters to reduce context usage
  • Changed /skills menu to sort alphabetically for easier scanning
  • Auto mode now shows "unavailable for your plan" when disabled by plan restrictions (was "temporarily unavailable")
  • [VSCode] Fixed extension incorrectly showing "Not responding" during long-running operations
  • [VSCode] Fixed extension defaulting Max plan users to Sonnet after the OAuth token refreshes (8 hours after login)
v2.1.852026-03-26/loopNEW /openIMP /compactFIX /plugin enableFIX /plugin disableFIX /pluginFIX --worktreeFIX --mcp-configFIX shift+eFIX Ctrl+CFIX Ctrl+DFIX
  • Added CLAUDE_CODE_MCP_SERVER_NAME and CLAUDE_CODE_MCP_SERVER_URL environment variables to MCP headersHelper scripts, allowing one helper to serve multiple servers
  • Added conditional if field for hooks using permission rule syntax (e.g., Bash(git *)) to filter when they run, reducing process spawning overhead
  • Added timestamp markers in transcripts when scheduled tasks (/loop, CronCreate) fire
  • Added trailing space after [Image #N] placeholder when pasting images
  • Deep link queries (claude-cli://open?q=…) now support up to 5,000 characters, with a "scroll to review" warning for long pre-filled prompts
  • MCP OAuth now follows RFC 9728 Protected Resource Metadata discovery to find the authorization server
  • Plugins blocked by organization policy (managed-settings.json) can no longer be installed or enabled, and are hidden from marketplace views
  • PreToolUse hooks can now satisfy AskUserQuestion by returning updatedInput alongside permissionDecision: "allow", enabling headless integrations that collect answers via their own UI
  • tool_parameters in OpenTelemetry tool_result events are now gated behind OTEL_LOG_TOOL_DETAILS=1
  • Fixed /compact failing with "context exceeded" when the conversation has grown too large for the compact request itself to fit
  • Fixed /plugin enable and /plugin disable failing when a plugin's install location differs from where it's declared in settings
  • Fixed --worktree exiting with an error in non-git repositories before the WorktreeCreate hook could run
  • Fixed Python Agent SDK: type:'sdk' MCP servers passed via --mcp-config are no longer dropped during startup
  • Fixed shift+enter and meta+enter being intercepted by typeahead suggestions instead of inserting newlines
  • Fixed terminal left in enhanced keyboard mode after exit in Ghostty, Kitty, WezTerm, and other terminals supporting the Kitty keyboard protocol — Ctrl+C and Ctrl+D now work correctly after quitting
  • Reduced UI stutter when compaction triggers on large sessions
v2.1.842026-03-26/modelNEW /clearNEW Ctrl+UFIX ctrl+xFIX ctrl+kFIX --json-schemaFIX /voiceIMP /mobileIMP /chromeIMP /upgradeIMP /statsIMP Ctrl+SIMP
  • Added PowerShell tool for Windows as an opt-in preview. Learn more at https://code.claude.com/docs/en/tools-reference#powershell-tool
  • Added ANTHROPIC_DEFAULT_{OPUS,SONNET,HAIKU}_MODEL_SUPPORTS env vars to override effort/thinking capability detection for pinned default models for 3p (Bedrock, Vertex, Foundry), and _MODEL_NAME/_DESCRIPTION to customize the /model picker label
  • Added CLAUDE_STREAM_IDLE_TIMEOUT_MS env var to configure the streaming idle watchdog threshold (default 90s)
  • Added TaskCreated hook that fires when a task is created via TaskCreate
  • Added WorktreeCreate hook support for type: "http" — return the created worktree path via hookSpecificOutput.worktreePath in the response JSON
  • Added allowedChannelPlugins managed setting for team/enterprise admins to define a channel plugin allowlist
  • Added x-client-request-id header to API requests for debugging timeouts
  • Added idle-return prompt that nudges users returning after 75+ minutes to /clear, reducing unnecessary token re-caching on stale sessions
  • Deep links (claude-cli://) now open in your preferred terminal instead of whichever terminal happens to be first in the detection list
  • Rules and skills paths: frontmatter now accepts a YAML list of globs
  • Fixed Ctrl+U (kill-to-line-start) being a no-op at line boundaries in multiline input, so repeated Ctrl+U now clears across lines
  • Fixed null-unbinding a default chord binding (e.g. "ctrl+x ctrl+k": null) still entering chord-wait mode instead of freeing the prefix key
  • Fixed workflow subagents failing with API 400 when the outer session uses --json-schema and the subagent also specifies a schema
  • Slash commands unavailable for the current auth setup (/voice, /mobile, /chrome, /upgrade, etc.) are now hidden instead of shown
  • Stats screenshot (Ctrl+S in /stats) now works in all builds and is 16× faster
v2.1.832026-03-25Ctrl+ONEW Ctrl+XNEW Ctrl+ENEW Ctrl+GNEW --mcp-configFIX --printFIX /configFIX --channelsFIX Ctrl+BFIX --resumeIMP /statusIMP Ctrl+FIMP Ctrl+KIMP Ctrl+LIMP Ctrl+UIMP --bare -p --worktreeFIX /rewindNEW
  • Added managed-settings.d/ drop-in directory alongside managed-settings.json, letting separate teams deploy independent policy fragments that merge alphabetically
  • Added CwdChanged and FileChanged hook events for reactive environment management (e.g., direnv)
  • Added sandbox.failIfUnavailable setting to exit with an error when sandbox is enabled but cannot start, instead of running unsandboxed
  • Added disableDeepLinkRegistration setting to prevent claude-cli:// protocol handler registration
  • Added CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 to strip Anthropic and cloud provider credentials from subprocess environments (Bash tool, hooks, MCP stdio servers)
  • Added transcript search — press / in transcript mode (Ctrl+O) to search, n/N to step through matches
  • Added Ctrl+X Ctrl+E as an alias for opening the external editor (readline-native binding; Ctrl+G still works)
  • Pasted images now insert an [Image #N] chip at the cursor so you can reference them positionally in your prompt
  • Agents can now declare initialPrompt in frontmatter to auto-submit a first turn
  • chat:killAgents and chat:fastMode are now rebindable via ~/.claude/keybindings.json
  • Fixed --mcp-config CLI flag bypassing allowedMcpServers/deniedMcpServers managed policy enforcement
  • Fixed claude.ai MCP connectors (Slack, Gmail, etc.) not being available in single-turn --print mode
  • Fixed /config menu showing both the search cursor and list selection at the same time
  • Fixed --channels showing "Channels are not currently available" on first launch after upgrade
  • Fixed Ctrl+B interfering with readline backward-char at an idle prompt — it now only fires when a foreground task can be backgrounded
  • Improved --resume memory usage and startup latency on large sessions
  • /status now works while Claude is responding, instead of being queued until the turn finishes
  • Changed "stop all background agents" keybinding from Ctrl+F to Ctrl+X Ctrl+K to stop shadowing readline forward-char
  • Ctrl+L now clears the screen and forces a full redraw — use this to recover when Cmd+K leaves the UI partially blank. Use Ctrl+U or double-Esc to clear prompt input.
  • --bare -p (SDK pattern) is ~14% faster to the API request
  • Disabled AskUserQuestion and plan-mode tools when --channels is active
  • Fixed --worktree hanging silently when the worktree name contained a forward slash
  • [VSCode] Added Esc-twice (or /rewind) to open a keyboard-navigable rewind picker
v2.1.812026-03-20--bareNEW --settingsNEW --channelsNEW /btwFIX /renameFIX /exitFIX Ctrl+OIMP
  • Added --bare flag for scripted -p calls — skips hooks, LSP, plugin sync, and skill directory walks; requires ANTHROPIC_API_KEY or an apiKeyHelper via --settings (OAuth and keychain auth disabled); auto-memory fully disabled
  • Added --channels permission relay — channel servers that declare the permission capability can forward tool approval prompts to your phone
  • Fixed --channels bypass for Team/Enterprise orgs with no other managed settings configured
  • Resuming a session that was in a worktree now switches back to that worktree
  • Fixed /btw not including pasted text when used during an active response
  • Fixed /rename not syncing the title for Remote Control sessions
  • Fixed Remote Control /exit not reliably archiving the session
  • Improved MCP read/search tool calls to collapse into a single "Queried {server}" line (expand with Ctrl+O)
  • Updated MCP OAuth to support Client ID Metadata Document (CIMD / SEP-991) for servers without Dynamic Client Registration
  • Disabled line-by-line response streaming on Windows (including WSL in Windows Terminal) due to rendering issues
  • [VSCode] Fixed Windows PATH inheritance for Bash tool when using Git Bash (regression in v2.1.78)
v2.1.802026-03-19--channelsNEW --resumeFIX /remote-controlFIX /sandboxFIX /effortIMP /permissionsIMP /plugin installIMP /pluginIMP
  • Added rate_limits field to statusline scripts for displaying Claude.ai rate limit usage (5-hour and 7-day windows with used_percentage and resets_at)
  • Added source: 'settings' plugin marketplace source — declare plugin entries inline in settings.json
  • Added CLI tool usage detection to plugin tips, in addition to file pattern matching
  • Added effort frontmatter support for skills and slash commands to override the model effort level when invoked
  • Added --channels (research preview) — allow MCP servers to push messages into your session
  • Fixed --resume dropping parallel tool results — sessions with parallel tool calls now restore all tool_use/tool_result pairs instead of showing [Tool result missing] placeholders
  • Fixed /remote-control appearing for gateway and third-party provider deployments where it cannot function
  • Fixed /sandbox tab switching not responding to Tab or arrow keys
  • Improved /effort to show what auto currently resolves to, matching the status bar indicator
  • Improved /permissions — Tab and arrow keys now switch tabs from within a list
  • Simplified plugin install tips to use a single /plugin install command instead of a two-step flow
  • Reduced memory usage on startup in large repositories (~80 MB saved on 250k-file repos)
v2.1.792026-03-18--consoleNEW /configNEW Ctrl+CFIX /btwFIX /permissionsFIX /resumeFIX /remote-controlNEW
  • Added --console flag to claude auth login for Anthropic Console (API billing) authentication
  • Added "Show turn duration" toggle to the /config menu
  • Fixed Ctrl+C not working in -p (print) mode
  • Fixed /btw returning the main agent's output instead of answering the side question when triggered during streaming
  • Fixed left/right arrow tab navigation in /permissions
  • Fixed SessionEnd hooks not firing when using interactive /resume to switch sessions
  • CLAUDE_CODE_PLUGIN_SEED_DIR now supports multiple seed directories separated by the platform path delimiter (: on Unix, ; on Windows)
  • [VSCode] Added /remote-control — bridge your session to claude.ai/code to continue from a browser or phone
  • [VSCode] Session tabs now get AI-generated titles based on your first message
  • [VSCode] Fixed the thinking pill showing "Thinking" instead of "Thought for Ns" after a response completes
  • [VSCode] Fixed missing session diff button when opening sessions from the left sidebar
v2.1.782026-03-17/plugin uninstallNEW /pluginNEW --resumeFIX /sandboxFIX ctrl+uFIX ctrl+dFIX ctrl+kFIX --worktreeFIX /modelNEW
  • Added StopFailure hook event that fires when the turn ends due to an API error (rate limit, auth failure, etc.)
  • Added ${CLAUDE_PLUGIN_DATA} variable for plugin persistent state that survives plugin updates; /plugin uninstall prompts before deleting it
  • Added effort, maxTurns, and disallowedTools frontmatter support for plugin-shipped agents
  • Terminal notifications (iTerm2/Kitty/Ghostty popups, progress bar) now reach the outer terminal when running inside tmux with set -g allow-passthrough on
  • Response text now streams line-by-line as it's generated
  • Fixed cc log and --resume silently truncating conversation history on large sessions (>5 MB) that used subagents
  • Fixed /sandbox Dependencies tab showing Linux prerequisites on macOS instead of macOS-specific info
  • Fixed ctrl+u in normal mode scrolling instead of readline kill-line (ctrl+u/ctrl+d half-page scroll moved to transcript mode only)
  • Fixed voice mode modifier-combo push-to-talk keybindings (e.g. ctrl+k) requiring a hold instead of activating immediately
  • Fixed --worktree flag not loading skills and hooks from the worktree directory
  • Added ANTHROPIC_CUSTOM_MODEL_OPTION env var to add a custom entry to the /model picker, with optional _NAME and _DESCRIPTION suffixed vars for display
  • [VSCode] Fixed a brief flash of the login screen when opening the sidebar while already authenticated
  • [VSCode] Fixed "API Error: Rate limit reached" when selecting Opus — model dropdown no longer offers 1M context variant to subscribers whose plan tier is unknown
v2.1.772026-03-17/copyIMP /copy NIMP --resumeFIX /feedbackFIX Ctrl+DFIX /mcpFIX /forkIMP /branchIMP
  • Increased default maximum output token limits for Claude Opus 4.6 to 64k tokens, and the upper bound for Opus 4.6 and Sonnet 4.6 models to 128k tokens
  • Added allowRead sandbox filesystem setting to re-allow read access within denyRead regions
  • /copy now accepts an optional index: /copy N copies the Nth-latest assistant response
  • Fixed --resume silently truncating recent conversation history due to a race between memory-extraction writes and the main transcript
  • Fixed Ctrl+D in /feedback text input deleting forward instead of the second press exiting the session
  • Fixed input deadlock when opening /mcp or similar dialogs while the agent is running
  • Faster startup on macOS (~60ms) by reading keychain credentials in parallel with module loading
  • Faster --resume on fork-heavy and very large sessions — up to 45% faster loading and ~100-150MB less peak memory
  • Background bash tasks are now killed if output exceeds 5GB, preventing runaway processes from filling disk
  • Sessions are now auto-named from plan content when you accept a plan
  • Show a notice when apiKeyHelper takes longer than 10s, preventing it from blocking the main loop
  • The Agent tool no longer accepts a resume parameter — use SendMessage({to: agentId}) to continue a previously spawned agent
  • SendMessage now auto-resumes stopped agents in the background instead of returning an error
  • Renamed /fork to /branch (/fork still works as an alias)
v2.1.762026-03-14--name <name>NEW --nameNEW --worktreeNEW /effortNEW /voiceIMP /exportFIX --plugin-dirIMP
  • Added MCP elicitation support — MCP servers can now request structured input mid-task via an interactive dialog (form fields or browser URL)
  • Added new Elicitation and ElicitationResult hooks to intercept and override responses before they're sent back
  • Added -n / --name <name> CLI flag to set a display name for the session at startup
  • Added worktree.sparsePaths setting for claude --worktree in large monorepos to check out only the directories you need via git sparse-checkout
  • Added PostCompact hook that fires after compaction completes
  • Added /effort slash command to set model effort level
  • Added session quality survey — enterprise admins can configure the sample rate via the feedbackSurveyRate setting
  • Fixed /voice not working on Windows when installed via npm
  • Fixed /export showing only the filename instead of the full file path in the success message
  • Improved --worktree startup performance by reading git refs directly and skipping redundant git fetch when the remote branch is already available locally
  • Improved /voice to show your dictation language on enable and warn when your language setting isn't supported for voice input
  • Updated --plugin-dir to only accept one path to support subcommands — use repeated --plugin-dir for multiple directories
  • [VSCode] Fixed gitignore patterns containing commas silently excluding entire filetypes from the @-mention file picker
v2.1.752026-03-13/colorNEW /renameNEW /voiceFIX /modelFIX /pluginFIX /resumeFIX /statusFIX --verboseIMP
  • Added 1M context window for Opus 4.6 by default for Max, Team, and Enterprise plans (previously required extra usage)
  • Added /color command for all users to set a prompt-bar color for your session
  • Added session name display on the prompt bar when using /rename
  • Added last-modified timestamps to memory files, helping Claude reason about which memories are fresh vs. stale
  • Added hook source display (settings/plugin/skill) in permission prompts when a hook requires confirmation
  • Fixed voice mode not activating correctly on fresh installs without toggling /voice twice
  • Fixed the Claude Code header not updating the displayed model name after switching models with /model or Option+P
  • Fixed managed-disabled plugins showing up in the /plugin Installed tab — plugins force-disabled by your organization are now hidden
  • Fixed /resume losing session names after resuming a forked or continued session
  • Fixed Esc not closing the /status dialog after visiting the Config tab
  • Suppressed async hook completion messages by default (visible with --verbose or transcript mode)
v2.1.742026-03-12/contextNEW --agentsFIX --modelFIX /plugin installFIX /pluginFIX --plugin-dirIMP
  • Added actionable suggestions to /context command — identifies context-heavy tools, memory bloat, and capacity warnings with specific optimization tips
  • Added autoMemoryDirectory setting to configure a custom directory for auto-memory storage
  • Fixed full model IDs (e.g., claude-opus-4-5) being silently ignored in agent frontmatter model: field and --agents JSON config — agents now accept the same model values as --model
  • Fixed /plugin install failing inside the REPL for marketplace plugins with local sources
  • Changed --plugin-dir so local dev copies now override installed marketplace plugins with the same name (unless that plugin is force-enabled by managed settings)
  • [VSCode] Fixed delete button not working for Untitled sessions
  • [VSCode] Improved scroll wheel responsiveness in the integrated terminal with terminal-aware acceleration
v2.1.732026-03-11/resumeFIX /ideFIX /loopFIX --resumeFIX --continueFIX /heapdumpFIX /effortIMP /modelIMP /output-styleIMP /configIMP
  • Added modelOverrides setting to map model picker entries to custom provider model IDs (e.g. Bedrock inference profile ARNs)
  • Added actionable guidance when OAuth login or connectivity checks fail due to SSL certificate errors (corporate proxies, NODE_EXTRA_CA_CERTS)
  • Fixed /resume showing the current session in the picker
  • Fixed /ide crashing with onInstall is not defined when auto-installing the extension
  • Fixed /loop not being available on Bedrock/Vertex/Foundry and when telemetry was disabled
  • Fixed SessionStart hooks firing twice when resuming a session via --resume or --continue
  • Fixed /heapdump failing on Windows with EEXIST error when the Desktop folder already exists
  • Improved /effort to work while Claude is responding, matching /model behavior
  • Deprecated /output-style command — use /config instead. Output style is now fixed at session start for better prompt caching
  • VSCode: Fixed HTTP 400 errors for users behind proxies or on Bedrock/Vertex with Claude 4.5 models
v2.1.722026-03-10/copyNEW /planNEW /effort autoIMP /effortIMP /configIMP --continueFIX --compactFIX --effortFIX /clearFIX Ctrl+BFIX /modelFIX Ctrl+CFIX Shift+EFIX /anthropicNEW
  • Added w key in /copy to write the focused selection directly to a file, bypassing the clipboard (useful over SSH)
  • Added optional description argument to /plan (e.g., /plan fix the auth bug) that enters plan mode and immediately starts
  • Added ExitWorktree tool to leave an EnterWorktree session
  • Added CLAUDE_CODE_DISABLE_CRON environment variable to immediately stop scheduled cron jobs mid-session
  • Added lsof, pgrep, tput, ss, fd, and fdfind to the bash auto-approval allowlist, reducing permission prompts for common read-only operations
  • Restored the model parameter on the Agent tool for per-invocation model overrides
  • Simplified effort levels to low/medium/high (removed max) with new symbols (○ ◐ ●) and a brief notification instead of a persistent icon. Use /effort auto to reset to default
  • Improved /config — Escape now cancels changes, Enter saves and closes, Space toggles settings
  • Reduced bundle size by ~510 KB
  • Fixed --continue not resuming from the most recent point after --compact
  • Added support for marketplace git URLs without .git suffix (Azure DevOps, AWS CodeCommit)
  • Fixed --effort CLI flag being reset by unrelated settings writes on startup
  • Fixed backgrounded Ctrl+B queries losing their transcript or corrupting the new conversation after /clear
  • Fixed /clear killing background agent/bash tasks — only foreground tasks are now cleared
  • Fixed /model not displaying results when run while Claude is working
  • Fixed double Ctrl+C not exiting when background agents or tasks are running
  • VSCode: Fixed scroll speed in integrated terminals not matching native terminals
  • VSCode: Fixed Shift+Enter submitting input instead of inserting a newline for users with older keybindings
  • VSCode: Added effort level indicator on the input border
  • VSCode: Added vscode://anthropic.claude-code/open URI handler to open a new Claude Code tab programmatically, with optional prompt and session query parameters
v2.1.712026-03-07/loopNEW /forkFIX /pluginIMP /permissionsFIX --printFIX /plugin uninstallIMP /debugIMP
  • Added /loop command to run a prompt or slash command on a recurring interval (e.g. /loop 5m check the deploy)
  • Added cron scheduling tools for recurring prompts within a session
  • Added voice:pushToTalk keybinding to make the voice activation key rebindable in keybindings.json (default: space) — modifier+letter combos like meta+k have zero typing interference
  • Added fmt, comm, cmp, numfmt, expr, test, printf, getconf, seq, tsort, and pr to the bash auto-approval allowlist
  • Fixed forked conversations (/fork) sharing the same plan file, which caused plan edits in one fork to overwrite the other
  • Fixed /plugin marketplace update failing with merge conflicts when the marketplace is pinned to a branch/tag ref
  • Fixed /plugin marketplace add owner/repo@ref incorrectly parsing @ — previously only # worked as a ref separator, causing undiagnosable errors with strictKnownMarketplaces
  • Fixed duplicate entries in /permissions Workspace tab when the same directory is added with and without a trailing slash
  • Fixed --print hanging forever when team agents are configured — the exit loop no longer waits on long-lived in_process_teammate tasks
  • Improved /plugin uninstall to disable project-scoped plugins in .claude/settings.local.json instead of modifying .claude/settings.json, so changes don't affect teammates
  • Improved plugin-provided MCP server deduplication — servers that duplicate a manually-configured server (same command/URL) are now skipped, preventing duplicate connections and tool sets. Suppressions are shown in the /plugin menu.
  • Updated /debug to toggle debug logging on mid-session, since debug logs are no longer written by default
v2.1.702026-03-06/pluginFIX /security-reviewFIX /colorFIX /color defaultFIX /color grayFIX /color resetFIX /color noneFIX --resumeFIX /renameIMP /pollIMP /mcpNEW
  • Fixed plugins showing as inaccurately installed in /plugin
  • Fixed /security-review command failing with unknown option merge-base on older git versions
  • Fixed /color command having no way to reset back to the default color — /color default, /color gray, /color reset, and /color none now restore the default
  • Fixed skill listing being re-injected on every --resume (~600 tokens saved per resume)
  • Improved /rename to work while Claude is processing, instead of being silently queued
  • Reduced prompt input re-renders during turns by ~74%
  • Reduced startup memory by ~426KB for users without custom CA certificates
  • Reduced Remote Control /poll rate to once per 10 minutes while connected (was 1–2s), cutting server load ~300×. Reconnection is unaffected — transport loss immediately wakes fast polling.
  • [VSCode] Added spark icon in VS Code activity bar that lists all Claude Code sessions, with sessions opening as full editors
  • [VSCode] Added full markdown document view for plans in VS Code, with support for adding comments to provide feedback
  • [VSCode] Added native MCP server management dialog — use /mcp in the chat panel to enable/disable servers, reconnect, and manage OAuth authentication without switching to the terminal
v2.1.692026-03-05/claude-apiNEW Ctrl+UNEW /remote-controlNEW --nameNEW --agentNEW /reload-pluginsNEW --worktreeNEW --model claude-opus-4-0FIX --model claude-opus-4-1FIX /loginFIX Shift+EFIX Ctrl+SFIX ctrl+oFIX /statsFIX --setting-sources userFIX /pluginFIX /compactFIX /voiceFIX /costFIX /clearFIX --mcp-configFIX /contextFIX Ctrl+OFIX /configFIX --append-system-prompt-fileIMP --system-prompt-fileIMP /resumeIMP
  • Added the /claude-api skill for building applications with the Claude API and Anthropic SDK
  • Added Ctrl+U on an empty bash prompt (!) to exit bash mode, matching escape and backspace
  • Added numeric keypad support for selecting options in Claude's interview questions (previously only the number row above QWERTY worked)
  • Added optional name argument to /remote-control and claude remote-control (/remote-control My Project or --name "My Project") to set a custom session title visible in claude.ai/code
  • Added Voice STT support for 10 new languages (20 total) — Russian, Polish, Turkish, Dutch, Ukrainian, Greek, Czech, Danish, Swedish, Norwegian
  • Added effort level display (e.g., "with low effort") to the logo and spinner, making it easier to see which effort setting is active
  • Added agent name display in terminal title when using claude --agent
  • Added sandbox.enableWeakerNetworkIsolation setting (macOS only) to allow Go programs like gh, gcloud, and terraform to verify TLS certificates when using a custom MITM proxy with httpProxyPort
  • Added includeGitInstructions setting (and CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS env var) to remove built-in commit and PR workflow instructions from Claude's system prompt
  • Added /reload-plugins command to activate pending plugin changes without restarting
  • Added a one-time startup prompt suggesting Claude Code Desktop on macOS and Windows (max 3 showings, dismissible)
  • Added ${CLAUDE_SKILL_DIR} variable for skills to reference their own directory in SKILL.md content
  • Added InstructionsLoaded hook event that fires when CLAUDE.md or .claude/rules/*.md files are loaded into context
  • Added agent_id (for subagents) and agent_type (for subagents and --agent) to hook events
  • Added worktree field to status line hook commands with name, path, branch, and original repo directory when running in a --worktree session
  • Fixed --model claude-opus-4-0 and --model claude-opus-4-1 resolving to deprecated Opus versions instead of current
  • Fixed macOS keychain corruption when using multiple OAuth MCP servers. Large OAuth metadata blobs could overflow the security -i stdin buffer, silently leaving stale credentials behind and causing repeated /login prompts.
  • Fixed Shift+Enter printing [27;2;13~ instead of inserting a newline in Ghostty over SSH
  • Fixed stash (Ctrl+S) being cleared when submitting a message while Claude is working
  • Fixed ctrl+o (transcript toggle) freezing for many seconds in long sessions with lots of file edits
  • Fixed plan mode feedback input not supporting multi-line text entry (backslash+Enter and Shift+Enter now insert newlines)
  • Fixed /stats crash when transcript files contain entries with missing or malformed timestamps
  • Fixed --setting-sources user not blocking dynamically discovered project skills
  • Fixed plugin Stop/SessionEnd/etc hooks not firing after any /plugin operation
  • Fixed /compact summary rendering as a user bubble in SDK consumers (Claude Code Remote web UI, VSCode extension)
  • Fixed Escape not interrupting a running turn when the input box has draft text. Use Up arrow to pull queued messages back for editing, or Ctrl+U to clear the input line.
  • Fixed Android app crash when running local slash commands (/voice, /cost) in Remote Control sessions
  • Fixed memory retention in in-process teammates where the parent's full conversation history was pinned for the teammate's lifetime, preventing GC after /clear or auto-compact
  • Fixed hang when --mcp-config points to a corrupted file
  • Fixed slow startup when many skills/plugins are installed
  • Fixed /clear not fully clearing all session caches, reducing memory retention in long sessions
  • Fixed /context showing identical token counts for all MCP tools from a server
  • Fixed extra blank lines appearing below each tool call in the expanded subagent transcript view (Ctrl+O)
  • Fixed Tab/arrow keys not cycling Settings tabs when /config search box is focused but empty
  • Improved --worktree startup by eliminating a git subprocess on the startup path
  • Improved documentation to clarify that --append-system-prompt-file and --system-prompt-file work in interactive mode (the docs previously said print mode only)
  • Changed the /resume picker to show your most recent prompt instead of the first one. This also resolves some titles appearing as (session).
v2.1.682026-03-04/modelIMP
  • Opus 4.6 now defaults to medium effort for Max and Team subscribers. Medium effort works well for most tasks — it's the sweet spot between speed and thoroughness. You can change this anytime with /model
  • Re-introduced the "ultrathink" keyword to enable high effort for the next turn
v2.1.662026-03-04
  • Reduced spurious error logging
v2.1.632026-02-28/simplifyNEW /batchNEW /costFIX /modelIMP /copyNEW /clearFIX
  • Added /simplify and /batch bundled slash commands
  • Fixed local slash command output like /cost appearing as user-sent messages instead of system messages in the UI
  • Project configs & auto memory now shared across git worktrees of the same repository
  • Added ENABLE_CLAUDEAI_MCP_SERVERS=false env var to opt out from making claude.ai MCP servers available
  • Improved /model command to show the currently active model in the slash command menu
  • Added HTTP hooks, which can POST JSON to a URL and receive JSON instead of running a shell command
  • Added manual URL paste fallback during MCP OAuth authentication. If the automatic localhost redirect doesn't work, you can paste the callback URL to complete authentication.
  • VSCode: Fixed remote sessions not appearing in conversation history
  • Added "Always copy full response" option to the /copy picker. When selected, future /copy commands will skip the code block picker and copy the full response directly.
  • VSCode: Added session rename and remove actions to the sessions list
  • Fixed /clear not resetting cached skills, which could cause stale skill content to persist in the new conversation
v2.1.622026-02-27
  • Fixed prompt suggestion cache regression that reduced cache hit rates
v2.1.612026-02-26
  • Fixed concurrent writes corrupting config file on Windows
v2.1.592026-02-26/memory /copyNEW
  • Claude automatically saves useful context to auto-memory. Manage with /memory
  • Added /copy command to show an interactive picker when code blocks are present, allowing selection of individual code blocks or the full response.
v2.1.582026-02-25
  • Expand Remote Control to more users
v2.1.562026-02-25
  • VS Code: Fixed another cause of "command 'claude-vscode.editor.openLast' not found" crashes
v2.1.552026-02-25
  • Fixed BashTool failing on Windows with EINVAL error
v2.1.532026-02-25ctrl+fFIX --worktreeFIX
  • Fixed bulk agent kill (ctrl+f) to send a single aggregate notification instead of one per agent, and to properly clear the command queue
  • Fixed --worktree sometimes being ignored on first launch
v2.1.522026-02-24
  • VS Code: Fixed extension crash on Windows ("command 'claude-vscode.editor.openLast' not found")
v2.1.512026-02-24/modelIMP
  • Added claude remote-control subcommand for external builds, enabling local environment serving for all users.
  • Updated plugin marketplace default git timeout from 30s to 120s and added CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS to configure.
  • Added support for custom npm registries and specific version pinning when installing plugins from npm sources
  • BashTool now skips login shell (-l flag) by default when a shell snapshot is available, improving command execution performance. Previously this required setting CLAUDE_BASH_NO_LOGIN=true.
  • Tool results larger than 50K characters are now persisted to disk (previously 100K). This reduces context window usage and improves conversation longevity.
  • Added CLAUDE_CODE_ACCOUNT_UUID, CLAUDE_CODE_USER_EMAIL, and CLAUDE_CODE_ORGANIZATION_UUID environment variables for SDK callers to provide account info synchronously, eliminating a race condition where early telemetry events lacked account metadata.
  • The /model picker now shows human-readable labels (e.g., "Sonnet 4.5") instead of raw model IDs for pinned model versions, with an upgrade hint when a newer version is available.
  • Managed settings can now be set via macOS plist or Windows Registry. Learn more at https://code.claude.com/docs/en/settings#settings-files
v2.1.502026-02-20/mcp reconnectFIX /mcpFIX /extra-usageNEW
  • Added support for startupTimeout configuration for LSP servers
  • Added WorktreeCreate and WorktreeRemove hook events, enabling custom VCS setup and teardown when agent worktree isolation creates or removes worktrees.
  • Linux: Fixed native modules not loading on systems with glibc older than 2.30 (e.g., RHEL 8)
  • Fixed /mcp reconnect freezing the CLI when given a server name that doesn't exist
  • Added support for isolation: worktree in agent definitions, allowing agents to declaratively run in isolated git worktrees.
  • CLAUDE_CODE_SIMPLE mode now also disables MCP tools, attachments, hooks, and CLAUDE.md file loading for a fully minimal experience.
  • Added claude agents CLI command to list all configured agents
  • Added CLAUDE_CODE_DISABLE_1M_CONTEXT environment variable to disable 1M context window support
  • Opus 4.6 (fast mode) now includes the full 1M context window
  • VSCode: Added /extra-usage command support in VS Code sessions
v2.1.492026-02-19--worktreeNEW Ctrl+FNEW Ctrl+CFIX --scopeFIX /modelIMP /configFIX --resumeFIX /clearFIX
  • Added --worktree (-w) flag to start Claude in an isolated git worktree
  • Subagents support isolation: "worktree" for working in a temporary git worktree
  • Added Ctrl+F keybinding to kill background agents (two-press confirmation)
  • Agent definitions support background: true to always run as a background task
  • Plugins can ship settings.json for default configuration
  • Fixed Ctrl+C and ESC being silently ignored when background agents are running and the main thread is idle. Pressing twice within 3 seconds now kills all background agents.
  • Fixed plugin enable and plugin disable to auto-detect the correct scope when --scope is not specified, instead of always defaulting to user scope
  • Simple mode (CLAUDE_CODE_SIMPLE) now includes the file edit tool in addition to the Bash tool, allowing direct file editing in simple mode.
  • Permission suggestions are now populated when safety checks trigger an ask response, enabling SDK consumers to display permission options
  • Sonnet 4.5 with 1M context is being removed from the Max plan in favor of our frontier Sonnet 4.6 model, which now has 1M context. Please switch in /model.
  • Fixed verbose mode not updating thinking block display when toggled via /config — memo comparators now correctly detect verbose changes
  • SDK model info now includes supportsEffort, supportedEffortLevels, and supportsAdaptiveThinking fields so consumers can discover model capabilities.
  • Added ConfigChange hook event that fires when configuration files change during a session, enabling enterprise security auditing and optional blocking of settings changes.
  • Fixed --resume session picker showing raw XML tags for sessions that start with commands like /clear. Now correctly falls through to the session ID fallback.
v2.1.472026-02-18ctrl+fIMP Shift+DIMP Shift+UIMP /renameIMP /helpFIX /modelFIX /compactFIX /clearFIX /resumeFIX /add-dirNEW Shift+EFIX /resume <session-id>FIX /forkFIX
  • Search patterns in collapsed tool results are now displayed in quotes for clarity
  • Windows: Fixed CWD tracking temp files never being cleaned up, causing them to accumulate indefinitely (anthropics/claude-code#17600)
  • Use ctrl+f to kill all background agents instead of double-pressing ESC. Background agents now continue running when you press ESC to cancel the main thread, giving you more control over agent lifecycle.
  • Simplified teammate navigation to use only Shift+Down (with wrapping) instead of both Shift+Up and Shift+Down.
  • Added last_assistant_message field to Stop and SubagentStop hook inputs, providing the final assistant response text so hooks can access it without parsing transcript files.
  • Fixed custom session titles set via /rename being lost after resuming a conversation (anthropics/claude-code#23610)
  • Fixed built-in slash commands (/help, /model, /compact, etc.) being hidden from the autocomplete dropdown when many user skills are installed (anthropics/claude-code#22020)
  • Fixed session name persisting in status bar after /clear command (anthropics/claude-code#26082)
  • Fixed /resume silently dropping sessions when the first message exceeds 16KB or uses array-format content (anthropics/claude-code#25721)
  • Added chat:newline keybinding action for configurable multi-line input (anthropics/claude-code#26075)
  • Added added_dirs to the statusline JSON workspace section, exposing directories added via /add-dir to external scripts (anthropics/claude-code#26096)
  • Fixed Warp terminal incorrectly prompting for Shift+Enter setup when it supports it natively (anthropics/claude-code#25957)
  • Increased initial session count in resume picker from 10 to 50 for faster session discovery (anthropics/claude-code#26123)
  • Windows: fixed worktree session matching when drive letter casing differs (anthropics/claude-code#26123)
  • Fixed /resume <session-id> failing to find sessions whose first message exceeds 16KB (anthropics/claude-code#25920)
  • Fixed crash when using /fork on sessions that used web search — null entries in search results from transcript deserialization are now handled gracefully (anthropics/claude-code#25811)
  • Windows: Fixed the same CLAUDE.md file being loaded twice when drive letter casing differs between paths (anthropics/claude-code#25756)
  • Moved config backup files from home directory root to ~/.claude/backups/ to reduce home directory clutter (anthropics/claude-code#26130)
  • Fixed sessions with large first prompts (>16KB) disappearing from the /resume list (anthropics/claude-code#26140)
  • The /rename command now updates the terminal tab title by default (anthropics/claude-code#25789)
v2.1.46
  • Added support for using claude.ai MCP connectors in Claude Code
v2.1.452026-02-17--add-dirNEW
  • Added support for Claude Sonnet 4.6
  • Added support for reading enabledPlugins and extraKnownMarketplaces from --add-dir directories
  • Added spinnerTipsOverride setting to customize spinner tips — configure tips with an array of custom tip strings, and optionally set excludeDefault: true to show only your custom tips instead of the built-in ones
  • Added SDKRateLimitInfo and SDKRateLimitEvent types to the SDK, enabling consumers to receive rate limit status updates including utilization, reset times, and overage information
  • [VSCode] Improved permission destination choice (project/user/session) to persist across sessions
v2.1.442026-02-16
  • Fixed ENAMETOOLONG errors for deeply-nested directory paths
  • Fixed auth refresh errors
v2.1.43
  • Fixed AWS auth refresh hanging indefinitely by adding a 3-minute timeout
  • Fixed spurious warnings for non-agent markdown files in .claude/agents/ directory
  • Fixed structured-outputs beta header being sent unconditionally on Vertex/Bedrock
v2.1.422026-02-13/resumeFIX /compactFIX
  • Added one-time Opus 4.6 effort callout for eligible users
  • Fixed /resume showing interrupt messages as session titles
  • Fixed image dimension limit errors to suggest /compact
v2.1.412026-02-13/resumeFIX /renameIMP
  • Added guard against launching Claude Code inside another Claude Code session
  • Fixed /resume session previews showing raw XML tags instead of readable command names
  • Added speed attribute to OTel events and trace spans for fast mode visibility
  • Added claude auth login, claude auth status, and claude auth logout CLI subcommands
  • Added Windows ARM64 (win32-arm64) native binary support
  • Improved /rename to auto-generate session name from conversation context when called without arguments
v2.1.392026-02-10
  • Improved terminal rendering performance
  • Fixed fatal errors being swallowed instead of displayed
  • Fixed process hanging after session close
  • Fixed character loss at terminal screen boundary
  • Fixed blank lines in verbose transcript view
v2.1.382026-02-10
  • Blocked writes to .claude/skills directory in sandbox mode
v2.1.372026-02-07/fastFIX /extra-usageFIX
  • Fixed an issue where /fast was not immediately available after enabling /extra-usage
v2.1.362026-02-07
  • Fast mode is now available for Opus 4.6. Learn more at https://code.claude.com/docs/en/fast-mode
v2.1.342026-02-06
  • Fixed a crash when agent teams setting changed between renders
  • Fixed a bug where commands excluded from sandboxing (via sandbox.excludedCommands or dangerouslyDisableSandbox) could bypass the Bash ask permission rule when autoAllowBashIfSandboxed was enabled
v2.1.332026-02-06/skillsNEW /resumeFIX
  • Added TeammateIdle and TaskCompleted hook events for multi-agent workflows
  • Added support for restricting which sub-agents can be spawned via Task(agent_type) syntax in agent "tools" frontmatter
  • Added memory frontmatter field support for agents, enabling persistent memory with user, project, or local scope
  • Added plugin name to skill descriptions and /skills menu for better discoverability
  • Fixed /resume session picker showing raw XML markup instead of clean titles for sessions started with slash commands
  • Errors from invalid managed settings are now surfaced
  • VSCode: Added support for remote sessions, allowing OAuth users to browse and resume sessions from claude.ai
  • VSCode: Added git branch and message count to the session picker, with support for searching by branch name
  • VSCode: Fixed scroll-to-bottom under-scrolling on initial session load and session switch
v2.1.322026-02-05--add-dirIMP
  • Claude Opus 4.6 is now available!
  • Added research preview agent teams feature for multi-agent collaboration (token-intensive feature, requires setting CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1)
  • Claude now automatically records and recalls memories as it works
  • Added "Summarize from here" to the message selector, allowing partial conversation summarization.
  • Skills defined in .claude/skills/ within additional directories (--add-dir) are now loaded automatically.
  • Updated --resume to re-use --agent value specified in previous conversation by default.
  • Skill character budget now scales with context window (2% of context), so users with larger context windows can see more skill descriptions without truncation
  • VSCode: Fixed slash commands incorrectly being executed when pressing Enter with preceding text in the input field
  • VSCode: Added spinner when loading past conversations list
v2.1.312026-02-04
  • Added session resume hint on exit, showing how to continue your conversation later
  • Added support for full-width (zenkaku) space input from Japanese IME in checkbox selection
  • Reduced layout jitter in the terminal when the spinner appears and disappears during streaming
v2.1.302026-02-03--client-idNEW --client-secretNEW /debugNEW --topo-orderNEW --cherry-pickNEW --formatNEW --rawNEW /loginFIX /upgradeFIX --resumeIMP /modelIMP Shift+ENEW
  • Added pages parameter to the Read tool for PDFs, allowing specific page ranges to be read (e.g., pages: "1-5"). Large PDFs (>10 pages) now return a lightweight reference when @ mentioned instead of being inlined into context.
  • Added pre-configured OAuth client credentials for MCP servers that don't support Dynamic Client Registration (e.g., Slack). Use --client-id and --client-secret with claude mcp add.
  • Added /debug for Claude to help troubleshoot the current session
  • Added support for additional git log and git show flags in read-only mode (e.g., --topo-order, --cherry-pick, --format, --raw)
  • Added token count, tool uses, and duration metrics to Task tool results
  • Added reduced motion mode to the config
  • Fixed 400 errors that could occur after running /login when the conversation contained thinking blocks
  • Fixed rate limit message showing incorrect "/upgrade" suggestion for Max 20x users when extra-usage is unavailable
  • Improved memory usage for --resume (68% reduction for users with many sessions) by replacing the session index with lightweight stat-based loading and progressive enrichment
  • Changed /model to execute immediately instead of being queued
  • [VSCode] Added multiline input support to the "Other" text input in question dialogs (use Shift+Enter for new lines)
  • [VSCode] Fixed duplicate sessions appearing in the session list when starting a new conversation
v2.1.292026-01-31
  • Fixed startup performance issues when resuming sessions that have saved_hook_context
v2.1.272026-01-30--from-prNEW /contextFIX
  • Added tool call failures and denials to debug logs
  • Added --from-pr flag to resume sessions linked to a specific GitHub PR number or URL
  • Sessions are now automatically linked to PRs when created via gh pr create
  • Fixed /context command not displaying colored output
  • Windows: Fixed bash command execution failing for users with .bashrc files
  • Windows: Fixed console windows flashing when spawning child processes
  • VSCode: Fixed OAuth token expiration causing 401 errors after extended sessions
v2.1.252026-01-29
  • Fixed beta header validation error for gateway users on Bedrock and Vertex, ensuring CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1 avoids the error
v2.1.232026-01-29
  • Added customizable spinner verbs setting (spinnerVerbs)
  • [IDE] Fixed model options displaying incorrect region strings for Bedrock users in headless mode
v2.1.222026-01-28
  • Fixed structured outputs for non-interactive (-p) mode
v2.1.212026-01-28
  • Added support for full-width (zenkaku) number input from Japanese IME in option selection prompts
  • [VSCode] Added automatic Python virtual environment activation, ensuring python and pip commands use the correct interpreter (configurable via claudeCode.usePythonEnvironment setting)
  • [VSCode] Fixed message action buttons having incorrect background colors
v2.1.202026-01-27Ctrl+GNEW --add-dirNEW /contextFIX /sandboxIMP /commit-push-prIMP /copyIMP
  • Added arrow key history navigation in vim normal mode when cursor cannot move further
  • Added external editor shortcut (Ctrl+G) to the help menu for better discoverability
  • Added PR review status indicator to the prompt footer, showing the current branch's PR state (approved, changes requested, pending, or draft) as a colored dot with a clickable link
  • Added support for loading CLAUDE.md files from additional directories specified via --add-dir flag (requires setting CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1)
  • Added ability to delete tasks via the TaskUpdate tool
  • Fixed duplicate output in some commands like /context
  • Improved /sandbox command UI to show dependency status with installation instructions when dependencies are missing
  • Changed the /commit-push-pr skill to automatically post PR URLs to Slack channels when configured via MCP tools
  • Changed the /copy command to be available to all users
v2.1.192026-01-23/renameFIX /tagFIX Ctrl+SFIX
  • Added env var CLAUDE_CODE_ENABLE_TASKS, set to false to keep the old system temporarily
  • Added shorthand $0, $1, etc. for accessing individual arguments in custom commands
  • Fixed /rename and /tag not updating the correct session when resuming from a different directory (e.g., git worktrees)
  • Fixed pasted text content being lost when using prompt stash (Ctrl+S) and restore
  • [SDK] Added replay of queued_command attachment messages as SDKUserMessageReplay events when replayUserMessages is enabled
  • [VSCode] Enabled session forking and rewind functionality for all users
v2.1.182026-01-22/keybindingsNEW
  • Added customizable keyboard shortcuts. Configure keybindings per context, create chord sequences, and personalize your workflow. Run /keybindings to get started. Learn more at https://code.claude.com/docs/en/keybindings
v2.1.172026-01-22
  • Fixed crashes on processors without AVX instruction support
v2.1.162026-01-22/compactFIX
  • Added new task management system, including new capabilities like dependency tracking
  • [VSCode] Added native plugin management support
  • [VSCode] Added ability for OAuth users to browse and resume remote Claude sessions from the Sessions dialog
  • Fixed an issue where the "context remaining" warning was not hidden after running /compact
  • [IDE] Fixed a race condition on Windows where the Claude Code sidebar view container would not appear on start
v2.1.152026-01-21/compactFIX
  • Added deprecation notification for npm installations - run claude install or see https://docs.anthropic.com/en/docs/claude-code/getting-started for more options
  • Fixed the "Context left until auto-compact" warning not disappearing after running /compact
v2.1.142026-01-20/feedbackFIX /contextFIX /configFIX /modelFIX /todosFIX /compactFIX /usageNEW
  • Added history-based autocomplete in bash mode (!) - type a partial command and press Tab to complete from your bash command history
  • Added search to installed plugins list - type to filter by name or description
  • Added support for pinning plugins to specific git commit SHAs, allowing marketplace entries to install exact versions
  • Fixed /feedback command generating invalid GitHub issue URLs when description is very long
  • Fixed /context command to show the same token count and percentage as the status line in verbose mode
  • Fixed an issue where /config, /context, /model, and /todos command overlays could close unexpectedly
  • Fixed slash command autocomplete selecting wrong command when typing similar commands (e.g., /context vs /compact)
  • [VSCode] Added /usage command to display current plan usage
v2.1.122026-01-17
  • Fixed message rendering bug
v2.1.112026-01-17
  • Fixed excessive MCP connection requests for HTTP/SSE transports
v2.1.102026-01-17--initNEW --init-onlyNEW --maintenanceNEW
  • Added new Setup hook event that can be triggered via --init, --init-only, or --maintenance CLI flags for repository setup and maintenance operations
  • Added keyboard shortcut 'c' to copy OAuth URL when browser doesn't open automatically during login
  • [VSCode] Added install count display to plugin listings
  • [VSCode] Added trust warning when installing plugins
v2.1.92026-01-16Ctrl+GNEW Ctrl+ZFIX
  • Added auto:N syntax for configuring the MCP tool search auto-enable threshold, where N is the context window percentage (0-100)
  • Added plansDirectory setting to customize where plan files are stored
  • Added external editor support (Ctrl+G) in AskUserQuestion "Other" input field
  • Added session URL attribution to commits and PRs created from web sessions
  • Added support for PreToolUse hooks to return additionalContext to the model
  • Added ${CLAUDE_SESSION_ID} string substitution for skills to access the current session ID
  • Fixed Ctrl+Z suspend not working in terminals using Kitty keyboard protocol (Ghostty, iTerm2, kitty, WezTerm)
v2.1.72026-01-14/modelFIX /themeFIX
  • Added showTurnDuration setting to hide turn duration messages (e.g., "Cooked for 1m 6s")
  • Added ability to provide feedback when accepting permission prompts
  • Added inline display of agent's final response in task notifications, making it easier to see results without reading the full transcript file
  • Fixed spinner briefly flashing when running local slash commands like /model or /theme
  • Enabled MCP tool search auto mode by default for all users. When MCP tool descriptions exceed 10% of the context window, they are automatically deferred and discovered via the MCPSearch tool instead of being loaded upfront. This reduces context usage for users with many MCP tools configured. Users can disable this by adding MCPSearch to disallowedTools in their settings.
  • [VSCode] Fixed claudeProcessWrapper setting passing the wrapper path instead of the Claude binary path
v2.1.62026-01-13/configNEW /doctorNEW /statsNEW Ctrl+GNEW /tasksIMP /mcpDEL
  • Added search functionality to /config command for quickly filtering settings
  • Added Updates section to /doctor showing auto-update channel and available npm versions (stable/latest)
  • Added date range filtering to /stats command - press r to cycle between Last 7 days, Last 30 days, and All time
  • Added automatic discovery of skills from nested .claude/skills directories when working with files in subdirectories
  • Added context_window.used_percentage and context_window.remaining_percentage fields to status line input for easier context window display
  • Added an error display when the editor fails during Ctrl+G
  • Improved the /tasks dialog to go directly to task details when there's only one background task running
  • Updated "Help improve Claude" setting fetch to refresh OAuth and retry when it fails due to a stale OAuth token
  • Removed ability to @-mention MCP servers to enable/disable - use /mcp enable <name> instead
  • [VSCode] Fixed usage indicator not updating after manual compact
v2.1.52026-01-12
  • Added CLAUDE_CODE_TMPDIR environment variable to override the temp directory used for internal temp files, useful for environments with custom temp directory requirements
v2.1.42026-01-11Ctrl+BNEW
  • Added CLAUDE_CODE_DISABLE_BACKGROUND_TASKS environment variable to disable all background task functionality including auto-backgrounding and the Ctrl+B shortcut
v2.1.32026-01-09/configNEW /doctorNEW /clearFIX
  • Merged slash commands and skills, simplifying the mental model with no change in behavior
  • Added release channel (stable or latest) toggle to /config
  • Added detection and warnings for unreachable permission rules, with warnings in /doctor and after saving rules that include the source of each rule and actionable fix guidance
  • Fixed plan files persisting across /clear commands, now ensuring a fresh plan file is used after clearing a conversation
  • [VSCode] Added clickable destination selector for permission requests, allowing you to choose where settings are saved (this project, all projects, shared with team, or session only)
v2.1.22026-01-09Shift+TNEW --agentNEW /tasksFIX /pluginsIMP
  • Added source path metadata to images dragged onto the terminal, helping Claude understand where images originated
  • Added clickable hyperlinks for file paths in tool output in terminals that support OSC 8 (like iTerm)
  • Added support for Windows Package Manager (winget) installations with automatic detection and update instructions
  • Added Shift+Tab keyboard shortcut in plan mode to quickly select "auto-accept edits" option
  • Added FORCE_AUTOUPDATE_PLUGINS environment variable to allow plugin autoupdate even when the main auto-updater is disabled
  • Added agent_type to SessionStart hook input, populated if --agent is specified
  • Fixed remote session URL and teleport being broken when using /tasks command
  • Changed /plugins installed tab to unify plugins and MCPs with scope-based grouping
  • [SDK] Changed minimum zod peer dependency to ^4.0.0
  • [VSCode] Fixed usage display not updating after manual compact
v2.1.02026-01-07Shift+EIMP --resumeFIX Ctrl+RFIX Ctrl+BNEW /teleportNEW /remote-envNEW --disallowedToolsNEW /planNEW --toolsNEW Ctrl+VNEW Ctrl+ONEW Alt+BFIX Alt+FFIX /pathFIX /contextFIX --model haikuFIX /hooksFIX /skillsIMP /statsIMP
  • Added automatic skill hot-reload - skills created or modified in ~/.claude/skills or .claude/skills are now immediately available without restarting the session
  • Added support for running skills and slash commands in a forked sub-agent context using context: fork in skill frontmatter
  • Added support for agent field in skills to specify agent type for execution
  • Added language setting to configure Claude's response language (e.g., language: "japanese")
  • Changed Shift+Enter to work out of the box in iTerm2, WezTerm, Ghostty, and Kitty without modifying terminal configs
  • Added respectGitignore support in settings.json for per-project control over @-mention file picker behavior
  • Added IS_DEMO environment variable to hide email and organization from the UI, useful for streaming or recording sessions
  • Fixed files and skills not being properly discovered when resuming sessions with -c or --resume
  • Fixed pasted content being lost when replaying prompts from history using up arrow or Ctrl+R search
  • Reduced permission prompts for complex bash commands
  • Added wildcard pattern matching for Bash tool permissions using * at any position in rules (e.g., Bash(npm *), Bash(* install), Bash(git * main))
  • Added unified Ctrl+B backgrounding for both bash commands and agents - pressing Ctrl+B now backgrounds all running foreground tasks simultaneously
  • Added support for MCP list_changed notifications, allowing MCP servers to dynamically update their available tools, prompts, and resources without requiring reconnection
  • Added /teleport and /remote-env slash commands for claude.ai subscribers, allowing them to resume and configure remote sessions
  • Added support for disabling specific agents using Task(AgentName) syntax in settings.json permissions or the --disallowedTools CLI flag
  • Added /plan command shortcut to enable plan mode directly from the prompt
  • Added --tools flag support in interactive mode to restrict which built-in tools Claude can use during interactive sessions
  • Added Cmd+V support for image paste in iTerm2 (maps to Ctrl+V)
  • Added real-time thinking block display in Ctrl+O transcript mode
  • Fixed Alt+B and Alt+F (word navigation) not working in iTerm2, Ghostty, Kitty, and WezTerm
  • Fixed bash command prefix extraction to correctly identify subcommands after global options (e.g., git -C /path log now correctly matches Bash(git log:*) rules)
  • Fixed slash commands passed as CLI arguments (e.g., claude /context) not being executed properly
  • Fixed skill token estimates in /context to accurately reflect frontmatter-only loading
  • Fixed model picker showing incorrect selection for Bedrock/Vertex users using --model haiku
  • Fixed /hooks menu selecting wrong hook type when scrolling to a different option
  • Improved skills from /skills/ directories to be visible in the slash command menu by default (opt-out with user-invocable: false in frontmatter)
  • Improved /stats output
v2.0.762026-01-07
  • Fixed issue with macOS code-sign warning when using Claude in Chrome integration
v2.0.752025-12-20
  • Minor bugfixes
v2.0.742025-12-19/terminal-setupNEW /themeNEW ctrl+tNEW /plugins discoverFIX /pluginsFIX /contextIMP
  • Added LSP (Language Server Protocol) tool for code intelligence features like go-to-definition, find references, and hover documentation
  • Added /terminal-setup support for Kitty, Alacritty, Zed, and Warp terminals
  • Added ctrl+t shortcut in /theme to toggle syntax highlighting on/off
  • Added syntax highlighting info to theme picker
  • Added guidance for macOS users when Alt shortcuts fail due to terminal configuration
  • Fixed visual bug in /plugins discover where list selection indicator showed while search box was focused
  • Improved /context command visualization with grouped skills and agents by source, slash commands, and sorted token count
  • [Windows] Fixed issue with improper rendering
  • [VSCode] Added gift tag pictogram for year-end promotion message
v2.0.732025-12-19alt+yNEW ctrl+yNEW --session-idNEW --resumeNEW --continueNEW --fork-sessionNEW /themeIMP
  • Added clickable [Image #N] links that open attached images in the default viewer
  • Added alt-y yank-pop to cycle through kill ring history after ctrl-y yank
  • Added search filtering to the plugin discover screen (type to filter by name, description, or marketplace)
  • Added support for custom session IDs when forking sessions with --session-id combined with --resume or --continue and --fork-session
  • Improved /theme command to open theme picker directly
  • [VSCode] Added tab icon badges showing pending permissions (blue) and unread completions (orange)
v2.0.722025-12-17/contextFIX Ctrl+KFIX Ctrl+YFIX Alt+TIMP
  • Added Claude in Chrome (Beta) feature that works with the Chrome extension (https://claude.ai/chrome) to let you control your browser directly from Claude Code
  • Reduced terminal flickering
  • Added scannable QR code to mobile app tip for quick app downloads
  • Added loading indicator when resuming conversations for better feedback
  • Fixed /context command not respecting custom system prompts in non-interactive mode
  • Fixed order of consecutive Ctrl+K lines when pasting with Ctrl+Y
  • Changed thinking toggle from Tab to Alt+T to avoid accidental triggers
v2.0.712025-12-16/configNEW /settingsNEW --dangerously-skip-permissionsFIX
  • Added /config toggle to enable/disable prompt suggestions
  • Added /settings as an alias for the /config command
  • Fixed MCP servers from .mcp.json not loading when using --dangerously-skip-permissions
  • Bedrock: Environment variable ANTHROPIC_BEDROCK_BASE_URL is now respected for token counting and inference profile listing
  • New syntax highlighting engine for native build
v2.0.702025-12-15Ctrl+SIMP /configFIX
  • Added Enter key to accept and submit prompt suggestions immediately (tab still accepts for editing)
  • Added wildcard syntax mcp__server__* for MCP tool permissions to allow or deny all tools from a server
  • Added auto-update toggle for plugin marketplaces, allowing per-marketplace control over automatic updates
  • Added current_usage field to status line input, enabling accurate context window percentage calculations
  • Improved resolution of stats screenshots copied to clipboard (Ctrl+S) for crisper images
  • Fix thinking mode toggle in /config not persisting correctly
  • Improve UI for file creation permission dialog
v2.0.692025-12-13
  • Minor bugfixes
v2.0.682025-12-12
  • Add support for enterprise managed settings. Contact your Anthropic account team to enable this feature.
v2.0.672025-12-11/config /permissionsNEW /doctorIMP
  • Thinking mode is now enabled by default for Opus 4.5
  • Thinking mode configuration has moved to /config
  • Added search functionality to /permissions command with / keyboard shortcut for filtering rules by tool name
  • Show reason why autoupdater is disabled in /doctor
  • Fixed scroll position resetting after deleting a permission rule in /permissions
  • Windows: Fixed plugin MCP servers failing due to colons in log directory paths
v2.0.652025-12-11alt+pNEW
  • Added ability to switch models while writing a prompt using alt+p (linux, windows), option+p (macos).
  • Added context window information to status line input
  • Added fileSuggestion setting for custom @ file search commands
  • Added CLAUDE_CODE_SHELL environment variable to override automatic shell detection (useful when login shell differs from actual working shell)
v2.0.642025-12-10/statsIMP /renameNEW /resume <name>NEW /resumeNEW --resumeNEW --system-promptFIX --continueFIX
  • Made auto-compacting instant
  • Agents and bash commands can run asynchronously and send messages to wake up the main agent
  • /stats now provides users with interesting CC stats, such as favorite model, usage graph, usage streak
  • Added named session support: use /rename to name sessions, /resume <name> in REPL or claude --resume <name> from the terminal to resume them
  • Added support for .claude/rules/`. See https://code.claude.com/docs/en/memory for details.
  • Added image dimension metadata when images are resized, enabling accurate coordinate mappings for large images
  • Fixed --system-prompt being ignored when using --continue or --resume flags
  • Improved /resume screen with grouped forked sessions and keyboard shortcuts for preview (P) and rename (R)
  • VSCode: Added copy-to-clipboard button on code blocks and bash tool inputs
  • VSCode: Fixed extension not working on Windows ARM64 by falling back to x64 binary via emulation
  • Bedrock: Improve efficiency of token counting
  • Bedrock: Add support for aws login AWS Management Console credentials
v2.0.622025-12-09
  • Added "(Recommended)" indicator for multiple-choice questions, with the recommended option moved to the top of the list
  • Added attribution setting to customize commit and PR bylines (deprecates includeCoAuthoredBy)
v2.0.612025-12-07
  • Reverted VSCode support for multiple terminal clients due to responsiveness issues.
v2.0.602025-12-05--disable-slash-commandsNEW /mcp
  • Added background agent support. Agents run in the background while you work
  • Added --disable-slash-commands CLI flag to disable all slash commands
  • Added model name to "Co-Authored-By" commit messages
  • Enabled "/mcp enable [server-name]" or "/mcp disable [server-name]" to quickly toggle all servers
  • Updated Fetch to skip summarization for pre-approved websites
  • VSCode: Added support for multiple terminal clients connecting to the IDE server simultaneously
v2.0.592025-12-04--agentNEW
  • Added --agent CLI flag to override the agent setting for the current session
  • Added agent setting to configure main thread with a specific agent's system prompt, tool restrictions, and model
  • VS Code: Fixed .claude.json config file being read from incorrect location
v2.0.582025-12-03
  • Pro users now have access to Opus 4.5 as part of their subscription!
  • Windows: Managed settings now prefer C:\Program Files\ClaudeCode if it exists. Support for C:\ProgramData\ClaudeCode will be removed in a future version.
v2.0.572025-12-03
  • Added feedback input when rejecting plans, allowing users to tell Claude what to change
  • VSCode: Added streaming message support for real-time response display
v2.0.562025-12-01
  • Added setting to enable/disable terminal progress bar (OSC 9;4)
  • VSCode Extension: Added support for VS Code's secondary sidebar (VS Code 1.97+), allowing Claude Code to be displayed in the right sidebar while keeping the file explorer on the left. Requires setting sidebar as Preferred Location in the config.
v2.0.552025-11-26
  • Fixed proxy DNS resolution being forced on by default. Now opt-in via CLAUDE_CODE_PROXY_RESOLVES_HOSTS=true environment variable
  • Fixed keyboard navigation becoming unresponsive when holding down arrow keys in memory location selector
  • Improved AskUserQuestion tool to auto-submit single-select questions on the last question, eliminating the extra review screen for simple question flows
  • Improved fuzzy matching for @ file suggestions with faster, more accurate results
v2.0.542025-11-25
  • Hooks: Enable PermissionRequest hooks to process 'always allow' suggestions and apply permission updates
  • Fix issue with excessive iTerm notifications
v2.0.522025-11-24/usageFIX
  • Fixed /usage command progress bars to fill up as usage increases (instead of showing remaining percentage)
  • Permit some uses of $! in bash commands
v2.0.512025-11-24/usageIMP
  • Added Opus 4.5! https://www.anthropic.com/news/claude-opus-4-5
  • Introducing Claude Code for Desktop: https://claude.com/download
  • To give you room to try out our new model, we've updated usage limits for Claude Code users. See the Claude Opus 4.5 blog for full details
  • Pro users can now purchase extra usage for access to Opus 4.5 in Claude Code
  • Plan Mode now builds more precise plans and executes more thoroughly
  • Usage limit notifications now easier to understand
  • Switched /usage back to "% used"
v2.0.502025-11-21
  • Silenced a noisy but harmless error during upgrades
v2.0.492025-11-21ctrl+yNEW
  • Added readline-style ctrl-y for pasting deleted text
v2.0.472025-11-19/usageIMP
  • Improved error handling in /usage
v2.0.462025-11-19
  • Fixed image files being reported with incorrect media type when format cannot be detected from metadata
v2.0.452025-11-18
  • Added support for Microsoft Foundry! See https://code.claude.com/docs/en/azure-ai-foundry
  • Added PermissionRequest hook to automatically approve or deny tool permission requests with custom logic
  • Send background tasks to Claude Code on the web by starting a message with &
v2.0.432025-11-17
  • Added permissionMode field for custom agents
  • Added tool_use_id field to PreToolUseHookInput and PostToolUseHookInput types
  • Added skills frontmatter field to declare skills to auto-load for subagents
  • Added the SubagentStart hook event
v2.0.422025-11-14
  • Added agent_id and agent_transcript_path fields to SubagentStop hooks.
v2.0.412025-11-14--model haiku /model ctrl+r
  • Added model parameter to prompt-based stop hooks, allowing users to specify a custom model for hook evaluation
  • Fixed: Bedrock users no longer see duplicate Opus entries in the /model picker when using --model haiku
  • ctrl-r history search landing on a slash command no longer cancels the search
  • SDK: Support custom timeouts for hooks
  • Allow more safe git commands to run without approval
  • Plugins: Added support for sharing and installing output styles
  • Teleporting a session from web will automatically set the upstream branch
v2.0.372025-11-10
  • Hooks: Added matcher values for Notification hook events
  • Output Styles: Added keep-coding-instructions option to frontmatter
v2.0.362025-11-07
  • Fixed: DISABLE_AUTOUPDATER environment variable now properly disables package manager update notifications
  • Fixed queued messages being incorrectly executed as bash commands
  • Fixed input being lost when typing while a queued message is processed
v2.0.352025-11-06/hooksFIX
  • Improve fuzzy search results when searching commands
  • Added CLAUDE_CODE_EXIT_AFTER_STOP_DELAY environment variable to automatically exit SDK mode after a specified idle duration, useful for automated workflows and scripts
  • Migrated ignorePatterns from project config to deny permissions in the localSettings.
  • Fixed menu navigation getting stuck on items with empty string or other falsy values (e.g., in the /hooks menu)
v2.0.342025-11-05
  • VSCode Extension: Added setting to configure the initial permission mode for new conversations
v2.0.332025-11-04
  • Native binary installs now launch quicker.
v2.0.322025-11-03
  • Un-deprecate output styles based on community feedback
  • Added companyAnnouncements setting for displaying announcements on startup
v2.0.312025-10-31shift+t alt+m /compactFIX
  • Windows: native installation uses shift+tab as shortcut for mode switching, instead of alt+m
  • Vertex: add support for Web Search on supported models
  • VSCode: Adding the respectGitIgnore configuration to include .gitignored files in file searches (defaults to true)
  • Fixed issue causing /compact to fail with prompt_too_long by making it respect existing compact boundaries
v2.0.302025-10-30/output-styleIMP /contextFIX --mcp-configFIX
  • Added helpful hint to run security unlock-keychain when encountering API key errors on macOS with locked keychain
  • Added allowUnsandboxedCommands sandbox setting to disable the dangerouslyDisableSandbox escape hatch at policy level
  • Added disallowedTools field to custom agent definitions for explicit tool blocking
  • Added prompt-based stop hooks
  • VSCode: Added respectGitIgnore configuration to include .gitignored files in file searches (defaults to true)
  • Enabled SSE MCP servers on native build
  • Deprecated output styles. Review options in /output-style and use --system-prompt-file, --system-prompt, --append-system-prompt, CLAUDE.md, or plugins instead
  • Fixed a bug where /context would sometimes fail with "max_tokens must be greater than thinking.budget_tokens" error message
  • Fixed --mcp-config flag to correctly override file-based MCP configurations
  • VSCode: Restored selection indicator in input footer showing current file or code selection status
v2.0.282025-10-27--max-budget-usdNEW /terminal-setupIMP
  • Plan mode: introduced new Plan subagent
  • Subagents: claude can now choose to resume subagents
  • Subagents: claude can dynamically choose the model used by its subagents
  • SDK: added --max-budget-usd flag
  • Discovery of custom slash commands, subagents, and output styles no longer respects .gitignore
  • Stop /terminal-setup from adding backslash to Shift + Enter in VS Code
  • Add branch and tag support for git-based plugins and marketplaces using fragment syntax (e.g., owner/repo#branch)
  • Various other bug fixes
v2.0.272025-10-24
  • New UI for permission prompts
  • Added current branch filtering and search to session resume screen for easier navigation
  • VSCode Extension: Add config setting to include .gitignored files in file searches
  • VSCode Extension: Bug fixes for unrelated 'Warmup' conversations, and configuration/settings occasionally being reset to defaults
v2.0.252025-10-21/platformDEL
  • Removed legacy SDK entrypoint. Please migrate to @anthropic-ai/claude-agent-sdk for future SDK updates: https://platform.claude.com/docs/en/agent-sdk/migration-guide
v2.0.242025-10-20
  • Claude Code Web: Support for Web -> CLI teleport
  • Sandbox: Releasing a sandbox mode for the BashTool on Linux & Mac
  • Bedrock: Display awsAuthRefresh output when auth is required
v2.0.222025-10-17
  • IDE: Add toggle to enable/disable thinking.
  • Fix bug causing duplicate permission prompts with parallel tool calls
  • Add support for enterprise managed MCP allowlist and denylist
v2.0.212025-10-16
  • Support MCP structuredContent field in tool responses
  • Added an interactive question tool
  • Claude will now ask you questions more often in plan mode
  • Added Haiku 4.5 as a model option for Pro users
v2.0.202025-10-16
  • Added support for Claude Skills
v2.0.192025-10-15
  • Auto-background long-running bash commands instead of killing them. Customize with BASH_DEFAULT_TIMEOUT_MS
v2.0.172025-10-15
  • Added Haiku 4.5 to model selector!
  • Haiku 4.5 automatically uses Sonnet in plan mode, and Haiku for execution (i.e. SonnetPlan by default)
  • 3P (Bedrock and Vertex) are not automatically upgraded yet. Manual upgrading can be done through setting ANTHROPIC_DEFAULT_HAIKU_MODEL
  • Introducing the Explore subagent. Powered by Haiku it'll search through your codebase efficiently to save context!
  • OTEL: support HTTP_PROXY and HTTPS_PROXY
  • CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC now disables release notes fetching
v2.0.152025-10-14
  • Fixed bug with resuming where previously created files needed to be read again before writing
  • Fixed bug with -p mode where @-mentioned files needed to be read again before writing
v2.0.142025-10-10
  • Fix @-mentioning MCP servers to toggle them on/off
  • Improve permission checks for bash with inline env vars
  • Fix ultrathink + thinking toggle
  • Reduce unnecessary logins
  • Document --system-prompt
  • Several improvements to rendering
  • Plugins UI polish
v2.0.132025-10-09/pluginFIX
  • Fixed /plugin not working on native build
v2.0.122025-10-09/plugin install /plugin marketplace /plugin /plugin validate /doctor /modelIMP /help /resumeIMP /configIMP
  • Plugin System Released**: Extend Claude Code with custom commands, agents, hooks, and MCP servers from marketplaces
  • /plugin install, /plugin enable/disable, /plugin marketplace commands for plugin management
  • Repository-level plugin configuration via extraKnownMarketplaces for team collaboration
  • /plugin validate command for validating plugin structure and configuration
  • Plugin announcement blog post at https://www.anthropic.com/news/claude-code-plugins
  • Plugin documentation available at https://code.claude.com/docs/en/plugins
  • Comprehensive error messages and diagnostics via /doctor command
  • Avoid flickering in /model selector
  • Improvements to /help
  • Avoid mentioning hooks in /resume summaries
  • Changes to the "verbose" setting in /config now persist across sessions
v2.0.112025-10-08/add-dirFIX
  • Reduced system prompt size by 1.4k tokens
  • IDE: Fixed keyboard shortcuts and focus issues for smoother interaction
  • Fixed /add-dir command selecting wrong default tab
v2.0.102025-10-07/mcp Ctrl+GNEW
  • Rewrote terminal renderer for buttery smooth UI
  • Enable/disable MCP servers by @mentioning, or in /mcp
  • Added tab completion for shell commands in bash mode
  • PreToolUse hooks can now modify tool inputs
  • Press Ctrl-G to edit your prompt in your system's configured text editor
  • Fixes for bash permission checks with environment variables in the command
v2.0.92025-10-06
  • Fix regression where bash backgrounding stopped working
v2.0.82025-10-04/context
  • Update Bedrock default Sonnet model to global.anthropic.claude-sonnet-4-5-20250929-v1:0
  • IDE: Add drag-and-drop support for files and folders in chat
  • /context: Fix counting for thinking blocks
  • Improve message rendering for users with light themes on dark terminals
  • Remove deprecated .claude.json allowedTools, ignorePatterns, env, and todoFeatureEnabled config options (instead, configure these in your settings.json)
v2.0.52025-10-02
  • IDE: Fix IME unintended message submission with Enter and Tab
  • IDE: Add "Open in Terminal" link in login screen
  • Fix unhandled OAuth expiration 401 API errors
  • SDK: Added SDKUserMessageReplay.isReplay to prevent duplicate messages
v2.0.12025-09-30
  • Skip Sonnet 4.5 default model setting change for Bedrock and Vertex
  • Various bug fixes and presentation improvements
v2.0.02025-09-29/rewind /usage Ctrl+R --agents
  • New native VS Code extension
  • Fresh coat of paint throughout the whole app
  • /rewind a conversation to undo code changes
  • /usage command to see plan limits
  • Tab to toggle thinking (sticky across sessions)
  • Ctrl-R to search history
  • Unshipped claude config command
  • Hooks: Reduced PostToolUse 'tool_use' ids were found without 'tool_result' blocks errors
  • SDK: The Claude Code SDK is now the Claude Agent SDK
  • Add subagents dynamically with --agents flag
v1.0.1262025-09-26/contextIMP
  • Enable /context command for Bedrock and Vertex
  • Add mTLS support for HTTP-based OpenTelemetry exporters
v1.0.1242025-09-25
  • Set CLAUDE_BASH_NO_LOGIN environment variable to 1 or true to to skip login shell for BashTool
  • Fix Bedrock and Vertex environment variables evaluating all strings as truthy
  • No longer inform Claude of the list of allowed tools when permission is denied
v1.0.1232025-09-23
  • Bash permission rules now support output redirections when matching (e.g., Bash(python:*) matches python script.py > output.txt)
  • Added SlashCommand tool, which enables Claude to invoke your slash commands. https://code.claude.com/docs/en/slash-commands#SlashCommand-tool
  • Migrated --debug logging to a file, to enable easy tailing & filtering
v1.0.1202025-09-19
  • Fix input lag during typing, especially noticeable with large prompts
v1.0.1192025-09-18
  • Fix Windows issue where process visually freezes on entering interactive mode
  • Support dynamic headers for MCP servers via headersHelper configuration
  • Fix thinking mode not working in headless sessions
  • Fix slash commands now properly update allowed tools instead of replacing them
v1.0.1172025-09-16Ctrl+R /add-dir
  • Add Ctrl-R history search to recall previous commands like bash/zsh
  • Fix input lag while typing, especially on Windows
  • Add sed command to auto-allowed commands in acceptEdits mode
  • Fix Windows PATH comparison to be case-insensitive for drive letters
  • Add permissions management hint to /add-dir output
v1.0.1152025-09-16/t
  • Improve thinking mode display with enhanced visual effects
  • Type /t to temporarily disable thinking mode in your prompt
  • Improve path validation for glob and grep tools
  • Show condensed output for post-tool hooks to reduce visual clutter
  • Fix visual feedback when loading state completes
  • Improve UI consistency for permission request dialogs
v1.0.1132025-09-13Ctrl+R Ctrl+O
  • Move Ctrl+R keybinding for toggling transcript to Ctrl+O
v1.0.1122025-09-12Ctrl+R
  • Transcript mode (Ctrl+R): Added the model used to generate each assistant message
  • Addressed issue where some Claude Max users were incorrectly recognized as Claude Pro users
  • Hooks: Added systemMessage support for SessionEnd hooks
  • Added spinnerTipsEnabled setting to disable spinner tips
  • IDE: Various improvements and bug fixes
v1.0.1112025-09-10/modelIMP
  • /model now validates provided model names
v1.0.1102025-09-09/terminal-setupIMP
  • /terminal-setup command now supports WezTerm
  • MCP: OAuth tokens now proactively refresh before expiration
v1.0.1092025-09-08--include-partial-messagesNEW
  • SDK: Added partial message streaming support via --include-partial-messages CLI flag
v1.0.1062025-09-04
  • Windows: Fixed path permission matching to consistently use POSIX format (e.g., Read(//c/Users/...))
v1.0.97/doctorIMP
  • Settings: /doctor now validates permission rule syntax and suggests corrections
v1.0.942025-08-27/memoryIMP /todosNEW
  • Vertex: add support for global endpoints for supported models
  • /memory command now allows direct editing of all imported memory files
  • SDK: Add custom tools as callbacks
  • Added /todos command to list current todo items
v1.0.932025-08-26
  • Windows: Add alt + v shortcut for pasting images from clipboard
  • Support NO_PROXY environment variable to bypass proxy for specified hostnames and IPs
v1.0.902025-08-24
  • Settings file changes take effect immediately - no restart required
v1.0.882025-08-22/costFIX
  • Status line input now includes exceeds_200k_tokens
  • Fixed incorrect usage tracking in /cost.
  • Introduced ANTHROPIC_DEFAULT_SONNET_MODEL and ANTHROPIC_DEFAULT_OPUS_MODEL for controlling model aliases opusplan, opus, and sonnet.
  • Bedrock: Updated default Sonnet model to Sonnet 4
v1.0.862025-08-20/contextNEW --replay-user-messagesNEW
  • Added /context to help users self-serve debug context issues
  • SDK: Added UUID support for all SDK messages
  • SDK: Added --replay-user-messages to replay user messages back to stdout
v1.0.852025-08-19
  • Status line input now includes session cost info
  • Hooks: Introduced SessionEnd hook
v1.0.842025-08-18
  • Fix tool_use/tool_result id mismatch error when network is unstable
  • Fix Claude sometimes ignoring real-time steering when wrapping up a task
  • @-mention: Add ~/.claude/\* files to suggestions for easier agent, output style, and slash command editing
  • Use built-in ripgrep by default; to opt out of this behavior, set USE_BUILTIN_RIPGREP=0
v1.0.832025-08-15
  • @-mention: Support files with spaces in path
  • New shimmering spinner
v1.0.822025-08-15
  • SDK: Add request cancellation support
  • SDK: New additionalDirectories option to search custom paths, improved slash command processing
  • Settings: Validation prevents invalid fields in .claude/settings.json files
  • MCP: Improve tool name consistency
  • Bash: Fix crash when Claude tries to automatically read large files
v1.0.812025-08-14
  • Released output styles, including new built-in educational output styles "Explanatory" and "Learning". Docs: https://code.claude.com/docs/en/output-styles
  • Agents: Fix custom agent loading when agent files are unparsable
v1.0.802025-08-13
  • UI improvements: Fix text contrast for custom subagent colors and spinner rendering issues
v1.0.772025-08-12/model
  • Bash tool: Fix heredoc and multiline string escaping, improve stderr redirection handling
  • SDK: Add session support and permission denial tracking
  • Fix token limit errors in conversation summarization
  • Opus Plan Mode: New setting in /model to run Opus only in plan mode, Sonnet otherwise
v1.0.732025-08-11
  • MCP: Support multiple config files with --mcp-config file1.json file2.json
  • MCP: Press Esc to cancel OAuth authentication flows
  • Bash: Improved command validation and reduced false security warnings
  • UI: Enhanced spinner animations and status line visual hierarchy
  • Linux: Added support for Alpine and musl-based distributions (requires separate ripgrep installation)
v1.0.722025-08-08/permissions
  • Ask permissions: have Claude Code always ask for confirmation to use specific tools with /permissions
v1.0.712025-08-07Ctrl+b /statusline
  • Background commands: (Ctrl-b) to run any Bash command in the background so Claude can keep working (great for dev servers, tailing logs, etc.)
  • Customizable status line: add your terminal prompt to Claude Code with /statusline
v1.0.702025-08-06
  • Performance: Optimized message rendering for better performance with large contexts
  • Windows: Fixed native file search, ripgrep, and subagent functionality
  • Added support for @-mentions in slash command arguments
v1.0.692025-08-05
  • Upgraded Opus to version 4.1
v1.0.682025-08-04/pr-commentsFIX /doctorIMP
  • Fix incorrect model names being used for certain commands like /pr-comments
  • Windows: improve permissions checks for allow / deny tools and project trust. This may create a new project entry in .claude.json - manually merge the history field if desired.
  • Windows: improve sub-process spawning to eliminate "No such file or directory" when running commands like pnpm
  • Enhanced /doctor command with CLAUDE.md and MCP tool context for self-serve debugging
  • SDK: Added canUseTool callback support for tool confirmation
  • Added disableAllHooks setting
v1.0.652025-07-31
  • IDE: Fixed connection stability issues and error handling for diagnostics
  • Windows: Fixed shell environment setup for users without .bashrc files
v1.0.642025-07-30
  • Agents: Added model customization support - you can now specify which model an agent should use
  • Agents: Fixed unintended access to the recursive agent tool
  • Hooks: Added systemMessage field to hook JSON output for displaying warnings and context
  • SDK: Fixed user input tracking across multi-turn conversations
  • Added hidden files to file search and @-mention suggestions
v1.0.632025-07-29
  • Windows: Fixed file search, @agent mentions, and custom slash commands functionality
v1.0.622025-07-28/add-dirIMP
  • Added @-mention support with typeahead for custom agents. @<your-custom-agent> to invoke it
  • Hooks: Added SessionStart hook for new session initialization
  • /add-dir command now supports typeahead for directory paths
v1.0.612025-07-25Ctrl+R --settingsNEW
  • Transcript mode (Ctrl+R): Changed Esc to exit transcript mode rather than interrupt
  • Settings: Added --settings flag to load settings from a JSON file
  • Settings: Fixed resolution of settings files paths that are symlinks
  • OTEL: Fixed reporting of wrong organization after authentication changes
  • Slash commands: Fixed permissions checking for allowed-tools with Bash
  • IDE: Added support for pasting images in VSCode MacOS using ⌘+V
  • IDE: Added CLAUDE_CODE_AUTO_CONNECT_IDE=false for disabling IDE auto-connection
  • Added CLAUDE_CODE_SHELL_PREFIX for wrapping Claude and user-provided shell commands run by Claude Code
v1.0.602025-07-24/agentsNEW
  • You can now create custom subagents for specialized tasks! Run /agents to get started
v1.0.592025-07-23
  • SDK: Added tool confirmation support with canUseTool callback
  • SDK: Allow specifying env for spawned process
  • Hooks: Exposed PermissionDecision to hooks (including "ask")
  • Hooks: UserPromptSubmit now supports additionalContext in advanced JSON output
v1.0.582025-07-22
  • Added support for reading PDFs
  • MCP: Improved server health status display in 'claude mcp list'
  • Hooks: Added CLAUDE_PROJECT_DIR env var for hook commands
v1.0.572025-07-21
  • Added support for specifying a model in slash commands
  • Fix: Remove trailing newlines from bash output in terminal wrapping
v1.0.562025-07-18shift+t
  • Windows: Enabled shift+tab for mode switching on versions of Node.js that support terminal VT mode
  • Fixes for WSL IDE detection
  • Fix an issue causing awsRefreshHelper changes to .aws directory not to be picked up
v1.0.552025-07-17Ctrl+ZFIX
  • Clarified knowledge cutoff for Opus 4 and Sonnet 4 models
  • Windows: fixed Ctrl+Z crash
  • SDK: Added ability to capture error logging
  • Add --system-prompt-file option to override system prompt in print mode
v1.0.542025-07-16
  • Hooks: Added UserPromptSubmit hook and the current working directory to hook inputs
  • Custom slash commands: Added argument-hint to frontmatter
  • Windows: OAuth uses port 45454 and properly constructs browser URL
  • Windows: mode switching now uses alt + m, and plan mode renders properly
  • Shell: Switch to in-memory shell snapshot to fix file-related errors
v1.0.532025-07-15
  • Updated @-mention file truncation from 100 lines to 2000 lines
  • Add helper script settings for AWS token refresh: awsAuthRefresh (for foreground operations like aws sso login) and awsCredentialExport (for background operation with STS-like response).
v1.0.522025-07-15
  • Added support for MCP server instructions
v1.0.512025-07-11/doctorIMP --append-system-promptIMP
  • Added support for native Windows (requires Git for Windows)
  • Added support for Bedrock API keys through environment variable AWS_BEARER_TOKEN_BEDROCK
  • Settings: /doctor can now help you identify and fix invalid setting files
  • --append-system-prompt can now be used in interactive mode, not just --print/-p.
  • Increased auto-compact warning threshold from 60% to 80%
  • OTEL resource now includes os.type, os.version, host.arch, and wsl.version (if running on Windows Subsystem for Linux)
  • Custom slash commands: Fixed user-level commands in subdirectories
  • Plan mode: Fixed issue where rejected plan from sub-task would get discarded
v1.0.482025-07-10
  • Added progress messages to Bash tool based on the last 5 lines of command output
  • Added expanding variables support for MCP server configuration
  • Moved shell snapshots from /tmp to ~/.claude for more reliable Bash tool calls
  • Hooks: Added a PreCompact hook
  • Vim mode: Added c, f/F, t/T
v1.0.452025-07-08Ctrl+UIMP /clearIMP
  • Redesigned Search (Grep) tool with new tool input parameters and features
  • Disabled IDE diffs for notebook files, fixing "Timeout waiting after 1000ms" error
  • Updated prompt input undo to Ctrl+\_ to avoid breaking existing Ctrl+U behavior, matching zsh's undo shortcut
  • Stop Hooks: Fixed transcript path after /clear and fixed triggering when loop ends with tool call
  • Custom slash commands: Restored namespacing in command names based on subdirectories. For example, .claude/commands/frontend/component.md is now /frontend:component, not /component.
v1.0.442025-07-07/exportNEW /mcpIMP Ctrl+ZIMP Ctrl+UIMP
  • New /export command lets you quickly export a conversation for sharing
  • MCP: resource_link tool results are now supported
  • MCP: tool annotations and tool titles now display in /mcp view
  • Changed Ctrl+Z to suspend Claude Code. Resume by running fg. Prompt input undo is now Ctrl+U.
v1.0.432025-07-03
  • Hooks: Added EPIPE system error handling
v1.0.422025-07-03/add-dirNEW
  • Added tilde (~) expansion support to /add-dir command
v1.0.412025-07-02
  • Hooks: Split Stop hook triggering into Stop and SubagentStop
  • Hooks: Enabled optional timeout configuration for each command
  • Hooks: Added "hook_event_name" to hook input
  • New tool parameters JSON for Bash tool in tool_decision event
v1.0.402025-07-01
  • Fixed a bug causing API connection errors with UNABLE_TO_GET_ISSUER_CERT_LOCALLY if NODE_EXTRA_CA_CERTS was set
v1.0.392025-07-01
  • New Active Time metric in OpenTelemetry logging
v1.0.382025-06-30/github
  • Released hooks. Special thanks to community input in https://github.com/anthropics/claude-code/issues/712. Docs: https://code.claude.com/docs/en/hooks
v1.0.372025-06-27
  • Remove ability to set Proxy-Authorization header via ANTHROPIC_AUTH_TOKEN or apiKeyHelper
v1.0.362025-06-27
  • Web search now takes today's date into context
v1.0.352025-06-25
  • Added support for MCP OAuth Authorization Server discovery
v1.0.342025-06-24
  • Fixed a memory leak causing a MaxListenersExceededWarning message to appear
v1.0.332025-06-23Ctrl+ZNEW
  • Added prompt input undo functionality (Ctrl+Z and vim 'u' command)
  • Improvements to plan mode
v1.0.322025-06-23
  • Updated loopback config for litellm
  • Added forceLoginMethod setting to bypass login selection screen
v1.0.312025-06-20
  • Fixed a bug where ~/.claude.json would get reset when file contained invalid JSON
v1.0.302025-06-19Ctrl+rNEW Ctrl+cNEW
  • Custom slash commands: Run bash output, @-mention files, enable thinking with thinking keywords
  • Added timestamps in Ctrl-r mode and fixed Ctrl-c handling
v1.0.292025-06-18
  • Improved CJK character support in cursor navigation and rendering
v1.0.282025-06-18
  • Slash commands: Fix selector display during history navigation
  • Resizes images before upload to prevent API size limit errors
  • Added XDG_CONFIG_HOME support to configuration directory
  • Performance optimizations for memory usage
  • New attributes (terminal.type, language) in OpenTelemetry logging
v1.0.272025-06-17/resume
  • Streamable HTTP MCP servers are now supported
  • Remote MCP servers (SSE and HTTP) now support OAuth
  • MCP resources can now be @-mentioned
  • /resume slash command to switch conversations within Claude Code
v1.0.252025-06-16
  • Slash commands: moved "project" and "user" prefixes to descriptions
  • Slash commands: improved reliability for command discovery
v1.0.242025-06-14/mcpIMP
  • Improved /mcp output
v1.0.232025-06-13
  • Released TypeScript SDK: import @anthropic-ai/claude-code to get started
  • Released Python SDK: pip install claude-code-sdk to get started
v1.0.222025-06-12
  • SDK: Renamed total_cost to total_cost_usd
v1.0.212025-06-11
  • Fix for tool_use without matching tool_result errors
v1.0.182025-06-09--add-dirNEW /mcpNEW
  • Added --add-dir CLI argument for specifying additional working directories
  • Added streaming input support without require -p flag
  • Added CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR environment variable to freeze working directory for bash commands
  • Added detailed MCP server tools display (/mcp)
  • MCP authentication and permission improvements
  • Added auto-reconnection for MCP SSE connections on disconnect
v1.0.172025-06-06
  • We now emit messages from sub-tasks in -p mode (look for the parent_tool_use_id property)
  • MCP server list UI improvements
  • Update Claude Code process title to display "claude" instead of "node"
v1.0.112025-06-04/upgradeNEW
  • Claude Code can now also be used with a Claude Pro subscription
  • Added /upgrade for smoother switching to Claude Max plans
v1.0.102025-06-03
  • Added markdown table support
v1.0.82025-06-02
  • Increased default otel interval from 1s -> 5s
  • Added support for triggering thinking non-English languages
v1.0.72025-05-30/allowed-toolsIMP /permissionsIMP /install-github-appIMP
  • Renamed /allowed-tools -> /permissions
  • Migrated allowedTools and ignorePatterns from .claude.json -> settings.json
  • Improved error handling for /install-github-app
  • Bugfixes, UI polish, and tool reliability improvements
v1.0.62025-05-29
  • Respect CLAUDE_CONFIG_DIR everywhere
  • Reduced unnecessary tool permission prompts
  • Added support for symlinks in @file typeahead
  • Bugfixes, UI polish, and tool reliability improvements
v1.0.42025-05-28
  • Fixed a bug where MCP tool errors weren't being parsed correctly
v1.0.12025-05-22
  • Added DISABLE_INTERLEAVED_THINKING to give users the option to opt out of interleaved thinking.
  • Updated documentation links and OAuth process descriptions
v1.0.02025-05-22
  • Claude Code is now generally available
  • Introducing Sonnet 4 and Opus 4 models
v0.2.1252025-05-21
  • Breaking change: Bedrock ARN passed to ANTHROPIC_MODEL or ANTHROPIC_SMALL_FAST_MODEL should no longer contain an escaped slash (specify / instead of %2F)
  • Removed DEBUG=true in favor of ANTHROPIC_LOG=debug, to log all requests
v0.2.1172025-05-17--debugNEW
  • Introduced settings.cleanupPeriodDays
  • Introduced CLAUDE_CODE_API_KEY_HELPER_TTL_MS env var
  • Introduced --debug mode
v0.2.1082025-05-13/costFIX
  • You can now send messages to Claude while it works to steer Claude in real-time
  • Introduced BASH_DEFAULT_TIMEOUT_MS and BASH_MAX_TIMEOUT_MS env vars
  • Fixed a regression in /cost reporting
v0.2.1072025-05-09
  • CLAUDE.md files can now import other files. Add @path/to/file.md to ./CLAUDE.md to load additional files on launch
v0.2.1062025-05-09
  • MCP SSE server configs can now specify custom headers
v0.2.1052025-05-08/statusIMP
  • Claude can now search the web
  • Moved system & account status to /status
  • Added word movement keybindings for Vim
v0.2.1022025-05-05
  • You can now paste multiple large chunks into one prompt
v0.2.1002025-05-02
  • Made db storage optional; missing db support disables --continue and --resume
v0.2.982025-05-01
  • Fixed an issue where auto-compact was running twice
v0.2.962025-05-01
  • Claude Code can now also be used with a Claude Max subscription (https://claude.ai/upgrade)
v0.2.932025-04-30--continueNEW --resumeNEW
  • Resume conversations from where you left off from with "claude --continue" and "claude --resume"
  • Claude now has access to a Todo list that helps it stay on track and be more organized
v0.2.82--disallowedToolsNEW
  • Added support for --disallowedTools
  • Renamed tools for consistency: LSTool -> LS, View -> Read, etc.
v0.2.75--mcp-configNEW
  • Hit Enter to queue up additional messages while Claude is working
  • Drag in or copy/paste image files directly into the prompt
  • @-mention files to directly add them to context
  • Run one-off MCP servers with claude --mcp-config <path-to-file>
v0.2.742025-04-18
  • Added support for refreshing dynamically generated API keys (via apiKeyHelper), with a 5 minute TTL
  • Task tool can now perform writes and run bash commands
v0.2.722025-04-17
  • Updated spinner to indicate tokens loaded and tool usage
v0.2.702025-04-15
  • Network commands like curl are now available for Claude to use
  • Claude can now run multiple web queries in parallel
  • Pressing ESC once immediately interrupts Claude in Auto-accept mode
v0.2.692025-04-11
  • Fixed UI glitches with improved Select component behavior
  • Enhanced terminal output display with better text truncation logic
v0.2.672025-04-09
  • Shared project permission rules can be saved in .claude/settings.json
v0.2.662025-04-09--output-formatNEW
  • Print mode (-p) now supports streaming output via --output-format=stream-json
v0.2.63
  • Fixed an issue where MCP tools were loaded twice, which caused tool call errors
v0.2.612025-04-03Ctrl+nNEW
  • Navigate menus with vim-style keys (j/k) or bash/emacs shortcuts (Ctrl+n/p) for faster interaction
v0.2.592025-04-02
  • Copy+paste images directly into your prompt
  • Bugfixes for non-interactive mode (-p)
v0.2.542025-03-25ctrl+rNEW
  • Quickly add to Memory by starting your message with '#'
  • Press ctrl+r to see full output for long tool results
  • Added support for MCP SSE transport
v0.2.532025-03-21
  • New web fetch tool lets Claude view URLs that you paste in
v0.2.502025-03-19
  • New MCP "project" scope now allows you to add MCP servers to .mcp.json files and commit them to your repository
v0.2.492025-03-18
  • Previous MCP server scopes have been renamed: previous "project" scope is now "local" and "global" scope is now "user"
v0.2.472025-03-18/config
  • Press Tab to auto-complete file and folder names
  • Press Shift + Tab to toggle auto-accept for file edits
  • Automatic conversation compaction for infinite conversation length (toggle with /config)
v0.2.442025-03-15
  • Ask Claude to make a plan with thinking mode: just say 'think' or 'think harder' or even 'ultrathink'
v0.2.412025-03-14
  • MCP server startup timeout can now be configured via MCP_TIMEOUT environment variable
  • MCP server startup no longer blocks the app from starting up
v0.2.372025-03-11/release-notesNEW
  • New /release-notes command lets you view release notes at any time
  • claude config add/remove commands now accept multiple values separated by commas or spaces
v0.2.362025-03-10
  • Import MCP servers from Claude Desktop with claude mcp add-from-claude-desktop
  • Add MCP servers as JSON strings with claude mcp add-json <n> <json>
v0.2.342025-03-08/vimNEW /configNEW
  • Vim bindings for text input - enable with /vim or /config
v0.2.322025-03-05
  • Interactive MCP setup wizard: Run "claude mcp add" to add MCP servers with a step-by-step interface
  • Fix for some PersistentShell issues
v0.2.312025-03-05
  • Custom slash commands: Markdown files in .claude/commands/ directories now appear as custom slash commands to insert prompts into your conversation
  • MCP debug mode: Run with --mcp-debug flag to get more information about MCP server errors
v0.2.302025-03-04
  • Added ANSI color theme for better terminal compatibility
  • (Mac-only) API keys are now stored in macOS Keychain
v0.2.26/approved-toolsNEW
  • New /approved-tools command for managing tool permissions
  • Word-level diff display for improved code readability
  • Fuzzy matching for slash commands
v0.2.21/commands
  • Fuzzy matching for /commands