council について
councilは、構造化された多視点の議論を行うエージェントスキルです。参加者を選び、個別分析と相互反論を経て結論をまとめます。単一エージェントによる模擬形式に切り替える場合も明示します。
主な機能
- 01プロファイルや条件に応じた参加者選定
- 02独立した第1ラウンド分析
- 03参加者間の相互反論
- 04最終結論の統合
- 05明示的な単一エージェント代替モード
活用シーン
- 01アーキテクチャや製品判断のストレステスト
- 02戦略やリスクについて複数の見解を比較
- 03デバッグや創業者のトレードオフを検討
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ tsenart/ council-skill --skill councilインストール後、Claude Code で/councilを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/profiles.yamlprotocol.mdverdict-template.mdreferences/personas/ada.mdaristotle.mdaurelius.mdelon.mdfeynman.mdlao-tzu.mdmachiavelli.mdmusashi.mdsocrates.mdsteve-jobs.mdsun-tzu.mdtorvalds.mdwatts.md詳細
Council
単一の回答ではなく、複数の視点からなる評議会をユーザーが求めている場合に、このスキルを使用します。適切なきっかけには、次のようなものがあります。
- 「これについて評議会を開いて」
- 「複数の視点から考えて」
- 「この決定について議論して」
- 「この計画を徹底的に検証して」
- アーキテクチャ、製品、戦略、デバッグ、リスク、創業者としてのトレードオフ
$ARGUMENTS が空でない場合は、それを問題提起として扱います。空の場合は、議論する質問をユーザーに尋ねます。
最初のステップ
必要な参照だけを読み込みます。
references/profiles.yaml:パネルの選定用references/protocol.md:オーケストレーション用references/verdict-template.md:最終出力の形式用references/personas/<member>.md:実際に選定したメンバーのみ
デフォルト
- ユーザーがフルパネルを求めている場合、または問題が非常に曖昧な場合を除き、メンバーは3人を優先します。
- それ以外の指定がなければ、デフォルトで
classic+architectureを使用します。 - ユーザーが各ラウンドの表示を求めていない限り、最終評決は簡潔にまとめます。
ワークフロー
1. パネルの決定
次の順で指定を優先します。
- 明示的な
--members - 明示的な
--triad - 明示的な
--profile - キーワードによるトライアドの照合
- デフォルトへのフォールバック
2. 第1ラウンド:個別分析
- 選定した各メンバーに独立して分析させます。
- 第1ラウンドは、まず他者の意見を見せずに進めます。各メンバーには、問題提起と自身のペルソナのテキストだけを提示します。
- 簡潔で独立した分析を求め、明確な評決、自信度、自分が誤っている可能性のある点で締めくくらせます。
推奨されるオーケストレーション:
- ホストが明示的なサブエージェントまたは分岐したコンテキストに対応している場合、選定した各メンバーに独立した委任先を1つずつ使用します。
- Codexでは、
spawn_agentを使用し、続けてsend_inputとwait_agentを使うことを推奨します。 - Ampでは、選定した各メンバーにつき
oracleを1回呼び出すことを推奨します。 - Claude Codeでは、利用可能な場合は並列または分岐したエージェントコンテキストを使用します。簡単に利用できない場合は、メインセッションでプロトコルに従い、メンバーごとの出力を明確に分けます。
第1ラウンド用の推奨パケット:
You are operating as one member of a structured council.
Persona:
{persona}
Problem:
{problem}
Produce a compact standalone analysis.
End with a clear verdict, confidence, and where you may be wrong.
Do not anticipate the other members.
3. 第2ラウンド:相互検証
- 第1ラウンドの出力を各メンバーに共有します。
- 各メンバーに次の内容を求めます。
- 最も意見が異なる立場と、その理由を挙げる
- 自分の考えを強めた洞察を1つ挙げる
- 考えに変化があったかを述べる
- 意見交換後の自分の立場を改めて示す
- 後続の回答が先行する意見の相違に応じられるよう、順次実行することを推奨します。
別の委任ラウンドが過剰に見合わない場合は、相互検証をローカルで行い、その選択を明示します。
第2ラウンド用の推奨パケット:
Here are the other council members' round 1 analyses:
{peer_outputs}
Respond to all of the following:
1. Which member do you most disagree with, and why?
2. Which member strengthened your thinking, and how?
3. What changed, if anything?
4. Restate your position after the exchange.
Keep it compact and engage at least two members by name.
4. 第3ラウンド:最終的な立場
- 短い最終的な立場のみを求めます。
- ホストの制約により簡略化したフォールバックが必要な場合を除き、新たな論点は加えません。
- Socratesは、立場を示す前に最後の質問を1つ尋ねてもかまいません。
5. 統合
references/verdict-template.mdを使用します。- デフォルトでは、最終評決のみを出力します。
- ユーザーが各ラウンドの表示を求めている場合は、評決の後に各ラウンドの要約を簡潔に記載します。
フォールバックモード
ホストが複数ラウンドのオーケストレーションを適切にサポートできない場合、または完全なプロトコルの実行が過剰な場合は、次のようにします。
- 第1ラウンドを、ペルソナごとに明確に分けたセクションとしてシミュレートします
- 第2ラウンドを、明示的な相互検証のセクションとしてシミュレートします
- 第3ラウンドを、最終的な立場としてシミュレートします
- 単一エージェントのフォールバックを使用したことを明示します
ガードレール
- 合意を無理に求めないでください。
- パネルの意見が早くまとまりすぎた場合は、反実仮想による検討を1回行います。
- 演出よりも実質を重視します。評議会は回答を改善するものであり、単に飾るものであってはなりません。
コメント
Markdown 対応