中級
サブエージェントを並列でスポーンしてタスクを分散する
Agent ツールと TodoWrite を組み合わせて、独立したタスクを複数のサブエージェントに並列分散する方法
agentsparallelmulti-agent
サブエージェントを並列でスポーンしてタスクを分散する
Claude Code の Agent ツールを使うと、独立したタスクをサブエージェントに委任できます。複数の独立したタスクがある場合、それらを並列でスポーンすることで、全体の実行時間を大幅に短縮できます。
基本的な並列スポーン
以下の3つのタスクを並列で実行して:
1. src/auth/login.ts のセキュリティレビュー
2. src/api/users.ts のパフォーマンス分析
3. tests/auth.test.ts のテストカバレッジ評価
Claude は独立したタスクを検出すると、複数のサブエージェントを並列スポーンします。
Superpowers の dispatching-parallel-agents スキル
Superpowers プラグインには、並列エージェントディスパッチのための専用スキルがあります。このスキルは以下の判断フローを提供します。
- タスクが2つ以上の独立した領域にまたがるか
- 共有状態や順次依存がないか
- 各エージェントが自己完結できるか
エージェントプロンプトのベストプラクティス
並列エージェントに渡すプロンプトは、以下の条件を満たす必要があります。
| 条件 | 説明 |
|---|---|
| フォーカス済み | 1つの明確な目標 |
| 自己完結 | 外部コンテキストに依存しない |
| 具体的 | 期待される出力形式を指定 |
| 制約あり | スコープの境界を明記 |
良い例
src/utils/validators.ts の全てのバリデーション関数に対して
ユニットテストを生成して。各テストは vitest を使用し、
正常系・境界値・エラーケースをカバーすること。
結果を tests/validators.test.ts に書き出して。
悪い例
テストを書いて
結果の統合
並列エージェントが完了したら、結果を統合します。
- 各エージェントのサマリーを確認
- 競合がないことを検証
- フルテストスイートを実行
- 必要に応じて統合
エージェントのモデル選択
タスクの複雑さに応じてモデルを使い分けることで、コストと品質のバランスを最適化できます。
| 複雑さ | モデル | 例 |
|---|---|---|
| 機械的 | haiku | フォーマット変換、ファイル検索 |
| 標準的 | sonnet | バグ修正、機能実装 |
| 高度 | opus | アーキテクチャ設計、コードレビュー |
カスタムエージェント定義で model フィールドを設定することで、自動的にモデルが選択されます。
注意点
- 同一ファイルを複数エージェントが編集しないようにスコープを分割
- 並列数は3-5が目安(コンテキストウィンドウの制約)
- 統合後のテスト実行を忘れずに
あわせて読む
- カスタムエージェントで専門タスクを委任する - エージェント定義の基本
- エージェントチームで大規模タスクを並列遂行する - チームレベルの並列実行
- Worktree で並行作業を安全に行う - ファイル競合の防止
関連コンテンツ
ワークフロー
フェーズ5: レビュー
実装されたコードの品質、セキュリティ、要件との合致を検証するフェーズ。自動レビューと人間によるレビューを組み合わせ、品質ゲートを確実に通過する手法を解説。
ワークフロー
フェーズ4: 実装
計画に基づいてコードを記述するフェーズ。TDD、サブエージェント駆動開発、並列実行などの手法を活用し、品質と効率を両立させる手法を解説。
Tips
エージェントチームで大規模タスクを並列遂行する
TeamCreate, TaskCreate, SendMessage を使って、複数の独立セッションで協調動作するエージェントチームを構築する方法
Tips
カスタムエージェントで専門タスクを委任する
.claude/agents/ にエージェント定義を作成し、専門的なタスクをサブエージェントに委任する方法