Skip to content

Claude Code 2.1.257

104changes
  • Add Fable 5.1 with 1M context; gateway fable/best aliases still use Fable 5.
  • Apply a shared model to every subagent.
  • Add controls for reads outside the working directories.
  • Fix dismissed Remote Control consent prompts being treated as consent.

New features

12
More changes (8) Fewer changes

Improvements

24
More changes (21) Fewer changes

More responsive prompt input

Improved prompt input responsiveness by reducing per-keystroke rendering work

Clearer policy helper diagnostics

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

GitLab comments from code review

Post /code-review --comment findings to GitLab merge requests through glab mr note.

Notifications for queued approvals

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

Group hook completion notices

Improved verbose/transcript output: async hook completion notices that arrive together now appear on one line instead of one line per hook

Git push negotiation for runners

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

SDK session liveness reporting

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

Redact credentials in MCP logs

Improved MCP connection and OAuth debug/error logs so credentials carried in a server's URL or request headers are redacted

More emoji shortcode aliases

Improved emoji autocomplete to accept the remaining GitHub/Slack shortcode aliases (:satisfied:, :telephone:, :collision:, …)

Session-only effort override

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

Refresh shadowed policy helpers

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

Managed settings merge behavior

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

Gateway discovery with reduced traffic

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

Resume background sessions under their own ID

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

New /btw history shortcuts

Changed /btw history browsing from ←/→ to Shift+←/Shift+→ (or [/]), stepping through your recent side questions and back to the live answer

Project-level bypassPermissions handling

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

Reject network directory paths

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

Verify pinned gateway TLS certificates

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

Approval before reading others' artifacts

Changed Cowork and claude.ai cloud sessions: reading an artifact that isn't yours now always asks you first, even in auto mode

[VSCode] Searchable command dialogs

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

[VSCode] Archive and restore sessions

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

Bug fixes

67

Declined Remote Control consent

Fixes dismissed Remote Control consent prompts being treated as consent and allowing the next connection without asking.

Ask rules for compound commands

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

Deny rules for redirected files

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

Approval checks for zsh conditionals

Fixed Bash permission checks auto-approving certain [[ ]] conditionals that zsh parses differently from bash; these commands now prompt for approval

Managed MCP reconnect lists

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

Hosts with trailing dots

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

Preserve --disallowedTools

Fixed --disallowedTools and session deny rules being dropped after the first settings reload when allowManagedPermissionRulesOnly is enabled

Managed settings for Console sign-in

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

More changes (59) Fewer changes

Load settings created after startup

Fixed settings in a .claude/ folder created after startup not being picked up until restart

Permission modes for dispatched sessions

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

Custom keybindings in claude agents

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

Background session startup

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

Keep streaming spinners active behind panels

Fixed the working spinner stopping while a response streams behind a slash-command panel

Duplicate details in state.json

Fixed a background session's state.json detail repeating its own dispatch prompt after a scheduled wake-up

Completed session ordering

Fixed claude agents keeping a background session you re-prompted buried in Completed after it finished again; Completed now orders by the latest finish

Background sessions in deleted directories

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

Remote Control prompt cache

Fixed Remote Control connecting mid-session re-sending the Bash tool definition, causing a prompt-cache miss

Duplicate Authorization headers

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

Unnecessary gateway headers

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

Leftover API keys on Foundry

Fixed a leftover Anthropic API key or auth token being sent alongside your Foundry subscription key in API-key mode

Message roles in /schedule

Fixed /schedule routines whose prompt was saved without a message role and then ran with nothing to do

Pending approval indicators

Fixed claude agents not saying that a background session is waiting for you to approve a message from another session, or who sent it

Preserve stashed prompts

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

Managed OpenTelemetry settings

Fixed telemetry (OTEL) settings pushed through server-managed settings being ignored on warm starts, including desktop-app Code sessions

Duplicate teammate permission responses

