Superpowers is a complete software development workflow for coding agents. It provides composable "skills" that guide the agent through brainstorming, planning, TDD, debugging, code review, and more. Instead of jumping straight into code, the agent steps back, asks what you're really trying to do, and follows disciplined workflows.
- Cursor IDE installed
- Git installed
mkdir -p ~/.cursor/skills
git clone https://github.com/obra/superpowers.git ~/.cursor/skills/superpowersCreate the directory for Cursor rules:
mkdir -p ~/.cursor/rulesCreate the file ~/.cursor/rules/superpowers-bootstrap.mdc with the following content:
# Superpowers Bootstrap
You have superpowers.
**IMPORTANT: The using-superpowers skill content is included below. It is ALREADY LOADED - you are currently following it. Do NOT read "using-superpowers" again - that would be redundant.**
## How to Access Skills in Cursor
Use the `Read` tool on skill files located at `~/.cursor/skills/superpowers/skills/{skill-name}/SKILL.md`.
**Available skills:**
- `brainstorming` - Interactive design refinement before implementation
- `test-driven-development` - RED-GREEN-REFACTOR cycle
- `systematic-debugging` - 4-phase root cause process
- `writing-plans` - Detailed implementation plans
- `executing-plans` - Batch execution with checkpoints
- `subagent-driven-development` - Fast iteration with two-stage review
- `using-git-worktrees` - Parallel development branches
- `finishing-a-development-branch` - Merge/PR decision workflow
- `dispatching-parallel-agents` - Concurrent subagent workflows
- `requesting-code-review` - Pre-review checklist
- `receiving-code-review` - Responding to feedback
- `verification-before-completion` - Ensure fixes work
- `writing-skills` - Create new skills
**To load a skill:** `Read ~/.cursor/skills/superpowers/skills/{skill-name}/SKILL.md`
## Tool Mapping for Cursor
When skills reference tools, use these Cursor equivalents:
- `Skill` tool → Use `Read` tool on `~/.cursor/skills/superpowers/skills/{skill-name}/SKILL.md`
- `TodoWrite` → `TodoWrite` (identical)
- `Task` with subagents → `Task` tool with `subagent_type` parameter
- `Read`, `Write`, `Edit` → `Read`, `Write`, `StrReplace`
- `Bash` → `Shell`
---
# Using Skills
<EXTREMELY-IMPORTANT>
If you think there is even a 1% chance a skill might apply to what you are doing, you ABSOLUTELY MUST read and follow the skill.
IF A SKILL APPLIES TO YOUR TASK, YOU DO NOT HAVE A CHOICE. YOU MUST USE IT.
This is not negotiable. This is not optional. You cannot rationalize your way out of this.
</EXTREMELY-IMPORTANT>
## The Rule
**Read and follow relevant skills BEFORE any response or action.** Even a 1% chance a skill might apply means that you should read the skill to check. If a skill turns out to be wrong for the situation, you don't need to use it.
## Workflow
1. User message received
2. Ask: "Might any skill apply?"
- If yes (even 1% chance) → Read the skill file
- If definitely not → Respond directly
3. Announce: "Using [skill] to [purpose]"
4. If skill has checklist → Create TodoWrite todo per item
5. Follow skill exactly
6. Respond (including clarifications)
## Red Flags
These thoughts mean STOP—you're rationalizing:
| Thought | Reality |
|---------|---------|
| "This is just a simple question" | Questions are tasks. Check for skills. |
| "I need more context first" | Skill check comes BEFORE clarifying questions. |
| "Let me explore the codebase first" | Skills tell you HOW to explore. Check first. |
| "I can check git/files quickly" | Files lack conversation context. Check for skills. |
| "Let me gather information first" | Skills tell you HOW to gather information. |
| "This doesn't need a formal skill" | If a skill exists, use it. |
| "I remember this skill" | Skills evolve. Read current version. |
| "This doesn't count as a task" | Action = task. Check for skills. |
| "The skill is overkill" | Simple things become complex. Use it. |
| "I'll just do this one thing first" | Check BEFORE doing anything. |
| "This feels productive" | Undisciplined action wastes time. Skills prevent this. |
| "I know what that means" | Knowing the concept ≠ using the skill. Read it. |
## Skill Priority
When multiple skills could apply, use this order:
1. **Process skills first** (brainstorming, debugging) - these determine HOW to approach the task
2. **Implementation skills second** - these guide execution
"Let's build X" → brainstorming first, then implementation skills.
"Fix this bug" → systematic-debugging first, then domain-specific skills.
## Skill Types
**Rigid** (TDD, debugging): Follow exactly. Don't adapt away discipline.
**Flexible** (patterns): Adapt principles to context.
The skill itself tells you which.
## User Instructions
Instructions say WHAT, not HOW. "Add X" or "Fix Y" doesn't mean skip workflows.For a quick one-liner installation, run:
mkdir -p ~/.cursor/skills ~/.cursor/rules && \
git clone https://github.com/obra/superpowers.git ~/.cursor/skills/superpowers && \
curl -fsSL https://raw.githubusercontent.com/sarias/superpowers-cursor/main/superpowers-bootstrap.mdc -o ~/.cursor/rules/superpowers-bootstrap.mdcNote: Replace the curl URL with your hosted version of the bootstrap file, or use the manual Step 2 above.
- Restart Cursor (or start a new conversation)
- Ask the agent: "do you have superpowers?"
- The agent should confirm and explain the workflow is active
To get the latest skills:
cd ~/.cursor/skills/superpowers && git pull| Skill | Description | When to Use |
|---|---|---|
brainstorming |
Interactive design refinement | Before any creative work - features, components, modifications |
test-driven-development |
RED-GREEN-REFACTOR cycle | When implementing any feature or bugfix |
systematic-debugging |
4-phase root cause process | When investigating bugs or failures |
writing-plans |
Detailed implementation plans | After design approval, before coding |
executing-plans |
Batch execution with checkpoints | When working through a plan |
subagent-driven-development |
Fast iteration with two-stage review | For autonomous multi-task execution |
using-git-worktrees |
Parallel development branches | Setting up isolated workspaces |
finishing-a-development-branch |
Merge/PR decision workflow | When tasks are complete |
dispatching-parallel-agents |
Concurrent subagent workflows | For parallelizable tasks |
requesting-code-review |
Pre-review checklist | Before requesting human review |
receiving-code-review |
Responding to feedback | After receiving review comments |
verification-before-completion |
Ensure fixes work | Before declaring work done |
writing-skills |
Create new skills | When creating custom skills |
- Check the bootstrap rule exists:
ls -la ~/.cursor/rules/superpowers-bootstrap.mdc - Check skills were cloned:
ls ~/.cursor/skills/superpowers/skills/ - Restart Cursor and start a fresh conversation
The bootstrap rule may not be loading. Verify:
- File is named exactly
superpowers-bootstrap.mdc(not.md) - File is in
~/.cursor/rules/directory - Content matches the template above
If you are an AI agent helping a user install superpowers, execute these commands:
# Create directories
mkdir -p ~/.cursor/skills ~/.cursor/rules
# Clone superpowers repository
git clone https://github.com/obra/superpowers.git ~/.cursor/skills/superpowers
# Create the bootstrap rule file
cat > ~/.cursor/rules/superpowers-bootstrap.mdc << 'BOOTSTRAP_EOF'
# Superpowers Bootstrap
You have superpowers.
**IMPORTANT: The using-superpowers skill content is included below. It is ALREADY LOADED - you are currently following it. Do NOT read "using-superpowers" again - that would be redundant.**
## How to Access Skills in Cursor
Use the `Read` tool on skill files located at `~/.cursor/skills/superpowers/skills/{skill-name}/SKILL.md`.
**Available skills:**
- `brainstorming` - Interactive design refinement before implementation
- `test-driven-development` - RED-GREEN-REFACTOR cycle
- `systematic-debugging` - 4-phase root cause process
- `writing-plans` - Detailed implementation plans
- `executing-plans` - Batch execution with checkpoints
- `subagent-driven-development` - Fast iteration with two-stage review
- `using-git-worktrees` - Parallel development branches
- `finishing-a-development-branch` - Merge/PR decision workflow
- `dispatching-parallel-agents` - Concurrent subagent workflows
- `requesting-code-review` - Pre-review checklist
- `receiving-code-review` - Responding to feedback
- `verification-before-completion` - Ensure fixes work
- `writing-skills` - Create new skills
**To load a skill:** `Read ~/.cursor/skills/superpowers/skills/{skill-name}/SKILL.md`
## Tool Mapping for Cursor
When skills reference tools, use these Cursor equivalents:
- `Skill` tool → Use `Read` tool on `~/.cursor/skills/superpowers/skills/{skill-name}/SKILL.md`
- `TodoWrite` → `TodoWrite` (identical)
- `Task` with subagents → `Task` tool with `subagent_type` parameter
- `Read`, `Write`, `Edit` → `Read`, `Write`, `StrReplace`
- `Bash` → `Shell`
---
# Using Skills
<EXTREMELY-IMPORTANT>
If you think there is even a 1% chance a skill might apply to what you are doing, you ABSOLUTELY MUST read and follow the skill.
IF A SKILL APPLIES TO YOUR TASK, YOU DO NOT HAVE A CHOICE. YOU MUST USE IT.
This is not negotiable. This is not optional. You cannot rationalize your way out of this.
</EXTREMELY-IMPORTANT>
## The Rule
**Read and follow relevant skills BEFORE any response or action.** Even a 1% chance a skill might apply means that you should read the skill to check. If a skill turns out to be wrong for the situation, you don't need to use it.
## Workflow
1. User message received
2. Ask: "Might any skill apply?"
- If yes (even 1% chance) → Read the skill file
- If definitely not → Respond directly
3. Announce: "Using [skill] to [purpose]"
4. If skill has checklist → Create TodoWrite todo per item
5. Follow skill exactly
6. Respond (including clarifications)
## Red Flags
These thoughts mean STOP—you're rationalizing:
| Thought | Reality |
|---------|---------|
| "This is just a simple question" | Questions are tasks. Check for skills. |
| "I need more context first" | Skill check comes BEFORE clarifying questions. |
| "Let me explore the codebase first" | Skills tell you HOW to explore. Check first. |
| "I can check git/files quickly" | Files lack conversation context. Check for skills. |
| "Let me gather information first" | Skills tell you HOW to gather information. |
| "This doesn't need a formal skill" | If a skill exists, use it. |
| "I remember this skill" | Skills evolve. Read current version. |
| "This doesn't count as a task" | Action = task. Check for skills. |
| "The skill is overkill" | Simple things become complex. Use it. |
| "I'll just do this one thing first" | Check BEFORE doing anything. |
| "This feels productive" | Undisciplined action wastes time. Skills prevent this. |
| "I know what that means" | Knowing the concept ≠ using the skill. Read it. |
## Skill Priority
When multiple skills could apply, use this order:
1. **Process skills first** (brainstorming, debugging) - these determine HOW to approach the task
2. **Implementation skills second** - these guide execution
"Let's build X" → brainstorming first, then implementation skills.
"Fix this bug" → systematic-debugging first, then domain-specific skills.
## Skill Types
**Rigid** (TDD, debugging): Follow exactly. Don't adapt away discipline.
**Flexible** (patterns): Adapt principles to context.
The skill itself tells you which.
## User Instructions
Instructions say WHAT, not HOW. "Add X" or "Fix Y" doesn't mean skip workflows.
BOOTSTRAP_EOF
# Verify installation
echo "Installation complete. Skills installed:"
ls ~/.cursor/skills/superpowers/skills/
echo ""
echo "Bootstrap rule created at:"
ls -la ~/.cursor/rules/superpowers-bootstrap.mdcAfter running these commands, tell the user to restart Cursor and verify by asking "do you have superpowers?"