dispatching-parallel-agents について
Dispatching Parallel Agentsは、互いに無関係な障害を、独立した問題領域ごとにエージェントへ割り当てて並行調査するスキルです。タスク範囲の指定、結果の統合、修正の検証も扱います。
主な機能
- 01問題領域ごとに障害を分類
- 02エージェントに範囲を絞ったタスクを割り当て
- 03独立した調査を並行実行
- 04修正間の競合を確認
- 05全テストスイートで変更を検証
活用シーン
- 01根本原因が異なる障害の調査
- 02独立したサブシステムの不具合分析
- 03共有状態のない並行調査
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ hjewkes/ agent-skills --skill dispatching-parallel-agentsインストール後、Claude Code で/dispatching-parallel-agentsを入力して読み込まれたか確認します。
同梱ファイルreferences/agent-prompts-and-examples.md
詳細
並列エージェントのディスパッチ
概要
複数の関連性のない失敗(異なるテストファイル、異なるサブシステム、異なるバグ)がある場合、それらを順番に調査すると時間がかかります。それぞれの調査は独立しており、並列に進められます。
基本原則: 独立した問題領域ごとにエージェントを1つディスパッチします。並行して作業させましょう。
使用するタイミング
digraph when_to_use {
"Multiple failures?" [shape=diamond];
"Are they independent?" [shape=diamond];
"Single agent investigates all" [shape=box];
"One agent per problem domain" [shape=box];
"Can they work in parallel?" [shape=diamond];
"Sequential agents" [shape=box];
"Parallel dispatch" [shape=box];
"Multiple failures?" -> "Are they independent?" [label="yes"];
"Are they independent?" -> "Single agent investigates all" [label="no - related"];
"Are they independent?" -> "Can they work in parallel?" [label="yes"];
"Can they work in parallel?" -> "Parallel dispatch" [label="yes"];
"Can they work in parallel?" -> "Sequential agents" [label="no - shared state"];
}
次の場合に使用します: 根本原因が異なる失敗が3件以上ある場合、複数の独立したサブシステムが壊れている場合、調査間で共有状態がない場合。
次の場合は使用しないでください: 失敗に関連性がある場合、システム全体のコンテキストが必要な場合、エージェント同士が干渉する場合(同じファイルを編集するなど)。
パターン
1. 独立した領域を特定する
何が壊れているかを基準に、失敗をグループ化します。それぞれの領域は独立しており、1つを修正しても他には影響しません。
2. 焦点を絞ったエージェントタスクを作成する
各エージェントには、具体的な範囲(1つのファイル/サブシステム)、明確な目標、制約(他のコードを変更しない)、期待する出力(調査結果と修正の概要)を指定します。回答形式の制約も含めます。トークン予算(例:「1000トークン未満」)と構成(例:「最初に結論、その後に詳細」)を指定してください。
モデルの選択: 実装エージェントには Opus、レビュー/分析エージェントには Sonnet、簡単な検証やフォーマット作業には Haiku を使用します。
標準的な6セクションのプロンプト構成については、ディスパッチプロンプトのテンプレートを使用してください。
3. 並列にディスパッチする
Task("Fix agent-tool-abort.test.ts failures")
Task("Fix batch-completion-behavior.test.ts failures")
Task("Fix tool-approval-race-conditions.test.ts failures")
4. レビューして統合する
各要約を読み、修正が互いに競合しないことを確認し、テストスイート全体を実行して、すべての変更を統合します。
使用しない場合
- 関連する失敗: 1つを修正すると他の失敗も解消する可能性があるため、まずまとめて調査します
- 全体的なコンテキストが必要: 理解するにはシステム全体を見る必要があります
- 探索的なデバッグ: 何が壊れているのか、まだわかっていません
- 共有状態: エージェント同士が干渉します(並列化がほかの点で有益な場合は、分離のために git worktree の使用を検討してください)
検証
エージェントから結果が返されたら:
- 各要約をレビューする — 何が変更されたかを把握します
- 競合を確認する — エージェントが同じコードを編集したか確認します
- テストスイート全体を実行する — すべての修正が一緒に機能することを確認します
- 抜き取り確認を行う — エージェントが体系的な誤りを犯すことがあります
エージェントのプロンプト構成、よくある間違い、実例の解説については、references/agent-prompts-and-examples.mdを参照してください。