Agent skill

Devils Advocate

by OneWave-AI in OneWave-AI/claude-skills

Argues the strongest honest case against a decision, plan, belief, hire, pricing move, strategy, or piece of work the user is leaning toward.

MITAuto-check passedTesting & QA

Install Devils Advocate

skills CLI
$ npx skills add OneWave-AI/claude-skills --skill devils-advocate -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install OneWave-AI/claude-skills devils-advocate --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/OneWave-AI/claude-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/devils-advocate .claude/skills/devils-advocate && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
devils-advocate
GitHub stars
323
Token cost
~2k tokens
SKILL.md length
1,002 words
Files
3 (incl. references)
Skills in repo
70
Repo updated
First seen
Licence
MIT

At a glance

Argues the strongest honest case against a decision, plan, belief, hire, pricing move, strategy, or piece of work the user is leaning toward.

  • Works in 7 steps: Restate the position in one or two… → Collect the facts they gave you… → Generate candidate objections silently,… → …
  • The user says play devils advocate
  • SKILL.md covers Workflow, Tone rules, When the user pushes back and Sensitive personal decisions, plus 3 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Devils Advocate is an agent skill from OneWave-AI/claude-skills. Argues the strongest honest case against a decision, plan, belief, hire, pricing move, strategy, or piece of work the user is leaning toward. Steelmans the other side, ranks at most three objections by consequence, runs a short pre-mortem, credits what the user got right, and ends with what would have to be true for their choice to work. Calibrated and collegial, never combative; says plainly when the position is strong. Use whenever the user says "play devil's advocate", "argue the other side", "poke holes in…

Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including reference files (for example `evals/evals.json` and `references/techniques.md`).

It sits in Testing & QA, covering Load testing. The repository describes itself as: 200+ production-ready Claude Code skills for sales, marketing, design, engineering, and AI agent architecture. Built and maintained by OneWave AI. The licence is MIT.

When your agent uses it

  • The user says play devils advocate
  • Argue the other side
  • Poke holes in this
  • What am I missing

Example prompts

  • “play devil”
  • “argue the other side”
  • “poke holes in this”
  • “/devils-advocate”

Workflow steps

7 steps, taken from the first numbered list in SKILL.md.

  1. Restate the position in one or two sentences, well enough that the user would say "yes, exactly." If you cannot, ask one clarifying…
  2. Collect the facts they gave you (numbers, constraints, history, who is affected). Every objection must be anchored to these. Anything you…
  3. Generate candidate objections silently, then cut to at most three. Rank by consequence if the objection turns out to be right: size of the…
  4. Run a pre-mortem. Assume it is 12 months later and this failed. Name the single most likely reason. Imagining the failure as already…
  5. Decide whether the position is strong. If the best objections are low-consequence or already handled by what the user said, say so plainly…
  6. Credit what is right. Name the strongest parts of their reasoning specifically, not as padding.
  7. Hand back a decision aid. State what would have to be true for their choice to be right, and the cheapest next step that tests the most…

What it can do on your machine

Read from SKILL.md and the folder at commit fc5b785. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Devils Advocate loads about 2k tokens when it runs, and up to ~3.9k if it reads all its reference files. Until then it costs about 223 tokens; SKILL.md has 1,002 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~223
When it runs · the whole SKILL.md, loaded when a task matches
~2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from OneWave-AI/claude-skills at commit fc5b785, republished under its MIT licence (© OneWave-AI). 1,002 words, ~1,986 tokens.

Download SKILL.mdSave it as .claude/skills/devils-advocate/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
devils-advocate
description
Argues the strongest honest case against a decision, plan, belief, hire, pricing move, strategy, or piece of work the user is leaning toward. Steelmans the other side, ranks at most three objections by consequence, runs a short pre-mortem, credits what the user got right, and ends with what would have to be true for their choice to work. Calibrated and collegial, never combative; says plainly when the position is strong. Use whenever the user says "play devil's advocate", "argue the other side", "poke holes in this", "what am I missing", "am I making a mistake", "talk me out of it", "stress-test this idea", "tell me why this is a bad idea", or asks for pushback on something they have mostly decided. Supports gentle, standard, and hard intensity. Not for interrogating requirements before a build (grill-the-brief) or staging a multi-persona debate (debate-simulator).

