Agentic Skills Framework · Multi-Agent Support

SUPER
POWERS

A complete software development workflow for AI coding agents. Composable "skills" enforce TDD, systematic debugging, brainstorm-to-plan-to-implement pipelines, git worktrees, subagent dispatching, and code review — automatically, from the first message.

The 7-Stage Workflow
💡
1
Brainstorm
& Spec
🌿
2
Git
Worktree
📝
3
Write
Plan
🤖
4
Subagent
Execution
🧪
5
TDD
Red/Green
🔍
6
Code
Review
7
Finish
Branch
00
Overview & Skills

Superpowers is not a model — it's a process layer. It gives your AI agent a library of composable "skills" that enforce good engineering habits automatically. Before writing any code, it brainstorms. It plans before it acts. It tests before it ships.

💡

brainstorming

Asks questions, refines ideas, presents design in chunks for review. Saves a design doc. Always runs before writing code.

Auto — before code
📝

writing-plans

Breaks approved design into 2–5 minute tasks. Each task has exact file paths, complete code, and verification steps.

Auto — after design
🤖

subagent-driven-development

Dispatches a fresh subagent per task with two-stage review (spec compliance, then code quality).

Auto — after plan
🧪

test-driven-development

Strict RED → GREEN → REFACTOR. Write the failing test first, implement just enough to pass, then clean up. No exceptions.

Rigid — always TDD
🐛

systematic-debugging

4-phase root cause process: identify, hypothesise, test, fix. Includes root-cause-tracing and verification-before-completion.

Auto — on bugs
🌿

using-git-worktrees

Creates isolated workspace on a new branch after design approval. Runs project setup, verifies clean test baseline.

Auto — after design
🔍

code-review

Validates each completed task against the original plan and coding standards before moving to the next.

Auto — after each task

verification-before-completion

Ensures the fix or feature actually works. Runs tests, lint, and build before declaring success.

Rigid — before done
⚙️

using-superpowers

The bootstrap meta-skill. Injected at session start. Tells the agent to always check for skills before acting (the "1% rule").

Auto — session start
The 1% Rule

If there's even a 1% chance a skill applies to the current task, the agent must invoke it. This prevents skills from being quietly skipped.

Rigid vs Flexible Skills

Rigid skills (TDD, debugging) must be followed exactly — never adapt them away. Flexible skills (patterns, brainstorming) adapt principles to context. The skill itself tells you which it is.

01
Installation
Before You Start

Superpowers works with Claude Code, Cursor, Codex, OpenCode, Copilot CLI, and Gemini CLI. You need Node.js and the CLI for whichever agent you use. No Bun required — Superpowers installs via the plugin marketplace.

Step 01 — Register the Marketplace

Add the Superpowers marketplace to Claude Code

Inside a Claude Code session, run:

/plugin marketplace add obra/superpowers-marketplace
Step 02 — Install Superpowers

Install the plugin from the marketplace

/plugin install superpowers@superpowers-marketplace

Or install directly from the official Claude marketplace (no marketplace add needed):

/plugin install superpowers@claude-plugins-official
Step 03 — Restart Claude Code

Quit and restart to activate

After restarting you'll see this injected at every session start:

<session-start-hook> <EXTREMELY_IMPORTANT> You have Superpowers. RIGHT NOW, go read: @~/.claude/plugins/cache/Superpowers/skills/getting-started/SKILL.md </EXTREMELY_IMPORTANT> </session-start-hook>

This bootstrap teaches the agent it has skills and must search for and use them.

✓ Verify Installation

Start a new Claude Code session and ask: "What skills do you have?" — Claude will search and list the installed Superpowers skills.

02
Agent Setup

Superpowers works across 6+ agents. Click a tab for agent-specific install commands.

