一覧へ戻る v2.1.77

バックナンバー · BACK ISSUE

v2.1.77

破壊的変更
1 破壊的変更 2 新機能 13 改善 28 修正 · 44 件の変更

Opus/Sonnet 4.6 の出力トークン上限を引き上げ、/fork/branch にリネーム、Agent ツールの resume パラメータを削除し、権限・tmux/ターミナル・resume の修正を多数提供します。

破壊的変更 Breaking 1
  • Agent ツールが resume パラメータを受け付けなくなりました。以前に生成したエージェントを継続するには SendMessage({to: agentId}) を使います。

    agentstools

    詳しく
    破壊的変更です。Agent ツールから resume パラメータが削除され、これまでの方法でエージェントを再開できなくなりました。以前に生成したエージェントを続行するには、代わりに SendMessage({to: agentId}) を使って対象のエージェント ID にメッセージを送ってください。resume を使っていたスクリプトやワークフローは書き換えが必要です。
新機能 Feature 2
  • Claude Opus 4.6 の既定の最大出力トークン上限を 64k トークンに、Opus 4.6 と Sonnet 4.6 の上限を 128k トークンに引き上げました。

    modelsapi

    詳しく
    モデルが一度の応答で生成できる出力トークン数の上限を引き上げた変更です。Claude Opus 4.6 の既定の上限が 64k トークンになり、さらに Opus 4.6 と Sonnet 4.6 では設定可能な上限が 128k トークンまで拡大しました。長い回答や大量のコード生成、まとまった量のファイル書き換えが途中で切れにくくなり、大きな出力を扱う作業をする人に恩恵があります。
  • denyRead の領域内で読み取りアクセスを再許可する allowRead サンドボックスファイルシステム設定を追加しました。

    sandboxconfig

    詳しく
    サンドボックス(ファイルアクセスを制限する保護機能)の読み取り許可を細かく調整できる新しい設定 allowRead が追加されました。これまで denyRead で読み取りを禁止した領域は一括で塞ぐしかありませんでしたが、allowRead を使うとその禁止領域の中の一部だけ読み取りを再び許可できます。広い範囲を禁止しつつ特定のディレクトリだけ例外的に読ませたい人に便利です。
