Compare commits

...

4 Commits

Author SHA1 Message Date
GitHub Actions
feabcc3c2b chore: Update CHANGELOG.md and feed.xml 2026-06-05 05:45:00 +00:00
GitHub Actions
d1e174252d chore: Update CHANGELOG.md and feed.xml 2026-06-04 21:52:46 +00:00
GitHub Actions
b67fa4fa2c chore: Update CHANGELOG.md and feed.xml 2026-06-03 21:31:29 +00:00
GitHub Actions
625c04c335 chore: Update CHANGELOG.md and feed.xml 2026-06-02 21:58:16 +00:00
2 changed files with 183 additions and 150 deletions

View File

@@ -1,5 +1,90 @@
# Changelog
## 2.1.165
- Bug fixes and reliability improvements
## 2.1.163
- Added `requiredMinimumVersion` and `requiredMaximumVersion` managed settings — Claude Code refuses to start if its version is outside the allowed range and directs the user to an approved version
- Added `/plugin list` command to list installed plugins, with `--enabled`/`--disabled` filters
- Added a "c to copy" shortcut to `/btw` that copies the raw markdown answer to the clipboard, preserving formatting when pasted elsewhere
- Hooks: Stop and SubagentStop hooks can now return `hookSpecificOutput.additionalContext` to give Claude feedback and keep the turn going without being labeled a hook error
- Skills: added `\$` escape syntax to include a literal `$` before a digit in command bodies
- stdio MCP servers now receive the same `CLAUDE_CODE_SESSION_ID` as hooks/Bash on `--resume`
- Fixed `claude -p` hanging forever after its final result when a backgrounded command never exits — background shells are now stopped ~5s after the result once stdin closes
- Fixed `claude -p` failing with "ANTHROPIC_API_KEY required" on Bedrock/Vertex/Foundry when `CI=true` and no Anthropic API key is set
- Fixed bash commands failing under bazel and EDR-protected Go workflows: `$TMPDIR` was overridden to `/tmp/claude-{uid}` for all commands instead of only sandboxed ones (regression in 2.1.154)
- Fixed Bash commands failing on Windows with "EEXIST: file already exists" on the session-env directory when it has the read-only attribute or is inside OneDrive
- Fixed org-managed permission rules not applying for the entire session when the managed settings fetch completed during startup on a fresh config directory
- Fixed background sessions in `claude agents` losing their running background tasks when reattached after a Claude Code update
- Fixed terminal misalignment and a multi-second hang when exiting the agent view by pressing Esc
- Fixed clicking Stop on a background-task chip in the desktop app not clearing the chip when the underlying process was already gone
- Fixed keyboard input becoming permanently unresponsive after a paste operation whose end marker is dropped by the terminal
- Fixed hook `if: "Bash(...)"` conditions firing on every Bash command containing `$()` or `$VAR`; the pattern now matches against commands inside subshells and backticks too
- Fixed deny rules on home-directory paths (e.g. `Read(~/Desktop/**)`) not blocking Bash commands that reference the path via `$HOME`
- Fixed a stray "(no content)" line left in the transcript after closing panel dialogs like /mcp and /plugins
- Background agent sessions now update to a new Claude Code version in the background, so opening a session after an update no longer waits on a cold restart
- Clearer descriptions for built-in commands and skills in the / menu
- The subscription-switch suggestion now shows in the startup announcement slot instead of a toast
- `claude agents` dispatching from the state-grouped view now starts the session in the directory the agent view was opened from
## 2.1.162
- `claude agents --json` now includes `waitingFor` showing what a waiting session is blocked on (e.g. permission prompt)
- `--tools`: explicitly listing Grep/Glob now provides the dedicated search tools on native builds with embedded search (previously these names were silently ignored)
- `/effort` now confirms when your chosen level will persist as the default for new sessions
- Clicking a slash command in the autocomplete menu now fills it into your prompt instead of running it immediately; press Enter to run
- Remote Control now shows as a persistent footer pill (with a link to the session) instead of a startup message
- Renamed Windsurf to Devin Desktop in the `/ide` menu, `/terminal-setup`, and `/scroll-speed`, following the editor's rebrand
- Fixed a silent startup hang when the config directory is read-only or unwritable — Claude Code now starts with in-memory config and surfaces startup errors instead of showing a blank screen
- Fixed WebFetch permission rules not being applied to built-in preapproved domains; explicit `WebFetch(domain:...)` deny/ask/allow rules now take precedence over the preapproved-host auto-allow
- Fixed Windows permission rules never matching when spelled with backslashes (`~\`, `\\server\share`) or case-variant paths, and Read deny rules not hiding files from Glob/Grep results
- Fixed an interrupt (Esc) sent at the very start of a turn being silently dropped in stream-json/SDK sessions, leaving the turn running with no "Interrupted" feedback
- Fixed API 400 `no low surrogate in string` errors for classifier side-queries and MCP server descriptions containing emoji near a truncation boundary
- Fixed MCP per-server `timeout` config values below 1000 ms being floored to a 1-second watchdog that aborted every tool call; sub-1000 ms values are now ignored (falling back to `MCP_TOOL_TIMEOUT` or default), and `claude mcp get` annotates them accordingly
- Fixed the LSP tool's `workspaceSymbol` operation returning no results; it now accepts a `query` parameter and passes it to the language server
- Fixed `claude agents` cutting live status text (tool args, replies, prompts, exec output) at 60120 columns on wide terminals; the status detail now uses the full terminal width
- Fixed `claude agents` truncating long session names at 40 columns; the name column now grows with terminal width
- Fixed `claude agents` attach occasionally bouncing straight back to the session list on the first try after a background-service restart
- Fixed `claude agents` Ctrl+V image paste doing nothing in the dispatch input and the session reply box; pasting with no image now shows a hint
- Fixed backgrounding a session with ← silently losing the conversation when the background service cannot start; the session stays in the list as a failed row you can wake with Enter
- Fixed replies from the agents view that fail to send being lost; they are now queued for delivery on the next session start
- Fixed cross-session messaging (`SendMessage`) silently breaking when `CLAUDE_CODE_TMPDIR` or `$TMPDIR` points at a deep directory
- Fixed opening a running background session from `claude agents` stalling for 5 seconds before attaching
- Quieter startup: notices group by severity, and session info and announcements share a single line per launch
- Startup warnings rewritten to be shorter and clearer, each with a concrete fix
- Launch-prompt warnings (deep link/pre-filled prompt) now stay pinned below the input until you act instead of scrolling away
- Failed turns now show a compact warning line instead of a multi-line red error block
- Improved background service startup and `claude update` verification to wait out endpoint-security scanning of new binaries instead of failing after 5 seconds
- Background dispatch spawn failures now report the error class name when no errno is available
- Removed the "Claude in Chrome enabled" and "marketplace installed" startup messages; model auto-updates and the team-onboarding tip now show as quiet notices under the logo
## 2.1.161
- `OTEL_RESOURCE_ATTRIBUTES` values are now included as labels on metric datapoints, so you can slice usage metrics by custom dimensions like team or repo
- `claude agents` rows now show `done/total` before the detail when work is fanned out; peek shows the longest-running item
- `/mcp` now collapses claude.ai connectors you've never signed in to behind a "Show unused connectors" row
- Parallel tool calls: a failed Bash command no longer cancels other calls in the same batch — each tool returns its own result independently
- Fullscreen mode: clipboard now uses `wl-copy`/`xclip`/`xsel` on Linux when available, copies to both the clipboard and PRIMARY selection for middle-click paste, and the "hold {key} for native selection" hint now shows the correct key per terminal
- Fixed the `/effort` dialog, workflow animations, and prompt keyword shimmer not honoring the "Reduce motion" setting
- Fixed `forceLoginOrgUUID`/`forceLoginMethod` managed-settings policies blocking third-party provider sessions (Bedrock, Vertex, Foundry, Mantle) alongside the org pin (regression in 2.1.146)
- Fixed background subagent output corrupting `claude -p` stdout when using `--output-format text` or `json`
- Fixed `/usage-credits` starting a re-login for Team and Enterprise admins instead of pointing to the organization's usage settings page
- Fixed `/autofix-pr` reporting "cannot run on the default branch" when the session is inside a git worktree or another repository
- Fixed `--resume` picker not showing sessions from the current directory when it isn't a git worktree (e.g., jj workspaces)
- Fixed Windows hooks that invoke bash explicitly (e.g., `/usr/bin/bash script.sh`) failing with "command not found" or "cannot execute binary file"
- Fixed OpenTelemetry log events (`user_prompt`, `api_request`, `tool_result`, `tool_decision`) being silently dropped when emitted before telemetry initialization completed
- 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
- Fixed Workflow agents spawned with `isolation: "worktree"` in background sessions being blocked from editing files inside their own worktree
- Fixed background sessions dispatched from `claude agents` booting on a stale model from the daemon's environment instead of the model in `settings.json`
- Fixed a potential crash when rendering Write tool results after resuming a session
- Fixed completed subagents getting stuck showing as running when an error occurs while finalizing their result
- Fixed `EADDRINUSE` errors from tools that bind Unix sockets under `$TMPDIR` when `CLAUDE_CODE_TMPDIR` is set to a deep path
- Improved terminal rendering performance by stabilizing the layout engine's JIT compilation profile
- Improved rendering performance for large file writes
- [VSCode] Added a tip suggesting disabling terminal GPU acceleration (or running `/terminal-setup`) to fix garbled glyphs
## 2.1.160
- Added a prompt before writing to shell startup files (`.zshenv`, `.zlogin`, `.bash_login`) and `~/.config/git/`, which could otherwise lead to unintended command execution

248
feed.xml
View File

@@ -6,7 +6,104 @@
<author><name>Anthropic</name></author>
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md"/>
<link rel="self" type="application/atom+xml" href="https://raw.githubusercontent.com/anthropics/claude-code/main/feed.xml"/>
<updated>2026-06-02T02:10:17Z</updated>
<updated>2026-06-05T05:44:59Z</updated>
<entry>
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.165</id>
<title>Claude Code v2.1.165</title>
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.165"/>
<updated>2026-06-05T05:44:59Z</updated>
<content type="html">&lt;p&gt;• Bug fixes and reliability improvements&lt;/p&gt;</content>
</entry>
<entry>
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.163</id>
<title>Claude Code v2.1.163</title>
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.163"/>
<updated>2026-06-04T21:52:45Z</updated>
<content type="html">&lt;p&gt;• Added requiredMinimumVersion and requiredMaximumVersion managed settings — Claude Code refuses to start if its version is outside the allowed range and directs the user to an approved version&lt;/p&gt;
&lt;p&gt;• Added /plugin list command to list installed plugins, with --enabled/--disabled filters&lt;/p&gt;
&lt;p&gt;• Added a "c to copy" shortcut to /btw that copies the raw markdown answer to the clipboard, preserving formatting when pasted elsewhere&lt;/p&gt;
&lt;p&gt;• Hooks: Stop and SubagentStop hooks can now return hookSpecificOutput.additionalContext to give Claude feedback and keep the turn going without being labeled a hook error&lt;/p&gt;
&lt;p&gt;• Skills: added \$ escape syntax to include a literal $ before a digit in command bodies&lt;/p&gt;
&lt;p&gt;• stdio MCP servers now receive the same CLAUDE_CODE_SESSION_ID as hooks/Bash on --resume&lt;/p&gt;
&lt;p&gt;• Fixed claude -p hanging forever after its final result when a backgrounded command never exits — background shells are now stopped ~5s after the result once stdin closes&lt;/p&gt;
&lt;p&gt;• Fixed claude -p failing with "ANTHROPIC_API_KEY required" on Bedrock/Vertex/Foundry when CI=true and no Anthropic API key is set&lt;/p&gt;
&lt;p&gt;• Fixed bash commands failing under bazel and EDR-protected Go workflows: $TMPDIR was overridden to /tmp/claude-{uid} for all commands instead of only sandboxed ones (regression in 2.1.154)&lt;/p&gt;
&lt;p&gt;• Fixed Bash commands failing on Windows with "EEXIST: file already exists" on the session-env directory when it has the read-only attribute or is inside OneDrive&lt;/p&gt;
&lt;p&gt;• Fixed org-managed permission rules not applying for the entire session when the managed settings fetch completed during startup on a fresh config directory&lt;/p&gt;
&lt;p&gt;• Fixed background sessions in claude agents losing their running background tasks when reattached after a Claude Code update&lt;/p&gt;
&lt;p&gt;• Fixed terminal misalignment and a multi-second hang when exiting the agent view by pressing Esc&lt;/p&gt;
&lt;p&gt;• Fixed clicking Stop on a background-task chip in the desktop app not clearing the chip when the underlying process was already gone&lt;/p&gt;
&lt;p&gt;• Fixed keyboard input becoming permanently unresponsive after a paste operation whose end marker is dropped by the terminal&lt;/p&gt;
&lt;p&gt;• Fixed hook if: "Bash(...)" conditions firing on every Bash command containing $() or $VAR; the pattern now matches against commands inside subshells and backticks too&lt;/p&gt;
&lt;p&gt;• Fixed deny rules on home-directory paths (e.g. Read(~/Desktop/**)) not blocking Bash commands that reference the path via $HOME&lt;/p&gt;
&lt;p&gt;• Fixed a stray "(no content)" line left in the transcript after closing panel dialogs like /mcp and /plugins&lt;/p&gt;
&lt;p&gt;• Background agent sessions now update to a new Claude Code version in the background, so opening a session after an update no longer waits on a cold restart&lt;/p&gt;
&lt;p&gt;• Clearer descriptions for built-in commands and skills in the / menu&lt;/p&gt;
&lt;p&gt;• The subscription-switch suggestion now shows in the startup announcement slot instead of a toast&lt;/p&gt;
&lt;p&gt;• claude agents dispatching from the state-grouped view now starts the session in the directory the agent view was opened from&lt;/p&gt;</content>
</entry>
<entry>
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.162</id>
<title>Claude Code v2.1.162</title>
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.162"/>
<updated>2026-06-03T21:31:28Z</updated>
<content type="html">&lt;p&gt;• claude agents --json now includes waitingFor showing what a waiting session is blocked on (e.g. permission prompt)&lt;/p&gt;
&lt;p&gt;• --tools: explicitly listing Grep/Glob now provides the dedicated search tools on native builds with embedded search (previously these names were silently ignored)&lt;/p&gt;
&lt;p&gt;• /effort now confirms when your chosen level will persist as the default for new sessions&lt;/p&gt;
&lt;p&gt;• Clicking a slash command in the autocomplete menu now fills it into your prompt instead of running it immediately; press Enter to run&lt;/p&gt;
&lt;p&gt;• Remote Control now shows as a persistent footer pill (with a link to the session) instead of a startup message&lt;/p&gt;
&lt;p&gt;• Renamed Windsurf to Devin Desktop in the /ide menu, /terminal-setup, and /scroll-speed, following the editor's rebrand&lt;/p&gt;
&lt;p&gt;• Fixed a silent startup hang when the config directory is read-only or unwritable — Claude Code now starts with in-memory config and surfaces startup errors instead of showing a blank screen&lt;/p&gt;
&lt;p&gt;• Fixed WebFetch permission rules not being applied to built-in preapproved domains; explicit WebFetch(domain:...) deny/ask/allow rules now take precedence over the preapproved-host auto-allow&lt;/p&gt;
&lt;p&gt;• Fixed Windows permission rules never matching when spelled with backslashes (~\, \\server\share) or case-variant paths, and Read deny rules not hiding files from Glob/Grep results&lt;/p&gt;
&lt;p&gt;• Fixed an interrupt (Esc) sent at the very start of a turn being silently dropped in stream-json/SDK sessions, leaving the turn running with no "Interrupted" feedback&lt;/p&gt;
&lt;p&gt;• Fixed API 400 no low surrogate in string errors for classifier side-queries and MCP server descriptions containing emoji near a truncation boundary&lt;/p&gt;
&lt;p&gt;• Fixed MCP per-server timeout config values below 1000 ms being floored to a 1-second watchdog that aborted every tool call; sub-1000 ms values are now ignored (falling back to MCP_TOOL_TIMEOUT or default), and claude mcp get annotates them accordingly&lt;/p&gt;
&lt;p&gt;• Fixed the LSP tool's workspaceSymbol operation returning no results; it now accepts a query parameter and passes it to the language server&lt;/p&gt;
&lt;p&gt;• Fixed claude agents cutting live status text (tool args, replies, prompts, exec output) at 60120 columns on wide terminals; the status detail now uses the full terminal width&lt;/p&gt;
&lt;p&gt;• Fixed claude agents truncating long session names at 40 columns; the name column now grows with terminal width&lt;/p&gt;
&lt;p&gt;• Fixed claude agents attach occasionally bouncing straight back to the session list on the first try after a background-service restart&lt;/p&gt;
&lt;p&gt;• Fixed claude agents Ctrl+V image paste doing nothing in the dispatch input and the session reply box; pasting with no image now shows a hint&lt;/p&gt;
&lt;p&gt;• Fixed backgrounding a session with ← silently losing the conversation when the background service cannot start; the session stays in the list as a failed row you can wake with Enter&lt;/p&gt;
&lt;p&gt;• Fixed replies from the agents view that fail to send being lost; they are now queued for delivery on the next session start&lt;/p&gt;
&lt;p&gt;• Fixed cross-session messaging (SendMessage) silently breaking when CLAUDE_CODE_TMPDIR or $TMPDIR points at a deep directory&lt;/p&gt;
&lt;p&gt;• Fixed opening a running background session from claude agents stalling for 5 seconds before attaching&lt;/p&gt;
&lt;p&gt;• Quieter startup: notices group by severity, and session info and announcements share a single line per launch&lt;/p&gt;
&lt;p&gt;• Startup warnings rewritten to be shorter and clearer, each with a concrete fix&lt;/p&gt;
&lt;p&gt;• Launch-prompt warnings (deep link/pre-filled prompt) now stay pinned below the input until you act instead of scrolling away&lt;/p&gt;
&lt;p&gt;• Failed turns now show a compact warning line instead of a multi-line red error block&lt;/p&gt;
&lt;p&gt;• Improved background service startup and claude update verification to wait out endpoint-security scanning of new binaries instead of failing after 5 seconds&lt;/p&gt;
&lt;p&gt;• Background dispatch spawn failures now report the error class name when no errno is available&lt;/p&gt;
&lt;p&gt;• Removed the "Claude in Chrome enabled" and "marketplace installed" startup messages; model auto-updates and the team-onboarding tip now show as quiet notices under the logo&lt;/p&gt;</content>
</entry>
<entry>
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.161</id>
<title>Claude Code v2.1.161</title>
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.161"/>
<updated>2026-06-02T21:58:16Z</updated>
<content type="html">&lt;p&gt;• OTEL_RESOURCE_ATTRIBUTES values are now included as labels on metric datapoints, so you can slice usage metrics by custom dimensions like team or repo&lt;/p&gt;
&lt;p&gt;• claude agents rows now show done/total before the detail when work is fanned out; peek shows the longest-running item&lt;/p&gt;
&lt;p&gt;• /mcp now collapses claude.ai connectors you've never signed in to behind a "Show unused connectors" row&lt;/p&gt;
&lt;p&gt;• Parallel tool calls: a failed Bash command no longer cancels other calls in the same batch — each tool returns its own result independently&lt;/p&gt;
&lt;p&gt;• Fullscreen mode: clipboard now uses wl-copy/xclip/xsel on Linux when available, copies to both the clipboard and PRIMARY selection for middle-click paste, and the "hold {key} for native selection" hint now shows the correct key per terminal&lt;/p&gt;
&lt;p&gt;• Fixed the /effort dialog, workflow animations, and prompt keyword shimmer not honoring the "Reduce motion" setting&lt;/p&gt;
&lt;p&gt;• Fixed forceLoginOrgUUID/forceLoginMethod managed-settings policies blocking third-party provider sessions (Bedrock, Vertex, Foundry, Mantle) alongside the org pin (regression in 2.1.146)&lt;/p&gt;
&lt;p&gt;• Fixed background subagent output corrupting claude -p stdout when using --output-format text or json&lt;/p&gt;
&lt;p&gt;• Fixed /usage-credits starting a re-login for Team and Enterprise admins instead of pointing to the organization's usage settings page&lt;/p&gt;
&lt;p&gt;• Fixed /autofix-pr reporting "cannot run on the default branch" when the session is inside a git worktree or another repository&lt;/p&gt;
&lt;p&gt;• Fixed --resume picker not showing sessions from the current directory when it isn't a git worktree (e.g., jj workspaces)&lt;/p&gt;
&lt;p&gt;• Fixed Windows hooks that invoke bash explicitly (e.g., /usr/bin/bash script.sh) failing with "command not found" or "cannot execute binary file"&lt;/p&gt;
&lt;p&gt;• Fixed OpenTelemetry log events (user_prompt, api_request, tool_result, tool_decision) being silently dropped when emitted before telemetry initialization completed&lt;/p&gt;
&lt;p&gt;• 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&lt;/p&gt;
&lt;p&gt;• Fixed Workflow agents spawned with isolation: "worktree" in background sessions being blocked from editing files inside their own worktree&lt;/p&gt;
&lt;p&gt;• Fixed background sessions dispatched from claude agents booting on a stale model from the daemon's environment instead of the model in settings.json&lt;/p&gt;
&lt;p&gt;• Fixed a potential crash when rendering Write tool results after resuming a session&lt;/p&gt;
&lt;p&gt;• Fixed completed subagents getting stuck showing as running when an error occurs while finalizing their result&lt;/p&gt;
&lt;p&gt;• Fixed EADDRINUSE errors from tools that bind Unix sockets under $TMPDIR when CLAUDE_CODE_TMPDIR is set to a deep path&lt;/p&gt;
&lt;p&gt;• Improved terminal rendering performance by stabilizing the layout engine's JIT compilation profile&lt;/p&gt;
&lt;p&gt;• Improved rendering performance for large file writes&lt;/p&gt;
&lt;p&gt;• [VSCode] Added a tip suggesting disabling terminal GPU acceleration (or running /terminal-setup) to fix garbled glyphs&lt;/p&gt;</content>
</entry>
<entry>
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.160</id>
<title>Claude Code v2.1.160</title>
@@ -467,153 +564,4 @@
&lt;p&gt;• Improved hook configuration error: configuring a prompt- or agent-type hook for SessionStart/Setup/SubagentStart now shows a clear "use a command-type hook instead" error&lt;/p&gt;
&lt;p&gt;• Removed stale /model claude-sonnet-4-20250514 suggestion from Usage Policy refusal messages&lt;/p&gt;</content>
</entry>
<entry>
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.141</id>
<title>Claude Code v2.1.141</title>
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.141"/>
<updated>2026-05-18T01:52:01Z</updated>
<content type="html">&lt;p&gt;• Added terminalSequence field to hook JSON output so hooks can emit desktop notifications, window titles, and bells without a controlling terminal&lt;/p&gt;
&lt;p&gt;• Added CLAUDE_CODE_PLUGIN_PREFER_HTTPS to clone GitHub plugin sources over HTTPS instead of SSH, for environments without a GitHub SSH key&lt;/p&gt;
&lt;p&gt;• 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&lt;/p&gt;
&lt;p&gt;• Added claude agents --cwd &amp;lt;path&amp;gt; to scope the session list to a directory&lt;/p&gt;
&lt;p&gt;• /feedback can now include recent sessions (last 24 hours or 7 days) for issues spanning more than the current session&lt;/p&gt;
&lt;p&gt;• Rewind menu: added "Summarize up to here" to compress earlier context while keeping recent turns intact&lt;/p&gt;
&lt;p&gt;• Auto mode permission dialog now explains when a permissions.ask rule caused the prompt&lt;/p&gt;
&lt;p&gt;• Restored the "view diff in your IDE" option on file-edit permission prompts when an IDE is connected&lt;/p&gt;
&lt;p&gt;• Background agents launched via /bg or ←← now preserve the current permission mode instead of reverting to default&lt;/p&gt;
&lt;p&gt;• claude agents: agents that finish work but leave a background shell running now move to Completed instead of staying under Working&lt;/p&gt;
&lt;p&gt;• Improved spinner feedback during long thinking periods — the spinner now warms to amber after 10 seconds to signal Claude is still working&lt;/p&gt;
&lt;p&gt;• Improved plugin menu navigation: →/Tab switch tabs, ↑ moves to the tab strip, and tab headers and search box are clickable in fullscreen mode&lt;/p&gt;
&lt;p&gt;• Fixed background side-queries sending an unavailable Haiku model ID on Bedrock/Vertex/Foundry/gateway when no ANTHROPIC_SMALL_FAST_MODEL override is set — now falls back to the main-loop model&lt;/p&gt;
&lt;p&gt;• 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&lt;/p&gt;
&lt;p&gt;• Fixed claude agents showing the agent-type list instead of the dashboard when launched through a wrapper that adds flags&lt;/p&gt;
&lt;p&gt;• Fixed claude agents opening a crashed session firing redundant dispatches when the working directory was deleted&lt;/p&gt;
&lt;p&gt;• Fixed background jobs on a custom ANTHROPIC_BASE_URL gateway not getting auto-named — the namer now uses the main model when no Haiku model is configured&lt;/p&gt;
&lt;p&gt;• Fixed /model in one session silently changing the autocompact threshold in other concurrent sessions&lt;/p&gt;
&lt;p&gt;• Fixed switching permission mode while a tool-permission prompt is open not auto-dismissing the prompt when the new setting permits the tool&lt;/p&gt;
&lt;p&gt;• Fixed pressing Enter while a permission/dialog prompt is open also submitting text in the input box&lt;/p&gt;
&lt;p&gt;• Fixed hooks receiving a non-existent transcript_path after EnterWorktree switches the working directory&lt;/p&gt;
&lt;p&gt;• Fixed markdown tables with cell wrapping falling back to the vertical key-value layout instead of rendering as a bordered grid (regression in 2.1.136)&lt;/p&gt;
&lt;p&gt;• Fixed cancelled prompts being removed from Up-arrow history when auto-restored into the input box, avoiding duplicate entries&lt;/p&gt;
&lt;p&gt;• Fixed prompts cancelled with Ctrl+C/Esc before any response being dropped from Up-arrow history&lt;/p&gt;
&lt;p&gt;• Fixed Ctrl+C not interrupting a running turn while in vim INSERT/VISUAL mode&lt;/p&gt;
&lt;p&gt;• Fixed alternative chat:submit keybindings (e.g. meta+enter, ctrl+enter) not working when enter is rebound to chat:newline&lt;/p&gt;
&lt;p&gt;• Fixed prompt suggestions being silently disabled when an output style was configured&lt;/p&gt;
&lt;p&gt;• Fixed spinnerVerbs setting not being honored in turn-completion messages&lt;/p&gt;
&lt;p&gt;• Fixed AskUserQuestion popup hiding the last line of preceding chat content&lt;/p&gt;
&lt;p&gt;• Fixed Web Search status showing "Did 0 searches" when searches returned errors&lt;/p&gt;
&lt;p&gt;• Fixed multi-line statusline output dropping or corrupting rows when any line exceeds terminal width&lt;/p&gt;
&lt;p&gt;• Fixed light-ansi theme using invisible white for diff context lines on light backgrounds — now uses black&lt;/p&gt;
&lt;p&gt;• Fixed error overlay dumping minified bundle source that hid the original error message&lt;/p&gt;
&lt;p&gt;• Fixed pressing Enter after typing a feedback survey rating digit submitting it as a chat message instead of the rating&lt;/p&gt;
&lt;p&gt;• Fixed pressing x on a selected subagent in the agent panel typing into the prompt instead of stopping the agent&lt;/p&gt;
&lt;p&gt;• Fixed session title being derived from plugin monitor notifications before the user's first prompt&lt;/p&gt;
&lt;p&gt;• Fixed "Allowed by PermissionRequest hook" repeating once per tool call under a collapsed read/search group&lt;/p&gt;
&lt;p&gt;• Fixed /tui silently dropping running background shells and subagents — now refuses and asks to wait for them to finish&lt;/p&gt;
&lt;p&gt;• Fixed welcome banner showing "API Usage Billing" on Bedrock, Vertex, Foundry, and other third-party providers — now shows the provider name&lt;/p&gt;
&lt;p&gt;• Fixed /mcp server list not keeping the focused server visible in short terminals in fullscreen mode&lt;/p&gt;
&lt;p&gt;• Fixed redaction in /feedback bundles producing invalid JSON for quoted values like session IDs&lt;/p&gt;
&lt;p&gt;• Fixed desktop and third-party provider sessions incorrectly inheriting apiKeyHelper/ANTHROPIC_AUTH_TOKEN from host managed-settings&lt;/p&gt;
&lt;p&gt;• Fixed early analytics events being silently dropped when fired before logger initialization&lt;/p&gt;
&lt;p&gt;• Fixed claude plugin install failing for plugins whose marketplace ref no longer exists upstream when a sha is also pinned&lt;/p&gt;
&lt;p&gt;• Fixed plugin details pane showing 0 MCP servers for plugins that declare them via .mcp.json&lt;/p&gt;
&lt;p&gt;• Fixed plugin MCP servers with unset config variables showing a generic connection failure instead of a "config issue" message with a fix-it hint; malformed .mcp.json entries no longer drop other MCP servers&lt;/p&gt;
&lt;p&gt;• Fixed MCP server configs using POSIX shell parameter expansions (e.g. ${var%pattern}) being incorrectly flagged as missing environment variables&lt;/p&gt;
&lt;p&gt;• Fixed MCP HTTP/SSE servers returning 403 on connect showing as "failed" instead of "needs auth"&lt;/p&gt;
&lt;p&gt;• Fixed remote MCP servers disconnecting unnecessarily when the optional server-events stream failed to reconnect — tool calls continue over POST&lt;/p&gt;
&lt;p&gt;• Fixed Remote Control MCP connectors all failing with 401 when the worker session token rotated mid-session&lt;/p&gt;
&lt;p&gt;• Fixed Remote Control automatically re-enrolling a trusted device when the server rejects a stale token, instead of looping through /login&lt;/p&gt;
&lt;p&gt;• Fixed a race where early OTel spans could be silently dropped in SDK/headless mode with beta tracing enabled&lt;/p&gt;
&lt;p&gt;• Fixed custom voice:pushToTalk keybindings and "space": null unbinds being silently ignored&lt;/p&gt;
&lt;p&gt;• Fixed Windows Alt+V image paste reporting "no image found" when the clipboard contains a screenshot&lt;/p&gt;
&lt;p&gt;• Fixed SDK "Claude Code native binary not found" on Linux when both glibc and musl platform packages are installed&lt;/p&gt;
&lt;p&gt;• Bedrock: awsCredentialExport now always runs when configured instead of being skipped when ambient AWS credentials resolve, fixing auth for cross-account access&lt;/p&gt;
&lt;p&gt;• [VSCode] Fixed in-chat mic showing no feedback when the microphone produced only silence — now shows "No audio detected"&lt;/p&gt;
&lt;p&gt;• [VSCode] Voice mode: the WSL error now suggests installing sox libsox-fmt-pulse for WSLg users&lt;/p&gt;
&lt;p&gt;• claude agents: launching a session no longer fails when the pre-warmed background worker is unhealthy — now falls back to a fresh launch&lt;/p&gt;
&lt;p&gt;• claude agents no longer shows empty placeholder sessions left over from backgrounding a fresh REPL, and shows onboarding text when entered via ← with no other agents&lt;/p&gt;
&lt;p&gt;• Empty idle background sessions left over from ← are now automatically retired by the daemon after 5 minutes&lt;/p&gt;</content>
</entry>
<entry>
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.140</id>
<title>Claude Code v2.1.140</title>
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.140"/>
<updated>2026-05-18T01:52:01Z</updated>
<content type="html">&lt;p&gt;• Improved Agent tool subagent_type matching to accept case- and separator-insensitive values (e.g. "Code Reviewer" resolves to code-reviewer)&lt;/p&gt;
&lt;p&gt;• Updated agent color palette&lt;/p&gt;
&lt;p&gt;• Fixed /goal silently hanging when disableAllHooks or allowManagedHooksOnly is set — now shows a clear message instead of an indicator that never resolves&lt;/p&gt;
&lt;p&gt;• Fixed a regression in settings hot-reload where symlinked settings files caused misattributed change events and spurious ConfigChange hooks&lt;/p&gt;
&lt;p&gt;• Fixed claude --bg failing with "connection dropped mid-request" when the background service was about to idle-exit&lt;/p&gt;
&lt;p&gt;• Fixed background service startup failing on machines with enterprise endpoint security by allowing more time&lt;/p&gt;
&lt;p&gt;• Fixed remote managed settings not retrying on 401 — now retries once with a force-refreshed token&lt;/p&gt;
&lt;p&gt;• Fixed managed extraKnownMarketplaces auto-update policy not being persisted to known_marketplaces.json&lt;/p&gt;
&lt;p&gt;• Fixed /loop scheduling redundant wakeups to poll for background tasks that already notify on completion&lt;/p&gt;
&lt;p&gt;• Fixed a recurring event-loop stall on Windows when a missing executable (e.g. gh) triggered synchronous where.exe re-spawns on every check&lt;/p&gt;
&lt;p&gt;• Fixed Read tool calls failing validation when offset is passed as a whitespace-padded or +-prefixed string&lt;/p&gt;
&lt;p&gt;• Fixed native terminal cursor not staying at the input caret when the terminal loses focus&lt;/p&gt;
&lt;p&gt;• 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.&lt;/p&gt;</content>
</entry>
<entry>
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.139</id>
<title>Claude Code v2.1.139</title>
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.139"/>
<updated>2026-05-18T01:52:01Z</updated>
<content type="html">&lt;p&gt;• 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&lt;/p&gt;
&lt;p&gt;• 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&lt;/p&gt;
&lt;p&gt;• Added /scroll-speed command to tune mouse wheel scroll speed with a live preview&lt;/p&gt;
&lt;p&gt;• Added claude plugin details &amp;lt;name&amp;gt; to show a plugin's component inventory and projected per-session token cost&lt;/p&gt;
&lt;p&gt;• Added transcript view navigation: ? for keyboard shortcuts, {/} to jump between user prompts, v to toggle shortcut panel&lt;/p&gt;
&lt;p&gt;• Added hook args: string[] field (exec form) that spawns the command directly without a shell, so path placeholders never need quoting&lt;/p&gt;
&lt;p&gt;• Added hook continueOnBlock config option for PostToolUse — set to true to feed the hook's rejection reason back to Claude and continue the turn&lt;/p&gt;
&lt;p&gt;• MCP stdio servers now receive CLAUDE_PROJECT_DIR in their environment, matching hooks. Plugin configs can reference ${CLAUDE_PROJECT_DIR} in commands&lt;/p&gt;
&lt;p&gt;• Compaction prompt now asks the model to preserve sensitive user instructions&lt;/p&gt;
&lt;p&gt;• /mcp Reconnect now picks up .mcp.json edits without a restart, and shows the HTTP status and URL when reconnecting fails&lt;/p&gt;
&lt;p&gt;• /context all per-skill token estimates now account for the model's tokenizer and show rounded values&lt;/p&gt;
&lt;p&gt;• claude plugin install &amp;lt;name&amp;gt;@&amp;lt;marketplace&amp;gt; now auto-refreshes the marketplace and retries before reporting a plugin as not found&lt;/p&gt;
&lt;p&gt;• /plugin installed-plugin details now show hook event names and MCP server names cleanly&lt;/p&gt;
&lt;p&gt;• /context now shows the providing plugin's name for plugin-sourced skills&lt;/p&gt;
&lt;p&gt;• Remote MCP server reconnect retry on transient failures is now enabled for all users&lt;/p&gt;
&lt;p&gt;• API requests from subagents now carry x-claude-code-agent-id / x-claude-code-parent-agent-id headers, and claude_code.llm_request OTEL spans include agent_id / parent_agent_id attributes&lt;/p&gt;
&lt;p&gt;• 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&lt;/p&gt;
&lt;p&gt;• Fixed a deadlock where expired credentials and the forceRemoteSettingsRefresh policy setting blocked claude auth login/logout/status with no way to recover&lt;/p&gt;
&lt;p&gt;• Fixed autoAllowBashIfSandboxed not auto-approving commands with shell expansions like $VAR and $(cmd)&lt;/p&gt;
&lt;p&gt;• Fixed a bug where a hook writing to the terminal could corrupt an on-screen interactive prompt; hooks now run without terminal access&lt;/p&gt;
&lt;p&gt;• Fixed unbounded memory growth when an HTTP/SSE MCP server streams non-protocol data — response bodies now capped at 16 MB per SSE frame&lt;/p&gt;
&lt;p&gt;• Fixed Skill(name *) permission rules — the wildcard form now works as a prefix match, matching Bash(ls *) behavior&lt;/p&gt;
&lt;p&gt;• Fixed settings hot-reload not detecting edits to symlinked ~/.claude/settings.json&lt;/p&gt;
&lt;p&gt;• Fixed plugin details failing to load when the marketplace key differs from the manifest name&lt;/p&gt;
&lt;p&gt;• Fixed /model picker "Default" row not reflecting ANTHROPIC_DEFAULT_OPUS_MODEL/ANTHROPIC_DEFAULT_SONNET_MODEL overrides&lt;/p&gt;
&lt;p&gt;• Fixed spurious "stream idle timeout" 5 minutes after a response completed, caused by the watchdog timer not being cleared on stream cancellation&lt;/p&gt;
&lt;p&gt;• Fixed silent exit 1 when 10+ MCP servers are configured and the cache directory is unwritable — the error message now includes the underlying cause&lt;/p&gt;
&lt;p&gt;• Fixed a typing cursor blinking on tab names, list pointers, and select rows in dialogs&lt;/p&gt;
&lt;p&gt;• Fixed transcript view letter shortcuts not working after mouse click&lt;/p&gt;
&lt;p&gt;• Fixed Bash-mode up-arrow history repeating the first entry and clobbering the in-progress draft&lt;/p&gt;
&lt;p&gt;• Fixed pasting or dropping multiple images only inserting the last one&lt;/p&gt;
&lt;p&gt;• Fixed hyperlinks using unreadable dark navy on dark themes — they now adapt to the active theme&lt;/p&gt;
&lt;p&gt;• Fixed model picker showing a redundant "Current model" row for third-party users whose model is set to the opus alias&lt;/p&gt;
&lt;p&gt;• Fixed legacy Opus picker entry on PAYG 3P providers resolving to the same model as the default entry&lt;/p&gt;
&lt;p&gt;• Fixed mouse wheel scrolling speed in Cursor and VS Code 1.921.104; the trackpad now scrolls at a steady rate and the mouse wheel keeps ~3 lines per notch&lt;/p&gt;
&lt;p&gt;• Fixed scroll behavior in Windows Terminal and VS Code when attached to background sessions&lt;/p&gt;
&lt;p&gt;• Fixed MCP resources from disconnected servers lingering in @server: autocomplete&lt;/p&gt;
&lt;p&gt;• Fixed two-file diff snippets over-reporting the number of truncated lines by one&lt;/p&gt;
&lt;p&gt;• Fixed Grep results not relativizing Windows drive-letter paths and count mode reporting wrong totals for single-file paths&lt;/p&gt;
&lt;p&gt;• Fixed border-embedded text overflowing on CJK/emoji due to visual cell width miscalculation&lt;/p&gt;
&lt;p&gt;• Fixed fuzzy-match highlighting splitting emoji and astral-plane characters mid-pair&lt;/p&gt;
&lt;p&gt;• Fixed skill argument names containing regex metacharacters breaking argument substitution&lt;/p&gt;
&lt;p&gt;• Fixed ProgressBar rendering a full block for an almost-full fractional cell&lt;/p&gt;
&lt;p&gt;• Fixed task polling and fs.watch being resurrected when the last subscriber leaves while a fetch is in flight&lt;/p&gt;
&lt;p&gt;• Fixed plugin dependency resolution leaving a stale count when the manifest name differs from the source identifier&lt;/p&gt;
&lt;p&gt;• Fixed Insights Time-of-Day chart skewing when a session has an unparseable timestamp&lt;/p&gt;
&lt;p&gt;• Fixed keybindings using only the cmd/super/win modifier being flagged as unparseable&lt;/p&gt;
&lt;p&gt;• Fixed claude_code.active_time.total OpenTelemetry metric not being emitted in --print mode&lt;/p&gt;
&lt;p&gt;• Fixed claude plugin update not preserving cross-plugin symlinks inside a marketplace&lt;/p&gt;
&lt;p&gt;• [VSCode] Press Cmd/Ctrl+Shift+T to reopen the most recently closed session tab, configurable via claudeCode.enableReopenClosedSessionShortcut&lt;/p&gt;</content>
</entry>
<entry>
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.138</id>
<title>Claude Code v2.1.138</title>
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.138"/>
<updated>2026-05-18T01:52:01Z</updated>
<content type="html">&lt;p&gt;• Internal fixes&lt;/p&gt;</content>
</entry>
</feed>