Claude Codeの公式Changelogをリリースから最速で翻訳・解説しています。
サブエージェントを何度も回しながら同じセッションを開けっぱなしにしていると、メモリが増え続けていた。v2.1.238 でこれが止まり、直近の表示ウィンドウから外れたツール結果は解放されるようになった。同じリリースには Remote Control 関連の修正が 10 行並んでいる。
効いてくる変更
| 変更 | 何が変わるか | バージョン |
|---|---|---|
| 長時間セッションのメモリ解放 | サブエージェントのツール結果が表示ウィンドウを出た時点で解放 | v2.1.238 |
headersHelper |
プラグインと MCP のヘッダーをコマンドで都度発行 | v2.1.238 |
| Remote Control の一括修正 | 消えるメッセージ・切れる接続・届かない Stop がまとめて修正 | v2.1.238 |
Ctrl+L の二度押し /clear 廃止 |
全画面の Ctrl+L と Cmd+K は再描画のみ | v2.1.238 |
| プロンプトキャッシュ | LLM ゲートウェイ・カスタム base URL 経由で効いていなかった | v2.1.237 |
| Concise 出力スタイル | 前置きと実況を省いて結果から返す組み込みスタイル | v2.1.237 |
1 日開けっぱなしのセッションでメモリが膨らんでいた
サブエージェントのツール結果が、画面から消えたあとも解放されずに残り続けていました。 v2.1.238 では、直近の表示ウィンドウから外れた時点で解放されます。会話が伸びるほど積み上がる作りだったので、上限なくメモリを食う挙動。
影響が出るのは、朝から晩まで同じセッションを開いたまま Task を何度も投げる使い方。タスクごとに claude を立ち上げ直していれば、プロセスが終わるたびに解放されるため表面化しません。
対象読者: 1 つのセッションを長時間維持したまま、その中でサブエージェントを繰り返し呼んでいる人。
出力スタイルが 2 バージョンにまたがって動いた
v2.1.237 で組み込みの出力スタイル「Concise」が追加。前置きと実況を省いて結果から書き始める挙動で、作業の丁寧さ自体は落とさない、と原文には書かれています。/config の Output style から選択。
Added a built-in "Concise" output style: Claude leads with results and skips preamble and narration, while doing the work just as thoroughly.
v2.1.238 では、カスタム・プロジェクト・プラグインの出力スタイルがセッション途中で既定の口調に戻ってしまう不具合が直りました。スタイルを自作している場合、長い会話の後半だけ指定が効いていない状態になっていたもの。
headersHelper でヘッダーをコマンドから発行する
claude plugin install my-plugin
# headersHelper のコマンドが表示され、[y/N] の確認が入る
claude plugin install my-plugin -y
v2.1.238 のプラグインマーケットプレイスに headersHelper が入りました。url マーケットプレイスやカタログエントリに書いておくと、カタログ取得と同一オリジンのアーカイブ取得の前にコマンドが走り、HTTP ヘッダーを生成します。短命トークンをその場で発行して載せる、というのが原文に挙がっている例。カタログエントリ側の headersHelper が走るのはインストールと更新のときだけで、実行前にコマンドの中身が表示される作りになっています。
プロジェクトの .mcp.json に書いた headersHelper、および project や --add-dir の agent ファイルに書いたインライン MCP サーバーは、そのフォルダの信頼ダイアログを承認済みでないと動きません。claude -p でも同じ扱いです。
MCP 側の headersHelper は、プロジェクトの .mcp.json・プラグイン・agent ファイル由来であれば、認証情報系の環境変数を引き継がずに実行されます。user / managed / claude.ai スコープのヘルパーは Claude の設定ディレクトリで実行。あわせて、stdio の MCP サーバーが initialize より先に server/discover を受け取り、遅延起動のサーバーがセッションを開くたびにバックエンドを立ち上げていた問題も直っています。
Remote Control は修正の塊
| 直った症状 | 修正後の挙動 |
|---|---|
| Web / Desktop からターン中に送ったメッセージが、ターン終了後にトランスクリプトから消える | 消えずに残る |
| 端末に表示されるモデル名が、スマホや Web でのモデル変更に追従しない | 追従する |
| 短いネットワーク断で「login expired」と出て切断される | リトライして接続を維持 |
プロセスが落ちたセッションが claude remote-control の再起動まで使えない |
次にメッセージを送った時点で再利用 |
| タスクパネルの個別 Stop が CLI ホストのセッションで無反応 | 効く |
claude remote-control 起動のセッションが、起動シェルのセッション環境変数を引き継ぐ |
引き継がない |
ListAgents / SendMessage が server モードや Desktop / IDE ホストで「not connected」を返す |
Remote Control のピアを列挙して到達できる |
セッション間メッセージは、失敗が送信元に届くようになりました。crossSessionInbound: "refuse" のように受信を拒否している相手へ送ると「refused」が返り、レート制限やキュー溢れで相手の受信箱がメッセージを捨てた場合も送信元に伝わります。どちらも以前は黙って成功扱い。
全画面の Ctrl+L から二度押し /clear が消えた
v2.1.238 で、全画面表示の Ctrl+L と Cmd+K は常に再描画だけを行うようになりました。二度押しで /clear が走るショートカットは削除されています。1 行しかない nvim ターミナルで /clear が自動的に連発される問題も、これで止まります。
keybindingFlavor 設定も追加されました。"readline" にすると、プロンプト上の Ctrl+W が Bash と同じく直前の空白まで削除する挙動に変わります。既定の "classic" は変更なし。
ゲートウェイとプロキシ越しの環境
v2.1.237 で、LLM ゲートウェイやカスタム base URL を挟んだセッションのプロンプトキャッシュが直りました。キャッシュが乗らないまま毎ターン投げ直していた分、レイテンシとトークン消費の両方に出ていた部分。v2.1.238 では /model と /effort のキャッシュミス警告が、プロンプトキャッシュの期限切れ後にも表示されていた件も直っています。
self-hosted runner にはフラグが増えました。
| フラグ | 挙動 |
|---|---|
--proxy-authorization-command / --proxy-authorization-file
|
接続ごとに新しい Proxy-Authorization ヘッダーを求める egress プロキシ向け |
--defer-shutdown-max-min <minutes> |
SIGTERM 後もアタッチ中のセッションを指定分だけ維持し、残りを park して終了 |
v2.1.238 は 39 行中 23 行が Fixed
v2.1.238 の changelog は 39 行、そのうち Fixed で始まる行が 23 行。修正先は Remote Control と、セッションを長く維持したときの挙動に寄っています。新設定は keybindingFlavor と self-hosted runner の 2 系統だけで、v2.1.237 は 2 行、プロンプトキャッシュの修正と Concise 出力スタイルの追加。
前回: Claude Code v2.1.236|.env を deny してもリネームで読めていた|毎日Changelog解説