This page is larger than the 256 KiB this site keeps, so one side of the diff below stops where the stored text does.
from line 6
66
77Run `claude --version` to check your installed version.
88
9<Update label="2.1.257" description="September 1, 2026">
10 * Added Claude Fable 5.1 (`claude-fable-5-1`), now the default Fable model — 1M context, $10/$50 per Mtok with \$0.25/Mtok cache reads
11 * Added "Time format" (`timeFormat`) and `timeZone` settings: 12-hour, 24-hour, 24-hour UTC, or a strftime pattern for the turn-end clock and transcript-view timestamps
12 * Added a Containment Escape rule to auto mode so cloud metadata-credential fetches, egress evasion, and cross-tenant reach are no longer auto-approved unless your environment marks them expected
13 * Added `CLAUDE_CODE_SUBAGENT_MODEL_FORCE` to apply `CLAUDE_CODE_SUBAGENT_MODEL` (or the main model) to every subagent, ignoring per-spawn and agent-definition model overrides
14 * Added `s` in `/effort` to change effort for the current session only, matching `/model`
15 * Added a `/doctor` warning for stale sandbox mask files left by a killed session
16 * Added a one-time prompt in auto mode before the first file read outside the working directories, with the option to block such reads (`permissions.blockReadsOutsideWorkingDirectories`)
17 * Added support for a gateway-supplied `description` on discovered `/model` picker entries (`CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY`); entries without one still read "From gateway"
18 * Fixed settings in a `.claude/` folder created after startup not being picked up until restart
19 * Fixed sessions dispatched from an agent view opened with `←` always starting in the original session's permission mode, overriding the target directory's `defaultMode` and the agent's `permissionMode`
20 * Fixed `keybindings.json` rebinds of Ctrl+G being ignored in `claude agents`; its Ctrl+S / Ctrl+T are now rebindable via the new `Agents` context
21 * Fixed background sessions failing to start on macOS npm installs during a self-update, and on Windows when a stale daemon lock file pointed at a reused process id
22 * Fixed the working spinner stopping while a response streams behind a slash-command panel
23 * Fixed a background session's `state.json` `detail` repeating its own dispatch prompt after a scheduled wake-up
24 * Fixed `claude agents` keeping a background session you re-prompted buried in Completed after it finished again; Completed now orders by the latest finish
25 * Fixed `claude --bg` from a directory that was just deleted reporting "backgrounded" and leaving a crashed session row; it now prints the reason and exits 1
26 * Fixed Remote Control connecting mid-session re-sending the Bash tool definition, causing a prompt-cache miss
27 * Fixed a doubly-listed custom `Authorization` header overriding the configured credential on Bedrock, Mantle, Vertex, and WIF, and the Vertex setup wizard picking up a leftover Anthropic profile from `~/.config/anthropic`
28 * Fixed Claude apps gateway sending stray host `Authorization` or profile headers to Foundry, Vertex, and Bedrock, and Foundry Entra ID upstreams not starting when `ANTHROPIC_FOUNDRY_API_KEY` is set
29 * Fixed a leftover Anthropic API key or auth token being sent alongside your Foundry subscription key in API-key mode
30 * Fixed `/schedule` routines whose prompt was saved without a message role and then ran with nothing to do
31 * Fixed `claude agents` not saying that a background session is waiting for you to approve a message from another session, or who sent it
32 * Fixed a prompt stashed with Ctrl+S inside an opened background session being lost when the session went idle or was stopped and then reopened
33 * Fixed telemetry (OTEL) settings pushed through server-managed settings being ignored on warm starts, including desktop-app Code sessions
34 * Fixed a teammate permission request being answered twice when the leader's mailbox write was briefly locked
35 * Fixed a phantom duplicate slash-command row rendering below the in-flight turn while a command's auto-continued response streamed
36 * Fixed `policyHelper` `timeoutMs` and `refreshIntervalMs` values above the timer maximum (2147483647) causing failures or re-runs every millisecond; they are now clamped
37 * Fixed the token counter freezing or crawling after switching to another subagent's transcript, and made background subagents' and teammates' counters update live while a response streams
38 * Fixed sandbox network hosts written with a trailing dot (`example.com.`): a `deniedDomains` entry didn't block the host inside the sandbox, and "don't ask again" for such a host kept prompting
39 * Fixed dismissing the Remote Control consent prompt (Esc, or `n` at `claude remote-control`) counting as consent, so the next request connected without asking
40 * Fixed `/mcp` reconnect and enable still connecting a settings-file MCP server that a managed MCP allow/deny list or `strictPluginOnlyCustomization` loaded after startup should block
41 * Fixed `claude mcp remove` leaving a remote server's stored OAuth credentials behind when `strictPluginOnlyCustomization` locks MCP to plugin-only servers
42 * Fixed Remote Control (`claude remote-control`) sessions started from the Claude app ignoring the selected model and running on the machine's default instead
43 * Fixed `--disallowedTools` and session deny rules being dropped after the first settings reload when `allowManagedPermissionRulesOnly` is enabled
44 * Fixed `--resume` listing a backgrounded conversation twice and `--continue` reopening its stalled pre-background copy; `--continue` now also opens finished background sessions
45 * Fixed fullscreen mode not letting you click `!` shell command output to expand it
46 * Fixed background sessions left running an older Claude Code binary piling up across auto-updates instead of being retired
47 * Fixed `claude agents --json` briefly switching the terminal to raw mode and undoing another program's terminal settings on exit
48 * Fixed Proactive output style sessions busy-looping with filler messages and repeated log reads instead of idling while a background command or Monitor they started is still running
49 * Fixed subagents stopping when a response was cut off mid-stream by a computer sleep, dropped connection, or server error; they now automatically continue instead of ending with an incomplete response
50 * Fixed `←` doing nothing in the `/btw` panel inside a `claude agents` session: it now returns to the agents list (even mid-answer), and the panel comes back when you reopen the session
51 * Fixed sessions with an advisor model set missing the prompt cache on background requests (compaction, `/recap`, prompt suggestions) and re-sending the full conversation uncached each time
52 * Fixed `claude -p` exiting about 5 seconds after its final result while a Monitor the model armed was still running; it now waits for the watch to fire or time out
53 * Fixed a `permissions.ask` rule being skipped in auto mode when the matching command ran inside a compound command or subshell, letting it run without the confirmation prompt
54 * Fixed plugins being able to read files outside their own directory through a declared command, agent, skill, hooks or other component path that is a symlink; such paths are now refused with an error
55 * Fixed `/add-dir` rejecting a directory inside the current working directory; it now loads that directory's skills, commands, and agents like `--add-dir` does at startup
56 * Fixed the main agent not being told when you resume a subagent you had stopped from its transcript view
57 * Fixed a crash when pasting ANSI-colored text (e.g. a CI log) into dialogs like `/feedback`
58 * Fixed `claude mcp add/remove` hanging or exhausting memory when the project's `.mcp.json` is a FIFO or a device-file symlink; it now fails fast with an actionable message
59 * Fixed unbounded memory growth when non-JSONL data is piped into `claude -p --input-format stream-json`; it now fails fast with a clear error
60 * Fixed backgrounding a turn (`←` or Ctrl+B) while a subagent or other tool was running occasionally making the background session treat that tool as rejected instead of re-running it
61 * Fixed Bash `Read()`/`Edit()` deny rules not applying to `< file` redirects and reader commands like `tac` and `egrep`; a deny rule on any argument or redirect target now refuses the command
62 * Fixed resuming or messaging a subagent whose transcript had grown past 5 MB (for example after reading many images) failing with "No transcript found"
63 * Fixed worktree-isolated sessions refusing Bash loops, `$VAR` reads, `"$(…)"` and heredocs that never touch git as "too complex to verify that it stays inside the worktree"
64 * Fixed `/model` and `/effort` showing a prompt-cache warning after rewinding a conversation back to empty
65 * Fixed prompt-cache misses on every turn in long screenshot-heavy sessions once images exceeded the per-request size cap
66 * Fixed the Edit permission prompt's diff view rendering emoji and multi-code-point characters with incorrect widths
67 * Fixed WebSocket MCP server connection failures being logged as "\[object ErrorEvent]" instead of the underlying error
68 * Fixed background sessions failing to open with "Couldn't start the background service" while another Claude Code process was downloading an npm update; the start now waits for it
69 * Fixed background commands that detach from their shell (for example under `timeout` or `setsid`) surviving a task stop or Claude Code exit
70 * Fixed Claude not being told when you stop a background command from the tasks panel or a connected client
71 * Fixed stopping a background subagent leaving its monitors running
72 * Fixed sandboxed git commands in a linked worktree losing write access to the repository's common `.git` directory after `cd` into a subdirectory
73 * Fixed Bedrock and Bedrock Mantle requests going silent during long hidden-thinking phases on Opus 4.7 and later, which let idle timeouts cut the connection; the stream now carries progress events
74 * Fixed launching Claude Code after a Claude apps gateway expired or revoked your session: it now says the session ended and offers `/login` instead of reporting a network error
75 * Fixed cloud sessions losing git/GitHub credentials for the rest of the session when the session's network proxy failed to start at launch; it now retries in the background and recovers
76 * Fixed leftover `cc-daemon-*` folders in the system temp directory after an interrupted background daemon start; the `cleanupPeriodDays` retention sweep now removes them
77 * Fixed Bash permission checks auto-approving certain `[[ ]]` conditionals that zsh parses differently from bash; these commands now prompt for approval
78 * Fixed the managed-settings approval prompt showing the generic warning instead of its telemetry wording when the settings also turn detailed tracing or raw API body logging off, or trace export on
79 * Fixed agent-team teammates in tmux/iTerm2 panes sometimes staying open after acknowledging a shutdown request
80 * Fixed the keyless Console sign-in ("Sign in with your Console account") not applying your organization's server-managed settings, and `/status` not showing the Organization for that sign-in
81 * Improved rendering performance: less re-render work per turn in long conversations, streaming no longer slows down as the reply grows, and background-agent updates no longer re-render the whole screen
82 * Improved prompt input responsiveness by reducing per-keystroke rendering work
83 * Improved policy helper diagnostics — refresh failures now show in `/status`, declining the managed-settings dialog prints why Claude Code exited, and helper timeouts are reported as timeouts
84 * Improved `/code-review --comment` to post findings on GitLab merge requests via `glab mr note` instead of reporting the target as unsupported
85 * Improved notifications: an MCP elicitation or permission ask queued under another dialog now sends its idle desktop notification at the same delay as a visible ask
86 * Improved verbose/transcript output: async hook completion notices that arrive together now appear on one line instead of one line per hook
87 * Improved `claude self-hosted-runner --configure-git` to also enable git push negotiation, so the first push of a new branch from a stale clone uploads only the new commits instead of the whole tree
88 * Improved liveness reporting to SDK hosts while a response is held open by gateway keep-alives, so long waits under a raised `CLAUDE_STREAM_IDLE_TIMEOUT_MS` are not mistaken for a hung session
89 * Improved MCP connection and OAuth debug/error logs so credentials carried in a server's URL or request headers are redacted
90 * Improved `/fork` to keep the original conversation's prompt cache in the new background session: its worktree briefing now arrives as a message instead of a system-prompt change
91 * Improved emoji autocomplete to accept the remaining GitHub/Slack shortcode aliases (`:satisfied:`, `:telephone:`, `:collision:`, …)
92 * Changed `--effort` to lift a new model's default-effort hold for that session only rather than permanently; an effort picked on claude.ai for a Remote Control session now applies during the hold
93 * Changed a `policyHelper` in MDM or `managed-settings.json` shadowed at launch by cached server-managed settings to run (or exit) as soon as the fetch reports them removed, not at the next launch
94 * Changed `managedSourcesBehavior: "merge"` to take `sandbox.credentials.awsPairs` and `sandbox.ripgrep` whole from the highest managed source that sets them instead of combining the sources' values
95 * Changed gateway model discovery (`CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1`) to run even when `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` is set, since it only queries your gateway
96 * Changed `claude --resume <session-id> --bg` to continue that session under its own ID when nothing is running it, instead of silently starting a copy; a copy is now announced
97 * Changed `/btw` history browsing from `←`/`→` to `Shift+←`/`Shift+→` (or `[`/`]`), stepping through your recent side questions and back to the live answer
98 * Changed `defaultMode: "bypassPermissions"` in `.claude/settings.json` or `.claude/settings.local.json` to be ignored, like `"auto"`; set it in user or managed settings, or pass `--permission-mode`
99 * Changed `fable` and `best` in Claude apps gateway sessions to keep resolving to Fable 5 for now, since gateways not yet configured for Fable 5.1 reject it; pick Fable 5.1 in `/model` to use it
100 * Changed `--add-dir`, `/add-dir`, and `additionalDirectories` to refuse network paths (UNC shares, `/net/<host>` automounts) with a message before touching them; on Windows use a mapped drive letter
101 * Changed Claude apps gateway sign-in and token refresh requests to verify the gateway's pinned TLS certificate, as the managed settings fetch already does
102 * Changed Cowork and claude.ai cloud sessions: reading an artifact that isn't yours now always asks you first, even in auto mode
103 * Removed the Ctrl+E command explanation on Bash and PowerShell permission prompts
104 * \[VSCode] Added collapsible ACCOUNT & USAGE and SESSION MANAGER section headers to the session list panel, with the account email, the usage meter, and a View details link opening the usage dialog
105 * \[VSCode] Added a model pill to the input footer that shows the current model and opens the model picker, with an Effort row and a "More models" page
106 * \[VSCode] Added a collapse toggle to the Ungrouped section of the session list
107 * \[VSCode] Added output style selection to the command menu, including custom styles
108 * \[VSCode] Fixed third-party provider deployments (Bedrock, Vertex, and others) still showing claude.ai-only features (remote sessions, dictation, usage) and calling claude.ai with a leftover login
109 * \[VSCode] Fixed the session list panel's usage meter staying blank after the panel loads; it now shows the last known usage immediately
110 * \[VSCode] Fixed the "Enable Remote Control for all sessions" toggle so turning it on or off applies to sessions that are already open, not only to new ones
111 * \[VSCode] Fixed screen reader announcements: a control character before a fence or heading no longer drops visible lines from speech, and bold markers spanning a heading are no longer mis-paired
112 * \[VSCode] Changed the action menu to list slash commands in a filterable "Slash commands" dialog instead of inline; picking one runs it; the MCP servers dialog gained the same filter box
113 * \[VSCode] Changed "Delete session" to "Archive session": archived sessions move to a collapsible "Archived sessions" group at the bottom of the list with an Unarchive action
114</Update>
115
9116<Update label="2.1.252" description="August 31, 2026">
10117 * Fixed Bash commands failing with "task output swap refused (tasks dir moved or linked)" on some Macs
11118 * Fixed "always allow" not saving in a project that has no .claude/settings.local.json yet
from line 2022
19152022 * Fixed `/autofix-pr` reporting "cannot run on the default branch" when the session is inside a git worktree or another repository
19162023 * Fixed `--resume` picker not showing sessions from the current directory when it isn't a git worktree (e.g., jj workspaces)
19172024 * Fixed Windows hooks that invoke bash explicitly (e.g., `/usr/bin/bash script.sh`) failing with "command not found" or "cannot execute binary file"
1918 * Fixed OpenTelemetry log events (`user_prompt`, `api_request`, `tool_result`, `tool_decision`) being silently dropped when emitted before telemetry initialization completed
1919 * Fixed `claude mcp` list/get/add printing secrets to the terminal: `${VAR}` references are no longer expanded, and credential headers and URL secrets are redacted
1920 * Fixed Workflow agents spawned with `isolation: "worktree"` in background sessions being blocked from editing files inside their own worktree
1921 * Fixed background sessions dispatched from `claude agents` booting on a stale model from the daemon's environment instead of the model in `settings.json`
1922 * Fixed a potential crash when rendering Write tool results after resuming a session
1923 * Fixed completed subagents getting stuck showing as running when an error occurs while finalizing their result
1924 * Fixed `EADDRINUSE` errors from tools that bind Unix sockets under `$TMPDIR` when `CLAUDE_CODE_TMPDIR` is set to a deep path
1925 * Improved terminal rendering performance by stabilizing the layout engine's JIT compilation profile
1926 * Improved rendering performance for large file writes
1927 * \[VSCode] Added a tip suggesting disabling terminal GPU acceleration (or running `/terminal-setup`) to fix garbled glyphs
1928</Update>
1929
1930<Update label="2.1.160" description="June 2, 2026">
1931 * Added a prompt before writing to shell startup files (`.zshenv`, `.zlogin`, `.bash_login`) and `~/.config/git/`, which could otherwise lead to unintended command execution
1932 * `acceptEdits` mode now prompts before writing build-tool config files that grant code execution (`.npmrc`, `.yarnrc*`, `bunfig.toml`, `.bazelrc`, `.pre-commit-config.yaml`, `.devcontainer/`, etc.)
1933 * Edit no longer requires a separate Read after viewing a file with `grep`: single-file `grep`/`egrep`/`fgrep` commands now satisfy the read-before-edit check
1934 * Fixed copy-on-select not writing to the Windows clipboard on WSL — now uses PowerShell interop instead of OSC 52, which terminals like MobaXterm don't support
1935 * Fixed restoring a completed session from `claude agents` dropping chat history and re-running the original prompt
1936 * Fixed background sessions re-attached after overnight retire losing their conversation and re-running the original prompt
1937 * Fixed `claude --bg` occasionally failing with "socket missing" when the background daemon was cold-starting on a loaded machine
1938 * Fixed an issue on Windows where the directory a background session was started in could not be deleted after `claude rm` until the background daemon exited
1939 * Fixed background agents that resumed work being shown under Completed in the agents list
1940 * Fixed `claude agents` freezing for several seconds when returning to the session list due to the auto-updater re-checking on every exit
1941 * Fixed Esc, arrow keys, and typing becoming unresponsive on Windows when attached to a background session or in the agent view while the host is under heavy CPU load
1942 * Fixed background agents emitting terminal sync-output markers to terminals that don't support them (Apple Terminal, tmux), causing render artifacts when entering a running agent
1943 * Fixed mouse wheel scrolling prompt history instead of the transcript right after opening a session from the agents list
1944 * Fixed CJK IME composition appearing at the bottom-left of the screen instead of at the input caret in the `claude agents` view
1945 * Fixed valid `file:///C:/...` links being rewritten to a broken path on Windows terminals with hyperlink support
1946 * Fixed voice mode failing to connect when the project directory or branch name contains non-ASCII or special characters
1947 * Fixed the auto mode unavailability message on third-party providers (Bedrock/Vertex/Foundry) to point to the `CLAUDE_CODE_ENABLE_AUTO_MODE` opt-in instead of incorrectly blaming the model
1948 * Fixed `/effort ultracode` incorrectly blaming the dynamic workflows setting when the model cannot run xhigh; ultracode is no longer offered on models that do not support it
1949 * Fixed model-not-found errors suggesting `--model` when running via the SDK or other hosts where the CLI flag doesn't apply
1950 * Fixed Claude's past replies disappearing from scrollback when resuming a brief mode session with brief mode turned off
1951 * Fixed vim mode `p` pasting on the line below instead of at the cursor when the register was yanked with `v$`
1952 * Improved performance of opening recently-inactive background agent sessions in `claude agents`
1953 * Improved auto mode classifier latency by reducing reasoning on routine actions, lowering the chance of "could not evaluate this action" blocks
1954 * Improved background-session teardown (`claude rm`/`stop`, idle reap) to send SIGTERM to running shell subprocesses before SIGKILL, so cleanup handlers run
1955 * Removed `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE`; the environment variable is now a no-op
1956 * Removed the JetBrains plugin install suggestion from startup
1957 * Renamed the dynamic-workflow trigger keyword from `workflow` to `ultracode`. The word "workflow" no longer triggers a run; asking for one in your own words still works. The trigger keyword is highlighted in violet in the prompt input
1958</Update>
1959
1960<Update label="2.1.159" description="May 31, 2026">
1961 * Internal infrastructure improvements (no user-facing changes)
1962</Update>
1963
1964<Update label="2.1.158" description="May 30, 2026">
1965 * Auto mode is now available on Bedrock, Vertex, and Foundry for Opus 4.7 and Opus 4.8. Opt in by setting `CLAUDE_CODE_ENABLE_AUTO_MODE=1`
1966</Update>
1967
1968<Update label="2.1.157" description="May 29, 2026">
1969 * Plugins in `.claude/skills` directories are now automatically loaded, no marketplace required
1970 * Added `claude plugin init <name>` to scaffold a new plugin in `.claude/skills`
1971 * Added autocomplete for `/plugin` arguments: subcommands, installed plugin names, and plugins from known marketplaces
1972 * `claude agents`: the `agent` field in `settings.json` is now honored for dispatched sessions, with `--agent <name>` to override it
1973 * `EnterWorktree` can now switch between Claude-managed worktrees mid-session
1974 * `tool_decision` telemetry events now include `tool_parameters` (bash commands, MCP/skill names) when `OTEL_LOG_TOOL_DETAILS=1`
1975 * Worktrees managed by Claude are now left unlocked when the agent finishes, so `git worktree remove`/`prune` can clean them up
1976 * Fixed unprocessable images (zero-byte, corrupt) attached via paste, MCP, or dialog crashing the request instead of becoming a text placeholder
1977 * Fixed sandbox network permission prompts appearing in auto and bypass-permissions mode when using the desktop app, IDE extensions, or SDK
1978 * Fixed `claude agents` completed sessions not retiring when an idle subagent was still parked or had leaked a backgrounded shell
1979 * Fixed `claude agents` pressing Esc not cancelling a slow "opening…", leaving the list unresponsive
1980 * Fixed background agent worktrees under `.claude/worktrees/` being orphaned after the 30-day job retention sweep
1981 * Fixed background sessions re-attached after a sleep/wake not telling the model the correct date
1982 * Fixed copy-on-select in `claude agents` not reaching the system clipboard inside tmux with `set-clipboard on` (regression in 2.1.153)
1983 * Fixed `--resume` not reporting background subagents that were running when the previous Claude Code process exited
1984 * Fixed the `--resume` session picker leaving its contents on the terminal after exiting in fullscreen mode
1985 * Fixed `--worktree` and `--worktree --tmux` returning to the canonical repo root instead of the current linked worktree
1986 * Fixed the `/model` picker showing an incorrect "Newer version available" hint when the selected model is already the newest in its family; the pinned-model row now shows the model's description instead of its raw ID
1987 * Fixed literal markdown markers (backticks, asterisks) appearing in the in-progress message text in fullscreen mode
1988 * Fixed the terminal freezing after approving the managed-settings security dialog at startup
1989 * Fixed a rare duplicate line appearing in scrollback after the terminal UI redraws
1990 * Fixed right-click paste duplicating the clipboard in the VS Code, Cursor, and Windsurf integrated terminals
1991 * WSL: fixed image paste (`alt+v` keybinding), screenshot paste on Windows 11, and added support for dragging images from Windows Explorer
1992 * Improved performance of long and resumed conversations by eliminating redundant message-rendering recomputations
1993 * `/terminal-setup` now disables GPU acceleration in VS Code/Cursor/Windsurf integrated terminals to prevent garbled-text rendering
1994 * The Feature of the Week credit-claim status now appears as a notification in the status area instead of a line above the prompt
1995 * `claude agents`: slash-command autocomplete in the dispatch input now matches substrings
1996 * Removed the "bash commands will be sandboxed" startup banner — sandbox status still shows in `/status` and when a command is blocked
1997 * Removed the "/ide for …" startup hint toast
1998 * \[IDE] Fixed clicking Stop while a background subagent is running not actually stopping it
1999 * \[VSCode] Fixed the fast mode indicator not appearing on Opus 4.8
2000 * Pressing backspace right after a workflow trigger keyword now dismisses the workflow request (same as alt+w) instead of deleting a character
2001 * Added a "Workflow keyword trigger" setting in /config to stop the word "workflow" in a prompt from triggering a dynamic workflow
2002</Update>
2003
2004<Update label="2.1.156" description="May 29, 2026">
2005 * Fixed an issue when using Opus 4.8 where thinking blocks were modified, leading to API errors.
2006</Update>
2007
2008<Update label="2.1.154" description="May 28, 2026">
2009 * Opus 4.8 is here! Now defaults to high effort · /effort xhigh for your hardest tasks
2010 * Introducing dynamic workflows: ask Claude to create a workflow and it orchestrates work across tens to hundreds of agents in the background, so you can take on larger, more complex tasks. Run `/workflows` to view your runs
2011 * Fast mode on Opus 4.8 is now available at a fraction of its previous cost: 2x the standard rate for 2.5x the speed
2012 * The lean system prompt is now the default for all models except Haiku, Sonnet, and Opus 4.7 and earlier
2013 * Claude now reserves the multiple-choice question prompt for decisions it genuinely cannot make itself, instead of asking when it already has enough context to proceed
2014 * `/simplify` now runs a cleanup-only review (reuse, simplification, efficiency, altitude) and applies the fixes, instead of running the full `/code-review --fix` bug-hunting review
2015 * Renamed the `/effort` slider labels from "Speed"/"Intelligence" to "Faster"/"Smarter" for clarity
2016 * `claude agents`: type `! <command>` to run a shell command as a background session you can attach to and detach from. Also available as `claude --bg --exec '<command>'`
2017 * `claude agents`: `/logout` now signs you out instead of being sent to a background session
2018 * `←←` to open the agents view now works on Bedrock, Vertex, Foundry, and with telemetry disabled
2019 * Claude in Chrome: pick which connected browser to use via `/chrome` → "Select browser…", or in-chat when a browser action runs with multiple connected
2020 * Plugins can now declare `defaultEnabled: false` in `plugin.json` or a marketplace entry; enable them with `/plugin` or `claude plugin enable`. Dependencies of enabled plugins are still enabled automatically
2021 * The `/plugin` Discover tab now pins plugins whose relevance signals match the current directory with a "suggested for this directory" annotation
2022 * Streaming tool execution is now always enabled, including when telemetry is disabled or on Bedrock/Vertex/Foundry (previously behind a feature flag)
2023 * Stdio MCP server subprocesses now receive `CLAUDE_CODE_SESSION_ID` and `CLAUDECODE=1` in their environment
2024 * `claude mcp list`/`get` now show unapproved `.mcp.json` servers as `⏸ Pending approval` instead of auto-approving and connecting when output is piped
2025 * `/remote-control` autocomplete now shows "Disconnect Remote Control" when Remote Control is already active
2026 * Added Claude Opus 4.8 support and 4.7 → 4.8 migration guidance to the `/claude-api` skill
2027 * Deprecated `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` (will be removed on 06/01). To use fast mode on Opus 4.6, switch with `/model claude-opus-4-6[1m]` and then `/fast on`
2028 * Improved the auto-mode classifier's detection of data exfiltration, particularly bulk transfers of repository contents
2029 * Fixed `rm -rf $HOME` not being blocked as a dangerous path when `HOME` has a trailing slash
2030 * Fixed `$TMPDIR` resolving to different directories in sandboxed vs unsandboxed Bash commands within the same session
2031 * Fixed unreadable highlighted-row text in `claude agents` when the Claude Code theme doesn't match the terminal background
2032 * Fixed background-agent completion notifications triggering premature "out of context" behavior on some 1M-context models
2033 * Fixed background-session classifier losing the user's goal when a scheduled `/command` fires
2034 * Fixed pinned background sessions respawning every minute after a Claude Code update, causing repeated agent-start notifications and process churn at idle
2035 * Fixed background sessions stuck at "blocked", "running", or "working" not retiring after the idle grace period
2036 * Fixed subagents in background sessions bypassing the worktree-isolation guard and writing to the shared checkout
2037 * Fixed orphaned `claude --bg-pty-host` processes spinning at 100% CPU after the daemon exits on macOS
2038 * Fixed number key shortcuts not working for options shown below the divider in option dialogs
2039 * Fixed `worktree.baseRef: "head"` resolving to the main checkout's HEAD instead of the current worktree's HEAD when spawning subagents or calling `EnterWorktree` from inside a linked worktree
2040 * Fixed a stray leading space on wrapped lines when the previous line ended exactly at the terminal width
2041 * Fixed intermittent terminal rendering corruption in VS Code by capping the number of distinct colors the thinking spinner produces
2042 * Fixed plan file names including `[Image #N]` / `[Pasted text #N]` placeholders when a plan-mode prompt starts with pasted images or text
2043 * Fixed a phantom expand/click affordance on colored tool output: short ANSI-colored lines that fit on screen no longer show a "ctrl+o to expand" hint
2044 * Fixed a single invalid `allowedMcpServers`/`deniedMcpServers` entry in managed settings discarding all managed-settings policy; the bad entry is now dropped with a `claude doctor` warning
2045 * Fixed API 400 errors on models that don't support the effort parameter when `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` is set
2046 * Windows: Fixed update failures caused by `claude.exe` being in use showing a generic error instead of telling you to close other sessions and retry
2047 * Removed the stale "& for background" hint from the shortcuts help panel
2048 * \[VSCode] Auto mode no longer requires the bypass-permissions setting to appear in the mode picker, and a dismissable notice on the new-session screen explains auto mode the first time it's active
2049 * Fixed the task panel below the prompt showing a stray unselectable "main" row when only a workflow is running
2050 * Fixed /mcp tools list and tool detail rendering when MCP servers have long or multi-line tool names or long descriptions
2051 * Fixed the /model picker not showing fast mode pricing on the Default option for API (pay-as-you-go) users when fast mode is on
2052 * Fixed auto mode incorrectly blocking actions with "could not evaluate this action" when the safety classifier ran out of output tokens while reasoning
2053</Update>
2054
2055<Update label="2.1.153" description="May 28, 2026">
2056 * Added `skipLfs` option to `github`/`git` plugin marketplace sources to skip Git LFS downloads during clone and update
2057 * Claude Code now shows a one-time notice when your npm global install can't auto-update; `/doctor` lists the fixes
2058 * Status line commands now receive `COLUMNS` and `LINES` environment variables so scripts can size output to the terminal width
2059 * `claude agents`: autocomplete in the dispatch input now suggests native slash commands and bundled skills, not just project skills
2060 * `claude agents`: PR column now shows `PR #N` for a single PR or `N PRs` for multiple
2061 * `claude doctor` now shows the result of your last update attempt
2062 * Combined the separate "needs authentication" startup notifications for MCP servers and connectors into a single message
2063 * macOS: background agents now appear as "Claude Code" in Privacy & Security and keep their permission grants across upgrades
2064 * Fixed stateful MCP servers without the optional GET SSE stream rec
2025 * Fixed OpenTelemetry log events (`user_prompt`, `api_request`, `tool_result`, `tool_decision`) being silently dropped when emitted before telemetry initializat