マルチエージェント熟議:合意こそがバグである理由
私のAIエージェントが生成する最も危険な出力は、エラーではありません。エラーは簡単です。リンターが構文ミスを検出し、テストスイートがリグレッションを検出し、私が構築した95個のフックがexcept: passやフォースプッシュを検出します。危険な出力とは、自信に満ちた、よく練られた推奨事項でありながら、たまたま間違っているものです。
シングルエージェントにAPIエンドポイントのセキュリティレビューを依頼しました。エージェントは認証を確認し、入力サニタイズを検証し、CORSヘッダーを確認しました。問題なし。別のエージェントをペネトレーションテスターとして個別にプロンプトしたところ、そのエンドポイントが無制限のクエリパラメータを受け入れ、データベースクエリの増幅によるサービス拒否攻撃を引き起こす可能性があることを発見しました。最初のエージェントは、その評価フレームワークにおいてクエリの複雑性をセキュリティサーフェスとして扱っていなかったため、確認すらしませんでした。
このギャップは構造的なものです。プロンプトエンジニアリングをいくら工夫しても修正できません。なぜなら、限界はプロンプトにあるのではなく、一つの視点で多次元の問題を評価していることにあるからです。
私はこのギャップを埋めるためにマルチエージェント熟議システムを構築しました。異なるペルソナを持つエージェントが独立して調査し、発見事項について議論し、構造化された投票を通じてコンセンサスに到達します。このシステムは141のテストを実行し、エージェント間のコンテキスト分離を強制し、早期の合意をブロックする2段階のバリデーションアーキテクチャを使用しています。
TL;DR
シングルエージェントAIシステムには構造的な盲点があります。自分自身の前提を疑うことができないのです。RalphループでSonnetを実行すれば時給10ドルでコードを生成できますが、モデルのすべての盲点も同じ速度で出荷されます。マルチエージェント熟議は、いかなる決定が確定する前にも、複数の視点からの独立した評価を強制します。私の実装では、10の調査ペルソナ、7フェーズのステートマシン、そしてClaude Codeフック上で動作する2つのバリデーションゲート(コンセンサス+プライドチェック)を使用しています。このシステムは低信頼度の決定(0.70未満)で発動し、熟議1回あたり約3倍のトークンコストがかかります。セキュリティに関する決定、アーキテクチャの選択、そして不可逆的な操作については、シングルエージェントが見逃したものを初めて検出した時点で、そのコストは十分に回収されます。ドキュメントの修正や日常的な編集については、熟議を完全にスキップしてください。
エージェントたちが全てを壊すことに合意した夜
2026年2月。火曜日でした。エージェントに「フックディスパッチシステムの改善を調査して」と指示し、コーヒーを淹れに離れました。エージェントは自身の信頼度を0.58(0.70の閾値以下)と評価し、熟議がトリガーされました。システムは3つの調査エージェントを生成しました。各調査エージェントは問題を評価し、サブ問題を発見し、独自の調査エージェントを生成しました。それらのエージェントがさらに生成を繰り返しました。
7分後:23のアクティブなエージェントプロセス。APIクレジット4.80ドルが消費されました。各エージェントが律儀に調査結果を永続化する中、~/.claude/state/ディレクトリはJSONステートファイルで埋まっていきました。トークン消費は毎分約0.70ドルのペースで上昇し、収束の兆しはありませんでした。
品質システムのために構築した再帰ガードは、深さ(親が子を生成し、子が孫を生成する)は追跡していましたが、幅(親が12の子を生成し、それぞれがさらに12を生成する)は追跡していませんでした。深さの制限3はトリガーされませんでした。エージェントが水平方向に展開したからです。手動でプロセスを停止し、ステートファイルを見つめました。
すべてのエージェントがフックディスパッチシステムの改善が必要だと合意していました。すべてのエージェントが合理的に聞こえる変更を提案していました。しかし、調査自体のスコープが適切かどうかを疑ったエージェントは一つもありませんでした。23のエージェントが間違った問いに対してコンセンサスを達成していたのです。
修正には20分かかりました。親あたりのアクティブな子の総数を追跡するスポーンバジェットを導入し、12に制限しました。より深い教訓の理解には、もっと時間がかかりました。私が文書化したインフラストラクチャ加速曲線は、フックインフラが既に存在していたからこそ、熟議システムを2週間で構築することを可能にしました。しかし、高速な構築は構造的な障害を防ぎません。シングルエージェントのRAGパイプラインから自律システムへの進化は、予測可能な弧を描きます。マルチエージェント熟議がその終点にあるのには理由があります。シングルエージェントが自信を持って間違った答えを出荷した後でなければ、構築しないのです。
危険な障害モードは、不合意ではなく合意でした。
熟議の解剖
このシステムには2つの構造的コンポーネントがあります。作業を順序付けるステートマシンと、不適切なコンセンサスの出荷を防ぐ2つのバリデーションゲートです。
ステートマシン
7つのフェーズがあり、それぞれ前のフェーズによってゲートされます。
IDLE -> RESEARCH -> DELIBERATION -> RANKING -> PRD_GENERATION -> COMPLETE
|
(or FAILED)
RESEARCH:独立したエージェントがトピックを調査します。各エージェントは異なるペルソナ(テクニカルアーキテクト、セキュリティアナリスト、パフォーマンスエンジニア、その他7つ)を持ちます。コンテキスト分離により、調査中にエージェント同士の調査結果を見ることはできません。L0(システムルール)とL1(プロジェクトコンテキスト)は共有されます。L2(エージェント固有のフォーカス)はプライベートです。L3(ドメインパターン)はペルソナごとに関連するパターンライブラリをロードします。1
DELIBERATION:エージェントがすべての調査結果を確認し、代替案を生成します。議論エージェントが視点間の矛盾を特定します。統合エージェントが矛盾しない調査結果を統合します。
RANKING:各エージェントが、5つの重み付き次元で提案されたアプローチを採点します。
| 次元 | 重み |
|---|---|
| インパクト | 0.25 |
| 品質 | 0.25 |
| 実現可能性 | 0.20 |
| 再利用性 | 0.15 |
| リスク | 0.15 |
重み付きスコアがコンセンサススコアに集約されます。閾値はタスクに応じて適応的です。セキュリティの決定には0.85、アーキテクチャには0.80、デフォルトは0.70、リファクタリングには0.65、ドキュメントには0.50です。2
2つのゲート
ゲート1:コンセンサスバリデーション(PostToolUse:Taskフック)。熟議エージェントが完了するたびに4つのチェックが実行されます。
- フェーズが少なくともRANKINGに到達していること
- 最低2つのエージェントが完了していること(設定可能)
- コンセンサススコアがタスク適応型閾値を満たしていること
- いずれかのエージェントが異議を唱えた場合、その懸念事項が文書化されていること
いずれかのチェックに失敗すると、熟議の進行がブロックされます。3
ゲート2:プライドチェック(Stopフック)。セッションが終了する前に5つの品質チェックが実行されます。
- 多様な手法:複数のユニークなペルソナが参加していること
- 矛盾の透明性:異議に理由が文書化されていること
- 複雑性の処理:少なくとも2つの代替案が生成されていること
- コンセンサスの信頼度:スコアが強い(0.85以上)または中程度(0.70-0.84)に分類されること
- 改善のエビデンス:最終信頼度が初期信頼度を超えていること
2段階のゲートアーキテクチャは、異なる段階で問題を検出します。ゲート1はプロセス中の早期収束を防ぎます。ゲート2は、完全に見えるが厳密さに欠ける結果の出荷を防ぎます。
情報分析官が先にこの問題を抱えていた
2026年1月に熟議システムを構築しました。その2週間後、構造化された意思決定に関する読書リストでリチャーズ・ホイヤーの『Psychology of Intelligence Analysis』を見つけました。第8章では競合仮説分析(ACH)が説明されています。分析官は、自分の好む結論を裏付けるケースを構築するのではなく、複数の仮説に対して同時にエビデンスを評価します。4
この類似性は居心地の悪いものでした。1999年にCIAのために出版されたホイヤーのフレームワークは、私がデバッグしていたのと同じ構造的障害に対処していました。賢い人々が代替案を強制的に評価することなく、一つの説明に収束してしまうという問題です。
ACHの実際の運用を見てみましょう。疑わしい兵器プログラムを調査する情報分析官は、「これは兵器プログラムか?」とは尋ねません(確証バイアス)。代わりに、あらゆるもっともらしい仮説(兵器プログラム、民間研究、デュアルユース施設)をリストアップし、各証拠をすべての仮説に対して評価し、仮説間を最もよく区別する証拠を特定します。
私のシステムは異なる語彙で同じことを行います。3つのエージェントが提案されたデータベーススキーマ変更を評価します。エージェントA(テクニカルアーキテクト):「スキーマはクリーンで、第3正規形に正規化されています。」エージェントB(パフォーマンスエンジニア):「クエリパターンでは、読み取りのたびに4テーブルのジョインが必要です。」エージェントC(セキュリティアナリスト):「PIIフィールドが保存時に暗号化されていません。」同じスキーマに対して、3つの異なる評価、3つの区別するエビデンス。ランキングフェーズは、ACHが仮説に対してエビデンスを評価するのと同じ方法で、これらの独立した評価に対して提案されたアプローチを評価します。
私はホイヤーのフレームワークからシステムを設計したわけではありません。試行錯誤でACHのサブセットを再発明し、その後誰かが既に教科書を書いていたことを知りました。正直なバージョンの方が、好ましいバージョンよりも有用です。同じアーキテクチャに独立して到達したことは、根底にある問題が理論的ではなく現実のものであることを確認しています。
合意が危険な障害モードである理由
チャーラン・ネメスは1986年から2018年の著書『In Defense of Troublemakers』に至るまで、少数派の異議を研究しました。異議を唱える者がいるグループは、迅速に合意に達するグループよりも良い意思決定を行います。異議を唱える者が正しい必要はありません。異議を唱える行為そのものが、多数派に対してそうでなければスキップしていた前提を検証させるのです。5
ジェームズ・スロウィッキーの『The Wisdom of Crowds』は、賢明なグループ意思決定の4つの条件を特定しています。意見の多様性、判断の独立性、分散化、そして集約メカニズムです。6 独立性に違反すると(調査中にエージェント同士の成果物を見せると)、群集行動が発生します。多様性に違反すると(すべてのエージェントに同一のプロンプトを使用すると)、エコーチェンバーが発生します。
独立性の条件を直接テストしました。同じデプロイメント戦略を評価する2つのエージェントに互いの調査結果を見える状態にした場合:エージェントAがリスクを0.45と採点し、エージェントBはそのスコアを見て0.48と採点しました。同じエージェントで可視性をなくした場合:0.45と0.72でした。0.48と0.72の差が群集行動のコストです。エージェントBの独立した評価は、社会的圧力が評価に入り込んだ際に消失したコンテナオーケストレーションのリスクをフラグしていました。
最近の研究は、両方のパターンがLLMエージェントにも当てはまることを確認しています。Choiらは、NeurIPS 2025で、独立してプロンプトされたエージェント間の多数決が、マルチエージェントシステムからの品質向上の大部分を獲得することを発見しました。7 Kaesbergらは、ACL 2025でその分割を定量化しました。投票は推論タスクを13.2%改善し、コンセンサスプロトコルは知識タスクを2.8%改善します。8 これは、タスクタイプに応じて選択すべきであることを示唆しています。そのため、私のシステムでは単一のコンセンサス数値ではなく、タスク適応型の閾値を使用しています。
Wuらは、LLMエージェントが真に議論できるかどうかをテストし、不合意に対する構造的インセンティブがなければ、エージェントは正確性に関係なく、最も自信があるように聞こえる最初の応答に収束することを発見しました。9 Wynnらはさらに踏み込みました。議論は積極的に有害になり得ます。モデルは、より強力なモデルが弱いモデルを数で上回っている場合でも、ピアの推論に応じて正しい回答から間違った回答へと移行します。10 Liangらは根本原因を「思考の退化」として特定しました。LLMが一つの立場に対して信頼度を確立すると、自己反省では新しい反論を生成できなくなり、マルチエージェント評価が構造的に必要になります。11
私のシステムでは、コンテキスト分離(L2レイヤーは調査中エージェントごとにプライベート)によって独立性を確保しています。多様性は、異なる評価優先度を持つ10の異なるペルソナから生まれます。集約は、単純な投票ではなく5次元にわたる重み付きスコアリングを使用します。不合意に対する構造的インセンティブは弱く、異議が文書化されているかどうかは追跡していますが、異議を唱えることに対するエージェントへの報酬はありません。適合性検出モジュールがこのギャップに対処しようとしていますが、結果はまちまちです。
偽りの不合意を検出する
適合性モジュールは、エージェントが真の評価なしに合意していることを示唆するパターンを追跡します。エージェント間で同じ言語を繰り返す文書化された懸念事項、閾値の疑わしいほど近くにクラスタリングされたスコア、またはすべてのペルソナからの全会一致の支持(セキュリティアナリストとパフォーマンスエンジニアがすべてに同意することは稀です)が警告をトリガーします。
検出できるもの:定型的な異議(エージェントが互いの懸念言語をコピーする)、スコアクラスタリング(すべてのエージェントが10点満点で0.3ポイント以内にスコアリングする)、少数派の視点の欠如(矛盾する優先度を持つペルソナからの全会一致の承認)です。
ログからの例:5つのエージェントが認証リファクタリングを評価しました。5つすべてがセキュリティリスクを7.1から7.4の間でスコアリングしました。適合性検出器がこのクラスタをフラグしました。新しいコンテキスト分離(L2キャッシュのクリア)で再実行したところ、スコアは5.8から8.9に分散しました。元のクラスタは、真の合意ではなく共有コンテキストの汚染を反映していたのです。
検出できないもの:エージェントがペルソナの視点から真に評価しながらも、異なる理由でたまたま同じ結論に至る洗練された合意です。推論が独立して見える場合、モジュールは真のコンセンサスと群集行動を区別できません。真の合意と偽の合意の例で分類器を訓練しようとしましたが、訓練データが少なすぎ(50回未満の熟議セッション)、信号が弱すぎました。適合性検出器は明白なケースを検出し、微妙なケースを見逃します。
正直な評価として、適合性検出は、エージェントが早く収束しすぎる10-15%の熟議に対して有用なサニティチェックを追加します。残りの85-90%については、コンセンサスとプライドチェックのゲートが十分なバリデーションを提供します。より高度な適合性システムの構築を検討しましたが、エンジニアリングの労力に見合う限界的な改善は得られないと判断しました。
うまくいかなかったこと
行き止まり1:自由形式の議論ラウンド
最初のバージョンでは、エージェントが互いの調査結果に対して長文の反論を書いていました。3ラウンドのテキストのやり取りです。データベースインデックス戦略に関する熟議が7,500トークンの議論にわたって展開されるのを見ました。ラウンド1:複合インデックスと単一カラムインデックスに関する真の不合意。ラウンド2:わずかな補足を加えた立場の再表明。ラウンド3:異なる言葉で包まれたほぼ同一の議論。信号はラウンド1でピークに達し、そこから劣化しました。
熟議あたりのトークンコストは2〜4ドルに達し、各ラウンドで有用な情報密度が低下しました。修正:構造化された次元スコアリングが自由形式の議論に取って代わりました。エージェントはエッセイを書く代わりに、5つの次元で数値によって提案を採点します。コストと時間が約60%削減され、最終ランキングの品質は実際に向上しました。なぜなら、数値スコアは散文が曖昧にする精度を強制するからです。
行き止まり2:熟議のための深さベースの再帰
無限スポーンの事件は、根本的なモデリングエラーを露呈しました。再帰ガードは深さを追跡していました。深さ0の親が深さ1の子を生成し、子が深さ2の孫を生成し、最大深さ3。しかし、熟議エージェントは深く(1つのエージェントが1つの子を生成し、その子が1つの孫を生成する)ではなく、広く(同じレベルで10の調査エージェント)展開すべきです。深さ1で23のエージェントが存在しても、それは「深さ1」のままなので、深さ制限3はトリガーされませんでした。
修正はスポーンバジェットモデルでした。熟議エージェントは深さを増分する代わりに親の深さを継承し、子のスポーンの合計バジェットを12に制限して共有します。バジェットモデルは、代理指標(ネストレベルが多すぎる)ではなく、実際の障害モード(エージェントの総数が多すぎる)にマッピングされます。エージェントの系譜はJSONファイルで追跡され、非同期のエージェント完了をまたいでバジェットが永続化されます。12
行き止まり3:単一のバリデーションゲート
最初の実装では、セッション終了時に1つのバリデーションフックを実行し、コンセンサスチェックと品質チェックを組み合わせていました。最初の1週間で障害モードが現れました。エージェントが0.52のコンセンサススコア(0.70の閾値以下)で熟議を完了しました。その後、セッション終了フックが障害をフラグするまでの20分間、関連のないタスクを続行しました。バリデーションに合格していない基盤の上に20分間の作業が構築されていたのです。
2つのゲートに分割することで、タイミングの問題を修正しました。ゲート1(コンセンサスバリデーション)はPostToolUse:Taskフックとして実行され、熟議エージェントの完了直後に不適切なコンセンサスを検出します。ゲート2(プライドチェック)はセッション終了時に実行され、ステップ全体にわたって蓄積された品質の問題を検出します。異なるライフサイクルポイントの2つのフックは、障害が実際に発生する方法に対応しています。即座に発生するもの(不適切なスコア)と、徐々に発生するもの(多様性の低さ、異議文書の欠落)があります。
正直な計算
熟議にはトークンが必要です。各調査エージェントは約5,000トークンのコンテキストを処理し、2,000〜3,000トークンの調査結果を生成します。3エージェント(有用な熟議の最小数)では、意思決定あたり15,000〜24,000の追加トークンです。10エージェント(フル調査パネル)では、約50,000〜80,000トークンです。
Opusの価格(100万トークンあたり入力15ドル/出力75ドル)では、3エージェントの熟議は約0.68〜0.90ドルかかります。10エージェントの熟議は2.25〜3.00ドルです。私のシステムは意思決定の約10%(信頼度が0.70を下回るもの)で熟議をトリガーするため、すべての意思決定にわたる償却コストはセッションあたり0.23〜0.30ドルです。
それが価値があるかどうかは、悪い意思決定のコストに依存します。本番デプロイメントにおけるセキュリティ脆弱性の見落としは、何時間ものインシデント対応コストがかかります。悪いアーキテクチャの選択は、何週間ものリファクタリングコストがかかります。ドキュメントのタイプミスは、コストがかかりません。
信頼度モジュールが、どの意思決定が熟議をトリガーするかを決定します。4つの次元(曖昧性、複雑性、影響度、コンテキスト依存性)がそれぞれ0〜1のスコアを生成します。全体の信頼度が0.70を下回り熟議をトリガーするには、複数の次元が高スコアである必要があります。単一次元の問題(「これは複雑だが曖昧ではない」)は閾値を超え、熟議をスキップします。13
2つのエージェント、1つのルール
マルチエージェント熟議から価値を得るために、10の調査ペルソナ、8つのPythonモジュール、141のテストは必要ありません。2つのエージェントと1つのルールから始めてください。エージェントは互いの成果物を見る前に独立して評価しなければなりません。
最小限の実用的な熟議
Decision arrives
|
v
Confidence check: is this risky, ambiguous, or irreversible?
|
├── NO -> Single agent decides (normal flow)
|
└── YES -> Spawn 2 agents with different system prompts
Agent A: "Argue FOR this approach"
Agent B: "Argue AGAINST this approach"
|
v
Compare findings
|
├── Agreement with different reasoning -> Proceed
├── Genuine disagreement -> Investigate the conflict
└── Agreement with same reasoning -> Suspect herding
上記の意思決定フローチャートは価値の80%をカバーしています。最小限の実装は以下の通りです。
# Minimum viable deliberation: 2 agents, 1 rule
def deliberate(decision_description):
agent_for = spawn_agent(
f"Argue FOR this approach: {decision_description}",
persona="advocate"
)
agent_against = spawn_agent(
f"Argue AGAINST this approach: {decision_description}",
persona="critic"
)
if same_reasoning(agent_for, agent_against):
return "WARNING: Suspect herding. Verify independently."
elif genuine_conflict(agent_for, agent_against):
return "Investigate the specific disagreement."
else:
return "Proceed. Independent agreement with different reasoning."
それ以外はすべて段階的な改善です。5次元のランキング、タスク適応型の閾値、適合性検出。核心となるインサイトはシンプルなままです。2つの独立した視点が、1つの視点では見逃す障害を検出します。
シングルエージェント vs. マルチエージェント:何が変わるか
| シナリオ | シングルエージェント | マルチエージェント熟議 |
|---|---|---|
| セキュリティレビュー | 「アーキテクチャはクリーンです」 | エージェントA:「クリーンです。」エージェントB:「管理者へのレート制限がありません」 |
| スキーマ設計 | 「第3正規形に正規化されています」 | エージェントA:「クリーンです。」エージェントB:「読み取りのたびに4テーブルのジョイン」 |
| 依存関係のアップグレード | 「テスト合格、出荷しましょう」 | エージェントA:「テスト合格。」エージェントB:「変更履歴にv3で破壊的APIの変更あり」 |
| ドキュメント更新 | 「README更新済み」 | すべてのエージェントが合意(信頼度閾値以下で正しくスキップ) |
何を熟議すべきか
| 熟議する | スキップする |
|---|---|
| セキュリティアーキテクチャ | ドキュメントのタイプミス |
| データベーススキーマ設計 | 変数名の変更 |
| APIコントラクトの変更 | ログメッセージの更新 |
| デプロイメント戦略 | コメントの書き換え |
| 依存関係のアップグレード | テストフィクスチャの更新 |
熟議のテスト
システムは3つのレイヤーにわたって141のテストを実行します。14
- 48のbash統合テスト:フックの構文検証、コンセンサスフロー、プライドチェックゲート、再帰ガードの強制、クロス設定の互換性
- 81のPythonユニットテスト:7つのライブラリモジュールすべて(ステートマシン、信頼度、コンテキスト分離、ランキング、エージェント、適合性、PRD生成)
- 12のエンドツーエンドテスト:信頼度評価からPRD出力までのフルパイプラインシミュレーション
不合意のために設計されたシステムのテストには、2つのカテゴリのテストが必要です。ハッピーパス:エージェントが生産的に不合意し、コンセンサスに到達する。障害パス:エージェントが早く収束しすぎる、収束しない、またはスポーンバジェットを超過する。エンドツーエンドテストは、決定論的なエージェント応答を使用して各シナリオをシミュレートし、2つのゲートがすべての文書化された障害モードを検出することを検証します。
2エージェントパターンから始めてください。2エージェントバージョンが特定のものを見逃したときに複雑さを追加してください。私のシステムにおける追加のエージェント、閾値、バリデーションゲートのすべては、よりシンプルなバージョンが特定のタスクで失敗したために存在しています。あなたの失敗は異なるものであり、それを検出するために構築するシステムは、私の失敗ではなく、あなたの失敗を反映すべきです。
主要なポイント
- 合意が危険な障害モードです。 シングルエージェントは自分自身の前提を疑うことができません。異なる評価優先度を持つ2つの独立したエージェントが、品質ゲートやフィロソフィーでは対処できない構造的な盲点を検出します。
- 2つのゲートは1つより優れています。 プロセス中のコンセンサスバリデーションは、問題を早期に検出します。セッション終了時のプライドチェックは、ステップ全体にわたって蓄積された問題を検出します。異なるライフサイクルポイントの2つのフックにバリデーションを分割することで、障害が実際に発生する方法に対応します。
- 選択的に熟議してください。 信頼度モジュールは意思決定の約10%で熟議をトリガーします。すべてを熟議するとトークンの無駄です。何も熟議しなければ、独立した視点が最も重要な意思決定を見逃します。
FAQ
マルチエージェント熟議の1回の意思決定あたりのコストはいくらですか?
3エージェントの熟議は、Opus価格でAPIトークン約0.68〜0.90ドル(15,000〜24,000の追加トークン)かかります。フル10エージェントパネルでは2.25〜3.00ドルです。システムは意思決定の約10%で熟議をトリガーするため、すべての意思決定にわたる償却コストはコーディングセッションあたり0.23〜0.30ドルです。
すべての意思決定に熟議が必要ですか?
いいえ。信頼度モジュールは4つの次元(曖昧性、複雑性、影響度、コンテキスト依存性)で意思決定を採点します。全体の信頼度が0.70を下回る意思決定のみが熟議をトリガーし、全体の意思決定の約10%です。ドキュメントの修正、変数名の変更、日常的な編集は熟議を完全にスキップします。セキュリティアーキテクチャ、データベーススキーマの変更、不可逆的なデプロイメントは一貫してトリガーされます。
Claude以外のモデルでも動作しますか?
アーキテクチャの原則(独立した評価、構造化された投票、2段階のバリデーション)は、ペルソナ指示に従い構造化された出力を生成できるあらゆるLLMに適用されます。実装はClaude Codeフックとエージェント生成のためのTaskツールを使用しており、これはClaude固有のインフラストラクチャです。別のモデルへの移植には、ステートマシン、ランキングシステム、バリデーションゲートを維持しながら、スポーニングメカニズムとプロンプトテンプレートを置き換える必要があります。
不合意を生み出すために設計されたシステムをどのようにテストしますか?
3つのレイヤーにわたる141のテストで対応しています。48のbash統合テストがフックの動作を検証し(コンセンサスフロー、プライドチェックゲート、再帰ガード)、81のPythonユニットテストが決定論的入力で各ライブラリモジュールをカバーし、12のエンドツーエンドテストが固定されたエージェント応答でフルの熟議パイプラインをシミュレートします。エンドツーエンドテストは、成功パス(コンセンサスに到達する生産的な不合意)と障害パス(早期合意、収束失敗、バジェット枯渇)の両方をカバーしています。
熟議のレイテンシへの影響はどの程度ですか?
3エージェントの熟議は、ウォールクロック時間で30〜60秒追加されます(エージェントはTaskツールを通じて順次実行されます)。10エージェントの熟議は2〜4分追加されます。コンセンサスとプライドチェックのフックはそれぞれ200ms未満で実行されます。主なボトルネックは、オーケストレーションのオーバーヘッドではなく、エージェントあたりのLLM推論時間です。熟議に値する意思決定については、レイテンシは許容範囲内です。なぜなら、代替手段(後でミスを発見すること)はかなり多くの時間を要するからです。
参考文献
-
著者の熟議コンテキスト分離モジュール。
~/.claude/lib/deliberation/context_isolation.pyに実装。4つの分離レベル:L0(システムルール、共有)、L1(セッションコンテキスト、共有)、L2(エージェントフォーカス、プライベート)、L3(ドメインパターン、ペルソナごと)。 ↩ -
著者の熟議設定。閾値は
~/.claude/configs/deliberation-config.jsonで定義。 ↩ -
著者のポスト熟議コンセンサスフック。
~/.claude/hooks/post-deliberation.shに実装、PostToolUse:Taskに接続。 ↩ -
Heuer, Richards J., Psychology of Intelligence Analysis, Center for the Study of Intelligence, CIA, 1999. 第8章:競合仮説分析。全文(CIA)。 ↩
-
Nemeth, Charlan, In Defense of Troublemakers: The Power of Dissent in Life and Business, Basic Books, 2018. 参照:Nemeth, C. J., “Differential Contributions of Majority and Minority Influence,” Psychological Review, 93(1), 23-32, 1986. ↩
-
Surowiecki, James, The Wisdom of Crowds: Why the Many Are Smarter than the Few, Doubleday, 2004. 第1章。 ↩
-
Choi, H. K., Zhu, X., and Li, S., “Debate or Vote: Which Yields Better Decisions in Multi-Agent Large Language Models?” NeurIPS 2025 Spotlight. arXiv:2508.17536. ↩
-
Kaesberg, L. B. et al., “Voting or Consensus? Decision-Making in Multi-Agent Debate,” Findings of ACL 2025, pp. 11640-11671. ACL Anthology. ↩
-
Wu, H., Li, Z., and Li, L., “Can LLM Agents Really Debate? A Controlled Study of Multi-Agent Debate in Logical Reasoning,” arXiv:2511.07784, 2025. ↩
-
Wynn, A., Satija, H., and Hadfield, G., “Talk Isn’t Always Cheap: Understanding Failure Modes in Multi-Agent Debate,” arXiv:2509.05396, 2025. ↩
-
Liang, T. et al., “Encouraging Divergent Thinking in Large Language Models through Multi-Agent Debate,” EMNLP 2024, pp. 17889-17904. ACL Anthology. ↩
-
著者の再帰ガード。
~/.claude/hooks/recursion-guard.shにスポーンバジェットモデルを実装。エージェント系譜は~/.claude/state/agent-lineage.jsonで追跡。 ↩ -
著者の信頼度モジュール。
~/.claude/lib/deliberation/confidence.pyに実装。4つの次元:曖昧性、複雑性、影響度、コンテキスト依存性。 ↩ -
著者のテストスイート。48のbashテストは
~/.claude/tests/test-deliberation-pipeline.sh、81のPythonテストは~/.claude/tests/test_deliberation_lib.py、12のエンドツーエンドテストは~/.claude/tests/test_deliberation_e2e.pyに収録。 ↩