改善 Improvement 13
  • /copy が任意のインデックスを受け付けるようになりました: /copy N で N 番目に新しいアシスタント応答をコピーします。

    uicommands

    詳しく
    アシスタントの応答をクリップボードにコピーする /copy コマンドに、何番目の応答かを指定する機能が加わりました。従来は最新の応答だけをコピーしていましたが、/copy N と書くと N 番目に新しい応答をコピーできます。少し前のやり取りを後から取り出したいときに、スクロールして探さずに済みます。
  • キーチェーンの認証情報をモジュールの読み込みと並行して読むことで、macOS での起動を高速化しました(約 60ms)。

    macosstartupperformance

    詳しく
    macOS での起動を高速化しました。認証情報を保管するキーチェーンの読み取りを、プログラム本体(モジュール)の読み込みと並行して行うようにした結果、起動が約 60ms 速くなります。macOS で頻繁に起動する人がわずかながら待ち時間を減らせます。
  • fork の多い非常に大きなセッションでの --resume を高速化: 読み込みが最大 45% 高速になり、ピークメモリが約 100〜150MB 削減されました。

    agentsperformance

    詳しく
    過去のセッションを再開する --resume の性能を改善しました。会話を分岐(fork)した回数が多い、あるいは非常に大きなセッションで効果が大きく、読み込みが最大 45% 速くなり、ピーク時のメモリ使用量も約 100〜150MB 減ります。長く育てた大きなセッションを再開する人ほど体感しやすい改善です。
  • 実行中の非ストリーミング API リクエストを Esc で中断できるよう改善しました。

    apiui

    詳しく
    Esc キーによる中断を改善しました。これまで取り消しにくかった、実行中の非ストリーミング(逐次受信ではない)API リクエストも Esc で止められるようになります。応答を待っている途中でやり直したいときに、より確実に中断できます。
  • claude plugin validate を改善し、スキル・エージェント・コマンドのフロントマターと hooks/hooks.json をチェックして、YAML の解析エラーとスキーマ違反を検出するようにしました。

    plugins

    詳しく
    プラグインを検証するコマンド claude plugin validate の機能を強化しました。スキル・エージェント・コマンドのフロントマター(ファイル先頭の設定部分)に加えて hooks/hooks.json もチェックし、YAML の構文エラーやスキーマ(定義どおりか)の違反を見つけられるようになりました。プラグインを開発・配布する人が、公開前に設定ミスを早く発見できます。
  • バックグラウンドの bash タスクが、出力が 5GB を超えると終了されるようになり、暴走したプロセスがディスクを埋めるのを防ぎます。

    bash

    詳しく
    バックグラウンドで動かす bash タスクに安全装置が追加されました。出力が 5GB を超えると、そのタスクは自動的に終了されます。暴走したプロセスが大量の出力でディスクを埋め尽くすのを防ぐための変更です。
  • プランを承認したとき、セッションがプランの内容から自動命名されるようになりました。

    agents

    詳しく
    セッションの自動命名機能が加わりました。プラン(作業計画)を承認すると、その内容をもとにセッション名が自動でつけられます。後からセッション一覧を見たときに、何の作業だったか名前で見分けやすくなります。
  • ヘッドレスモードのプラグインインストールを改善し、CLAUDE_CODE_PLUGIN_SEED_DIR と正しく組み合わさるようにしました。

    plugins

    詳しく
    ヘッドレスモード(画面を伴わない自動実行モード)でのプラグインインストールを改善しました。あらかじめ用意したプラグイン群を指定する CLAUDE_CODE_PLUGIN_SEED_DIR と正しく組み合わさるようになりました。CI などの自動化環境で、シードしたプラグインと追加インストールを併用する人に関係する修正です。
  • apiKeyHelper が 10 秒以上かかるときに通知を表示し、メインループをブロックしないようにしました。

    authui

    詳しく
    API キーを取得する補助スクリプト apiKeyHelper が遅いときの挙動を改善しました。処理に 10 秒以上かかると通知を表示し、メインの処理ループを止めてしまわないようにしました。apiKeyHelper で動的にキーを取得している人が、固まったように見える状況を避けられます。
  • SendMessage が、エラーを返す代わりに停止したエージェントをバックグラウンドで自動再開するようになりました。

    agents

    詳しく
    SendMessage の挙動を改善しました。停止しているエージェント宛にメッセージを送ったとき、これまではエラーが返っていましたが、今後はそのエージェントをバックグラウンドで自動的に再開してメッセージを処理します。エージェントを継続して使うときに、手動で再開し直す手間が減ります。
  • /fork/branch にリネームしました(/fork も引き続きエイリアスとして使えます)。

    commandsagents

    詳しく
    会話を分岐させるコマンドの名称を /fork から /branch に変更しました。これまでの /fork も引き続きエイリアス(別名)として使えるため、既存の使い方が壊れることはありません。今後はより分かりやすい /branch が正式名となります。
  • [VSCode] プランプレビューのタブタイトルを、「Claude's Plan」ではなくプランの見出しを使うよう改善しました。

    ideui

    詳しく
    VSCode のプランプレビュー表示を改善しました。これまでタブのタイトルが一律で「Claude's Plan」と表示されていましたが、今後はそのプランの見出しがタイトルに使われます。複数のプランを開いたときに、タブを見ただけで内容を区別しやすくなります。
  • [VSCode] macOS で option+クリックがネイティブの選択をトリガーしないとき、フッターが macOptionClickForcesSelection 設定を案内するようになりました。

    idemacosui

    詳しく
    VSCode 上での操作案内を改善しました。macOS で option+クリックによるネイティブのテキスト選択が効かない場合に、画面下部のフッターが macOptionClickForcesSelection という設定を案内するようになりました。選択がうまくいかないときに、どの設定を変えればよいか自分で気づけるようになります。
