Field notes

Superpowers: giving Claude Code a workflow it can't skip

In the previous post on Claude Code agents, the recurring theme was delegation: subagents, isolated context windows, worktrees, chaining work between specialists. Those are the raw materials. Superpowers is what happens when someone assembles them into an opinionated process and refuses to let Claude skip steps.

The problem it targets is one anyone who’s paired with an AI on a non-trivial feature has felt. As the plugin’s own framing puts it: “Claude with no workflow races ahead on your first vague description, builds confidently in the wrong direction, and leaves you three hours deep in a teardown.” The model is eager. Eagerness without a plan is how you end up reviewing 600 lines of code that solve the wrong problem.

Superpowers is an open-source plugin (built by Jesse Vincent, known as “obra”, and Prime Radiant, MIT-licensed) that fixes this not by making Claude smarter but by making it disciplined. It ships a framework of composable skills that guide the agent through a structured development process, and the skills activate automatically once installed.

Installing it

It’s a one-liner through the official plugin marketplace:

/plugin install superpowers@claude-plugins-official

Or via the project’s own marketplace, if you want updates straight from the source:

/plugin marketplace add obra/superpowers-marketplace
/plugin install superpowers@superpowers-marketplace

After that you don’t invoke anything special. You describe what you want to build, and the relevant skills trigger themselves based on where you are in the process.

The workflow it enforces

Underneath the marketing, the plugin is “markdown files with instructions, checklists, and process diagrams”. It’s the same Skills mechanism Claude Code already supports, just curated into a coherent sequence. The sequence is the whole point. Roughly:

  1. Brainstorm. No code until there’s a design document a human has approved. The brainstorming skill interrogates your vague idea with questions, surfaces alternatives, and presents the design in digestible sections for sign-off. “The spec is the source of truth for everything that follows.”
  2. Create a git worktree. Work happens on an isolated branch with a clean test baseline, so the main branch is never at risk. (This is the isolation: worktree idea from the agents post, promoted to a default.)
  3. Write a plan. The design gets broken into 2-5 minute tasks, each with exact file paths, exact commands, and complete code. Crucially, “the plan needs the test before the code”: failing tests are written first.
  4. Execute with subagents. Fresh subagents implement tasks one at a time, each followed by a two-stage review, spec compliance first and code quality second. The verbose implementation churn stays in the subagents’ contexts; your main thread sees the outcomes.
  5. TDD throughout. The execution loop enforces real red-green-refactor cycles, alongside principles like YAGNI and DRY.
  6. Review and finish. Work is checked against the plan, issues reported by severity, tests verified, and the branch merged or turned into a PR.

The checkboxes in the plan double as recovery points: if a session dies halfway, the next one knows exactly what’s done and what’s left.

The skills behind it

The plugin is a library, not a monolith. Beyond the core flow, you get focused skills you can lean on individually:

  • Testing & debugging: test-driven-development, systematic-debugging, verification-before-completion
  • Collaboration: brainstorming, writing-plans, executing-plans, dispatching-parallel-agents, requesting-code-review, using-git-worktrees
  • Meta: writing-skills (so the agent can author new skills) and using-superpowers (the system’s own onboarding)

That writing-skills skill is the quietly interesting one: the framework is designed to grow. When you hit a workflow it doesn’t cover, you can have it codify a new skill rather than re-explaining yourself next time. It’s the same “convert repeated instructions into reusable blocks” idea, applied recursively.

What it actually buys you

The Builder.io write-up gives a concrete example. For Ding, a Go-based alerting daemon, the brainstorm phase produced a 424-line specification document that resolved genuinely tricky decisions (per-label-set cooldowns, hot-reload semantics) before a single line of code was written. That’s the entire value proposition in miniature: the expensive thinking happens up front, on paper, where changing your mind is cheap.

Reported upsides from teams using it:

  • Less backtracking. Early alignment on a signed-off spec kills the costly “wrong direction” rework.
  • Consistency. A predictable, repeatable sequence instead of a fresh improvisation every session.
  • Modest efficiency gains. One analysis cited roughly 9% lower cost and ~14% fewer tokens on complex tasks, since the agent stops wandering.
  • Long autonomous runs. With an approved plan in hand, the agent can grind through a batch of tasks without drifting off-design.

Where it doesn’t help

Structure has a cost, and the plugin is honest about its edges:

  • Overkill for small work. For a quick fix or a straightforward script, the full brainstorm-plan-execute ceremony is overengineering. The discipline pays off on medium-to-complex features, not one-line changes. This echoes the “stay in the main conversation for small, tightly-coupled edits” guidance from the agents post.
  • It can’t plan around the unplannable. Environment and platform-specific debugging, the stuff you can’t anticipate in a spec, falls outside the workflow. You step out, fix it by hand, and step back in.
  • Plans inherit spec errors. If the brainstorm got something wrong, the plan faithfully builds the wrong thing. The human approval gate is load-bearing; don’t rubber-stamp the design doc.

The takeaway

Superpowers isn’t magic, and it isn’t a new capability. It’s a forcing function. Everything it does, you could do by hand with subagents, worktrees, and careful prompting. What it actually provides is the refusal to skip the boring parts: write the spec, get it approved, write the tests, then write the code. The agents post was about the building blocks; this is one well-reasoned answer to the question of how to assemble them so the eager model in the loop stops racing ahead and starts building the thing you actually asked for.

If you’ve already internalized the subagent patterns, treat Superpowers as a reference implementation worth reading even if you don’t adopt it wholesale. The skills are just markdown, and they’re a master class in turning good intentions into a process Claude can’t quietly ignore.

Sources