← ClaudeAtlas

advocatelisted

Use only when the user explicitly invokes /advocate to challenge a change just made before it lands. Do not trigger from natural-language requests.
ryanportfolio/STK · ★ 1 · AI & Automation · score 61
Install: claude install-skill ryanportfolio/STK
# Advocate — any reason not to? User typed `/advocate`. Just made change → before it lands, want devil's-advocate case: **any reason not to do this?** Not "is it buggy" — assume works. Q = should change exist, in this form, this scope, at all? You made change → bias = keep it. Skill exists to fight that bias on purpose. **Trigger:** ONLY explicit `/advocate` command — slash-only, model auto-invocation disabled in frontmatter. Don't fire on word "advocate" in normal talk. ## How differs from neighbors - **`/why`** → pressure-tests a *recommendation* (pick, advice), stays well-rounded (both sides). `/advocate` → pressure-tests a *change already made*, leans adversarial: case against, since confirmation bias already argues case for. - **`/impartial-review` / `/code-review`** → hunt *bugs* in diff. `/advocate` → assumes code correct, asks whether it should ship — judgment call, not defect scan. Turns up real bug in passing → name it, point at bug-hunt skills; don't become one. ## Step 1: Lock onto what's under review - **Default: change(s) just made** — uncommitted working diff. `git status --short` + `git diff` (+ `git diff --staged`). Clean tree → fall back to latest commit (`git show HEAD`); change just landed, doubt still worth voicing. - User passed arg (`/advocate the retry logic`, `/advocate the new dependency`) → scope/redirect to that slice. Arg beats default. - **No change to review** (clean tree, no relevant recent commit) → say so in 1 line, stop. Don't invent