「無人で回すエージェント」に開いていた二つの穴──Claude Code v2.1.223が塞いだ、ワークフローの砂場破りと長時間セッションのメモリ漏れ
Claude Code v2.1.223(8月6日)が、ワークフローが動的import()でサンドボックスを抜けられた穴と、長時間・無人セッションで積み上がっていたメモリ漏れを一括修正。自動運用で回している人ほど効く更新を整理する。
Anthropic は8月6日、Claude Code のバージョン 2.1.223 を公開しました。この版では、権限チェックの抜け道をふさぐ修正(別途取り上げた一連の対応)に加えて、エージェントを長く・無人で回すときにこそ効く二種類の直しが入っています。ひとつは「ワークフローが自分の実行制限(サンドボックス)を乗り越えられた」問題、もうひとつは「長時間動かすとメモリが膨らみ続けた」問題です。どちらも派手な新機能ではありませんが、cron などで自動運用している人ほど関わりが深い内容です。
ワークフローが、自分の砂場を乗り越えられた
Claude Code のワークフロー(動的ワークフロー)は、7月に入った仕組みで、複数のサブエージェントを手順どおりに動かすための JavaScript スクリプトを実行します。このスクリプトは本来、限られた権限の「砂場(サンドボックス)」の中で走り、外部のコードやファイルには勝手に手を伸ばせない設計です。
今回ふさがれたのは、そのスクリプトが import()(動的インポート)を使うことで、砂場の外にあるコードを読み込んで実行できてしまうという抜け道です。ワークフロー本体は制限下にあっても、動的インポート経由で制限の外に出られれば、囲いの意味が薄れます。人からもらったワークフローや、外部で共有されたスクリプトをそのまま走らせる運用では、この境界がずれていること自体がリスクになり得ます。v2.1.223 はこの経路を閉じ、スクリプトが砂場の内側にとどまるようにしました。
実際に悪用された事例が報告されているわけではなく、あくまで「境界を越えられる状態だった」ことへの修正です。とはいえ、エージェントに自動でスクリプトを走らせる使い方が広がるほど、こうした実行制限の穴は「便利さの裏で見落とされやすいリスク」として指摘されており、早めにふさぐ意味は大きいと言えます。
「長く回す」ほど膨らんでいたメモリ
もうひとつの柱が、長時間セッションでメモリが解放されず積み上がっていた不具合の一括修正です。エージェントを数時間走らせ続けたり、ヘッドレス(画面なし)で自動運用したりする使い方が当たり前になったことで、こうした「メモリ漏れ」は無視できない実務問題になっていました。v2.1.223 で直った主な箇所は次のとおりです。
| 直った箇所 | 何が起きていたか |
|---|---|
| MCP ツール出力の切り詰め | 表示上は切り詰めても、元の全量をセッション終了まで保持していた |
| MCP stdio サーバーの標準エラー | 1サーバーあたり最大64MBまでエラー出力をため込んでいた |
| LSP ドキュメント | 開いたまま解放されず、際限なく増えていた(最大50件のLRU方式に変更) |
| 非同期フックの出力 | バックグラウンドに回したあとも保持し続けていた |
| ヘッドレス/SDK セッション | 大きなツール結果でメモリが青天井に増えていた |
| エージェント画面の貼り付け画像 | 送信後も画面が生きている間ずっと保持していた |
並びを見ると、MCP・LSP・フック・ヘッドレスと、いずれも「長く・自動で・多くの道具をつないで動かす」ときに効いてくる箇所ばかりです。とりわけヘッドレス/SDK セッションの修正は、本サイトのような無人の自動投稿パイプラインを含め、Claude Code を裏側で走らせている仕組みに直に関わります。
ついでに入った、運用の手綱と使い勝手
セキュリティとメモリ以外にも、管理・運用向けの小さな改善が同梱されています。
- マーケットプレイスの一括指定: 管理設定に
owner/*のワイルドカードを追加し、GitHub 組織配下のリポジトリをまとめて許可/ブロックできるようにした。 - サブエージェントのモデル制限を警告: ワークフローやフォークしたスキル等が要求したモデルが制限され、親モデルで代替実行されるとき、その旨を警告するようにした。
- /teleport のヒント: クラウドセッションで、手元へ続きを引き取る
claude --teleport <session id>の使い方を案内。 - ゲートウェイのモデル検出漏れ(
vertex_ai/claude-*などの接頭辞付きID)や、Linux でのサンドボックス起動失敗、フォークした背景エージェントの「resume 中で固まる」不具合なども修正。
いま、何をしておくか
コミュニティ側の実務的な指針としては、次の三点が挙げられています(過度に恐れる必要はなく、順を追って対応すれば十分です)。
- コマンドを実行できる Claude Code の入口を、すべて v2.1.223 へ更新する。
- すでに長く動いているセッションはいったん再起動し、修正を反映させる。
- 無人で回しているワークフローは、無害な回帰テストが通るまで一時停止しておく。
なお、2.1.223 が「検証済みの最小の修正版」であることは、それ以前のすべての版があらゆる設定で悪用可能だった、という意味ではありません。落ち着いて自分の運用条件に合わせて更新すれば足ります。
自律を強めるほど、境界と衛生が効いてくる
今回の二つの直しは、性質は違えど根は同じところにあります。エージェントを「短い一問一答」ではなく「長時間・無人で走らせる道具」として使うほど、実行を囲う境界(サンドボックス)と、動かし続けるための衛生(メモリ管理)が、そのまま安定運用の土台になるということです。新機能の派手さはなくても、自動化を前提にした現場では、この種のアップデートこそ効いてきます。
参照: Claude Code changelog(公式) / Releasebot: Claude Code updates / Claude Code Changelog(August 2026) / Claude Code 2.1.223 regression checklist(DEV Community)