Skip to content

Claude Code 2.1.265

50changes
  • Point --plugin-dir at a folder of plugins that hot-reloads as children are added or removed.
  • Archive inactive VS Code sessions automatically after a configurable period.
  • See slash-command matches as a list while typing, with plugin skills found by their bare name.
  • Artifact reads of another author's page now treat it as untrusted content instead of following embedded instructions.
  • Fix a plugin path bypassing the symlink containment check with a backslash.

New features

4
More changes (1) Fewer changes

Improvements

12
More changes (9) Fewer changes

Faster --worktree startup on large repos

Improved --worktree startup on large repositories: the new worktree is now checked out in parallel (git 2.32+)

Show tool call status in /workflows detail

Improved /workflows agent detail: tool calls are marked running, failed or done, the subagent's task list is shown when it has one, and Enter unfolds the listed calls with their inputs and results

▤ In the docs

Defer OAuth registration until MCP sign-in

Improved remote MCP servers that need sign-in: Claude Code no longer registers an OAuth client with them until you actually authenticate

Explain undecodable oversized image errors

Improved the error shown when an image over the size limits cannot be decoded: it now names the cause and how to fix it instead of only citing the limit

Clarify the .claude folder permission wording

Updated the .claude folder permission option to say what it actually allows: editing files in the project's .claude folder (or ~/.claude) for the session

Enforce gateway login for forceLoginGatewayUrl machines

Changed machines with forceLoginGatewayUrl in managed settings to be Claude apps gateway sessions from startup, like forceLoginMethod: "gateway"; a leftover claude.ai login or API key is not used

▤ In the docs

Use runtime image support, not native modules

Changed image processing to use the runtime's built-in image support; the CLI no longer extracts a native image module to the temp directory

Prefer marketplace metadata for plugin display

Changed plugin display metadata to prefer the marketplace entry over plugin.json on the Installed tab and claude plugin details, filling gaps from plugin.json

Export OpenTelemetry directly to named collectors

Changed Claude apps gateway sessions to export OpenTelemetry directly to a collector the gateway's managed settings name in OTEL_EXPORTER_OTLP_ENDPOINT, instead of through the gateway's relay; sessions without a named collector still use the relay

▤ In the docs

Bug fixes

34
More changes (29) Fewer changes

Preserve prompt cache for resumed subagents

Fixed resuming a foreground-spawned subagent changing its tool list and system prompt prefix, which broke prompt-cache reuse for that agent

Keep hook context in the prompt prefix

Fixed agent teammates and resumed subagents moving SubagentStart hook context and preloaded skills out of the prompt prefix on later turns, which broke prompt-cache reuse

Preserve interrupted tool calls on resume

Fixed resume after the previous process died while a tool was running: the last prompt is no longer rewritten, and the interrupted tool call is kept and marked interrupted

Fix /model opusplan[1m] rejection

Fixed /model opusplan[1m] being rejected with "Model not found"

Fix missing characters after sigils

Fixed syntax-highlighted code in permission prompts and messages sometimes omitting a character after a Ruby ?, Erlang $, or Perl $ sigil

Stop transcript jumping in fullscreen

Fixed the fullscreen transcript jumping by one row whenever the slash-command or @-file suggestion list opened or closed

Allow plugin folders starting with two dots

Fixed plugin directories whose names begin with two dots being wrongly refused as outside the plugin root

Avoid re-login on token refresh close

Fixed VS Code and SDK sessions occasionally requiring re-login when a session was closed while refreshing its token

Fix early end-of-turn signal timing

Fixed Remote Control sessions sending the end-of-turn signal before the reply's last message, which could show a reply as finished in the Claude app before its last part arrived

Stop background sessions retiring mid-turn

Fixed background (--bg) sessions occasionally being retired mid-turn when a message arrived just before the idle timeout

Decide advisor availability once per session

Fixed the advisor tool and its instructions being re-decided per request from the request's model; the decision is now made once and announced in the conversation when it changes

Validate connector tools before artifact publish

Fixed artifact publish accepting connector tool names the connector doesn't expose; the publish is now refused when none of the declared tools exist, and warned when only some don't

Extend two-key shortcut timeout to 3s

Fixed two-key keyboard shortcuts cancelling silently when the second key arrived more than a second later, as happens inside tmux; they now wait 3 seconds and show a notice when they time out

Stream forked skill prompts and text turns

Fixed forked skills (context: fork) not streaming their kickoff prompt and, with --forward-subagent-text, their text turns as progress events in stream-json

Report unreadable plugin component folders

Fixed a plugin's default component folder that the OS cannot check, such as a symlink loop, being silently skipped; it is now reported in /plugin with the error code

Stop OTLP relay pausing after bad payloads

Fixed the Claude apps gateway's OTLP telemetry relay pausing all forwarding to a collector for 30 seconds after it rejected a few payloads as malformed or too large

Show metadata from plugin.json in listings

Fixed /plugin Discover/Browse and claude plugin list --json --available showing no description or display name for marketplace plugins whose metadata lives only in their plugin.json

Fix /login gateway URL false error

Fixed /login showing "no gateway URL is configured" when re-run in a session that signed in to a Claude apps gateway set by managed settings

Report failed /model default saves

Fixed /model claiming a model was "saved as your default" when the settings file couldn't be written; it now says the save failed and why

Speed up /clear from Remote Control

Fixed /clear from Remote Control waiting on SessionStart hooks and on open terminal dialogs before completing

Keep /config dialog height stable

Fixed the /config dialog changing height when switching between its tabs

Fail clearly on missing workflow journals

Fixed resuming a workflow run after its container restarted; a resume whose run journal is missing now fails with a clear error instead of rerunning every agent

Correct claude-api skill error codes

Fixed the claude-api skill's error-code reference: model access failures return 404 and unavailable beta headers return 400, not 403

Connect legacy SSE-only MCP servers

Fixed MCP servers configured as http that only speak the legacy HTTP+SSE transport never connecting; Claude Code now falls back to SSE as the MCP spec describes

Fix false auth-needed connector status

Fixed some claude.ai connectors in cloud sessions showing as needing authentication even though they are connected in claude.ai (servers that answer an unsupported request with HTTP 401)

Release idle containers waiting on approval

Fixed remote sessions keeping their sandbox container alive while a connector approval or sign-in link waits for you

Shorten unfinished background task notices

Fixed resumed sessions showing long model-facing recovery instructions in "background task didn't finish" notices instead of a short status line

Fix Windows sandbox file access refusals

Windows: Fixed Read, Write and Edit refusing every file ("symlink resolution changed after permission was checked") when running inside an AppContainer or restricted-token sandbox

[VSCode] Align the Remote Control timeline dot

Fixed the timeline dot sitting below the text on the "Remote Control is active" message

Change details