council について
councilは、複数のエージェントに同じ質問をして回答を比較するスキルです。Claude、Codex、Geminiのコマンドラインツールを並列実行し、役割別のレビューや議論、回答の統合に対応します。
主な機能
- 01複数のエージェントCLIへの並列問い合わせ
- 02回答の構造化比較
- 03役割ごとの視点の提示
- 04複数ラウンドの議論
- 05回答の統合
活用シーン
- 01セキュリティや保守性の観点でコードレビューを比較
- 02アーキテクチャの判断に複数の意見を集める
- 03デバッグの異なる解決策を検討
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ johnlindquist/ claude --skill councilインストール後、Claude Code で/councilを入力して読み込まれたか確認します。
詳細
AI Council - 複数エージェントへの相談
同じ質問について、複数の AI エージェントから意見を得られます。
前提条件
以下の CLI のうち、少なくとも 1 つがインストールされている必要があります。
Claude CLI
npm install -g @anthropic-ai/claude-cli
# Set ANTHROPIC_API_KEY
Codex CLI
npm install -g @openai/codex-cli
# Set OPENAI_API_KEY
Gemini CLI
pip install google-generativeai
# Set GEMINI_API_KEY
個別のエージェントコマンド
Claude
# Ask Claude
claude -p --model opus "Your question here"
# Print mode (non-interactive)
claude --print "Your question"
Codex
# Ask Codex
codex -q "Your question here"
Gemini
# Ask Gemini
gemini -m pro -o text -e "" "Your question here"
並列相談のパターン
基本的な複数エージェントへの問い合わせ
# Query all agents in parallel
(
echo "=== Claude ===" && claude --print "Your question" &
echo "=== Gemini ===" && gemini -m pro -o text -e "" "Your question" &
echo "=== Codex ===" && codex -q "Your question" &
wait
)
構造化比較スクリプト
#!/bin/bash
QUESTION="$1"
# Query in parallel, save to temp files
claude --print "$QUESTION" > /tmp/claude-response.txt &
gemini -m pro -o text -e "" "$QUESTION" > /tmp/gemini-response.txt &
wait
echo "=== Claude's Response ==="
cat /tmp/claude-response.txt
echo ""
echo "=== Gemini's Response ==="
cat /tmp/gemini-response.txt
# Cleanup
rm -f /tmp/claude-response.txt /tmp/gemini-response.txt
ユースケース
コードレビューの視点
# Get different review perspectives
CODE=$(cat mycode.ts)
claude --print "Review this code for best practices: $CODE"
gemini -m pro -o text -e "" "Review this code for security issues: $CODE"
アーキテクチャの決定
QUESTION="Should I use microservices or monolith for a startup MVP with 3 developers?"
# Get multiple perspectives
claude --print "$QUESTION"
gemini -m pro -o text -e "" "$QUESTION"
デバッグのアプローチ
ERROR="TypeError: Cannot read property 'map' of undefined"
CONTEXT="React component fetching API data"
claude --print "Debug this error: $ERROR. Context: $CONTEXT"
gemini -m pro -o text -e "" "Explain and fix: $ERROR in $CONTEXT"
合意点を見つける
複数のエージェントから回答を得た後、1 つのエージェントに統合を依頼します。
# Save individual responses first, then:
gemini -m pro -o text -e "" "Here are responses from different AI agents about [topic]:
Response 1: [Claude's response]
Response 2: [Gemini's response]
Synthesize these into a consensus view, noting:
1. Where they agree
2. Where they differ
3. The most actionable recommendation"
役割のプリセット
問い合わせる際に、役割を割り当てることができます。
ソフトウェアエンジニアリング評議会
claude --print "As a software architect: [question]"
gemini -m pro -o text -e "" "As a security engineer: [question]"
コードレビュー評議会
claude --print "Review for maintainability: [code]"
gemini -m pro -o text -e "" "Review for performance: [code]"
創造的な問題解決
claude --print "Suggest conventional solutions for: [problem]"
gemini -m pro -o text -e "" "Suggest unconventional approaches for: [problem]"
ディベートのパターン
エージェント同士に回答させます。
# Round 1: Initial positions
R1_CLAUDE=$(claude --print "Argue FOR using TypeScript in a new project")
R1_GEMINI=$(gemini -m pro -o text -e "" "Argue AGAINST using TypeScript in a new project")
# Round 2: Rebuttals
R2_CLAUDE=$(claude --print "Respond to this argument against TypeScript: $R1_GEMINI")
R2_GEMINI=$(gemini -m pro -o text -e "" "Respond to this argument for TypeScript: $R1_CLAUDE")
# Synthesis
gemini -m pro -o text -e "" "Synthesize this debate:
FOR TypeScript: $R1_CLAUDE
Rebuttal: $R2_CLAUDE
AGAINST TypeScript: $R1_GEMINI
Rebuttal: $R2_GEMINI
Provide a balanced recommendation."
ベストプラクティス
- 同じ質問を使う - 公平に比較できるよう、表現を統一します
- 並列で実行する - 速度を上げるには、
&を使ったバックグラウンドジョブを実行します - 出力を記録する - 比較できるよう、ファイルに保存します
- どのエージェントかを記録する - 回答に明確なラベルを付けます
- 最後に統合する - 1 つのエージェントを使って要約します
- タスクに合ったエージェントを選ぶ - ニュアンスには Claude、事実の確認には Gemini、コードには Codex を使います
コメント
Markdown 対応