並列で調べさせて、報告を型で揃えて、別エージェントで裏取りもできるようになった——その次に静かに効いてくるのが「親(呼び出した側)のコンテキストが、子の報告で埋まっていく」問題です。この記事は、サブエージェントの結果を親にどう返させると、親の文脈を汚さずに調査を回し続けられるか、の話です。
これは「報告を構造化して並列集計する」「独立した検証エージェントで裏取りする」話の続編です。前回までは子から受け取った中身の扱いでしたが、今回は子に何を返させ、親に何を残さないかという受け渡しの設計です。
Claude Code(Anthropicの公式CLI)でサブエージェントに調査を任せると、子は自分の文脈で大量のファイルを読み、長い思考をして、結論を返してきます。便利なのですが、子が読んだ全文や思考の途中経過まで親に戻ってくると、親のコンテキストはあっという間に膨らみます。
やっかいなのは、これが少しずつ効くことです。1体なら気になりませんが、5体・10体と並列で回すうち、親の窓は子の報告で埋まり、肝心の「全体をどう判断するか」に使える余白が削れていきます。集めるほど親が重くなる、という逆説です。
この記事では、筆者が横断調査をエージェントに任せるなかで効いた、「子には結論だけを返させ、詳細は子の中に置いてくる」型を紹介します。コードを書かせる用途ではなく、調査・要約・棚卸しを何体も回すときの、親側の身軽さの話です。
まず:子に「読んだものを全部見せて」と言ってはいけない
最初にやりがちなのが、子に調査させて「わかったことを全部教えて」と返させることです。これは親が詰まります。
子は親切なので、根拠として読んだファイルの中身、検討した選択肢、途中で却下した案まで丁寧に貼って返してきます。親にとって本当に必要なのは「結論はどうだったか」と「後で深掘りするための住所(どのファイルか)」だけなのに、その何倍もの分量が戻ってくる。
ポイントは2つです。
- 子の出力は「親が次の判断に使う最小限」に絞らせる
- 詳細(全文・ログ・途中経過)は親に戻さず、子の中で完結させる
解決:返り値の「形」と「量」を指示で固定する
子への指示に、返してほしい形と、返してほしくないものを明記するだけで、親に戻る分量が変わります。
Before(全部返ってきて親が詰まる)
このディレクトリを調査して、わかったことを教えてください。
→ 読んだファイルの引用、検討過程、長い前置きまで戻ってきて、親の窓が一気に埋まる。
After(結論+住所だけ返させる)
このディレクトリを調査してください。
返すのは次の3点だけにしてください。本文の全文引用や思考の途中経過は返さないこと。
- 結論: 1〜3行で要点だけ
- 根拠の住所: 確認したファイルのパスと行(中身の貼り付けは不要)
- 次に必要なら深掘りする箇所: あれば1つ
確認できなかったことは「確認できず」と書き、推測で埋めないこと。
「全文は返すな」「住所(パス)だけ渡せ」——この2つを足すだけで、親は結論と地図だけを受け取れます。後で詳細が要るときは、その住所を指してもう一度子を呼べばいい。前回の「分からないものは判断不能と書かせる」と同じで、返り値の境界を指示で決めるのがコツです。
一段上:親は「索引」だけ持ち、中身は子に取りに行かせる
調査が増えるほど効くのが、親は索引(どこに何があるか)だけを保持し、詳細は必要になった瞬間に子へ取りに行かせるという分担です。
(親の手元に残すもの)
- 各調査の結論1〜3行
- 「詳細はこのファイル/この子に聞けば取れる」という住所
(親に戻さないもの)
- 読んだファイルの全文
- 子の思考ログ・却下案
- 整形前の生データ
こうすると、10体回しても親に積み上がるのは「結論×10+住所×10」だけで済みます。深掘りが必要な1件だけ、住所を指してフルの調査をもう一度させる。広く浅く集める層と狭く深く掘る層を分けるイメージです。
実務での割り切りはこの程度で十分でした。
| 状況 | 子に返させる量 |
|---|---|
| 多数を一覧したい(広く浅く) | 結論1〜3行+住所だけ。全文は禁止 |
| 後の判断に効く1件(狭く深く) | その住所を指して、根拠込みでフルに返させる |
| 親がそのまま集計したい | 決まった型(前回の構造化)で結論だけ揃えて返させる |
構造化と地続き:型で返すと「結論だけ」が機械的に揃う
前回までの「報告を決まった型で返させる」が、ここでも効いてきます。子の返り値を 結論 / 住所 / 確信度 のような同じ型に固定しておけば、親はその型のまま並べるだけで全体像になります。
- 各調査の子 →
結論と住所を構造化して返す(全文は返さない) - 親 → 結論だけを一覧して、引っかかった1件の
住所を指して再調査 - 検証が要る主張 → 前回の独立検証エージェントに、その
住所を渡す
「並列調査 → 集計 → 裏取り」に、今回の「詳細は子に置いてくる」が加わると、何体回しても親が軽いまま回り続けます。
落とし穴:削りすぎると「裏が取れない結論」になる
身軽さを優先しすぎると、逆に困るので明記します。
- 住所(根拠のありか)まで削ってはいけません。 結論だけを受け取って住所を捨てると、後から「なぜそう言えるのか」をたどれなくなります。中身は戻さなくていいが、どこを見れば確認できるかは必ず残させます。
- 「結論だけ」は楽観の温床にもなります。 子が省略した部分に「確認できなかった」が隠れていることがあるので、前回同様 「確認できなければ確認できずと書け」 を必ず添えます。省略と「確認済み」を取り違えないためです。
- 深掘りは“もう一度呼ぶ”前提で。 一発で全部返させようとすると結局親が詰まります。広く浅く集めてから、必要な1件だけ深く——の2段に分けるほうが、トータルでは軽く済みます。
- 取り返しのつかない操作の前は、住所を開いて人間が現物確認。 「消す・送る・公開する・課金する」系は、結論だけで動かず、残した住所を実際に開いて確かめる一段を挟みます。
まとめ
| 型 | 要点 |
|---|---|
| 全文を返させない | 子の読んだ中身・思考ログは親に戻さない |
| 結論+住所だけ受け取る | 1〜3行の結論と、確認できるパスだけを返させる |
| 親は索引、子が中身 | 親は地図を持ち、詳細は必要時に子へ取りに行かせる |
| 2段に分ける | 広く浅く集める層と、1件を深く掘る層を分離 |
| 削りすぎない | 住所と「確認できず」は必ず残す。後で裏が取れるように |
並列調査は「速く集める」だけでも「正しく裏取りする」だけでも足りません。集めた結果で親を詰まらせない受け渡しまで設計して、はじめて何体でも回し続けられます。
まず1つだけ試すなら
仕組みを丸ごと組む必要はありません。次にAIに何かを調べさせるとき、依頼の最後にこの一文を足すだけで十分です。
返すのは「結論1〜3行」と「確認したファイルのパス」だけにしてください。
読んだ中身の全文引用や思考の途中経過は返さないこと。
確認できなかったことは「確認できず」と書いてください。
これだけで、戻ってくる報告が「結論と地図」に絞られ、続けて何件調べさせても手元が軽いままになります。まずは一番よく回す調査から試してみてください。
関連記事(サブエージェントシリーズ)
- 基礎編:サブエージェントを実務で使い倒す
- 第1弾:報告を「決まった型」で受け取る
- 第2弾:“もっともらしい嘘”を独立した検証で裏取りする
- 第3弾:親のコンテキストを汚さない受け渡し(本記事)
補足:試すための無料リポジトリ
サブエージェント運用の土台になるCLAUDE.md設計や、計画→実装→検証(PIV)の進め方、サブエージェントに渡すプロンプトの型などを、そのまま使えるスキルとして無料リポで公開しています(個人事業主・StreamSoltyとして運営しています)。
無料スターター(GitHub・CC BY 4.0):
https://github.com/noguso245-jpg/claude-code-skills-starter
クローンして自分のプロジェクトにコピーすればそのまま使えます。役に立ったら GitHub で ⭐ Star をいただけると、新しい無料スキルを追加する励みになります。
最新のTipsはXでも発信しています: @k___n___t_1125