Home / Glossary / サブエージェント

Definition

サブエージェント

サブエージェントとは、複雑なタスクの独立した部分を同時に処理するために、メインのAIコーディングエージェントによって生成される並列の子プロセスです。すべてを順次処理する代わりに、メインエージェントがサブタスクを専門の子エージェントに委任し、並列に実行して結果を親に報告します。

サブエージェントの仕組み

メインエージェントが複数の独立した部分を持つタスクに遭遇すると、それらを並列に処理するためにサブエージェントを生成できます。例えば、「認証・決済・通知モジュールを新しいエラー処理パターンを使うようにリファクタリングして」と依頼された場合、メインエージェントは3つのサブエージェントを生成します——各モジュールに1つずつ。各サブエージェントは関連ファイルを読み込み、変更を加え、テストを独立して実行します。メインエージェントは結果を収集し、変更全体の一貫性を確保します。

サブエージェントが有効な場面

  • +複数の独立したモジュールにまたがる大規模なリファクタリングタスク
  • +コードベースの異なる部分を同時に調査する
  • +複数の分析タスク(セキュリティ監査・パフォーマンスチェック・スタイルレビュー)を並列実行する
  • +複数の独立したコンポーネントのコードを一度に生成する
  • +複数の根本原因が考えられる複雑なバグを調査する

サブエージェントはサブタスクが真に独立している——同じファイルを変更しない、互いの出力に依存しない——ときに最も効果的です。タスクに依存関係がある場合は、競合を避けるために単一エージェントによる順次実行の方が適切です。

Claude CodeはTaskツールを通じてサブエージェントをサポートしています。メインエージェントは特定の指示とスコープされた権限で子エージェントを生成し、その結果を統合して一貫した応答にまとめることができます。

サブエージェントはメインエージェントとコンテキストを共有しますか?+
サブエージェントは作成時にメインエージェントからコンテキストを受け取りますが、ライブのコンテキストウィンドウは共有しません。各サブエージェントは自独自のコンテキストで独立して動作します。メインエージェントは最終的な出力を受け取り、統合します。
同時に何個のサブエージェントを実行できますか?+
これはツールと利用可能なリソースによって異なります。Claude Codeは複数のサブエージェントを並列実行でき、各タスクの複雑さによって通常2〜5個です。実際の上限はトークン使用量とAPIのレート制限によって決まります。
サブエージェントは自分自身のサブエージェントを生成できますか?+
原理的には可能で、エージェントのツリーが作られます。実際には、ほとんどのタスクは1レベルの委任でうまく処理できます。深いネストはほとんどのコーディングタスクで比例したメリットなしに複雑さを増すだけです。
サブエージェントを使うべきでない場合は?+
タスクが互いに依存関係を持つ場合・同じファイルを変更する場合(マージ競合のリスク)・複数のエージェントを生成・調整するオーバーヘッドより順次処理の方が速い小さなタスクの場合は、サブエージェントを避けましょう。

Related terms

エージェンティック・コーディングClaude CodeコーディングエージェントヘッドレスAIエージェント

Master Claude Code in days, not months

37 hands-on lessons from beginner to CI/CD automation. Module 1 is free.

START FREE →
← ALL TERMS