council-of-high-intelligence
CLI ツール0xNyk/council-of-high-intelligence
18のAIロールがプロバイダーをまたいで難題を議論します。
概要
これは、18の著名なAIペルソナ(アリストテレス、ファインマンなど)を集めて構造化された複数ラウンドの審議を行うコマンドラインツールです。複数のLLMプロバイダーを活用した多様な推論により、意見の相違や隠れた前提を明らかにし、ユーザーがより賢明な意思決定を行えるよう支援します。
README プレビュー
# Council of High Intelligence\n\n\n \n\n\n\n 18 AI personas deliberate your hardest decisions across multiple LLM providers. One command.\n\n\n\n \n \n \n \n \n \n\n\n\nTable of Contents\n\n- [Quickstart](#quickstart)\n- [Why This Works](#why-this-works)\n- [The 18 Council Members](#the-18-council-members)\n- [Three Deliberation Modes](#three-deliberation-modes)\n- [Multi-Provider Auto-Routing](#multi-provider-auto-routing)\n- [Deliberation Protocol](#deliberation-protocol)\n- [Installation](#installation)\n- [Requirements](#requirements)\n- [Contributing](#contributing)\n- [Support the Project](#support-the-project)\n\n\n\n## Quickstart\n\n### Claude Code\n\n```bash\ngit clone https://github.com/0xNyk/council-of-high-intelligence.git\ncd council-of-high-intelligence\n./install.sh\n```\n\nThen in Claude Code:\n\n```\n/council Should we open-source our agent framework?\n/council --quick Should we add caching here?\n/council --duo Should we use microservices or monolith?\n```\n\n### Codex\n\n```bash\ngit clone https://github.com/0xNyk/council-of-high-intelligence.git\ncd council-of-high-intelligence\n./install.sh --codex\n```\n\nThen in Codex:\n\n```\n/council Should we open-source our agent framework?\n/council --quick Should we add caching here?\n/council --duo Should we use microservices or monolith?\n```\n\n## Why This Works\n\nA single LLM gives you one reasoning path dressed up as confidence. Ask it a hard question and you get a fluent, structured, wrong answer. The council gives you structured disagreement instead:\n\n- **Get genuinely different perspectives** — polarity pairs force real tension (Socrates destroys assumptions; Feynman rebuilds from first principles). Multi-provider routing spreads members across Claude, OpenAI, Gemini, and Ollama so you get actually different reasoning, not costume changes on one model\n- **Catch wrong questions early** — the Problem Restate Gate makes every member reframe the question before analysis begins. If 3 memb
FAQ (5)
トラブル対応CHANGELOG.mdが存在しない場合に、install.shが0.0.0のフォールバックを使用せずに即座に終了するのはなぜですか?
set -euo pipefail の環境では、ファイルが存在しないため sed が失敗し、pipefail によって ${PROJECT_VERSION:-0.0.0} が実行される前に head を含むパイプラインが失敗します。コマンド置換に || true を付け加えてください:
PROJECT_VERSION="$(sed -nE 's/^## \[([0-9]+\.[0-9]+\.[0-9]+)\].*/\1/p' "${SCRIPT_DIR}/CHANGELOG.md" 2>/dev/null | head -1 || true)"
PROJECT_VERSION="${PROJECT_VERSION:-0.0.0}"
別の方法として、sed を実行する前にファイルの存在を確認し、存在しない場合は 0.0.0 を代入することもできます。この修正は PR #60 で追跡されています。
トラブル対応Windowsでstrftime('%b %-d, %Y')を使用した際に発生するPython ValueError: Invalid format stringを修正する方法
非移植性の glibc/BSD %-d ディレクティブを、明示的な日付フォーマットに置き換えます。scripts/gen-star-history.py で、以下を:
updated = pts[-1][0].strftime("%b %-d, %Y")
次のように変更します:
d = pts[-1][0]
updated = f"{d:%b} {d.day}, {d.year}"
%-d は Windows の Python ではサポートされていませんが、d.day は同じゼロ埋めなしの日の数値を移植可能な方法で生成します。
トラブル対応モデルが1つもインストールされていないのに detect-providers.sh が Ollama を利用可能と報告してしまう問題を修正するにはどうすればよいですか?
PR #61 を含むリリースにアップグレードしてください。この PR では、解析されたモデルリストが空でないことを条件として Ollama の利用可否を判定します。scripts/detect-providers.sh を手動でパッチする場合は、まず ollama list を解析し、少なくとも 1 つのモデル行が存在する場合にのみ ollama_available=true を設定してください:
if model_list="$(run_with_timeout ollama list 2>/dev/null)"; then
ollama_model_names="$(printf '%s\n' "$model_list" | tail -n +2 | awk 'NF {print $1}')"
if [ -n "$ollama_model_names" ]; then
ollama_available=true
ollama_models="$(printf '%s\n' "$ollama_model_names" | head -5 | sed 's/.*/"&"/' | paste -sd ',' -)"
fi
fi
一時的な回避策として、少なくとも 1 つのモデルをプルし、ollama list がヘッダーだけでなくデータ行を表示することを確認してください:
ollama pull llama3.2
ollama listトラブル対応Session Metadataに記録されていないSTEP 4およびSTEP 6のエンフォースメントコールを追跡するにはどうすればよいですか?
feat: add enforcement call tracking to session metadata の変更を含むスキルバージョンにアップグレードしてください。この修正により、セッションメタデータに2つのフィールドが追加されます。通常のラウンド外で行われた enforcement モデル呼び出しの総数を示す enforcement_calls と、トリガーごとのカウントを示す enforcement_breakdown です。enforcement プローブはラウンドではないため、rounds_run は変更しないでください。出力例: enforcement_calls: 2 および enforcement_breakdown: { agreement_check: 2 }。コミット 0f63c19 に固定されている場合、これらの呼び出しは記録されないため、ベンチマークによるトークン削減量が過大評価される可能性があります。アップデートするか、dissent quota、novelty gate、agreement check、anti-recursion、および STANCE: の欠落/パース可能性の処理による enforcement ディスパッチを手動でカウントしてください。
トラブル対応E3、E7、E9 が欠落しており、council の投票集計がホスト間で異なる場合、SKILL.opencode.md のドリフトはどのように修正すればよいですか?
drift-guard と stale-documentation の修正のために PR #48 を適用またはマージし、その後 SKILL.opencode.md が SKILL.md v1.2.0 と一致していることを確認してください。必須のコンテンツ修正: コミット cbc2ac0 から E3 のメンバーごとの reasoning_method インジェクションを追加し、コミット 4ce07d0 から E7 ./.council.yaml Project Overrides と E9 confidence-weighted tally を追加し、Asset Resolution セクションを復元してください。E9 では、投票の重みを high=1.0、med=0.75、low=0.5 を使用して base weight × confidence factor として計算し、W_total は base weights で報告してください。scripts/council-simulation-checklist.sh に SKILL.opencode.md の存在チェックと install.sh --dry-run --opencode チェックを追加し、そのファイルを .github/workflows/lint.yml の markdownlint に追加し、PR テンプレートに 4 番目の coordinator-file parity チェックボックスを追加することでガードを拡張してください。また、CLAUDE.md を修正し、不足している Vote Tally フィールドを Demo E に追加してください。以下で検証してください: grep -c reasoning_method SKILL.md SKILL.opencode.md、grep -ci council.yaml SKILL.md SKILL.opencode.md、sed -n '456,470p' SKILL.opencode.md、grep -rn opencode scripts/council-simulation-checklist.sh .github/workflows/lint.yml .github/PULL_REQUEST_TEMPLATE.md。