修正 Fix 28
  • 複合 bash コマンド(例: cd src && npm test)での「Always Allow」が、サブコマンドごとではなく文字列全体で 1 つのルールを保存し、無効なルールと繰り返しの権限プロンプトを招く問題を修正。

    permissionsbash

    詳しく
    cd src && npm test のように複数を && でつないだ bash コマンドで「Always Allow(常に許可)」を選んだときの権限ルール保存の不具合を修正しました。以前はコマンド全体の文字列でまとめて 1 つのルールを保存していたため、二度と一致しない無効なルールになり、同じ確認プロンプトが何度も出ていました。修正後はサブコマンドごとにルールが保存され、許可が正しく記憶されます。
  • スラッシュコマンドのオーバーレイが繰り返し開閉すると自動アップデータが重複するバイナリのダウンロードを開始し、数十 GB のメモリを蓄積する問題を修正。

    updaterperformance

    詳しく
    自動アップデータが起こしていた深刻なメモリ消費の不具合を修正しました。スラッシュコマンドの一覧表示(オーバーレイ)を繰り返し開閉すると、そのたびに重複したバイナリのダウンロードが始まり、数十 GB ものメモリを溜め込んでいました。長時間使うとメモリ不足になりうる問題で、頻繁にスラッシュコマンドを呼ぶ人に影響していました。
  • メモリ抽出の書き込みとメイントランスクリプトの競合により、--resume が直近の会話履歴を無言で切り詰める問題を修正。

    agents

    詳しく
    過去のセッションを再開する --resume で、直近の会話履歴が黙って失われる不具合を修正しました。原因は、記憶を抽出して書き込む処理とメインの会話記録(トランスクリプト)への書き込みが競合(race)していたことです。修正により、再開時に最近のやり取りがそのまま引き継がれるようになります。
  • "allow" を返す PreToolUse フックが、エンタープライズの管理設定を含む deny 権限ルールをバイパスする問題を修正。

    hookspermissionssecurity

    詳しく
    ツール実行前に動くフック(PreToolUse hook)に関するセキュリティ上の不具合を修正しました。これまでフックが "allow" を返すと、本来優先されるべき deny の権限ルールを上書きして実行を通してしまい、企業が管理する設定すら回避されていました。修正後は deny ルールが尊重され、管理者が禁止した操作がフックによってすり抜けられなくなります。
  • CRLF のファイルを上書きしたり CRLF のディレクトリにファイルを作成したりするとき、Write ツールが無言で改行コードを変換する問題を修正。

    toolswindows

    詳しく
    ファイルを書き込む Write ツールが、改行コードを勝手に変えてしまう不具合を修正しました(CRLF は Windows 系の改行形式)。これまでは CRLF のファイルを上書きしたり、CRLF が使われているディレクトリに新規作成したりすると、黙って改行コードが変換されていました。意図しない差分や Windows 環境での不整合を防げるようになります。
  • 進捗メッセージがコンパクト化を生き残ることによる、長時間のセッションでのメモリ増加を修正。

    contextperformance

    詳しく
    長時間動かしているセッションでメモリが増え続ける不具合を修正しました。原因は、会話を要約して圧縮する処理(compaction)の後も進捗メッセージが消えずに残り続けていたことです。長く使い続ける人ほどメモリ使用量が安定するようになります。
  • API が非ストリーミングモードにフォールバックしたとき、コストとトークン使用量が追跡されない問題を修正。

    usageapi

    詳しく
    コストとトークン使用量の集計が漏れる不具合を修正しました。API が通信を逐次受け取るストリーミングモードではなく、非ストリーミングモードに切り替わった(フォールバックした)場合、使用量が記録されていませんでした。修正により、どちらのモードでも利用量が正しくカウントされ、コスト把握が正確になります。
  • CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS がベータのツールスキーマフィールドを除去せず、プロキシゲートウェイがリクエストを拒否する問題を修正。

    enterpriseapi

    詳しく
    ベータ機能を無効化する環境変数 CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS が、ベータ用のツールスキーマ項目を取り除けていなかった不具合を修正しました。残ったベータ項目のせいで、プロキシゲートウェイ(中継サーバ)がリクエストを拒否することがありました。社内ゲートウェイ経由で利用する企業環境の人に影響していた問題です。
  • システムの一時ディレクトリのパスに空白が含まれるとき、Bash ツールが成功したコマンドにエラーを報告する問題を修正。

    bash

    詳しく
    Bash ツールが、成功したコマンドを誤ってエラー扱いする不具合を修正しました。システムの一時ディレクトリのパスに空白が含まれていると発生していた問題です。パスにスペースが入りやすい Windows などの環境でコマンドが正しく成功と判定されるようになります。
  • 貼り付け直後に入力すると貼り付けが失われる問題を修正。

    ui

    詳しく
    入力欄での貼り付けに関する不具合を修正しました。貼り付けた直後にすぐ文字を打ち始めると、貼り付けた内容が消えてしまうことがありました。修正により、貼り付けと続けての入力が確実に反映されます。
  • /feedback のテキスト入力で Ctrl+D が、2 回目の押下でセッションを終了するのではなく前方削除する問題を修正。

    feedbackui

    詳しく
    /feedback のテキスト入力欄での Ctrl+D の挙動を修正しました。これまでは Ctrl+D がカーソルの前方の文字を削除してしまい、本来期待される「2 回押すとセッションを終了する」動作になっていませんでした。修正後は他の入力欄と同じく、2 回目の押下で終了します。
  • 0 バイトの画像ファイルをプロンプトにドラッグしたときの API エラーを修正。

    apiui

    詳しく
    中身が空(0 バイト)の画像ファイルをプロンプト欄にドラッグしたときに API エラーが出る不具合を修正しました。空の画像でもエラーにならず適切に処理されるようになります。壊れた画像や生成途中のファイルを誤って投げ込んだ人に関係する修正です。
  • Claude Desktop のセッションが、OAuth ではなくターミナル CLI で設定された API キーを誤って使う問題を修正。

    auth

    詳しく
    Claude Desktop での認証方法の取り違えを修正しました。これまで Desktop のセッションが、本来使うべき OAuth(ブラウザ経由のログイン認証)ではなく、ターミナル版 CLI に設定された API キーを誤って使ってしまうことがありました。Desktop と CLI を併用している人が、意図した認証情報で接続できるようになります。
  • 同じモノレポのコミットの異なるサブディレクトリにある git-subdir のプラグインが、プラグインキャッシュで衝突する問題を修正。

    plugins

    詳しく
    git-subdir 形式のプラグイン(モノレポのサブディレクトリから読み込むプラグイン)のキャッシュ衝突を修正しました。同じモノレポの同じコミットでも別々のサブディレクトリにあるプラグイン同士が、キャッシュ上で混ざってしまう問題がありました。1 つのリポジトリから複数のプラグインを使う人が、それぞれ正しく区別されて扱われるようになります。
  • ターミナル UI で番号付きリストの番号が描画されない問題を修正。

    ui

    詳しく
    ターミナル UI の表示の不具合を修正しました。番号付きリストの番号(1. 2. 3. など)が描画されず欠けて見えることがありました。修正により、番号付きリストが正しく表示されます。
  • 古い worktree のクリーンアップが、以前のクラッシュから再開したばかりのエージェント worktree を削除しうる競合状態を修正。

    agentsworktree

    詳しく
    エージェントの作業領域(worktree)を巡る競合状態(race condition)を修正しました。古くなった worktree を片付ける掃除処理が、前回のクラッシュから再開したばかりの稼働中の worktree を誤って削除してしまうことがありました。クラッシュ後にエージェント作業を引き継ぐ際の取りこぼしを防ぎます。
  • エージェントの実行中に /mcp などのダイアログを開いたときの入力デッドロックを修正。

    mcpui

    詳しく
    エージェントの実行中に /mcp のようなダイアログを開くと入力が固まる(デッドロックする)不具合を修正しました。これまでは処理中にこうした画面を開くとキー入力を受け付けなくなることがありました。実行中でもダイアログを安全に開けるようになります。
  • vim NORMAL モードで Backspace と Delete キーが効かない問題を修正。

    ui

    詳しく
    vim 風キー操作(vim mode)の不具合を修正しました。NORMAL モードのときに Backspace キーと Delete キーが反応しませんでした。vim mode を使う人が、これらのキーで通常どおり編集できるようになります。
  • vim モードのオン/オフを切り替えたときにステータスラインが更新されない問題を修正。

    statuslineui

    詳しく
    vim mode の状態表示の不具合を修正しました。vim mode をオン/オフに切り替えても、画面下部のステータスラインに反映されず、現在のモードが分からないことがありました。修正後は切り替えに合わせて表示が更新されます。
  • VS Code・Cursor など xterm.js ベースのターミナルで、Cmd+クリックでハイパーリンクが 2 回開く問題を修正。

    ideui

    詳しく
    ターミナル内のリンクをクリックしたときの不具合を修正しました。VS Code や Cursor など xterm.js を使ったターミナルで、Cmd+クリックするとリンクが 2 回開いてしまっていました(同じページが二重にブラウザで開く状態)。これらのエディタに組み込まれたターミナルで Claude Code を使う人に関係する修正です。
  • 既定設定の tmux 内で、背景色がターミナルの既定として描画される問題を修正。

    ui

    詳しく
    tmux(端末多重化ツール)内での色表示の不具合を修正しました。既定設定の tmux の中では、背景色が正しく出ずターミナルの既定色になってしまっていました。tmux で Claude Code を使う人が、本来の配色で表示されるようになります。
  • SSH 越しの tmux 内でテキストを選択したときの iTerm2 セッションのクラッシュを修正。

    ui

    詳しく
    iTerm2(macOS のターミナルアプリ)のクラッシュを修正しました。SSH 接続先の tmux の中でテキストを選択すると、iTerm2 のセッションが落ちることがありました。リモートサーバに SSH 接続して tmux 越しに作業する人に影響していた問題です。
  • tmux セッションでクリップボードコピーが無言で失敗する問題を修正。コピーのトーストが、⌘V と tmux の prefix+] のどちらで貼り付けるかを示すようになりました。

    ui

    詳しく
    tmux セッションでクリップボードへのコピーが黙って失敗する不具合を修正しました。あわせて、コピー時に出る通知(トースト)が、⌘V で貼り付けるのか tmux の prefix+] で貼り付けるのかを案内するようになりました。tmux 内でコピー操作をする人が、確実にコピーでき、正しい貼り付け方法も分かるようになります。
  • リストを移動中に、設定・権限・サンドボックスのダイアログで / が誤ってタブを切り替える問題を修正。

    ui

    詳しく
    設定・権限・サンドボックスのダイアログでのキー操作の不具合を修正しました。これまではリスト内を移動しているときに / キーが誤ってタブの切り替えに反応してしまうことがありました。修正後はリスト移動中に意図せずタブが変わらなくなります。
  • tmux や screen 内で Claude Code を起動したとき、IDE 統合が自動接続しない問題を修正。

    ide

    詳しく
    IDE(エディタ)連携の自動接続の不具合を修正しました。tmux や screen といった端末多重化ツールの中から Claude Code を起動すると、IDE 統合が自動でつながらないことがありました。tmux や screen を介してエディタと連携させたい人に関係する修正です。
  • CJK 文字が右端で切れたとき、隣接する UI 要素に視覚的にはみ出す問題を修正。

    ui

    詳しく
    CJK 文字(日本語・中国語・韓国語など全角文字)の表示崩れを修正しました。画面の右端で文字が切れるとき、隣の UI 要素に文字がはみ出して見えることがありました。日本語などを表示する人にとって、レイアウトの乱れが解消されます。
  • リーダーが終了してもメンバーのペインが閉じない問題を修正。

    agentsui

    詳しく
    複数エージェントを並行で動かす機能(チームメイト)のペイン管理の不具合を修正しました。まとめ役のリーダーが終了しても、メンバーのペイン(分割された画面)が閉じずに残ってしまっていました。修正後はリーダーの終了に合わせてメンバーのペインも片付けられます。
  • ネイティブ分割ペインのメンバーで、iTerm2 の自動モードが iTerm2 を検出しない問題を修正。

    agents

    詳しく
    チームメイトをネイティブの分割ペインで表示する機能の不具合を修正しました。自動モードのときに、使っているターミナルが iTerm2 であることを検出できず、分割ペインが正しく機能しないことがありました。iTerm2 でエージェントを並べて使う人に関係する修正です。