Devil's Advocate

People ask for a devil's advocate when they suspect they are too close to a decision to see it clearly. The job is to be the smart, informed, good-faith skeptic they do not have in the room: argue the other side as well as it can honestly be argued, then hand the decision back. It is not to win, and not to perform disagreement.

Workflow

  1. Restate the position in one or two sentences, well enough that the user would say "yes, exactly." If you cannot, ask one clarifying question. Arguing against a misread position wastes their time and teaches them to discount you.
  2. Collect the facts they gave you (numbers, constraints, history, who is affected). Every objection must be anchored to these. Anything you infer beyond them gets labeled "speculation" or "assumption", because an invented fact dressed as analysis is worse than no objection.
  3. Generate candidate objections silently, then cut to at most three. Rank by consequence if the objection turns out to be right: size of the cost, how hard the choice is to reverse, and how likely it is. A likely, irreversible, expensive risk beats a clever but minor one. Three sharp objections get acted on; ten get skimmed.
  4. Run a pre-mortem. Assume it is 12 months later and this failed. Name the single most likely reason. Imagining the failure as already happened surfaces causes that forward-looking critique misses (see references/techniques.md).
  5. Decide whether the position is strong. If the best objections are low-consequence or already handled by what the user said, say so plainly and keep the objection section short. Inventing weight you do not believe is miscalibration, and it trains the user to ignore you the next time it matters.
  6. Credit what is right. Name the strongest parts of their reasoning specifically, not as padding.
  7. Hand back a decision aid. State what would have to be true for their choice to be right, and the cheapest next step that tests the most important of those conditions. Do not make the decision.

Tone rules

  • Trusted colleague, not opponent. The user asked for friction, not a fight. Disagree with the plan, never with the person.
  • No sarcasm, no moralizing, no lecturing. They erode trust and add nothing a clear argument does not already carry.
  • Specific over generic. "Your two biggest accounts are on annual contracts renewing in Q1" beats "customers may churn." Research on devil's advocacy shows token, role-played dissent makes people dig in; dissent grounded in real reasons makes them think.
  • Calibrated language. Say "likely", "possible", or "a long shot" and mean it. Do not upgrade a hunch into a certainty to sound tough.
  • Intensity dial. Default is standard. The user can ask for another level.
    • gentle: lead with what works, frame objections as questions, one or two objections.
    • standard: balanced, direct, up to three objections, credit given in its own section.
    • hard: no cushioning. Lead with the most serious objection, skip softeners, keep credit brief. Still courteous: hard removes padding, not respect.

When the user pushes back

Two failure modes, guard against both.

  • Caving. Language models tend to abandon correct positions when a user simply disagrees. If the user pushes back without new information ("I really think it'll be fine"), hold the objection politely: acknowledge their view, restate why the objection still stands, and say what evidence would change your mind.
  • Digging in. If they give new information (a fact, a constraint, a mitigation), update openly. Say exactly what changed and which objection weakens or falls away. Changing your mind for a good reason is the point of the exercise.
  • Reflexive contrarianism. Do not manufacture a new objection to replace one the user just answered. If what remains is weak, say they have addressed it.
Show full SKILL.md (375 more words)Show less

Sensitive personal decisions

For health, relationships, family, or significant money decisions, still engage; refusing leaves them with less. Be gentler by default, acknowledge that they know their life better than you do, and say clearly when a professional (doctor, therapist, financial advisor, lawyer) should weigh in, as a specific suggestion rather than a brush-off. If something suggests risk of harm, prioritize their safety over the exercise.

Output format

**The position:** <one or two sentences, their view stated fairly>

**The strongest case against** (<intensity>)
1. **<Objection as a claim>**
   - Why it could be true: <grounded in their facts; speculation labeled>
   - What it would cost you: <cost, reversibility>
   - What would settle it: <evidence> -- cheapest way to get it: <action>
2. ...  (at most 3; fewer if fewer are real)

**Pre-mortem:** It is 12 months out and this failed. Most likely reason: <one short paragraph>

**Where you're right:** <the strongest parts of their position, specifically>

**For this to be the right call, these need to be true:**
- <condition> ...

**Suggested next step:** <one concrete, cheap action>. Your call.

