Change8

v2.1.257

Claude Code
8 features44 fixes5 improvementsbedrockclidesktophooksmcpsdkvertexvscode

Summary

This release introduces the new Claude Fable 5.1 model as the default, featuring a 1 million token context window. Users can now customize time formats and time zones for timestamps, and enhanced security measures are in place for cloud metadata fetches. Numerous bug fixes improve session management, tool interactions, and overall stability across different operating systems and configurations.

New Features

  • Introduced Claude Fable 5.1 as the new default model, offering a 1M context window and new pricing.
  • Added "Time format" and "timeZone" settings to customize the turn-end clock and transcript timestamps with options for 12-hour, 24-hour, 24-hour UTC, or custom strftime patterns.
  • Enabled a Containment Escape rule in auto mode to prevent automatic approval of cloud metadata-credential fetches, egress evasion, and cross-tenant reach unless explicitly marked as expected.
  • Introduced `CLAUDE_CODE_SUBAGENT_MODEL_FORCE` environment variable to enforce a specific model for all subagents, overriding individual definitions.
  • Added the ability to change effort for the current session only using `s` in the `/effort` command.
  • Added a `/doctor` warning for stale sandbox mask files left by terminated sessions.
  • Implemented a one-time prompt in auto mode before the first file read outside working directories, with an option to block such reads via `permissions.blockReadsOutsideWorkingDirectories`.
  • Added support for gateway-supplied descriptions in discovered `/model` picker entries when `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` is enabled.

Bug Fixes

  • Fixed settings in a `.claude/` folder created after startup not being recognized until the application was restarted.
  • Resolved an issue where sessions dispatched from an agent view using `←` incorrectly inherited the original session's permission mode, overriding target directory defaults.
  • Fixed `keybindings.json` rebinds of Ctrl+G being ignored in `claude agents`; Ctrl+S and Ctrl+T are now rebindable within the new `Agents` context.
  • Corrected background session startup failures on macOS npm installs during self-updates and on Windows when a stale daemon lock file pointed to a reused process ID.
  • Fixed the working spinner incorrectly stopping while a response was streaming behind a slash-command panel.
  • Resolved an issue where a background session's `state.json` `detail` would repeat its own dispatch prompt after a scheduled wake-up.
  • Ensured `claude agents` correctly handles background sessions that finish after being re-prompted, ordering them by latest finish time in the Completed list.
  • Fixed `claude --bg` from a deleted directory to now print the reason for failure and exit with code 1, instead of reporting "backgrounded" and leaving a crashed session row.
  • Prevented Remote Control from re-sending the Bash tool definition mid-session, which caused prompt-cache misses.
  • Fixed a doubly-listed custom `Authorization` header overriding configured credentials on Bedrock, Mantle, Vertex, and WIF, and the Vertex setup wizard incorrectly picking up old Anthropic profiles.
  • Corrected Claude apps gateway behavior to prevent sending stray host `Authorization` or profile headers to Foundry, Vertex, and Bedrock, and resolved Foundry Entra ID upstream startup issues when `ANTHROPIC_FOUNDRY_API_KEY` is set.
  • Prevented a leftover Anthropic API key or auth token from being sent alongside a Foundry subscription key in API-key mode.
  • Fixed `/schedule` routines where prompts saved without a message role would run with no action.
  • Improved `claude agents` to now indicate when a background session is waiting for message approval from another session and who sent it.
  • Resolved a bug where prompts stashed with Ctrl+S inside an opened background session were lost when the session became idle or was stopped and reopened.
  • Fixed telemetry (OTEL) settings pushed via server-managed settings being ignored on warm starts, including in desktop-app Code sessions.
  • Prevented a teammate permission request from being answered twice when the leader's mailbox write was briefly locked.
  • Fixed a phantom duplicate slash-command row rendering below the in-flight turn while a command's auto-continued response streamed.
  • Clamped `policyHelper` `timeoutMs` and `refreshIntervalMs` values above the timer maximum to prevent failures or millisecond re-runs.
  • Fixed the token counter freezing or crawling after switching to another subagent's transcript, and ensured background subagents' and teammates' counters update live during response streaming.
  • Resolved an issue where sandbox network hosts written with a trailing dot (e.g., `example.com.`) were not blocked by `deniedDomains` entries and the "don't ask again" option failed.
  • Fixed dismissing the Remote Control consent prompt (Esc or `n`) from being incorrectly counted as consent.
  • Prevented `/mcp` reconnect and enable from connecting a settings-file MCP server that should have been blocked by managed MCP allow/deny lists or `strictPluginOnlyCustomization`.
  • Fixed `claude mcp remove` from leaving stored OAuth credentials behind when `strictPluginOnlyCustomization` locks MCP to plugin-only servers.
  • Ensured Remote Control sessions started from the Claude app now respect the selected model instead of defaulting to the machine's default.
  • Corrected `--disallowedTools` and session deny rules from being dropped after the first settings reload when `allowManagedPermissionRulesOnly` is enabled.
  • Fixed `--resume` listing a backgrounded conversation twice and `--continue` reopening its stalled pre-background copy; `--continue` now also opens finished background sessions.
  • Enabled clicking `!` shell command output to expand it in fullscreen mode.
  • Ensured background sessions running an older Claude Code binary are retired during auto-updates instead of piling up.
  • Fixed `claude agents --json` from briefly switching the terminal to raw mode and undoing other programs' terminal settings on exit.
  • Prevented Proactive output style sessions from busy-looping with filler messages and repeated log reads while a background command or Monitor was still running.
  • Resolved subagents stopping when a response was cut off mid-stream due to computer sleep, connection drops, or server errors; they now automatically continue.
  • Fixed `←` in the `/btw` panel within a `claude agents` session to now return to the agents list and reopen the panel when the session is revisited.
  • Ensured sessions with an advisor model set now utilize the prompt cache for background requests, preventing re-sending the full conversation uncached.
  • Fixed `claude -p` from exiting prematurely while a Monitor was still running; it now waits for the watch to fire or time out.
  • Prevented a `permissions.ask` rule from being skipped in auto mode when the matching command ran inside a compound command or subshell, ensuring confirmation prompts are shown.
  • Prevented plugins from reading files outside their own directory through symlinked paths, now refusing such paths with an error.
  • Enabled `/add-dir` to now load skills, commands, and agents from a directory within the current working directory, similar to `--add-dir` at startup.
  • Ensured the main agent is now notified when you resume a subagent that was previously stopped from its transcript view.
  • Fixed a crash occurring when pasting ANSI-colored text into dialogs like `/feedback`.
  • Prevented `claude mcp add/remove` from hanging or exhausting memory when the project's `.mcp.json` is a FIFO or device-file symlink, now failing fast with an actionable message.
  • Resolved unbounded memory growth when non-JSONL data is piped into `claude -p --input-format stream-json`, now failing fast with a clear error.
  • Fixed backgrounding a turn (`←` or Ctrl+B) while a subagent or tool was running from occasionally causing the background session to treat that tool as rejected instead of re-running it.
  • Ensured Bash `Read()`/`Edit()` deny rules now apply to `< file` redirects and reader commands like `tac` and `egrep`.

Improvements

  • Completed sessions in `claude agents` now order by the latest finish time.
  • The token counter now updates live for background subagents and teammates while a response streams.
  • Sandbox network hosts written with a trailing dot are now correctly handled by `deniedDomains` and the "don't ask again" prompt.
  • The `/add-dir` command now loads skills, commands, and agents from a directory within the current working directory, mirroring the behavior of `--add-dir` at startup.
  • The main agent is now informed when a subagent is resumed from its transcript view.

Claude Code Documentation