2.1.257
Claude Code 2.1.257 - リリースノート
2026年9月1日
Claude Code
日本語サマリー
Claude Code 2.1.257 リリースノート要約
⚠️ 破壊的変更・重要なセキュリティ関連
defaultMode: "bypassPermissions"を.claude/settings.json/.claude/settings.local.jsonで指定しても無視されるように(ユーザー/管理設定または--permission-modeで指定が必要)- セキュリティ修正:auto mode に Containment Escape ルールを追加し、クラウドメタデータ認証情報の取得・egress 回避・テナント横断アクセスが環境で許可済みとマークされない限り自動承認されないように
- セキュリティ修正:プラグインが symlink を介して自身のディレクトリ外のファイルを読める問題を修正(symlink パスはエラーで拒否)
- セキュリティ修正:Remote Control の同意プロンプトを Esc 等で拒否しても同意とみなされ、次回無確認で接続していた問題を修正
- セキュリティ修正:
claude mcp removeがリモートサーバーの OAuth 認証情報を残していた問題を修正
新機能
- Claude Fable 5.1(
claude-fable-5-1)を追加、デフォルトの Fable モデルに(1M コンテキスト、$10/$50 per Mtok、cache 読み取り $0.25/Mtok) timeFormatとtimeZone設定を追加(12/24時間表記、UTC、strftime パターン対応)- 環境変数
CLAUDE_CODE_SUBAGENT_MODEL_FORCEを追加(全 subagent にモデルを強制適用) - auto mode で作業ディレクトリ外の初回ファイル読み取り時に確認プロンプトを表示(
permissions.blockReadsOutsideWorkingDirectoriesでブロック可能) /effortにsオプションを追加(セッション限定の effort 変更)
主な修正
- 起動後に作成された
.claude/フォルダ内の設定が反映されない問題を修正 - sandbox で末尾ドット付きホスト(
example.com.)のdeniedDomainsが機能しない問題を修正 claude -p --input-format stream-jsonに非 JSONL データを流した際の無制限なメモリ増大を修正(早期エラーで停止)- Bash の deny ルールが
< fileリダイレクトやtac・egrep等に適用されない問題を修正 - 5 MB 超過の transcript を持つ subagent の再開が "No transcript found" で失敗する問題を修正
- 中断されたレスポンス(スリープ・接続切断等)で subagent が停止する問題を修正(自動継続するように)
- コンピュータースリープ・サーバーエラー対策、レンダリングパフォーマンス改善(長い会話でのストリーミング遅延を解消)
その他の変更
--add-dir等がネットワークパス(UNC 共有など)を拒否するように/btw履歴の操作キーをShift+←/Shift+→(または[/])に変更- Bash/PowerShell 権限プロンプトから Ctrl+E のコマンド解説を削除
- [VSCode] セッションリストにアカウント/使用量セクション、モデルピル表示、アーカイブ機能(Delete → Archive)などを追加
原文(Release Notes)
What's changed
- Added Claude Fable 5.1 (
claude-fable-5-1), now the default Fable model — 1M context, $10/$50 per Mtok with $0.25/Mtok cache reads- Added "Time format" (
timeFormat) andtimeZonesettings: 12-hour, 24-hour, 24-hour UTC, or a strftime pattern for the turn-end clock and transcript-view timestamps- Added a Containment Escape rule to auto mode so cloud metadata-credential fetches, egress evasion, and cross-tenant reach are no longer auto-approved unless your environment marks them expected
- Added
CLAUDE_CODE_SUBAGENT_MODEL_FORCEto applyCLAUDE_CODE_SUBAGENT_MODEL(or the main model) to every subagent, ignoring per-spawn and agent-definition model overrides- Added
sin/effortto change effort for the current session only, matching/model- Added a
/doctorwarning for stale sandbox mask files left by a killed session- Added a one-time prompt in auto mode before the first file read outside the working directories, with the option to block such reads (
permissions.blockReadsOutsideWorkingDirectories)- Added support for a gateway-supplied
descriptionon discovered/modelpicker entries (CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY); entries without one still read "From gateway"- Fixed settings in a
.claude/folder created after startup not being picked up until restart- Fixed sessions dispatched from an agent view opened with
←always starting in the original session's permission mode, overriding the target directory'sdefaultModeand the agent'spermissionMode- Fixed
keybindings.jsonrebinds of Ctrl+G being ignored inclaude agents; its Ctrl+S / Ctrl+T are now rebindable via the newAgentscontext- 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
- Fixed the working spinner stopping while a response streams behind a slash-command panel
- Fixed a background session's
state.jsondetailrepeating its own dispatch prompt after a scheduled wake-up- Fixed
claude agentskeeping a background session you re-prompted buried in Completed after it finished again; Completed now orders by the latest finish- Fixed
claude --bgfrom a directory that was just deleted reporting "backgrounded" and leaving a crashed session row; it now prints the reason and exits 1- Fixed Remote Control connecting mid-session re-sending the Bash tool definition, causing a prompt-cache miss
- Fixed a doubly-listed custom
Authorizationheader overriding the configured credential on Bedrock, Mantle, Vertex, and WIF, and the Vertex setup wizard picking up a leftover Anthropic profile from~/.config/anthropic- Fixed Claude apps gateway sending stray host
Authorizationor profile headers to Foundry, Vertex, and Bedrock, and Foundry Entra ID upstreams not starting whenANTHROPIC_FOUNDRY_API_KEYis set- Fixed a leftover Anthropic API key or auth token being sent alongside your Foundry subscription key in API-key mode
- Fixed
/scheduleroutines whose prompt was saved without a message role and then ran with nothing to do- Fixed
claude agentsnot saying that a background session is waiting for you to approve a message from another session, or who sent it- 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
- Fixed telemetry (OTEL) settings pushed through server-managed settings being ignored on warm starts, including desktop-app Code sessions
- Fixed a teammate permission request 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
- Fixed
policyHelpertimeoutMsandrefreshIntervalMsvalues above the timer maximum (2147483647) causing failures or re-runs every millisecond; they are now clamped- 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
- Fixed sandbox network hosts written with a trailing dot (
example.com.): adeniedDomainsentry didn't block the host inside the sandbox, and "don't ask again" for such a host kept prompting- Fixed dismissing the Remote Control consent prompt (Esc, or
natclaude remote-control) counting as consent, so the next request connected without asking- Fixed
/mcpreconnect and enable still connecting a settings-file MCP server that a managed MCP allow/deny list orstrictPluginOnlyCustomizationloaded after startup should block- Fixed
claude mcp removeleaving a remote server's stored OAuth credentials behind whenstrictPluginOnlyCustomizationlocks MCP to plugin-only servers- Fixed Remote Control (
claude remote-control) sessions started from the Claude app ignoring the selected model and running on the machine's default instead- Fixed
--disallowedToolsand session deny rules being dropped after the first settings reload whenallowManagedPermissionRulesOnlyis enabled- Fixed
--resumelisting a backgrounded conversation twice and--continuereopening its stalled pre-background copy;--continuenow also opens finished background sessions- Fixed fullscreen mode not letting you click
!shell command output to expand it- Fixed background sessions left running an older Claude Code binary piling up across auto-updates instead of being retired
- Fixed
claude agents --jsonbriefly switching the terminal to raw mode and undoing another program's terminal settings on exit- 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
- 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
- Fixed
←doing nothing in the/btwpanel inside aclaude agentssession: it now returns to the agents list (even mid-answer), and the panel comes back when you reopen the session- 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- Fixed
claude -pexiting 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- Fixed a
permissions.askrule being skipped in auto mode when the matching command ran inside a compound command or subshell, letting it run without the confirmation prompt- 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
- Fixed
/add-dirrejecting a directory inside the current working directory; it now loads that directory's skills, commands, and agents like--add-dirdoes at startup- Fixed the main agent not being told when you resume a subagent you had stopped from its transcript view
- Fixed a crash when pasting ANSI-colored text (e.g. a CI log) into dialogs like
/feedback- Fixed
claude mcp add/removehanging or exhausting memory when the project's.mcp.jsonis a FIFO or a device-file symlink; it now fails fast with an actionable message- 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- 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- Fixed Bash
Read()/Edit()deny rules not applying to< fileredirects and reader commands liketacandegrep; a deny rule on any argument or redirect target now refuses the command- Fixed resuming or messaging a subagent whose transcript had grown past 5 MB (for example after reading many images) failing with "No transcript found"
- Fixed worktree-isolated sessions refusing Bash loops,
$VARreads,"$(…)"and heredocs that never touch git as "too complex to verify that it stays inside the worktree"- Fixed
/modeland/effortshowing a prompt-cache warning after rewinding a conversation back to empty- Fixed prompt-cache misses on every turn in long screenshot-heavy sessions once images exceeded the per-request size cap
- Fixed the Edit permission prompt's diff view rendering emoji and multi-code-point characters with incorrect widths
- Fixed WebSocket MCP server connection failures being logged as "[object ErrorEvent]" instead of the underlying error
- 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
- Fixed background commands that detach from their shell (for example under
timeoutorsetsid) surviving a task stop or Claude Code exit- Fixed Claude not being told when you stop a background command from the tasks panel or a connected client
- Fixed stopping a background subagent leaving its monitors running
- Fixed sandboxed git commands in a linked worktree losing write access to the repository's common
.gitdirectory aftercdinto a subdirectory- 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
- Fixed launching Claude Code after a Claude apps gateway expired or revoked your session: it now says the session ended and offers
/logininstead of reporting a network error- 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
- Fixed leftover
cc-daemon-*folders in the system temp directory after an interrupted background daemon start; thecleanupPeriodDaysretention sweep now removes them- Fixed Bash permission checks auto-approving certain
[[ ]]conditionals that zsh parses differently from bash; these commands now prompt for approval- 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
- Fixed agent-team teammates in tmux/iTerm2 panes sometimes staying open after acknowledging a shutdown request
- Fixed the keyless Console sign-in ("Sign in with your Console account") not applying your organization's server-managed settings, and
/statusnot showing the Organization for that sign-in- Improved rendering performance: less re-render work per turn in long conversations, streaming no longer slows down as the reply grows, and background-agent updates no longer re-render the whole screen
- Improved prompt input responsiveness by reducing per-keystroke rendering work
- 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- Improved
/code-review --commentto post findings on GitLab merge requests viaglab mr noteinstead of reporting the target as unsupported- 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
- Improved verbose/transcript output: async hook completion notices that arrive together now appear on one line instead of one line per hook
- Improved
claude self-hosted-runner --configure-gitto 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- 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_MSare not mistaken for a hung session- Improved MCP connection and OAuth debug/error logs so credentials carried in a server's URL or request headers are redacted
- Improved
/forkto keep the original conversation's prompt cache in the new background session: its worktree briefing now arrives as a message instead of a system-prompt change- Improved emoji autocomplete to accept the remaining GitHub/Slack shortcode aliases (
:satisfied:,:telephone:,:collision:, …)- Changed
--effortto 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- Changed a
policyHelperin MDM ormanaged-settings.jsonshadowed at launch by cached server-managed settings to run (or exit) as soon as the fetch reports them removed, not at the next launch- Changed
managedSourcesBehavior: "merge"to takesandbox.credentials.awsPairsandsandbox.ripgrepwhole from the highest managed source that sets them instead of combining the sources' values- Changed gateway model discovery (
CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1) to run even whenCLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICis set, since it only queries your gateway- Changed
claude --resume <session-id> --bgto continue that session under its own ID when nothing is running it, instead of silently starting a copy; a copy is now announced- Changed
/btwhistory browsing from←/→toShift+←/Shift+→(or[/]), stepping through your recent side questions and back to the live answer- Changed
defaultMode: "bypassPermissions"in.claude/settings.jsonor.claude/settings.local.jsonto be ignored, like"auto"; set it in user or managed settings, or pass--permission-mode- Changed
fableandbestin Claude apps gateway sessions to keep resolving to Fable 5 for now, since gateways not yet configured for Fable 5.1 reject it; pick Fable 5.1 in/modelto use it- Changed
--add-dir,/add-dir, andadditionalDirectoriesto refuse network paths (UNC shares,/net/<host>automounts) with a message before touching them; on Windows use a mapped drive letter- 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
- Changed Cowork and claude.ai cloud sessions: reading an artifact that isn't yours now always asks you first, even in auto mode
- Removed the Ctrl+E command explanation on Bash and PowerShell permission prompts
- [VSCode] Added collapsible ACCOUNT & USAGE and SESSION MANAGER section headers to the session list panel, with the account email, the usage meter, and a View details link opening the usage dialog
- [VSCode] Added a model pill to the input footer that shows the current model and opens the model picker, with an Effort row and a "More models" page
- [VSCode] Added a collapse toggle to the Ungrouped section of the session list
- [VSCode] Added output style selection to the command menu, including custom styles
- [VSCode] 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] Fixed the session list panel's usage meter staying blank after the panel loads; it now shows the last known usage immediately
- [VSCode] 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] 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
- [VSCode] 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] 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