The whole hunk
from line 6, old and new numbered
/
lines
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.271" description="September 14, 2026">
10 * Added fast mode in Claude Code Remote sessions (cloud and self-hosted runners): the host's fast-mode setting or `/fast` typed in the session applies where your organization allows it
11 * Added mouse support to the `/config` panel in fullscreen mode: the wheel scrolls the settings list, a click on a setting's value changes it, and the row under the pointer is highlighted
12 * Added `claude self-hosted-runner --drain-marker-file <path>`: when that file exists at a SIGTERM drain, the runner reports its exit to the server as a host drain (telemetry only)
13 * Added per-command `allowed_domains` to Bash, PowerShell and Monitor in auto mode with sandboxing: the hosts a command needs are reviewed with it and opened for it alone; other hosts are refused
14 * Added `omitClaudeMd` to agent frontmatter and `--agents` JSON, letting custom and plugin subagents run without user, project and local CLAUDE.md files; managed policy files still load
15 * Added `--accept-command <sha256>` to `claude plugin install` and `claude plugin update` to accept exactly the command a previous `--json` run displayed, instead of `-y`
16 * Added support for a `multiplier` above 1, up to 10, in the `modelPricing` managed setting and the Claude apps gateway `pricing` block, for marked-up internal chargeback rates
17 * Added a spinner tip pointing Bedrock, Vertex AI, Foundry and LLM gateway users to the Claude desktop app; the claude.ai desktop app tip now suggests `/desktop`, which offers to download the app
18 * Fixed a cached organization policy being reused after switching accounts, organizations, or API keys, and the policy not refreshing until the hourly check when the credential changes mid-session
19 * Fixed the tool and command lists not updating when the organization policy finishes loading after startup or changes mid-session
20 * Fixed an enterprise `managed-mcp.json` that can't be read or parsed being ignored: it now keeps exclusive MCP control (user, project and plugin servers don't load) and warns at startup
21 * Fixed org policy being fetched through, and rejected by, third-party local proxies set via `ANTHROPIC_UNIX_SOCKET`; they are again treated like other custom gateways, including for Remote Control
22 * Fixed cloud sessions rejecting every subagent tool call ("updatedInput … failed schema validation") when a workflow or agent approval was applied after the session's worker restarted
23 * Fixed `/fast off` answering "Fast mode unavailable" instead of turning fast mode off when the organization has fast mode disabled
24 * Fixed sessions started with `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK` re-sending fast requests every turn after the API rejected fast mode; the rejection now stands and its reason is shown
25 * Fixed fast mode under `CLAUDE_CODE_RETRY_WATCHDOG` failing the turn on a usage-credits limit, or retrying an overload at fast speed, instead of falling back to standard speed
26 * Fixed Bash permission checks missing the file that `fmt`, `column` and similar commands read when it follows an option the checker doesn't recognize
27 * Fixed Bash permission checks skipping files a wildcard expands to when the wildcard sits in a command's pattern or option value (for example `grep -v dir/* file`)
28 * Fixed Bash permission checks so that shell variable declaration flags cannot misrepresent the command being run
29 * Fixed Bash commands with two directory changes, a subshell, or a `cd`+`git` chain skipping the prompt under `permissions.blockReadsOutsideWorkingDirectories` in bypass and auto mode
30 * Fixed a stale `.git/config.lock` breaking `git checkout -b`, `git push -u` and `git config` for the rest of a session after a sandboxed command failed to start (Linux)
31 * Fixed settings file changes made outside the session going unnoticed on macOS machines whose system file-event service is saturated; the watcher now falls back to polling
32 * Fixed resumed `claude -p` sessions whose tools all come from MCP servers failing with "At least one tool must have defer\_loading=false"
33 * Fixed turns failing with "API returned an empty or malformed response" when an LLM gateway returns the non-streaming reply as `text/plain`
34 * Fixed sustained high CPU usage and repeated tool-list requests when an MCP server sends `list_changed` notifications in a tight loop
35 * Fixed MCP OAuth mishandling client registrations: denying consent forced a new one, one for another redirect URI was reused, and a concurrent write could delete a valid one or keep a mismatched one
36 * Fixed tool search returning no match when Claude selects an MCP tool by its bare name instead of its full `mcp__server__tool` name
37 * Fixed Ctrl+O cancelling pending MCP server reconnects, and `/mcp` sent from Remote Control failing while the transcript view is open
38 * Fixed the Claude in Chrome prompt telling the model to load tools through ToolSearch when ToolSearch is unavailable
39 * Fixed cross-session messages held by the receiving session's permission-mode policy leaving no trace: headless senders now get a delivery notice, and `SendMessage` results no longer imply it was read
40 * Fixed Claude starting a second copy of a background command (such as a watch task or dev server) that was still running after the conversation was compacted
41 * Fixed `/model` warning about losing the conversation cache when switching back to the model the conversation actually ran on
42 * Fixed `/reload-skills` reporting a skill count that disagreed with the slash menu after `/cd`
43 * Fixed `/resume` and `/continue` showing only 1-2 sessions in fullscreen mode on short terminals
44 * Fixed `/resume` and `/teleport` keeping the previous conversation's file-read tracking, so Claude could edit files the resumed conversation had never read
45 * Fixed `--resume` dropping the 1M context window (`[1m]`) when the resumed session's model family differs from the configured default model
46 * Fixed artifacts attached with `/artifacts` disappearing from the session after `--resume`
47 * Fixed background sessions (`claude --bg`, `claude agents`) not watching the artifacts they publish for republishes made elsewhere
48 * Fixed custom agents, slash commands and output styles beyond the first not loading from a virtual drive that reports inode 0, such as an encrypted vault mounted as a Windows drive
49 * Fixed self-hosted runner sessions silently losing all host config (settings, skills, plugins, MCP servers) when the host config directory exceeds 64 MiB; added `--host-config-snapshot disk|memory`
50 * Fixed skills synced from claude.ai staying on disk indefinitely after signing out; copies not refreshed within `cleanupPeriodDays` now move to the recoverable trash at the next launch
51 * Fixed spinner tips suggesting commands that aren't available for your account type or are disabled in your session
52 * Fixed the `/add-dir` path input: the left and right arrow keys now move the cursor, and Enter adds only the typed path instead of also adding the highlighted completion
53 * Fixed text fields outside the main prompt moving a leading `!` to the end of what you typed (`!foo` came out as `foo!`)
54 * Fixed the interactive `/hooks` menu crashing when a hook matcher is named after an inherited object property such as `__proto__` or `constructor`
55 * Fixed a fullscreen rendering glitch where text kept a stale background color after the box around it lost its background
56 * Fixed Delete in st and Alt+arrow keys in rxvt-unicode not working in attached background sessions
57 * Fixed the terminal's replies to capability queries (`^[[?1;2c`) appearing at the shell prompt or in an editor when Claude Code exits, is suspended, or opens an editor right after starting
58 * Improved terminal rendering performance: large diffs and long transcripts render faster, with fewer slow frames
59 * Improved startup time slightly by skipping a redundant validation of built-in model data on every launch
60 * Improved hook feedback: while a SessionStart, UserPromptSubmit, PreToolUse or SessionEnd hook runs, the spinner says so with elapsed time, and Esc cancels a prompt waiting on a SessionStart hook
61 * Improved the spinner status during long thinking: it now reads "deep in thought" after 45s, and shows "picking the thought back up" while recovering from the output-token limit
62 * Improved dynamic workflows to pause when you hit your usage limit and continue automatically when it resets, instead of dropping the affected agents
63 * Improved Remote Control to leave fewer empty sessions on claude.ai when setup fails on a flaky network
64 * Improved the Claude in Chrome message in cloud sessions when the browser can't be reached: it now says the computer may be asleep before it suggests an install
65 * Improved `claude mcp serve`: a running tool call now sends a progress update every 30 seconds, so clients show it is still running and idle timeouts don't abort a long command that prints nothing
66 * Improved Foundry and Claude Platform on AWS sessions: an `alwaysLoad` MCP server that finishes connecting mid-conversation is usable on the next turn without a tool-search round trip
67 * Improved Markdown files published as artifacts: they now render as styled document pages (title header, document typography, syntax-highlighted code)
68 * Improved Artifact tool publish errors: a publish with no file now says to write the page to a file first, and an unsupported file type is reported before a missing favicon
69 * Improved the Artifact tool's error when a page declares a capability its contract version lacks: it now lists every supported capability and notes when a newer contract version has it
70 * Improved artifact watching: a session can now watch up to 10 published artifacts at once for republishes made elsewhere, up from 5
71 * Improved PDF @-mentions to say "page count unknown" instead of a page count guessed from the file size when pdfinfo cannot count the pages
72 * Improved `/mobile` to show a single QR code for claude.ai/mobile, which opens the right app store for your phone
73 * Changed auto mode so that a skill's or slash command's inline `!` shell commands follow default-mode permission rules instead of the classifier; a command no rule decides runs as a reviewed tool call
74 * Changed auto mode so a subagent reports back to its caller through a dedicated hand-back call that the safety classifier reviews, instead of its last message being reviewed after the fact
75 * Changed Monitor watches to always have a deadline (at most 30 minutes; 10 in single-prompt `-p` runs) and notify Claude to re-arm, replacing the no-timeout `persistent` option
76 * Changed the IDE selection indicator in the prompt to a `[⧉ …]` pill that wraps with the text instead of squeezing multi-line prompts; delete it with Backspace to leave the selection out
77 * Changed the default dynamic workflow size to small on Pro plans and lowered the medium size guideline from 15 to 10 agents
78 * Changed Claude apps gateway, Bedrock, Vertex AI, and Foundry sessions so that they no longer refresh a leftover claude.ai login that the session does not use
79 * Updated the bundled `claude-api` skill to enable `eager_input_streaming` on streaming custom tools, and to start deliverable-shaped Managed Agents work with `user.define_outcome`
80 * \[VSCode] Added an Attach Open File setting that, when turned off, stops the open file from being added to messages; selected text is still attached
81 * \[VSCode] Fixed the Hooks and Permission rules dialogs reporting a save that landed as failed, and the Hooks dialog going blank under a plugin-only policy lock or showing color codes in save errors
82 * \[VSCode] Fixed Hooks dialog saves: no duplicate hook on replace, a header name retyped in other capitals keeps its secret, and settings.local.json is gitignored before the save returns
83 * \[VSCode] Fixed session history showing only the current session when the workspace is on a Windows mapped network drive or SUBST drive
84 * \[VSCode] Fixed the session list's Active filter hiding open idle sessions when Open is also checked in the filter menu
85 * \[VSCode] Fixed a new chat switching back to the previous chat when the session list refreshed
86 * \[VSCode] Fixed open tabs and the side bar keeping the old config folder until a window reload after `CLAUDE_CONFIG_DIR` changed in the `environmentVariables` setting
87 * \[VSCode] Fixed console windows flashing on Windows when the extension runs background commands such as git, ripgrep, and the sign-in status check
88 * \[VSCode] Fixed the prompt cache clock's hover text appearing only after a delay, and the auto-compact icon showing the browser's own tooltip beside its popup
89 * \[VSCode] Improved the Hooks dialog: a save refused because of the settings file itself now opens a popup with an "Open settings file" button and the reason behind "Copy error"
90 * \[VSCode] Changed the on state of toggle switches from Claude orange to the editor theme's button color
91 * \[Claude Code on the web] Fixed a cloud session sometimes taking about ten minutes to respond after its process exited while the session still looked live; sending a message now restarts it right away
92 * \[Claude Code on the web] Changed the Routines page on claude.ai/code to a new layout with Yours and Templates tabs and two-column routine cards that show run status, and removed its calendar view
93 * \[Claude Code on the web] Added a Custom network access option to the Cloud environments editor in admin settings, with the same allowed-domains list the environment dialog on claude.ai/code offers
94 * \[Claude Code on the web] Improved the Cloud environments admin page: it shows the default environment for Claude Tag and Claude Code, with a link to change it, and marks the recommended kind to create
95 * \[Claude Tag] Fixed Claude in a channel where it stays active losing its working context about once an hour when the conversation is mostly in threads; thread activity now keeps it from being reset
96 * \[Claude Tag] Fixed a thread that asked Claude to watch a pull request no longer hearing about CI failures, comments and reviews after Claude was restarted in that thread
97 * \[Claude Tag] Fixed deleting the first message of a thread Claude had already replied in not ending Claude's work there; it now stops, as it did when a message with no replies was deleted
98 * \[Claude Tag] Fixed Claude holding back a post because of an earlier instruction addressed to a different bot or assistant; only instructions addressed to Claude bind it, and it asks when unsure
99 * \[Claude Tag] Fixed the reply-mode card Claude posts on joining a busy channel saying it "sees a lot of automated posts" when the channel is only chatty or large; the card now names the real reason
100 * \[Claude Tag] Improved the Environment picker in Claude Tag admin settings: options are labeled Anthropic-hosted or self-hosted, with links to edit that environment or create one
101 * \[Code Review] Fixed a pull request in a repository reviewed once per PR sometimes getting no review when a commit arrived while its review was waiting to start; it now reviews the requested commit
102 * \[Code Review] Fixed Code Review occasionally posting the same findings two or three times when GitHub reported an error for a review it had in fact created
103 * \[Code Review] Fixed follow-up reviews re-posting a security finding a person had already resolved when a later push moved the lines it was anchored to
104 * \[Code Review] Fixed reopening a finished /ultrareview cloud session in the Claude app starting the whole review over again unprompted
105 * Windows: Fixed PowerShell commands failing with "Exit code 1" and no output when the session's temp output path reaches 260 characters
106</Update>
107
9108<Update label="2.1.270" description="September 12, 2026">
10109 * Fixed read-only git commands in Bash unexpectedly asking for permission after a session had been running for a while (regression in 2.1.269)
11110</Update>
from line 1872
17731872 * Fixed `CLAUDE_CODE_MAX_OUTPUT_TOKENS` and similar env vars silently using the mantissa of scientific-notation values (`1e6` became `1`)
17741873 * Fixed very large markdown tables stalling rendering or using excessive memory; tables over 200 rows show the first 200 with a "… N more rows" notice
17751874 * Fixed the Edit tool failing on files modified after reading when the target text still matches uniquely
1776 * Fixed Read reporting empty files as "shorter than offset", Grep silently returning "No files found" for invalid regex patterns, Grep count mode under-reporting totals when paginated, and Glob crashing with an unclear error when the pattern, path, or working directory contained a null byte
1777 * Fixed `apiKeyHelper` script failures being hidden behind a generic 401 after \~10 silent retries; the script's own error is now shown within 3 attempts
1778 * Fixed Bedrock streaming requests failing with a misleading "Truncated event message received" when a gateway transforms the response — the error now names the content-type and points at the proxy
1779 * Fixed `/upgrade` showing a login flow instead of the upgrade URL when the browser fails to open
1780 * Fixed stream-json input killing the session on blank CRLF or whitespace-only lines from Windows-style SDK hosts
1781 * Fixed headless stream-json sessions hanging permanently when a `control_request` carried a non-string `set_model` payload; the CLI now answers with an error response
1782 * Fixed repeated "No completion record was found" notices on session resume — orphaned background tasks now collapse into a single summary
1783 * Fixed Remote Control clients attaching to a terminal-hosted session not seeing background agents and workflow progress until a task started or stopped
1784 * Fixed the Agent tool launching with no tools when a subagent's `tools` list resolves to nothing — it now returns a clear error naming the unrecognized entries
1785 * Fixed `/usage` showing stale cached bars over fresher data, and `/mcp` not reclassifying placeholder servers after config edits
1786 * Fixed "Change directory" in SDK hosts (e.g. Claude Desktop) failing with "A turn is in progress" on idle sessions that have a running background task
1787 * Fixed the workflow save dialog showing `~/.claude/workflows/` instead of the `CLAUDE_CONFIG_DIR` location for user-scope saves
1788 * Fixed `/release-notes` adding the viewed notes to the model's context — "Show all" previously injected the entire changelog into every subsequent request
1789 * Fixed a memory leak in the agent view where pasted images were retained for the screen's lifetime after sending peek replies
1790 * Fixed SDK sessions losing agents defined via the initialize request when a plugin refresh ran before the client attached
1791 * Fixed several memory leaks in long sessions: MCP stdio server stderr accumulating up to 64 MB per server, LSP documents staying open indefinitely (now LRU with 50-doc cap), async hook output retained after backgrounding, and unbounded growth in headless/SDK sessions from large tool-result payloads
1792 * Fixed a memory blowup when reading files with extremely long single lines using offset/limit — the read now returns a clean error instead of loading the whole line
1793 * Fixed multi-second per-turn slowdowns in sessions with many permission deny/ask rules — rule matchers are now compiled once and cached
1794 * Improved input responsiveness while agent task lists update — task updates no longer re-render the entire UI
1795 * Reduced per-tool-call CPU overhead in print/SDK sessions with many MCP tools by caching tool-pool assembly (up to 7x faster tool rounds at high tool counts)
1796 * Reduced memory usage by bounding the file edit read cache to 16 MB instead of pinning up to 1,000 full files
1797 * Reduced session transcript size (up to 79x in edit-heavy sessions) and bounded checkpoint disk usage by pruning superseded file-history backups
1798 * Reduced memory usage when resuming sessions with background agents or forks spawned from large conversations
1799 * Completed background agents now stay listed in `/tasks` until cleanup instead of vanishing the moment they finish
1800 * Attaching to a stopped background agent now shows its transcript immediately while the session warms up, instead of a blank "Session is starting" screen
1801 * Background sessions: an older daemon no longer silently restarts workers spawned by a newer version onto the older binary
1802 * Agent view: Ctrl+X now deletes renamed-branch worktrees, never destroys unpushed commits, keeps the session row when a worktree is kept, and reused worktree names reset to the current base
1803 * Catastrophic removals (e.g. `rm -rf ~`) in commands containing `$(…)`/backticks/`<(…)` now prompt in `--dangerously-skip-permissions` and auto mode, matching the plain form
1804 * `/install-github-app` and the `/mcp` settings menu no longer open in background sessions
1805 * MCP servers configured with an empty URL now show as "not configured" in `/mcp` instead of a config error
1806 * `/usage` now shows your last-known usage bars with an "as of" note when the usage endpoint is rate-limited, instead of an error screen
1807 * Fixed Bedrock auth failing with "Session token not found or invalid" for AWS SSO profiles whose sso\_region differs from the Bedrock region (2.1.207 regression)
1808</Update>
1809
1810<Update label="2.1.207" description="July 11, 2026">
1811 * Auto mode is now available without `CLAUDE_CODE_ENABLE_AUTO_MODE` opt-in on Bedrock, Vertex AI, and Foundry; disable via `disableAutoMode` in settings
1812 * Fixed the terminal freezing and keystrokes lagging while streaming responses containing very long lists, tables, paragraphs, or code blocks
1813 * Fixed remote managed settings from a non-interactive run (`claude -p`, the SDK) being permanently recorded as consented without ever showing the security consent dialog
1814 * Fixed spurious prompt-injection warnings triggered by benign system-generated conversation updates
1815 * Fixed the auto-updater overwriting a custom launcher script or symlink at `~/.local/bin/claude` on every release; `/doctor` now reports an externally managed launcher
1816 * Fixed compound commands with `cd` prompting for permission when the only output redirect was to `/dev/null`
1817 * Fixed the transcript jumping above the start of the answer when a response finishes streaming
1818 * Fixed `extensions.worktreeConfig` being left in the repo's `.git/config` (breaking go-git tools like `tea`) after the last `worktree.sparsePaths` worktree was removed
1819 * Fixed malformed bracket patterns in rules globs, skill paths, `.ignore`, and `.worktreeinclude` breaking file reads, file suggestions, and worktree creation
1820 * Fixed a crash loop in agent teams where a malformed teammate mailbox message caused repeated errors every second until the mailbox file was manually deleted
1821 * Fixed background sessions auto-named by accepting a plan not showing that name on their agent-view row
1822 * Fixed background sessions that entered a git worktree resuming blank after a cold reopen from the agent list
1823 * Fixed Remote Control task status updates being lost when the connection recovered from a network interruption or credential refresh
1824 * Fixed Remote Control sessions hosted by the desktop app not showing background agent and workflow progress on mobile and web
1825 * Fixed Deep research runs labeling every Fetch-phase agent "unknown" — chips now show the source hostname
1826 * Fixed Bedrock repeatedly requesting fresh AWS SSO credentials from IAM Identity Center on every API request
1827 * Improved agent view: pasting the same text again now expands the collapsed `[Pasted text #N]` placeholder instead of adding a second one
1828 * Improved agent view: blocked session peeks now lead with the question and show a worded staleness clock (`waiting 3m`) instead of the same timestamp twice
1829 * Changed Bedrock, Vertex, and Claude Platform on AWS to default to Claude Opus 4.8
1830 * Changed auto mode to no longer read `autoMode` from `.claude/settings.local.json` (repo-resident); use `~/.claude/settings.json` instead
1831 * Fixed an indefinite hang on Windows when AWS credential resolution stalls (e.g. a stuck `credential_process`): the 60-second stall guard now fires instead of waiting forever.
1832 * Plugin hooks/monitors/MCP headersHelper: `${user_config.*}` in shell-form commands is now rejected (shell-injection fix). Hooks: use exec form (`args` array) or `$CLAUDE_PLUGIN_OPTION_<KEY>`; monitors and headersHelper: read the value inside the script (config file or the server's `env` block).
1833 * Plugin option values (`pluginConfigs`) are no longer read from project-level `.claude/settings.json`; only user, `--settings`, and managed settings are honored
1834 * Fixed `/usage-credits` amount inputs silently stripping malformed values (e.g. a pasted timestamp) to digits; malformed amounts are now rejected with an error, and amounts over \$1,000 require a typed confirmation
1835</Update>
1836
1837<Update label="2.1.206" description="July 9, 2026">
1838 * Added directory path suggestions to `/cd`, matching `/add-dir` behavior
1839 * Added a `/doctor` check that proposes trimming checked-in `CLAUDE.md` files by cutting content Claude could derive from the codebase
1840 * `/commit-push-pr` now auto-allows `git push` to the repo's configured push remote (`remote.pushDefault`, or the sole remote when only one is configured) in addition to `origin`
1841 * Gateway: `/login` now supports Anthropic-operated public gateway endpoints
1842 * `EnterWorktree` now asks for confirmation before entering a git worktree outside the project's `.claude/worktrees/` directory
1843 * Background agents now upgrade to a new version in the background right after a Claude Code update, instead of paying a slow stale-session upgrade when you attach
1844 * Fixed an expired login failing every model with a misleading "There's an issue with the selected model" error instead of prompting to run `/login`
1845 * Fixed `claude --resume` and `--continue` not responding to keyboard input on startup
1846 * Fixed MCP servers configured via `--mcp-config` or `.mcp.json` ignoring a per-server `request_timeout_ms`, which caused long-running MCP tool calls to time out at the 60s default in fresh sessions
1847 * Fixed `CLAUDE_CODE_EXTRA_BODY` being silently ignored by `claude agents` / `--bg` background workers; the shell-exported override now follows the dispatching session
1848 * Fixed OAuth MCP servers requiring manual re-authentication after a single failed token refresh
1849 * Fixed `--permission-prompt-tool` pointing at an MCP server crashing with "MCP tool not found" on cold start before the server finishes connecting
1850 * Fixed `/model` picker rows printing a price for a different model than the row named, and stopped quoting first-party list prices on providers that don't bill them
1851 * Fixed server-provided model rows being misplaced in the `/model` picker when an entitlement or allowlist restriction drops the row they were positioned against
1852 * Fixed desktop sessions getting stuck showing "running" after a slash command was sent mid-turn
1853 * Fixed keyboard input being ignored in the agents view when a setup prompt appeared before a bare `claude --resume` on Windows
1854 * Fixed `claude rm` leaving the removed job in the daemon roster, causing the row to reappear in `claude agents`
1855 * Fixed `/remote-control` showing "Unknown command" when logged out — it now explains how to sign in
1856 * Fixed left arrow not stepping back out of a phase or agent in the workflow detail view
1857 * Fixed `/status` listing the same broken-install warning twice
1858 * Fixed false "disused plugin" tips and skewed disuse telemetry for LSP plugins
1859 * Fixed `/doctor`'s update check to compare Homebrew installs against their cask's channel instead of the settings channel
1860 * Fixed the fullscreen jump-to-bottom pill suggesting Ctrl+End on macOS, not showing rebound chords, and wrapping over the transcript
1861 * Bedrock: fixed a multi-minute startup hang when using an `awsCredentialExport` helper on networks with restricted egress
1862 * Improved `/code-review` findings quality on claude-opus-4-8 across all effort levels
1863 * Improved agents view: status column now uses full terminal width instead of truncating at 64 characters
1864 * Changed agents view: Ctrl+X now permanently removes a completed session, and sessions no longer render twice; deleted background jobs stay deleted
1865</Update>
1866
1867<Update label="2.1.205" description="July 8, 2026">
1868 * Added an auto mode rule that blocks tampering with session transcript files
1869 * Fixed `--json-schema` silently producing unstructured output when the schema was invalid, and schemas using the `format` keyword being rejected
1870 * Fixed a message sent while Claude was working being silently lost when the turn ended at the `--max-turns` limit
1871 * Fixed Windows worktree removal deleting files outside the worktree when an NTFS junction or directory symlink existed inside it
1872 * Fixed background agents staying shown as "failed" or "completed" in the agent list after being resumed with `SendMessage`
1873 * Fixed background jobs flipping from "needs input" back to "working" in the agent list when the agent's turn contained no readable text
1874 * Fixed `claude attach` erroring when a background agent was mid-upgrade restart instead of waiting for it to come back
1875 * Fixed session-to-PR linking missing a PR created in a Bash call whose output exceeded the 30K inline limit
1876 * Fixed `claude mcp add-from-claude-desktop` getting stuck when a server name contains unsupported characters; invalid names are now reported and remaining servers still import
1877 * Fixed a plugin LSP server that fails to initialize preventing a valid LSP server from another plugin handling the same file extension
1878 * Fixed a Windows crash when the directory Claude was launched from is deleted, locked, or unmounted while a command is running
1879 * Fixed a crash when a file watcher was closed while a directory scan was still in flight
1880 * Fixed project verify skills being rewritten on every session instead of only when a documented command changed
1881 * Fixed the agent view rendering one line too high and clipping its header when the job list slightly overflowed the screen
1882 * Fixed background tasks in the web and mobile Remote Control panels showing stale "Running" status by forwarding full task state on every membership change
1883 * Improved auto mode to ask before running `rm -rf` on a variable it can't resolve from context
1884 * Auto-update binary downloads now stream to disk instead of buffering in memory, cutting the updater's peak memory usage by roughly 400 MB
1885 * Background task notifications now explicitly state that no human input has occurred, preventing fabricated in-transcript approvals from being acted on
1886 * Improved agent view: sessions that edit, merge, comment on, or push to an existing PR now link it in `claude agents`
1887 * Improved agent view: rows now show a colored state word and a classifier-written headline instead of raw tool call text, and the peek opens with full status including the exact ask for blocked sessions
1888 * `/doctor` is now a full setup checkup that can diagnose and fix issues; `/checkup` is its alias
1889 * Reserved the "Claude Browser" MCP server name (alongside "Claude Preview") ahead of the Claude Desktop pane rename; user-configured MCP servers can no longer register under either name
1890 * Fixed Cowork VM-mode local-agent sessions failing to start with "Not logged in · Please run /login" on CLI 2.1.203+
1891</Update>
1892
1893<Update label="2.1.204" description="July 8, 2026">
1894 * Fixed hook events not streaming during SessionStart hooks in headless sessions, which could cause remote workers to be idle-reaped mid-hook
1895</Update>
1896
1897<Update label="2.1.203" description="July 7, 2026">
1898 * Added a warning when your login is about to expire, so you can re-authenticate before background sessions are interrupted
1899 * Added a grey ⏸ badge to the footer when in manual permission mode, making the active mode always visible
1900 * Added the session's additional working directories to MCP `roots/list`, with `notifications/roots/list_changed` sent when the set changes
1901 * Fixed opening or switching background agent sessions on macOS stalling for 15–20 seconds due to a false low-memory detection (regression in 2.1.196)
1902 * Fixed background sessions
1875 * Fixed Read reporting empty files as "shorter than offset", Grep silently returning "No files found" for invalid r