🤖 Claude Code — Full support, all 7 workflow stages
# Inside Claude Code session: /plugin marketplace add obra/superpowers-marketplace /plugin install superpowers@superpowers-marketplace # Quit and restart Claude Code
🔷 Codex CLI — Install via INSTALL.md
# Tell Codex to fetch and follow the install instructions: Fetch and follow instructions from https://raw.githubusercontent.com/obra/superpowers/refs/heads/main/.codex/INSTALL.md
💎 Gemini CLI — Install via extensions
gemini extensions install https://github.com/obra/superpowers
🟣 OpenCode — Install via INSTALL.md
# Tell OpenCode to fetch and follow the install instructions: Fetch and follow instructions from https://raw.githubusercontent.com/obra/superpowers/refs/heads/main/.opencode/INSTALL.md
🔧 Copilot CLI — Two commands
copilot plugin marketplace add obra/superpowers-marketplace copilot plugin install superpowers@superpowers-marketplace
🖱️ Cursor — Agent chat or marketplace search
# In Cursor Agent chat: /add-plugin superpowers # Or search "superpowers" in the Cursor plugin marketplace
03
Basic Use

You don't need to invoke skills manually. Once Superpowers is installed, the agent automatically picks the right skill based on what you ask.

Trigger — Building Something New

"Let's build X" → brainstorming activates automatically

Just ask naturally. The agent will ask questions, build a spec, then a plan, then implement:

Let's build a REST API for user authentication with JWT tokens

Claude will not jump straight into code. It will ask clarifying questions first, present a design for you to approve, then proceed to planning.

Trigger — Fixing a Bug

"Fix this bug" → systematic-debugging activates

The login endpoint returns 500 when the email has uppercase letters — fix this bug

The agent runs through the 4-phase debugging process: identify → hypothesise → test → fix. It will not declare success until verified.

Trigger — Reviewing Code

After implementation, code review runs automatically per task

After each task in the plan is completed, a code-reviewer subagent validates it against the original spec and coding standards before moving on.

Tip

You can also ask for a review explicitly: "Review what you just implemented against our plan"

Checking Skills

Ask Claude what skills it has available

What Superpowers skills do you have? List them all.

Claude will search the skills directory and give you a full list with descriptions.

04
Advanced Use
Advanced — Subagent Parallel Execution

Dispatch multiple subagents in parallel for large plans

For plans with independent tasks (e.g. UI, tests, and docs), the subagent-driven-development skill can run them in parallel:

Now that we have a plan, execute it using parallel subagents where tasks are independent

Each subagent gets its task, implements it with TDD, and is reviewed before the next task starts.

Advanced — Custom Skills

Write your own skills for your team's specific workflows

Skills are just markdown files. Create a SKILL.md in your repo and the agent will find and use it:

# skills/our-deployment-workflow/SKILL.md # Our Deployment Workflow ## When to use this skill Use when preparing a release or deploying to staging/production. ## Steps 1. Run full test suite 2. Update CHANGELOG.md 3. Bump version in package.json 4. Create git tag 5. Push and open PR against main
Auto-Discovery

Skills placed in your repo are automatically discovered and indexed. The agent searches for skills before every action using the Skill tool.

Advanced — Keeping Skills Updated

Skills update automatically when you update the plugin

# Inside Claude Code — update to latest Superpowers /plugin update superpowers

No manual file management needed. The plugin system handles versioning.

Advanced — Override Skills with CLAUDE.md

User instructions always win over skills

Add a CLAUDE.md to your project root to override any skill behaviour. For example, to disable TDD for a specific project:

# CLAUDE.md in your project root ## Project Rules - Do NOT use TDD for this project — we have an existing test suite managed separately - Always use Python type hints - Never modify files in /legacy/
Priority Order

User instructions (CLAUDE.md / AGENTS.md) > Superpowers skills > Default agent behaviour. You are always in control.

Advanced — Writing Skills (Skill TDD)

Test your custom skills with subagents before using them

The Superpowers repo includes a writing-skills skill that teaches Claude how to write and test new skills using realistic scenarios:

Help me write a new skill for our code review process. Use the writing-skills skill.

See skills/writing-skills/SKILL.md in the superpowers repo for the complete guide.

05
Cheat Sheet

🛠 Install Commands

  • /plugin marketplace add obra/superpowers-marketplaceRegister the marketplace
  • /plugin install superpowers@superpowers-marketplaceInstall from marketplace
  • /plugin install superpowers@claude-plugins-officialInstall from official marketplace
  • /plugin update superpowersUpdate to latest version
  • copilot plugin marketplace add obra/superpowers-marketplaceCopilot CLI install
  • gemini extensions install github.com/obra/superpowersGemini CLI install

