Install
openclaw skills install wei-devils-advocateStress-test ideas using multiple LLMs in adversarial roles to generate counterarguments, cross-check reasoning, and expose hidden risks and failure modes. 易找茬:通过多模型对抗式分析与交叉验证,从不同视角生成反对意见并揭示潜在风险。
openclaw skills install wei-devils-advocateVersion: 1.0.0 | Last updated: 2026-04-07
Use wei-devils-advocate to stress-test ideas through multi-LLM adversarial cross-validation.
Multiple language models independently act as devil’s advocates, challenging the idea from different reasoning paths to uncover hidden risks, assumptions, and failure modes that a single model may miss.
It is best suited for:
Identifying hidden assumptions through cross-model disagreement Exposing risks, edge cases, and failure scenarios Detecting overconfident or internally consistent but fragile reasoning Validating decisions under adversarial multi-perspective review
Do NOT use this skill if you are looking for validation, consensus, quick agreement, brainstorming, or single-perspective answers.
curl -fsSL https://bun.sh/install | bash
Or on macOS with Homebrew:
brew install oven-sh/bun/bun
cd skills/wei-devils-advocate
bun install
Create a .env file in the skill directory with your API keys:
# Required: OpenRouter API key (for debater models)
OPENROUTER_API_KEY=your_openrouter_api_key_here
# Required: DashScope/Bailian API key (for judge model)
DASHSCOPE_API_KEY=your_dashscope_api_key_here
Or export as environment variables:
export OPENROUTER_API_KEY=your_openrouter_api_key_here
export DASHSCOPE_API_KEY=your_dashscope_api_key_here
Note: If environment variables are not set, the skill will throw an error with instructions on how to configure them.
遇到模型访问问题? 请参考
README.md了解如何根据你的网络环境选择和配置config.json。
Most bad decisions don’t fail because of lack of information.
They fail because:
This skill enforces:
“Default to skepticism. Earn confidence.”
User Input (Thesis / Idea) ↓ [Debater Models x N] → Generate strongest counterarguments ↓ (Optional) [Simulation Models] → Attempt to rebut critiques multiple rounds until... ↓ [Judge Model] → Evaluates survivability ↓ Structured Decision Output
| Mode | Behavior | Use When |
|---|---|---|
| attack (default) | Generate counterarguments + judge evaluation | Fast stress test |
Note: Currently only the
attackmode is implemented. Future versions include thesimulationmode for simulating whether an idea survives sustained attack. Preview the 'simulation' mode at https://www.bigbigai.com/agent/devils-advocate .
Uses multiple models (2–4x cost vs single query). Use for high-stakes decisions only.
Each model in config.json is tagged with one or more roles indicating its capabilities:
| Role | Description | Typical Use |
|---|---|---|
critic | Strong critical thinking and counterargument generation | Challenging assumptions |
reasoning | Deep analytical capability | Complex analysis, synthesis |
retrieval | Has web/live data access | Current events, real-time info |
judge | Evaluates survivability of ideas | Final evaluation |
general | Broad balanced capability | Fallback, ambiguous queries |
Note: Specific model names and their roles are defined in
config.json→models. Refer to that file for the current model roster.
Model selection is controlled via config.json using a queryType-based routing system. Instead of hard-coding model names, you select models by the domain of the query.
As the calling model, follow this process:
queryTypequeryType — The skill will look up the routing.xxx.models in config.jsonmodels parameter to bypass auto-selection| queryType | Description | Typical Use |
|---|---|---|
| financial | Markets, investing, macroeconomics | Investment thesis validation, risk analysis |
| technical | Programming, systems, engineering | Architecture decisions, implementation risks |
| social | Public opinion, social media sentiment | Product-market fit, user behavior |
| current_events | Recent news and real-time information | Time-sensitive decisions |
| scientific | Objective knowledge, definitions, theories | Research validity, methodology critique |
| creative | Writing, design, ideation | Creative concept stress testing |
| general | Default fallback | General idea validation |
1. Analyze query → match keywords → determine queryType
2. Pass queryType to skill → skill looks up `routing.<queryType>.models` in config.json
3. Skill selects top 2–3 models from the routing config
4. Debater models generate counterarguments
5. Judge model evaluates survivability
Query: "Should we invest in AI startups in 2026?"
Selection process:
financial{ "query": "...", "queryType": "financial" }config.json → routing.financial.modelsQuery: "Is microservices architecture the right choice for our startup?"
Selection process:
technical{ "query": "...", "queryType": "technical" }config.json → routing.technical.modelsQuery: "Will users pay for this productivity app?"
Selection process:
social{ "query": "...", "queryType": "social" }config.json → routing.social.modelsStrong ideas survive attack. Weak ones don’t.