真实的OpenClaw子代理多模型委员会审议:生成3个并行子代理,各自使用不同的大语言模型并拥有独特的分析视角(策略、…)
A real council spawns 3 parallel subagents, each with a different model and perspective, then synthesizes their outputs into a unified verdict. This is NOT one model roleplaying 3 experts — it's genuinely different models providing independent analysis.
Configure your council models in ~/.openclaw/council-config.json:
json
{
"council_models": [
"your-strategic-model",
"your-analytical-model",
"your-creative-model"
],
"default_timeout": 900,
"max_tokens": 8192
}
Choose models with different strengths:
The more diverse the models, the better the council output. Using the same model for all three defeats the purpose.
Example configuration:
json
{
"council_models": [
"ollama/kimi-k2.6:cloud",
"ollama/deepseek-v4-pro:cloud",
"ollama/gemma4:31b-cloud"
],
"default_timeout": 900,
"max_tokens": 8192
}
Each model gets a different analytical lens:
PerspectiveRoleFocusStrategosStrategic analystBig-picture strategy, business impact, feasibility, ROIAnalyticosData & logic analystTechnical correctness, edge cases, data quality, consistencyCreativosCreative thinkerNovel alternatives, user experience, unconventional approaches
Gather all relevant data BEFORE spawning. Council agents cannot browse the web or access your conversation history. Paste everything they need inline.
Read the model names from council-config.json and spawn each with a different perspective:
text
sessions_spawn(
runtime: "subagent",
mode: "run",
model: <first model from config>,
label: "Council-Strategos",
lightContext: true,
runTimeoutSeconds: <default_timeout from config>,
task: "You are Strategos, a strategic analyst. [PASTE CONTEXT HERE]
Analyze from a STRATEGIC perspective:
- Business impact and feasibility
- Resource requirements and ROI
- Strategic risks and opportunities
Return your analysis as a structured review with: verdict, conditions, risks, recommendations."
)
sessions_spawn(
runtime: "subagent",
mode: "run",
model: <second model from config>,
label: "Council-Analyticos",
lightContext: true,
runTimeoutSeconds: <default_timeout from config>,
task: "You are Analyticos, a data and logic analyst. [PASTE CONTEXT HERE]
Analyze from an ANALYTICAL perspective:
- Data quality and completeness
- Technical correctness and edge cases
- Logical consistency
Return your analysis as a structured review with: verdict, conditions, risks, recommendations."
)
sessions_spawn(
runtime: "subagent",
mode: "run",
model: <third model from config>,
label: "Council-Creativos",
lightContext: true,
runTimeoutSeconds: <default_timeout from config>,
task: "You are Creativos, a creative thinker. [PASTE CONTEXT HERE]
Analyze from a CREATIVE perspective:
- Novel alternatives and unconventional approaches
- User experience and usability
- What's missing that no one else would think of
Return your analysis as a structured review with: verdict, conditions, risks, recommendations."
)
When all 3 return, merge their verdicts:
Write the synthesis to council-review-[topic].md.
lightContext: true — always, to prevent context bloatrunTimeoutSeconds from config — default 900, increase for complex topicsSymptomCauseFixAll 3 return emptyGateway overloadKill zombie subagents, wait, retryOne model times outSlow model + complex taskIncrease timeout or simplify taskContext overflow (300k+ tokens)Too much data pastedSummarize to <2000 wordsShallow analysisVague task descriptionBe specific about what to analyzeAll 3 say the same thingNot enough perspective differentiationMake perspective prompts more distinct
This skill is read-only and sandbox-safe:
sessions_spawn — no filesystem access, no arbitrary commands, no network callsexec, no shell commands, no file reads/writes, no API calls