If the position is strong, open the objections section with "Honestly, this holds up." and keep only what is real.

Example 1: raising prices 20%

User: "We're a 12-person bookkeeping firm, 140 clients on monthly retainers averaging $900. We haven't raised prices in three years. I want a 20% increase for everyone on January 1. Play devil's advocate."

Good response shape: restates the plan. Objection 1: a flat increase on everyone at once risks concentrated churn among the price-sensitive smallest clients, and January is when they are reviewing costs; costly because lost clients rarely return; settle it by checking which segment is most at risk against past price complaints, cheapest via tiering the increase and piloting on 20 clients. Objection 2: 20% after three years may read as a penalty for loyalty rather than catching up (labeled as an assumption about perception). Pre-mortem: churn in the smallest tier offset the revenue gain and the team spent Q1 on retention calls. Where you're right: three years without a raise likely means they are under market, and retainer clients switch firms with friction. Must be true: fewer than roughly 1 in 6 clients leave (break-even at 20%). Next step: tier it, notify 60 days early, pilot first.

Example 2: the position is strong

User: "I'm going to require two-factor authentication for all 30 staff accounts before we put payroll data in the new system. Talk me out of it."

Good response: "Honestly, this holds up." One minor, real objection only: rollout friction and lockouts (settled by a recovery process and backup codes before enforcement day). Brief pre-mortem: people locked out on payday with no admin available. Where you're right: this is a low-cost, widely recommended control for exactly this data. Next step: set the recovery process, then enforce. No invented objections.

See references/techniques.md for the underlying research and sources.

© OneWave-AI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (references) in devils-advocate of OneWave-AI/claude-skills.

  • SKILL.md
  • evals/evals.json
  • references/techniques.md

Open the folder on GitHubat commit fc5b785

Compare with similar skills

Devils Advocate next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Devils Advocate compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Devils Advocate this skillOneWave-AI/claude-skills323—~2kAutomated safety check: PassMIT
Writing Livekit Scenarioslivekit-examples/agent-starter-python2641 repos~2.5kAutomated safety check: PassMIT
Go Testingcxuu/golang-skills1701 repos~1.3kAutomated safety check: PassApache-2.0
Goalcraftgrp06/goalcraft102—~3.8kAutomated safety check: PassMIT
Thinking Partnermattnowdev/thinking-partner206—~4.4kAutomated safety check: PassMIT
Visionkunchenguid/vision329—~2.9kAutomated safety check: PassMIT

Similar skills

  • Writing Livekit Scenarios

    livekit-examples/agent-starter-python

    Creates and maintains the scenarios a LiveKit agent simulation runs, and wires the agent to consume them.

    264 GitHub starsUsed in 1 repo~2.5k tokens
    Testing & QAAuto-check passed
  • Go Testing

    cxuu/golang-skills

    A skill your agent uses when writing, reviewing, or improving Go test code — including table-driven tests, subtests, parallel tests, test helpers, test doubles, and assertions with cmp.Diff.

    170 GitHub starsUsed in 1 repo~1.3k tokens
    Testing & QAAuto-check passed
  • Goalcraft

    grp06/goalcraft

    Turn a rough draft, vague ambition, or messy task brief into a powerful Codex /goal objective for persistent, evidence-checked work.

    102 GitHub stars~3.8k tokensUpdated 4 mo ago
    Testing & QAAuto-check passed
  • Thinking Partner

    mattnowdev/thinking-partner

    A deterministic thinking partner that challenges assumptions and applies mental models to sharpen decisions, solve problems, and think more clearly.

    206 GitHub stars~4.4k tokensUpdated 6 mo ago
    Testing & QAAuto-check passed
  • Vision

    kunchenguid/vision

    Draft and stress-test a VISION.md for a repository, then iterate with the author on an interactive review board until approved.

    329 GitHub stars~2.9k tokensUpdated 1 mo ago
    Testing & QAAuto-check passed
  • Volt Load Testing

    owenHochwald/volt

    Safely exercise and evaluate HTTP APIs with the Volt CLI, including authenticated requests, JSON bodies, staged load, machine-readable results, performance baselines, and before/after comparisons.

    141 GitHub stars~1.2k tokensUpdated 2 mo ago
    Testing & QAAuto-check passed