原文 Markdown を表示
## 2.1.77

- Increased default maximum output token limits for Claude Opus 4.6 to 64k tokens, and the upper bound for Opus 4.6 and Sonnet 4.6 models to 128k tokens
- Added `allowRead` sandbox filesystem setting to re-allow read access within `denyRead` regions
- `/copy` now accepts an optional index: `/copy N` copies the Nth-latest assistant response
- Fixed "Always Allow" on compound bash commands (e.g. `cd src && npm test`) saving a single rule for the full string instead of per-subcommand, leading to dead rules and repeated permission prompts
- Fixed auto-updater starting overlapping binary downloads when the slash-command overlay repeatedly opened and closed, accumulating tens of gigabytes of memory
- Fixed `--resume` silently truncating recent conversation history due to a race between memory-extraction writes and the main transcript
- Fixed PreToolUse hooks returning `"allow"` bypassing `deny` permission rules, including enterprise managed settings
- Fixed Write tool silently converting line endings when overwriting CRLF files or creating files in CRLF directories
- Fixed memory growth in long-running sessions from progress messages surviving compaction
- Fixed cost and token usage not being tracked when the API falls back to non-streaming mode
- Fixed `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` not stripping beta tool-schema fields, causing proxy gateways to reject requests
- Fixed Bash tool reporting errors for successful commands when the system temp directory path contains spaces
- Fixed paste being lost when typing immediately after pasting
- Fixed Ctrl+D in `/feedback` text input deleting forward instead of the second press exiting the session
- Fixed API error when dragging a 0-byte image file into the prompt
- Fixed Claude Desktop sessions incorrectly using the terminal CLI's configured API key instead of OAuth
- Fixed `git-subdir` plugins at different subdirectories of the same monorepo commit colliding in the plugin cache
- Fixed ordered list numbers not rendering in terminal UI
- Fixed a race condition where stale-worktree cleanup could delete an agent worktree just resumed from a previous crash
- Fixed input deadlock when opening `/mcp` or similar dialogs while the agent is running
- Fixed Backspace and Delete keys not working in vim NORMAL mode
- Fixed status line not updating when vim mode is toggled on or off
- Fixed hyperlinks opening twice on Cmd+click in VS Code, Cursor, and other xterm.js-based terminals
- Fixed background colors rendering as terminal-default inside tmux with default configuration
- Fixed iTerm2 session crash when selecting text inside tmux over SSH
- Fixed clipboard copy silently failing in tmux sessions; copy toast now indicates whether to paste with `⌘V` or tmux `prefix+]`
- Fixed `←`/`→` accidentally switching tabs in settings, permissions, and sandbox dialogs while navigating lists
- Fixed IDE integration not auto-connecting when Claude Code is launched inside tmux or screen
- Fixed CJK characters visually bleeding into adjacent UI elements when clipped at the right edge
- Fixed teammate panes not closing when the leader exits
- Fixed iTerm2 auto mode not detecting iTerm2 for native split-pane teammates
- Faster startup on macOS (~60ms) by reading keychain credentials in parallel with module loading
- Faster `--resume` on fork-heavy and very large sessions — up to 45% faster loading and ~100-150MB less peak memory
- Improved Esc to abort in-flight non-streaming API requests
- Improved `claude plugin validate` to check skill, agent, and command frontmatter plus `hooks/hooks.json`, catching YAML parse errors and schema violations
- Background bash tasks are now killed if output exceeds 5GB, preventing runaway processes from filling disk
- Sessions are now auto-named from plan content when you accept a plan
- Improved headless mode plugin installation to compose correctly with `CLAUDE_CODE_PLUGIN_SEED_DIR`
- Show a notice when `apiKeyHelper` takes longer than 10s, preventing it from blocking the main loop
- The Agent tool no longer accepts a `resume` parameter — use `SendMessage({to: agentId})` to continue a previously spawned agent
- `SendMessage` now auto-resumes stopped agents in the background instead of returning an error
- Renamed `/fork` to `/branch` (`/fork` still works as an alias)
- [VSCode] Improved plan preview tab titles to use the plan's heading instead of "Claude's Plan"
- [VSCode] When option+click doesn't trigger native selection on macOS, the footer now points to the `macOptionClickForcesSelection` setting