🧠 Core Skills

  • brainstormingAuto-runs before any code — refines spec
  • writing-plansBreaks design into 2–5 min tasks
  • subagent-driven-developmentParallel subagent execution
  • test-driven-developmentStrict RED/GREEN/REFACTOR
  • systematic-debugging4-phase root cause process
  • using-git-worktreesIsolated branch workspace
  • code-reviewPost-task quality gate
  • verification-before-completionTests pass before done

💬 Trigger Phrases

  • "Let's build X"→ brainstorming first
  • "Fix this bug"→ systematic-debugging
  • "Plan this feature"→ brainstorming + writing-plans
  • "Review my code"→ code-review skill
  • "What skills do you have?"→ lists all skills
  • "Use parallel subagents"→ subagent-driven-development

📁 File Locations

  • ~/.claude/plugins/cache/Superpowers/Plugin install location
  • ~/.config/superpowers/skills/🔮 Personal skills (shadow core)
  • skills/*/SKILL.mdIndividual skill files
  • CLAUDE.mdProject-level overrides (highest priority)
  • AGENTS.mdMulti-agent project instructions
  • docs/superpowers/plans/Generated plan location

🔮 Hidden Commands & Skills

  • /find-skills <query>Search all skills by description
  • /using-superpowersManual skill-loader meta-command
  • /brainstormingNew canonical name (v5)
  • /writing-plansNew canonical name (v5)
  • /executing-plansNew canonical name (v5)
  • /subagent-driven-developmentParallel subagent skill
  • export CODEX_CI=1Foreground mode for Codex
  • $SCREEN_DIR/.server-infoVisual Brainstorming URL location

📝 Phrases That Invoke Skills

  • "Show me visual mockups"→ Visual Brainstorming companion
  • "Use the superpowers:X skill"Force a specific skill by name
  • "Review the spec for gaps"→ Adversarial spec review
  • "Use parallel subagents"→ subagent-driven-development
  • ultrathink (keyword)Force high-effort reasoning one turn
  • "Create a skill for X"→ writing-skills

⛔ Rejected / Deprecated / Traps

  • /brainstorm❌ DEPRECATED in v5 — only shows warning. Use /brainstorming skill
  • /write-plan❌ DEPRECATED in v5 — use writing-plans skill
  • /execute-plan❌ DEPRECATED in v5 — use executing-plans skill
  • Asking Claude to invoke /brainstorm❌ Blocked by disable-model-invocation:true
  • Starting subagents from a subagent❌ v5 anti-recursion guard prevents this
  • Plans with "TBD" sections❌ Spec review loop will reject — fill it in
  • Skipping the brainstorming phase❌ Skills will re-introduce questions; just answer them
  • Using brainstorming without prefix❌ Use superpowers:brainstorming to avoid collisions
  • Editing core skill files❌ Use ~/.config/superpowers/skills/ to shadow instead
  • Running subagent-driven-development on Gemini❌ No subagent support — falls back to executing-plans

🚦 Troubleshooting

ProblemFix
Skills not activatingQuit and restart your agent after install — the session-start hook only fires on fresh sessions
Agent jumps straight into codeSkills aren't loaded. Verify install with "What Superpowers skills do you have?"
TDD being skippedTDD is a rigid skill — add it to your CLAUDE.md as a reminder, or explicitly say "Use TDD"
Plugin not found in marketplaceMust register the marketplace first: /plugin marketplace add obra/superpowers-marketplace
Skills not updatingRun /plugin update superpowers inside Claude Code
CLAUDE.md conflicting with skillsUser instructions always win — remove the conflicting line from CLAUDE.md if you want skill behaviour
06
Hidden Commands & Secrets
What's Really Going On in v5

The visible slash commands are deprecated — the real power is in the skills system. These are the undocumented tricks, deprecation traps, and meta-commands that aren't in the README.

Hidden #01 — The Slash Commands are Deprecated

Why /brainstorm, /write-plan, /execute-plan are traps v5 CHANGE

Every guide online tells you to run these commands. In Superpowers v5, they just show deprecation notices and redirect you to skills. The real entry points are:

# DEPRECATED — these only show a warning now: /brainstorm /write-plan /execute-plan # The real way — just describe what you want: Help me plan the new authentication system # → Superpowers auto-invokes the 'brainstorming' skill Let's debug this failing test # → Auto-invokes 'systematic-debugging' skill
Why They're Deprecated

In v5, Claude Code treats skills as slash commands natively. The old commands would invoke a skill, then Claude would also try to read the skill file separately, creating confusion. Now skills load directly — no double invocation.

Hidden #02 — disable-model-invocation Trap

Why Claude refuses to invoke /brainstorm when you ask GOTCHA

All three deprecated commands have disable-model-invocation: true in their frontmatter — this means Claude cannot invoke them via the Skill tool. They only work when YOU type them manually.

# If you ask Claude: "Use /brainstorm" # Error: disable-model-invocation # Workaround — ask for the SKILL by name: Invoke the superpowers:brainstorming skill Use the superpowers:writing-plans skill Use the superpowers:subagent-driven-development skill
Hidden #03 — Personal Skills Directory (Shadowing)

Override any core Superpowers skill with your own POWERFUL

Your personal skills at ~/.config/superpowers/skills/ override core skills with the same name. This lets you customise Superpowers behaviour without forking the plugin:

# Personal skills directory mkdir -p ~/.config/superpowers/skills/brainstorming # Create your version of SKILL.md — it shadows the core skill cat > ~/.config/superpowers/skills/brainstorming/SKILL.md << 'EOF' --- name: brainstorming description: My customised brainstorming process --- # My custom brainstorming ... EOF
Use Case

Add your team's specific questions to the brainstorming skill. Add your stack's debugging patterns. Inject company-specific TDD rules. All without touching the plugin.

Hidden #04 — find-skills Command

Search both core and personal skills by description HIDDEN

Most people don't know there's a built-in search command for discovering available skills. It searches both core skills AND your personal skills directory:

/find-skills debugging async /find-skills testing react /find-skills code review # Returns any skill whose description mentions those terms
Hidden #05 — Visual Brainstorming Companion

Browser-based mockup tool for design discussions V5 FEATURE

Superpowers 5 added an opt-in browser companion that shows visual mockups, diagrams, and comparisons alongside the terminal conversation — not just ASCII art:

# Inside a brainstorming session, just ask: Can you show me visual mockups for these three layouts? # → Browser opens with side-by-side mockups Show me the state machine visually # → Renders interactive diagram in browser
Launch Modes

Claude Code = default. Codex = auto-foreground via CODEX_CI=1. Gemini CLI = --foreground with is_background. Server writes startup info to $SCREEN_DIR/.server-info for agents to find the URL.

Hidden #06 — SessionStart Hook

The using-superpowers skill auto-loads every session INVISIBLE

You never see it happen, but the moment you start a session, a SessionStart hook automatically loads the using-superpowers skill into context. This is why skills "just work" without any setup command.

# To see this in action, at the start of any session: What skills do you have loaded right now? # Claude will list 'using-superpowers' as the first loaded skill # To disable this (not recommended): # Remove the SessionStart hook from hooks/hooks.json
Hidden #07 — CODEX_CI Environment Variable

Foreground mode for Codex background execution HIDDEN

When using Visual Brainstorming in Codex, stdout is often hidden because Codex runs tools in the background. Set CODEX_CI=1 to force foreground mode so the browser URL is visible:

export CODEX_CI=1 codex # Now visual brainstorming URLs are shown in the terminal
Hidden #08 — Two-Stage Review Loop

Every subagent task runs through TWO independent reviews V5 SECRET

The subagent-driven-development skill runs two separate review stages after each task:

  1. Spec Compliance Review — a skeptical reviewer that reads the actual code (not the implementer's report) and verifies it matches spec exactly. Catches missing requirements AND over-building.
  2. Code Quality Review — only runs after spec compliance passes. Reviews style, patterns, test coverage.
Why It Matters

The reviewer doesn't trust the implementer's claims — it re-reads the actual code. This catches "I implemented it" when the implementation is actually incomplete.

Hidden #09 — Spec Review Loop

Adversarial review catches "TBD" sections in planning docs V5 NEW

Also new in v5: after planning finishes, Superpowers kicks off a subagent that reads the planning docs for sanity and completeness. It flags TBD or "Fill this in later" sections before execution starts.

# Trigger it manually: Review the spec doc at docs/superpowers/specs/feature.md for completeness # → Adversarial reviewer reads it, flags gaps
Hidden #10 — Power User Tips

Things most users don't know

  • 🎯 Skills use fully-qualified names — always superpowers:brainstorming, not just brainstorming, to avoid collisions with other plugins
  • 📦 node_modules are vendored — visual brainstorming works offline, no npm install at runtime
  • 📤 Continuous execution — v5 removed the "execute 3 tasks then stop for review" pattern. Plans run continuously now, stopping only for blockers
  • 🛑 Subagent pollution prevention — delegation skills all include "context isolation" so subagents receive only what they need
  • 📐 Gemini limitation — no subagent support, so subagent-driven-development falls back to executing-plans automatically
  • 🔐 Extension root at repo root — avoids Windows symlink issues (v5 fix)
  • 🔌 Anti-recursion guard — v5 prevents subagents from grabbing using-superpowers and recursively delegating to more subagents
  • 📝 Plan location — default is docs/superpowers/plans/YYYY-MM-DD-<feature>.md; override via user preferences
  • 🛠 Skill creator is a skill — ask Claude to "create a new skill for X" and it invokes writing-skills automatically
  • 🏷️ YAGNI enforced — plans explicitly block over-engineering; simplest thing that works wins
Hidden #11 — Built-in Claude Code Commands That Work Great With Superpowers

Standard Claude Code commands that integrate nicely

  • /help — shows all commands including superpowers skills with (superpowers) tag
  • /compact — compress context after long brainstorming sessions; preserves plan decisions
  • /clear — start fresh but keep plan file; resume with "let's continue the plan"
  • /review — Claude Code's built-in review; chains well with requesting-code-review skill
  • /security-review — built-in security review; complements Superpowers' own review loop
  • /init — initialise CLAUDE.md; Superpowers will inject its guidance automatically
  • Shift+Tab × 2 — enter plan mode manually (useful with writing-plans skill)
  • Ctrl+B — send current subagent to background (keep working while it finishes)
  • ultrathink (keyword) — force high-effort reasoning mid-conversation for complex brainstorming
Hidden #12 — Commands I'd Add That Don't Exist Yet

Feature wishlist — fork and add these

  • 🔍 /superpowers-audit — audit what skills fired in this session and why
  • 📊 /skill-stats — how many times each skill fired across all your sessions
  • 🔄 /replay-plan — re-run an archived plan file against a fresh codebase
  • 🎯 /skill-test — test a personal skill with a sample prompt before committing
  • 📑 /plan-template <name> — save and reuse plan templates for common feature types
  • 🔗 /chain-skills — explicitly chain multiple skills (brainstorm → plan → execute → review)
  • 📊 /tdd-coverage — enforce minimum test coverage before plan execution continues
  • 🌐 /skill-share — push a personal skill to a team registry for collaboration
  • 📢 Submit via PR at github.com/obra/superpowers
💡
Brainstorming
When it activates

Automatically, every time you ask the agent to build something new — before it enters plan mode.

What it does

Turns vague ideas into clear, approved specs

  • Assesses scope — if too large, helps you decompose into sub-projects first
  • Asks questions one at a time (multiple choice where possible)
  • Presents the design in sections short enough to actually read
  • Saves the design document to disk
  • Only proceeds to writing-plans — never jumps to implementation
Visual Companion

Browser-based mockups during brainstorming

For questions involving layouts or diagrams, the agent may offer to open a local browser URL to show you visual options. It will ask once for consent — you can decline and stay text-only.

Tip

Visual companion is token-intensive. Only say yes if you're designing a UI or need architecture diagrams.

🧪
Test-Driven Development
Rigid Skill — No Exceptions

TDD must be followed exactly. If the agent tries to skip it, it is rationalising. "Skip TDD just this once" is always wrong.

The Cycle

RED → GREEN → REFACTOR

// 1. RED — Write a failing test FIRST test('rejects empty email', async () => { const result = await submitForm({ email: '' }); expect(result.error).toBe('Email required'); }); // 2. GREEN — Write the MINIMUM code to pass function submitForm(data) { if (!data.email?.trim()) return { error: 'Email required' }; // ... } // 3. REFACTOR — Clean up, then re-test
Rules

Non-negotiable TDD rules

  • ❌ Write code before the test? Delete it. Start over.
  • ❌ Tests passing immediately (before any implementation)? Tests are wrong — fix them.
  • ❌ "I'll add tests after" → Tests-after verify what you remembered, not what's required.
  • ✅ Found a bug? Write a failing test reproducing it first, then fix.
🐛
Systematic Debugging
Rigid Skill

Follow the 4 phases exactly. Don't skip to a solution before identifying root cause.

Phase 1 — Identify

Clearly define what's wrong and gather evidence

What exactly fails? Under what conditions? What does the error message say? What does the stack trace show? Gather all data before forming hypotheses.

Phase 2 — Hypothesise

Generate potential causes from the evidence

List at least 3 plausible root causes. Rank by likelihood. Do not skip to the most obvious one.

Phase 3 — Test

Systematically test each hypothesis with controlled experiments

Isolate each hypothesis. Add targeted logging. Use condition-based-waiting and root-cause-tracing techniques where relevant.

Phase 4 — Fix & Verify

Apply the verified fix, then confirm via verification-before-completion

Write a test that reproduces the bug first. Apply the fix. Confirm the test passes. Run the full test suite. Never declare "fixed" without verification.

📝
Writing Plans
When it activates

After you approve the brainstormed design. Produces a plan clear enough for "an enthusiastic junior engineer with poor judgement and no project context" to follow.

What a Good Plan Looks Like

Each task should be 2–5 minutes of work

## Task 3: Add email validation to submitForm File: src/api/auth.ts Add this validation before the existing password check: if (!data.email?.trim()) return { error: 'Email required' }; if (!data.email.includes('@')) return { error: 'Invalid email' }; Test: tests/auth.test.ts test('rejects empty email', ...) test('rejects email without @', ...) Verification: npm test -- --grep "submitForm"
Principles

YAGNI, DRY, TDD — baked into every task

  • YAGNI — You Aren't Gonna Need It. Don't implement features not in the spec.
  • DRY — Don't Repeat Yourself. Extract shared logic.
  • Every task has a test — no task is complete without a passing test.
  • Exact file paths — no ambiguity about where changes go.
🌿
Git Worktrees
When it activates

Automatically after design approval. Creates an isolated branch workspace so parallel tasks don't clobber each other.

What it does

Creates a clean isolated workspace for each feature

  • Creates a new git branch for the feature
  • Sets up a git worktree so work is isolated from main
  • Runs project setup (install deps, etc.)
  • Verifies a clean test baseline before any code is written
Finishing a Branch

At the end of implementation, Claude offers three options

  • 🔀 Open a GitHub Pull Request — creates the PR automatically
  • 🔗 Merge worktree back to source branch — merges locally
  • Stop — leave the worktree for you to handle
06
Real-World Examples

Copy these prompts directly into your agent session to see Superpowers in action.

Example 01 — New Feature End-to-End

Build a feature from scratch using the full 7-stage workflow

Let's build a password reset flow for our Express app. Users should get an email with a reset link that expires in 1 hour.

What happens: brainstorming asks 3–5 questions → spec saved → git worktree created → plan written in 2–5 min tasks → subagents implement each task with TDD → code reviewed → branch finished.

Example 02 — Systematic Bug Fix

Reproduce, root cause, fix, verify

Users are reporting that after logging out, they can still access /dashboard if they hit the back button. Fix this properly.

Systematic-debugging runs: identifies the session/cookie issue → tests hypotheses → fixes root cause → writes a regression test → verifies with the full test suite.

Example 03 — Parallel Subagents

Split a large refactor across parallel agents

Refactor our monolith into three separate modules: auth, billing, and notifications. Use parallel subagents where modules are independent.

After brainstorming confirms the split is safe, three subagents work in parallel, each with their own worktree, TDD, and code review gate.

Example 04 — Write a Custom Skill

Teach Claude your team's deployment process

Help me write a Superpowers skill for our deployment workflow. It should enforce: run tests, update CHANGELOG, bump version, create tag, open PR to main.

Claude uses the writing-skills skill to write and test your new skill with subagents before saving it to your repo.

Example 05 — Decompose a Large Project

Break a big idea into sub-projects

Let's build a SaaS platform with chat, file storage, billing, and user analytics.

Brainstorming detects this is too large for one cycle. Claude helps decompose it into 4 sub-projects and starts with the first: "What order should we build these in?"

07
Best Practices
Best Practice 01 — Let Brainstorming Finish

Don't rush through the spec phase

The brainstorming skill exists because jumping straight to code is the most common source of rework. Let Claude ask all its questions. Approve the spec only when you'd be happy building exactly what's written.

Best Practice 02 — Never Skip TDD

"Skip TDD just this once" is always wrong

Tests-first force edge case discovery before implementing. Tests-after verify what you remembered — not what's required. TDD is a rigid skill for a reason. If you find yourself wanting to skip it, that's a red flag, not a reason to skip.

Best Practice 03 — Use CLAUDE.md for Project Rules

Capture your project's specific constraints in CLAUDE.md

# CLAUDE.md — project-level rules (highest priority) ## Our Standards - All database queries must use parameterised statements - No direct DOM manipulation — always use React state - API endpoints must include rate limiting - Never commit secrets or API keys

These rules override skills and persist across all agent sessions in this project.

Best Practice 04 — Trust Verification Before Completion

Don't skip the verification step

When Claude says "done", it should have run tests, lint, and build first. If it hasn't, ask: "Run verification-before-completion before we continue."

Best Practice 05 — Use Superpowers for Refactors

Worktrees + TDD make risky changes safer

Refactors are where Superpowers shines most. Isolated worktrees mean you can't break main. Small planned tasks mean each change is verifiable. TDD means you know the behaviour hasn't changed.

Best Practice 06 — Contribute Skills Back

Share useful skills with the community

If you write a skill that solves a common problem, submit a PR to github.com/obra/superpowers. Skills update automatically for all users when merged.

Community

Join the Superpowers Discord for community support, sharing skills, and seeing what others are building.

08
Developer Guidelines

How to write skills, contribute, and understand the Superpowers architecture.

Dev — Repo Structure

Key folders

superpowers/ ├── skills/ │ ├── getting-started/ # Bootstrap skill (injected at session start) │ ├── using-superpowers/ # Meta-skill — the 1% rule, skill invocation protocol │ ├── brainstorming/ # Pre-code spec refinement │ ├── writing-plans/ # 2–5 min task breakdown │ ├── test-driven-development/ # RED/GREEN/REFACTOR │ ├── systematic-debugging/ # 4-phase root cause process │ ├── using-git-worktrees/ # Branch isolation │ ├── subagent-driven-development/ # Parallel subagents │ ├── code-review/ # Post-task quality gate │ └── writing-skills/ # How to write new skills └── hooks/ └── session-start # Injects using-superpowers into every session
Dev — Writing a Skill

SKILL.md format — the complete structure

# skills/my-skill/SKILL.md # My Skill Name ## When to use this skill Describe the exact trigger conditions. Be specific. ## Skill type Rigid | Flexible (Rigid = follow exactly, no adaptation) ## Steps 1. First step — be precise about WHAT, not HOW 2. Second step 3. Verification step — how to confirm it worked ## Checklist (optional — agent creates a TodoWrite per item) - [ ] Step 1 complete - [ ] Tests passing - [ ] Verified ## Do NOT - List things the agent must never do in this skill
Auto-Discovery

Any SKILL.md in a skills/*/ directory is automatically indexed and searchable by the agent.

