multi-agent-debate について
multi-agent-debate は、Defender、Challenger、Evidence Hunter の独立した役割で仮説を検証するエージェントスキルです。証拠収集と推論を分け、直接的な証拠がなければ争点を未解決として残します。
主な機能
- 01Defender、Challenger、Evidence Hunter の並列実行
- 02主張と結論に付ける証拠タグ
- 03事実・争点・新しい証拠の分類
- 04ファイル・コード・コマンドによる争点の解決
- 05構造化された結論形式
活用シーン
- 01複数の独立したエージェントによる仮説の検証
- 02確認済みの事実と推論の区別
- 03争点を解決する証拠の探索
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ fudesign2008/ open-skills --skill multi-agent-debateインストール後、Claude Code で/multi-agent-debateを入力して読み込まれたか確認します。
同梱ファイルREFERENCE.md
詳細
マルチエージェント討論
基本ルール:推論に関する意見の相違は、さらに推論を重ねても解決できません。決着をつけるのは証拠だけです。
クイックスタート
- 仮説を1段落で記述します
- 既存の証拠を列挙します(それぞれに出典を記載します:ファイル、行、またはコマンド)
- 分析における最も弱い点を2~3個特定します
- 以下の3つのプロンプトに記入し、並行して起動します
task(subagent_type="explore", run_in_background=true, prompt="[DEFENDER]...")
task(subagent_type="oracle", run_in_background=true, prompt="[CHALLENGER]...")
task(subagent_type="explore", run_in_background=true, prompt="[EVIDENCE HUNTER]...")
プロンプトを分ける理由 各エージェントは、ほかのエージェントの目的を知らない状態でなければなりません。ChallengerがDefenderの見方を目にすると、本来攻撃すべき前提と同じ前提に引きずられてしまいます。REFERENCE.md を参照し、それぞれのプロンプトに個別に記入してください。
最小限のプロンプト構成(<...> に記入):
DEFENDER: "You are the DEFENDER for: <hypothesis>. Find direct physical evidence
(file:line, command output, code) for each claim. List the 3 weakest
points and collect pre-emptive counter-evidence."
CHALLENGER: "You are the CHALLENGER for: <hypothesis>. Find holes: alternative
explanations, single-sample claims, inferences used as facts. For
every alternative you propose, provide how to falsify it."
HUNTER: "Find facts only — no inference. Answer: <2-3 specific questions from
disputed claims>. Every answer must be a command output or code verbatim.
Tag each: [SUPPORTS] / [CHALLENGES] / [NEUTRAL]."
3つの役割
| 役割 | 目的 | エージェントの種類 |
|---|---|---|
| Defender | 仮説を裏付ける最も強力な証拠を見つける | explore |
| Challenger | 穴、別の説明、単一サンプルに基づく主張を見つける | oracle |
| Evidence Hunter | 新しい事実のみを見つける。推論は禁止 | explore |
5段階の流れ
- 準備 — 仮説+証拠リスト+最も弱い点を2~3個
- 起動 — 3つすべてのエージェントを並行して起動(
run_in_background=true) - 選別 — 結果を、合意された事実/異論のある主張/新しい証拠に分ける
- 裁定 — 意見の相違ごとに、それを直接解決できるコマンド/ファイル/コードを探します。推論しかない場合は
[UNRESOLVED]と記します - 結論 — 物理的な証拠がある内容だけを書きます。意見の分かれる項目は保留のままにします
結論の形式
### Confirmed Facts [FACT:source]
### Reasonable Inferences [INFERENCE]
### Unresolved Disputes — verification method needed
### Corrected Mistakes — original → corrected | evidence
証拠タグ
[FACT:file:line] · [FACT:cmd] · [FACT:N samples] · [INFERENCE] · [SPECULATION] · [UNRESOLVED]
結論に根拠のない主張を含めてはいけません。すべての文にタグが必要です。
例を含むプロンプトテンプレート、よくある落とし穴、裁定の決定ツリー、証拠の優先順位ルールについては、REFERENCE.md を参照してください。
コメント
Markdown 対応