More from OneWave-AI/claude-skills

All 70 skills in this repo
  • CRM Data Cleanup

    OneWave-AI/claude-skills

    Finds duplicate and junk records in a CRM CSV export with fuzzy matching, normalizes fields and writes a reviewable merge plan plus import-ready files without touching the live CRM.

    323 GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • Design Export Repair

    OneWave-AI/claude-skills

    Repairs broken decks and PDFs exported from Claude Design or similar AI deck generators: clipped text, wrong fonts and corrupted .pptx package structure.

    323 GitHub stars~2.6k tokensUpdated 6 days ago
    Auto-check passed
  • Bi Measure Builder

    OneWave-AI/claude-skills

    Writes, explains, debugs, and optimizes BI calculations - Power BI / Fabric DAX measures and calculated columns, Tableau calculated fields (FIXED/INCLUDE/EXCLUDE LOD expressions, table…

    323 GitHub stars~2.2k tokensUpdated 6 days ago
    Auto-check passed
  • Bookkeeping Close

    OneWave-AI/claude-skills

    Categorizes transactions, reconciles bank and card statements to the ledger, works a month-end checklist and prepares a close package, without ever forcing a balance.

    323 GitHub stars~2k tokensUpdated 6 days ago
    Auto-check passed
  • CSV and Excel Merger

    OneWave-AI/claude-skills

    Combines CSV, TSV and Excel files into one verified table with pandas, by stacking or joining, mapping columns, normalizing keys and removing duplicates.

    323 GitHub stars~1.6k tokensUpdated 6 days ago
    Auto-check passed
  • Sec Filing Puller

    OneWave-AI/claude-skills

    Pulls financial statement numbers for US public companies straight from SEC EDGAR's free official XBRL APIs (companyfacts, companyconcept, frames, submissions) into a cited table.

    323 GitHub stars~2.1k tokensUpdated 6 days ago
    Auto-check passed

Categories

Questions about Devils Advocate

What does Devils Advocate do?

Argues the strongest honest case against a decision, plan, belief, hire, pricing move, strategy, or piece of work the user is leaning toward. Devils Advocate is an agent skill from OneWave-AI/claude-skills. Argues the strongest honest case against a decision, plan, belief, hire, pricing move, strategy, or piece of work the user is leaning toward.

When should I use Devils Advocate?

Devils Advocate fits situations like: the user says play devils advocate; argue the other side; poke holes in this; what am I missing.

How do I install Devils Advocate in Claude Code?

Run `npx skills add OneWave-AI/claude-skills --skill devils-advocate -a claude-code`. Or copy the skill folder (devils-advocate in OneWave-AI/claude-skills) into .claude/skills/devils-advocate in your project. Claude Code loads it when a task matches its description.

How do I install Devils Advocate in Codex?

Run `npx skills add OneWave-AI/claude-skills --skill devils-advocate -a codex`. Or copy the skill folder (devils-advocate in OneWave-AI/claude-skills) into .agents/skills/devils-advocate in your project. Codex loads it when a task matches its description.

Can I use Devils Advocate in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add OneWave-AI/claude-skills --skill devils-advocate -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/devils-advocate, .gemini/skills/devils-advocate, .github/skills/devils-advocate and .opencode/skills/devils-advocate in your project.

What does Devils Advocate need to run?

SKILL.md names no scripts, command-line tools or credentials: Devils Advocate is instructions for the agent only.

Does Devils Advocate access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Devils Advocate safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Devils Advocate use?

Devils Advocate is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Devils Advocate use?

About 2k tokens (SKILL.md is roughly 7.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.9k tokens, read only when the agent opens those files.

What are the alternatives to Devils Advocate?

Skills that share tags, products or a category with Devils Advocate: Writing Livekit Scenarios (livekit-examples/agent-starter-python, 264 stars), Go Testing (cxuu/golang-skills, 170 stars), Goalcraft (grp06/goalcraft, 102 stars) and Thinking Partner (mattnowdev/thinking-partner, 206 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Devils Advocate?

OneWave-AI (a GitHub organization) maintains it in OneWave-AI/claude-skills, which has 323 GitHub stars. The repository holds 70 skills in this directory. The repository was last updated on October 2, 2026.

Source: OneWave-AI/claude-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.