SKILL 02 / CODING · DEEP DIVE

Superpowers, Taken Apart

A methodology nailed into a pipeline — fourteen skills, the install, and when it is pure overhead

2026-09-04 · BigCat

The interesting part is not the seven-phase workflow. It is that Superpowers does not wait to be found relevant — it pushes its rules into every single session at startup. That is why it works, and it is also the bill.

Start here → Skill 01 Coding Skills Roundup (superpowers is the first row of that table)

// WHY THIS MATTERS

superpowers (by Jesse Vincent, MIT; per the GitHub repo page, 2026-09, roughly 282k stars / 25k forks; per the repo's RELEASE-NOTES.md, latest is v6.3.0, released 2026-08) is not one skill. It is fourteen skills that add up to a development methodology, plus a hook that injects it into every session. The thing it kills for you is simple: the agent starting to write code before it has understood the job. This issue names all fourteen, links each one, says when to skip it, then takes apart the mechanism that makes the rules stick — and what that enforcement costs on small tasks.

// 01

What it kills for you: one command, fourteen skills

The claim: it does not treat "the model writes bad code." It treats "the model skipped thinking it through, skipped the tests, skipped verifying, and announced it was done." Each of those four has a skill sitting on it.

Installing it (per the repo README, 2026-09)

# Claude Code: from the official plugin source
/plugin install superpowers@claude-plugins-official

# The README gives one line per harness:
Cursor:        /add-plugin superpowers
Gemini CLI:    gemini extensions install https://github.com/obra/superpowers
Copilot CLI:   copilot plugin install superpowers@superpowers-marketplace
Devin CLI:     devin plugins install obra/superpowers
Kimi Code:     /plugins install https://github.com/obra/superpowers

# First thing that runs: type no command at all, just say
#   "I want to add X to this project"
# It will not start coding. It will ask you questions. That is brainstorming firing.

Fourteen skills, and what each one kills

skill (folder name under skills/) what it kills for you when to skip it ────────────────────────────────────────────────────────────────────────────── brainstorming coding before the ask is clear the ask is one sentence writing-plans plans that live only in context throwaway scripts executing-plans drift away from the plan no plan document exists subagent-driven-development main context stuffed with detail one-file edits dispatching-parallel-agents serial waits on independent work tasks depend on each other test-driven-development implementation before tests prototypes, generated code systematic-debugging guess a fix, try another fix the error names the cause requesting-code-review reviewing your own diff strict CI plus human review receiving-code-review cherry-picking review feedback -- pairs with the above using-git-worktrees experiments on the main branch one branch per person already finishing-a-development-branch skipped tests at merge time your own merge flow is stricter verification-before-completion "done" with nothing verified prose output, nothing to verify writing-skills ad hoc SKILL.md authoring you are not writing skills using-superpowers -- the dispatcher for all above (cannot be disabled alone) ────────────────────────────────────────────────────────────────────────────── Per the obra/superpowers skills/ directory, 2026-09. Each name is a real folder you can open.

The seven-phase workflow is just those strung together: brainstorming to using-git-worktrees to writing-plans to subagent-driven-development to test-driven-development to requesting-code-review to finishing-a-development-branch. You install the whole plugin; there are no checkboxes.

Failure mode: treating it as a "code gets better" upgrade pack. It does not change how well the model codes. It changes the order in which things happen — and if your order was already right, all you will feel is the slowdown.
// 02

The mechanism: why the rules actually stick

The claim: an ordinary skill waits for the model to judge it relevant from its description. Superpowers does not take that bet — a SessionStart hook pastes its charter into the context at the top of every session.

Layer one: a hook, not progressive disclosure

hooks/hooks.json in the repo registers a SessionStart hook matching three moments: startup|clear|compact. The hooks/session-start script reads the entire text of skills/using-superpowers/SKILL.md and injects it wrapped in an <EXTREMELY_IMPORTANT> tag. So "triggers automatically" is literal here: it is present before you ask for anything, and it comes back after you clear the context or after an auto-compaction.

Layer two: a contract written to be un-rationalizable

The injected using-superpowers is 63 lines, about 3.1 KB (per the repo file, 2026-09), and most of it is a table of excuses — every rationalization the model might use to skip the process, answered in advance. "This is just a simple question" becomes "questions are tasks." "Let me explore the codebase first" becomes "skills tell you HOW to explore." "The skill is overkill" becomes "simple things become complex." It also fixes precedence: process skills come before implementation skills, and your CLAUDE.md / AGENTS.md and direct instructions outrank any skill.

Layer three: review as an isolated subprocess

requesting-code-review is the piece worth stealing on its own. The main agent does not read the diff. It captures BASE_SHA and HEAD_SHA, dispatches a general-purpose subagent, and fills the repo's code-reviewer.md template. The SKILL.md states the reasoning plainly: the reviewer gets precisely crafted context and never your session history — so it looks at the work product rather than at your train of thought, and the diff plus the whole evaluation stay in the subagent's context while only findings come back. subagent-driven-development scales that up: a fresh implementer per task, a review after each task, and one broad review of the whole branch at the end.

an ordinary skill superpowers ──────────────────────────────────────────────────────────────── preloads name + description only → injects all of using-superpowers model reads the body if relevant → live from turn one, replayed on compact may never fire once → you must speak up to NOT get it cost = tens of tokens of metadata → cost = ~3.1 KB per session, floor
Failure mode: assuming "installed but unused is free." That holds for description-triggered skills. It does not hold here — the hook runs every session.
// 03

Real use and its edges: which phases earn their keep

The claim: the payoff is concentrated in the first two phases and the last one — think it through, write the plan, verify before claiming done. The TDD and subagent phases in the middle pay off only in proportion to whether your project has a test suite that runs.

Brainstorming's three paths (the v6.3.0 change that matters)

The loudest early complaint was that asking a small question triggered a two-document ceremony. Per the repo's RELEASE-NOTES.md (v6.3.0, 2026-08), it now classifies the request first and says the classification out loud so you can override it: spike (a feasibility question whose output is an answer, not code you keep — two or three sentences, then go find out), bounded (a change to a flow that already exists in this repo — design presented in chat, no spec file), architectural (new subsystems — full questions, sectioned design, spec, then writing-plans). The rule is take the heavier path when in doubt, and the ratchet only goes up. What does not scale down is the approval gate: on all three paths it stops before implementing.

The rules hard enough to bite

Where it fits: multi-file refactors, new subsystems, repos with a working test baseline, and any run where you want to walk away and let it work. Where it does not: copy changes, styling tweaks, one-off scripts, and bugs whose error message already names the cause.

Failure mode: turning on the TDD iron law in a legacy repo with no test baseline. It will correctly insist on tests first, and your "add a field" task becomes half a day of test engineering. That is not the tool being wrong — but you should know where the bill lands first.
// 04

The cost, and what you can do instead

The claim: the cost is not that the star count lies. The cost is that you give up the option of "let's be quick this time." And nearly every alternative can be lifted out of its own repository.

Three bills

Four alternatives, lightest first

  1. Just use your harness's plan mode: Claude Code's /plan (see the official permission modes docs) proposes before it touches disk. Kills acting before agreeing, at nearly zero cost. Where it runs out: no tests, no review, no trace that survives the session.
  2. Copy the one or two skills you want: the repo is MIT, so drop skills/systematic-debugging/ or skills/test-driven-development/ into ~/.claude/skills/ as folders. They trigger from their own descriptions, with no hook attached. This is the entry route this issue recommends — most of the value, none of the standing tax. Where it runs out: when the un-skippable enforcement is exactly what you wanted.
  3. Write the discipline into repo conventions: three to five lines in CLAUDE.md / AGENTS.md. Kills repeating yourself every session. Where it runs out: conventions are soft, and a model in a hurry skips soft things.
  4. Grow your own: scaffold with skill-creator from the official anthropics/skills repo, or read superpowers' own writing-skills as the model. Where it runs out: before you have accumulated the things you re-explain every time, what you write is an empty shell.
Failure mode: installing it and then telling it "skip brainstorming, skip the tests" every session. You are paying for the hook and buying a process you switch off yourself. Uninstall and take route 2 instead.

// THE ONE-PAGE BUYING CARD

Install these three first (if you only want part of superpowers): skills/systematic-debugging/ + skills/test-driven-development/ + skills/verification-before-completion/ — three folders copied into ~/.claude/skills/, each useful standalone, no SessionStart hook.

When the whole plugin is worth it: the work in front of you is a multi-file refactor or a new subsystem · the repo has a test suite that runs · you intend to let it work a long stretch instead of watching every step. All three, or it does not pay.

When to skip it: ten-minute changes · legacy repos with no test baseline · you already have strict CI and human review · your day is mostly copy and styling.

Review two weeks in: how many plans piled up in docs/superpowers/plans/, and how many did you actually go back and read? If the answer is none, your work never needed this layer.

// GLOSSARY

SessionStart hook
An external command the harness runs at moments like a new session, /clear, or context compaction; its output is injected into the context. Superpowers uses one to place its charter in every session — the root of how it differs from an ordinary skill.
subagent
A context-isolated worker. The main agent hands it a precisely constructed task and materials — never its own session history — and only conclusions come back. Superpowers uses subagents for both implementation and code review.
git worktree
Multiple checkouts of one repository at once. Superpowers opens one before touching code so experiments and the test baseline stay off your main branch, then offers merge / PR / discard at the end.
RED-GREEN-REFACTOR
The TDD beat: write a failing test and watch it fail, write the minimum code to turn it green, then refactor while staying green. Superpowers makes "if you did not watch it fail, it does not count" a hard rule.
spike / bounded / architectural
Since v6.3.0, brainstorming's three classifications of an incoming request, deciding how much ceremony it gets: feasibility probe / small change to an existing flow / new subsystem. The classification is announced so you can override it, and it only ratchets up.

// FURTHER READING