Version: 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 attack mode is implemented. Future versions include the simulation mode 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:
queryType
queryType — The skill will look up the routing.xxx.models in config.json
models 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.models
Query: "Is microservices architecture the right choice for our startup?"
Selection process:
technical
{ "query": "...", "queryType": "technical" }
config.json → routing.technical.models
Query: "Will users pay for this productivity app?"
Selection process:
social
{ "query": "...", "queryType": "social" }
config.json → routing.social.models
Strong ideas survive attack. Weak ones don’t.
共 1 个版本