Best for
- Use when a plan, fix, scoping, decomposition, or named recommendation will drive decisions and you want structured alternative-generation before committing.
griffinwork40/agent-afk/src/bundled-plugins/awa-bundled/skills/devils-advocate/SKILL.md
Adversarially critique a proposal by generating alternatives. Dispatches 3 parallel critics (pragmatist, paranoid, architect lenses) — each invents one alternative approach — then a synthesis step ranks all 4 options and recommends the top choice. Use when a plan, fix, scoping, decomposition, or named recommendation will drive decisions and you want structured alternative-generation before committing. Complements /shadow-verify — that skill re-derives factual claims; this one critiques whether t
Decision brief
When a proposal — a plan, fix, decomposition, scoping, or named recommendation — will drive user decisions, file edits, or commits, do NOT act on it as-given. Run a devils-advocate critique wave before acting, and use the recommendation as input to the decision.
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/griffinwork40/agent-afk --skill "src/bundled-plugins/awa-bundled/skills/devils-advocate"Inspect the Agent Skill "devils-advocate" from https://github.com/griffinwork40/agent-afk/blob/803066d4f1e0cd57e983658dc670d647fcd893c9/src/bundled-plugins/awa-bundled/skills/devils-advocate/SKILL.md at commit 803066d4f1e0cd57e983658dc670d647fcd893c9. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
When a proposal — a plan, fix, decomposition, scoping, or named recommendation — will drive user decisions, file edits, or commits, do NOT act on it as-given. Run a devils-advocate critique wave before acting, and use the recommendation as input to the decision.
V1 ships three fixed lenses; domain-specific lens packs (software-perf, research-methodology, business-risk) are V2 work. When the proposal's domain is clear, the synthesis agent may weight dimensions accordingly — but the critic lenses themselves remain fixed.
Permission review
No configured static risk pattern was detected
This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.
Evidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 71/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 45 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
/contract
When a proposal — a plan, fix, decomposition, scoping, or named recommendation — will drive user decisions, file edits, or commits, do NOT act on it as-given. Run a devils-advocate critique wave before acting, and use the recommendation as input to the decision.
Wave 2 — Parallel critics (3 fixed lenses, independent):
subagent_type: "research-agent" (mechanically locked to Read/Grep/Glob/WebFetch/WebSearch — cannot Edit/Write/commit). Each critic receives ONLY the proposal + goal + ONE lens:
{lens, alternative, tradeoff, strength} where strength ∈ {weak, medium, strong} reflects the critic's confidence that its alternative beats the original.Wave 3 — Synthesis (sequential, single agent):
dissent = true when ≥2 critics returned strong alternatives disagreeing with the recommendation — signals the synthesizer is overruling well-argued dissent, so confidence is low. Include a dissent_note summarizing the strongest counter-argument.Wave 3.5 — Composition-boundary check (fires on convergence):
Critics that converge may all have evaluated the proposal in artifact-isolation — none read the boundaries where it composes with siblings. A convergent verdict reached in isolation can be confidently wrong (e.g., critics agree on a UI glyph asserting visual continuity, but none saw that parallel-branch flushes reorder it). When the synthesis recommendation is convergent — recommendation ≠ original with ≥2 critics having returned the same alternative — dispatch ONE context-injection verifier (subagent_type: "research-agent" — Read/Grep/Glob/WebFetch only, no Edit/commit) BEFORE surfacing:
CONFIRMED only if the recommendation survives all three; otherwise OVERRIDE: <specific boundary condition that breaks it>. (These verdicts are internal to Wave 3.5 — distinct from shadow-verify's verifier verdict vocabulary.)Until the verifier returns CONFIRMED, the convergent recommendation is a candidate, not a recommendation. On OVERRIDE, fold the named condition into the matrix and re-rank. Cap: if OVERRIDE recurs after 2 re-ranks, escalate the full composition failure to the user rather than cycling further — the matrix cannot resolve a boundary violation on its own.
Scope guard: skip when the proposal is purely local with no composition surface, or is anchored to an external referent that survives independently of the system. Does not fire when dissent = true — that path surfaces the matrix directly; adding a Wave 3.5 gate on already-uncertain output adds friction without signal. Fires once per convergent verdict, not per critic.
Merge + surface:
original → the proposal survived critique; proceed with it.original, dissent = false, ≥2 critics returned the same alternative → convergent path: run Wave 3.5, then surface the alternative with rationale (on OVERRIDE, re-rank first) before acting.original, dissent = false, only 1 critic backed the winner → no convergence to guard: surface the alternative with rationale directly (Wave 3.5 does not fire).dissent = true → present the matrix to the user; do not act. Confidence is low.When to invoke: Any time a proposal, plan, root-cause + fix, decomposition, or named recommendation will drive user decisions, file edits, commits, or external side-effects. Especially useful when the proposal "feels right" — that's when alternative-generation has the highest value.
Skip when:
/diagnose's hypothesis ranking does not need a second opinion on its hypotheses — though the final fix it produces can still benefit).V1 ships three fixed lenses; domain-specific lens packs (software-perf, research-methodology, business-risk) are V2 work. When the proposal's domain is clear, the synthesis agent may weight dimensions accordingly — but the critic lenses themselves remain fixed.
| Lens | Typical alternatives it surfaces |
|---|---|
| pragmatist | narrower scope, simpler implementation, reuse-over-build |
| paranoid | smaller blast radius, reversibility, guardrails, staged rollout |
| architect | systemic fix one level up, targeted fix one level down, different subsystem ownership |