Dev — How Session Injection Works

The bootstrap process

At session start, the hooks system reads skills/using-superpowers/SKILL.md, escapes it for JSON embedding, and wraps it in an <EXTREMELY_IMPORTANT> block. It's injected as additionalContext — ensuring the agent sees it before any user message.

Cross-Platform

The output includes both additional_context (Cursor compatibility) and hookSpecificOutput.additionalContext (Claude Code) so the same skill works across agents.

Dev — Instruction Priority

Always respect this order

PrioritySourceExample
1 — HighestUser instructions (CLAUDE.md, AGENTS.md, chat)"Don't use TDD for this project"
2 — SkillsSuperpowers skill filestest-driven-development skill
3 — LowestDefault agent behaviourAgent's built-in tendencies
Dev — Contributing

How to submit a skill or fix

  1. Fork github.com/obra/superpowers
  2. Read skills/writing-skills/SKILL.md — this is the authoritative guide for skill authoring
  3. Write your skill following the SKILL.md format
  4. Test it with subagents using realistic scenarios (not quiz-show questions)
  5. Submit a Pull Request — MIT licensed
Skill TDD

Before submitting, ask Claude to test your skill with "realistic scenarios that put pressure on the agent" — not easy questions where any answer looks correct. This is how the Superpowers team validates skills internally.