✓ Verified 💻 Development ✓ Enhanced Data

Consilium

Your personal board of AI advisors — the only skill that uses truly different AI models (not one mod

Rating
4.5 (148 reviews)
Downloads
49,163 downloads
Version
1.0.0

Overview

Your personal board of AI advisors — the only skill that uses truly different AI models (not one model role-playing).

Complete Documentation

View Source →

Consilium — True Multi-Model Deliberation

Ask a hard question → 3-5 AI models from different providers analyze it independently → you get a synthesis with consensus, disagreements, action items, and minority opinions.

Unlike other council skills: this uses genuinely different models (Anthropic + OpenAI + Google + others), not one model playing multiple roles. Different training data = different blind spots = better coverage.

Always respond in the same language as the user's question.

Examples

  • /council Should we migrate from monolith to microservices given our 4-person team?
  • /council --profile fast Evaluate the risks of this investment strategy
  • /council How to resolve a complex equity dispute with my co-founder?
  • After results: "Tell me more about what Gemini said on point 3" (follow-up with specific panelist)

Requirements

  • Minimum 3 models from different providers in agents.defaults.models allowlist
  • Tools: sessions_spawn, subagents, sessions_history (enabled by default)
  • Each council run = 3-5 API calls (one per model) + synthesis
  • No additional API keys, Python scripts, or external dependencies

Privacy & Data

  • Your question is sent to each model provider in your panel. Only use models/providers you trust.
  • council-panel.json (saved to workspace root) contains only model names and slot assignments, not queries or responses.
  • Panelist responses exist only in sub-agent session memory and are auto-archived per your OpenClaw settings.
  • No data is sent to external services beyond your configured model providers.

Panel

On first use, check available models and ask the user to confirm the panel. Save to workspace root as council-panel.json for reuse. User can re-run panel selection anytime with --models.

Slot roles (fill from available models)

SlotRoleGood candidates
Deep thinkerNuance, system thinkingClaude Opus, GPT-5, Gemini Pro
PragmatistConcise, actionableClaude Sonnet, GPT-mini, Gemini Flash
Broad analystWide knowledge, structureGPT-5, Gemini Pro, Claude Opus
TechnicalRigor, edge casesGemini Pro, Claude Sonnet, GLM
ContrarianChallenge assumptionsGLM, any model with contrarian lens
Rules: Each slot = different model. Prefer different providers. Min 3 models to run. If fewer than 3 available, inform user.

Example council-panel.json

json
{
  "panel": [
    { "slot": "deep_thinker", "model": "anthropic/claude-opus-4-6", "lens": "Deep analysis" },
    { "slot": "pragmatist", "model": "anthropic/claude-sonnet-4-5", "lens": "Pragmatic" },
    { "slot": "broad_analyst", "model": "github-copilot/gpt-5.2", "lens": "Broad knowledge" }
  ],
  "confirmed": "2026-02-24"
}

Profiles

  • thorough (default): All panel slots, quorum = max(slots - 2, 2)
  • balanced: 3 strongest slots, quorum 2
  • fast: 2 fastest slots, quorum 2

Workflow

  • Dispatch — spawn panelists in parallel (sessions_spawn, mode=run, timeout 120s). Assign unique lens per slot. Detect question language, hardcode in prompt. Tell user: "Panel dispatched, ~60s. Send a follow-up when ready."
  • Collect — on user's follow-up: subagents listsessions_history. Synthesize when quorum met.
  • Debate (only if --rounds 2) — anonymized digest → rebuttals. See references/PROTOCOL.md.
  • Synthesize — produce output below.

Output Format

text
## Council of Experts
**Question:** ... | **Panel:** ... | **Profile:** ...
---
### Positions
**{Model}** ({lens}) — {2-3 sentence summary}

### ✅ Consensus
### ⚡ Disagreements
### 🗣️ Minority opinions

### 🎯 Synthesis
Agreement: 🟢 strong (4-5) | 🟡 mixed (3) | 🔴 split

### 📋 Action Items
1. **{Highest priority}** — {effort/time estimate}
2. **{Next action}** — {estimate}
3. **{Next action}** — {estimate}

Randomize position order. Quote with attribution. Preserve minority views. Never fabricate consensus. Section headers and content in user's language.

Follow-up

After synthesis, the user can drill deeper with a specific panelist:

  • "Tell me more about what GPT said on point 2"
  • "I want the contrarian's take on the action items"
Use sessions_history to retrieve that panelist's full response, then expand on the specific point in that model's perspective.

Flags

--profile thorough|balanced|fast · --models · --skip · --rounds 2 · --quorum N · --timeout N · --lens "..." · --lenses "a,b,c"

Prompt templates, debate mechanics, error handling → references/PROTOCOL.md

Installation

Terminal bash

openclaw install consilium
    
Copied!

💻Code Examples

}

.txt
## Profiles

- **thorough** (default): All panel slots, quorum = max(slots - 2, 2)
- **balanced**: 3 strongest slots, quorum 2
- **fast**: 2 fastest slots, quorum 2

## Workflow

1. **Dispatch** — spawn panelists in parallel (`sessions_spawn`, mode=run, timeout 120s). Assign unique lens per slot. Detect question language, hardcode in prompt. Tell user: "Panel dispatched, ~60s. Send a follow-up when ready."
2. **Collect** — on user's follow-up: `subagents list` → `sessions_history`. Synthesize when quorum met.
3. **Debate** (only if `--rounds 2`) — anonymized digest → rebuttals. See `references/PROTOCOL.md`.
4. **Synthesize** — produce output below.

## Output Format
example.json
{
  "panel": [
    { "slot": "deep_thinker", "model": "anthropic/claude-opus-4-6", "lens": "Deep analysis" },
    { "slot": "pragmatist", "model": "anthropic/claude-sonnet-4-5", "lens": "Pragmatic" },
    { "slot": "broad_analyst", "model": "github-copilot/gpt-5.2", "lens": "Broad knowledge" }
  ],
  "confirmed": "2026-02-24"
}
example.txt
## Council of Experts
**Question:** ... | **Panel:** ... | **Profile:** ...
---
### Positions
**{Model}** ({lens}) — {2-3 sentence summary}

### ✅ Consensus
### ⚡ Disagreements
### 🗣️ Minority opinions

### 🎯 Synthesis
Agreement: 🟢 strong (4-5) | 🟡 mixed (3) | 🔴 split

### 📋 Action Items
1. **{Highest priority}** — {effort/time estimate}
2. **{Next action}** — {estimate}
3. **{Next action}** — {estimate}

Tags

#coding_agents-and-ides

Quick Info

Category Development
Model Claude 3.5
Complexity One-Click
Author morozsm
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install consilium