Fixed a teammate permission request being answered twice when the leader's mailbox write was briefly locked

Duplicate slash command lines

Fixed a phantom duplicate slash-command row rendering below the in-flight turn while a command's auto-continued response streamed

Policy helper timer limits

Fixed policyHelper timeoutMs and refreshIntervalMs values above the timer maximum (2147483647) causing failures or re-runs every millisecond; they are now clamped

Token counter freezes

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

Remove stored MCP OAuth credentials

Fixed claude mcp remove leaving a remote server's stored OAuth credentials behind when strictPluginOnlyCustomization locks MCP to plugin-only servers

Remote Control model selection

Fixed Remote Control (claude remote-control) sessions started from the Claude app ignoring the selected model and running on the machine's default instead

Duplicate resume entries and --continue

Fixed --resume listing a backgrounded conversation twice and --continue reopening its stalled pre-background copy; --continue now also opens finished background sessions

Fullscreen Bash output

Fixed fullscreen mode not letting you click ! shell command output to expand it

Sessions left behind by old binaries

Fixed background sessions left running an older Claude Code binary piling up across auto-updates instead of being retired

JSON agent listings outside raw mode

Fixed claude agents --json briefly switching the terminal to raw mode and undoing another program's terminal settings on exit

Proactive output style busy loops

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

Resume subagents after interrupted streams

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

Left arrow in the /btw panel

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

Advisor model prompt cache

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

Monitor waits in headless sessions

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

Reject symlinked plugin components

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

Add directories inside the working directory

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

Notifications when subagents resume

Fixed the main agent not being told when you resume a subagent you had stopped from its transcript view

Pasting ANSI-colored text

Fixed a crash when pasting ANSI-colored text (e.g. a CI log) into dialogs like /feedback

Reject FIFO MCP configuration files

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

Invalid stream-json input memory use

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

Backgrounding during tool execution

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

Resume large subagent transcripts

Fixed resuming or messaging a subagent whose transcript had grown past 5 MB (for example after reading many images) failing with "No transcript found"

Bash commands in isolated worktrees

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"

Cache warnings after rewinding

Fixed /model and /effort showing a prompt-cache warning after rewinding a conversation back to empty

Prompt cache in image-heavy sessions

Fixed prompt-cache misses on every turn in long screenshot-heavy sessions once images exceeded the per-request size cap

Emoji widths in edit diffs

Fixed the Edit permission prompt's diff view rendering emoji and multi-code-point characters with incorrect widths

WebSocket MCP error details

Fixed WebSocket MCP server connection failures being logged as "[object ErrorEvent]" instead of the underlying error

Background startup during npm updates

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

Stop detached background commands

Fixed background commands that detach from their shell (for example under timeout or setsid) surviving a task stop or Claude Code exit

Notify Claude when commands stop

Fixed Claude not being told when you stop a background command from the tasks panel or a connected client

Stop monitors with their subagents

Fixed stopping a background subagent leaving its monitors running

Sandboxed git in linked worktrees

Fixed sandboxed git commands in a linked worktree losing write access to the repository's common .git directory after cd into a subdirectory

Bedrock progress during hidden thinking

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

Expired gateway session messages

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

Recover cloud git credentials

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

Clean up abandoned daemon folders

Fixed leftover cc-daemon-* folders in the system temp directory after an interrupted background daemon start; the cleanupPeriodDays retention sweep now removes them

Managed telemetry approval wording

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

Close agent-team terminal panes

Fixed agent-team teammates in tmux/iTerm2 panes sometimes staying open after acknowledging a shutdown request

[VSCode] Third-party provider features

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

[VSCode] Restore the usage meter

Fixed the session list panel's usage meter staying blank after the panel loads; it now shows the last known usage immediately

[VSCode] Apply Remote Control to open sessions

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

[VSCode] Screen reader announcements

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

Removed & reverted

1
All changes (1) Fewer changes
Change details