2026年6月15日の課金分離(プログラム的な利用が Pool 2 の従量の枠へ分けられる変更)の発火の当日に、最も金額の大きい事故の一つが起票されました。サブエージェントが再帰的に子のエージェントを生み続け、止まらないままトークンの枠を焼き尽くす事故です。
この記事は、その事故が「なぜ起きるか」「どう止めるか」「焼けた後に成果をどう取り戻すか」を、実機で確かめた範囲だけで整理します。発火の前は枠を早く使い切るだけでしたが、発火の後は同じ暴走が Pool 2 の実費を自動で買い足す形になりうるので、対処の優先度が上がりました。
何が起きたか
起票 #68430 の利用者は、サブエージェントが50層を超える深さまで再帰的に子のエージェントを生み、約30分で120万トークン以上を消費した、と報告しました。別の事例では、Pro Max 20x の8時間の枠を5分未満で使い切ったとあります。仕事の中身は「リポジトリを clone して .sol のファイルを探す」程度の、本来は1回の git clone で済むものでした。
報告者の分析によると、5つの不具合が連鎖しています。
-
CLAUDE_CODE_FORK_SUBAGENT=0を設定しても無視され、サブエージェントが子を生むのを止められない。 - 権限の拒否が「停止」でなく「回避のための子エージェントの起動」の引き金になる。拒否されるたびに子を生み、その子も同じ壁に当たって孫を生む。
- サブエージェントの権限の要求が利用者まで上がってこないので、最初の拒否で止める機会が無い。
- リポジトリのファイルを clone でなく1ファイルずつ HTTP で取得し、その都度に全文脈を送り直す。
- 暴走を止めるために中断すると、途中までの全エージェントの成果が捨てられる。
関連する事故として、並列の分配(fan-out)で多数のサブエージェントが上位のモデルを継承し、枠の自動の補充と重なって税込で約864米ドルの自動の購入が起きた事例(#68285)もあります。
まず財務の出血を止める
5つの不具合は提供側のもので、当日には直りません。利用者の側で最初にやるべきは、暴走が「実費」を生む経路を塞ぐことです。
発火の後、暴走が枠を焼くだけなら追加の請求は出ません(プランの枠が早く尽きるだけ)。ですが、usage credits(Pool 2 の従量の枠)を有効にしていて、しかも自動の補充が有効だと、枠が尽きるたびに自動で買い足されます。並列の暴走と重なると、補充が連続して高額になります。#68285 の約864米ドルはこの形です。
- Console で支出の上限を設定する。上限に達すると、自動の補充でなく停止に倒れます。
- 枠の自動の補充(auto-reload)を切るか、低く設定する。
この2つで、暴走が「実費を無限に買い足す」状態から「止まる」状態に変わります。
止める——壊れたフラグに依存しないハードストップ
CLAUDE_CODE_FORK_SUBAGENT=0 が無視される以上、このフラグに頼ってはいけません。代わりに、PreToolUse の hook を Task(サブエージェントの起動)に合わせて使います。hook はサブエージェントが起動する「前」に走り、その起動を拒否できます。ハーネスが道具の境界で強制するので、環境変数が無視されても上限が効きます。
自分で書いてもよいですが、検証済みのものが cc-safe-setup にあります(無料、MIT)。nested-spawn-inflight-guard.sh は、起動のたびに会話の記録を走査し、まだ結果の返っていない(実行中の)Task 系の呼び出しを数え、CC_NESTED_SPAWN_BUDGET(既定は5)以上なら exit 2 で起動を拒否します。
{
"hooks": {
"PreToolUse": [{
"matcher": "Task|Agent|SendMessage",
"hooks": [{ "type": "command", "command": "~/.claude/hooks/nested-spawn-inflight-guard.sh" }]
}]
}
}
このhookは、同時に実行中の深さの上限を張るもので、生涯の累計の費用を止めるものではありません。だから「Console の支出の上限」と組み合わせて使います。手元のクリーンな状態で試験を走らせたところ、26件すべてが通りました(実行中の数の勘定、1ターンでの並列の起動の拒否、壊れた記録での安全側の素通り、など)。
なお、ここで一つ大事な機微があります。暴走したセッションでも hook 自体は発火しています。だから「セッションの中の hook」では止められません。止めるのは、起動の「前」に拒否する PreToolUse の経路です。
焼けた後に成果を取り戻す
#68430 の報告で見落とされやすいのが、5つ目の「中断すると全エージェントの成果が捨てられる」という点です。画面の上では、120万トークンを使って何も残らなかったように見えます。
ですが、成果はディスクに残っています。各サブエージェントは、自分の記録を1ターンずつ次の場所に書き出します。
~/.claude/projects/<プロジェクト>/<セッションID>/subagents/agent-<ID>.jsonl
これは、親のエージェントが結果を受け取るかどうかとは無関係に永続化されます。だから、暴走を kill した後でも、暴走の前に仕事を終えた初期のエージェントの成果は、このファイルの中に残っています。手元で確認したところ、私の環境には180件の agent-*.jsonl があり、それぞれにモデルの実際の出力のテキストが入っていました。
直近1時間に書かれた大きいものから見るには、次のようにします。
find ~/.claude/projects -path '*subagents*' -name 'agent-*.jsonl' \
-newermt '-1 hour' -printf '%s\t%p\n' | sort -rn | head
agent-*.jsonl は1行1レコードの平文で、テキストの成果は message.content[].text の下にあります。つまり「回収できる成果はゼロ」というのは、親のエージェントの視点では正しくても、ディスクの上では正しくありません。
崖との関係
繰り返しになりますが、発火の後は、この暴走がプランの枠でなく Pool 2 の従量の枠から引かれる経路に入りえます。その場合、暴走は「枠を早く使い切る」でなく「実費を自動で買い足す」になります。だから、財務の上限(Console の支出の上限と自動の補充の停止)を先に張ることが、発火の前よりも重要になりました。
まとめ
- 発火の後の最も金額の大きい事故の一つが、再帰的なサブエージェントの暴走です(#68430、#68285)。
- 5つの不具合は提供側のもので当日には直りません。利用者の側でできるのは、(1)財務の上限を張る(Console の支出の上限、自動の補充の停止)、(2)壊れたフラグに依存しない
PreToolUseのTaskの hook で起動の上限を張る、(3)焼けた後もsubagents/agent-*.jsonlから成果を取り戻す、の3つです。
6月15日の課金分離そのものへの対応(自分の利用が分離の対象か、4つの対応の経路、費用の見積もり)は、6月15日の課金分離に備える本(¥800、第2章まで無料) にまとめました。発火の当日に追加した第8章で、この暴走の事故への利用者側の対応を含む、発火初日の3つの混乱を扱っています。データの消失と復旧の予防の手引きは 事故防止本(¥800)、予防の hook の集まりは cc-safe-setup(無料)にあります。
同じ事故防止本は Kindle 版(Amazon・¥800)でも読めます。Kindle Unlimited なら追加料金なしで全文読めるので、まず無料で中身を確かめたい方はそちらが早いです。
複数のエージェントを並列で動かしていて、「なぜ子のエージェントが暴走するのか」「なぜ親に設定した安全のルールや hook が子に効かないのか」を、対症療法の hook だけでなく構造から押さえたい方には、AGENTS.md 相互運用本(¥1,500・第2章まで無料)の第10章が向いています。サブエージェント(Agent / Task)にCLAUDE.mdも hook もメモリも継承されないという「縦の相互運用」の問題として、この暴走の根(役割の文脈が継承されず子が孫を生む)と、利用者側の手当て(プロンプトへの注入・子の数と深さの上限・外向きの行動は親に残す)を整理しています。
Claude Code は毎月のように仕様が変わり、費用の膨らみ方も事故の新種も毎月出ます。「先月から何が変わったか・今すぐ直すべき設定や貼るべき hook はどれか」を毎月15日ごろ短く受け取りたい人には、Claude Code 事故まとめ(無料・月次)もあります(本は腰を据えて読む手引き、便りは毎月の鮮度で走らせる運用の線、という住み分けです)。
こうした「気づかないうちにトークンの消費が膨らむ」型の落とし穴を、実機のログから切り分けて消費を半分まで減らす全手順は、Claude Code のトークン消費を半分にする本(¥2,500・第1章まで無料の試し読み・26章)にまとめています。無料の土台として、危ない操作や費用の暴走を実行の前で止めるフック群を cc-safe-setup(MIT) に公開しています。
ほかにも、800時間の運用データから、トークン消費の削減・複数ベンダー(Claude / Codex / Gemini / Copilot)の並行運用・サブエージェントの沈黙の失敗対策など、テーマ別の手引きを公開しています。気になる人は著者の本の一覧から、価格と評価を見て選べます。