mirror of
https://github.com/obra/superpowers.git
synced 2026-04-23 18:09:05 +08:00
Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
131c1f189f | ||
|
|
9baedaa117 | ||
|
|
66a2dbd80a | ||
|
|
1455ac0631 | ||
|
|
e64ad670df | ||
|
|
c037dcbf4b | ||
|
|
a7a8c08c02 | ||
|
|
80643c2604 |
@@ -9,7 +9,7 @@
|
|||||||
{
|
{
|
||||||
"name": "superpowers",
|
"name": "superpowers",
|
||||||
"description": "Core skills library for Claude Code: TDD, debugging, collaboration patterns, and proven techniques",
|
"description": "Core skills library for Claude Code: TDD, debugging, collaboration patterns, and proven techniques",
|
||||||
"version": "4.0.0",
|
"version": "4.0.2",
|
||||||
"source": "./",
|
"source": "./",
|
||||||
"author": {
|
"author": {
|
||||||
"name": "Jesse Vincent",
|
"name": "Jesse Vincent",
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "superpowers",
|
"name": "superpowers",
|
||||||
"description": "Core skills library for Claude Code: TDD, debugging, collaboration patterns, and proven techniques",
|
"description": "Core skills library for Claude Code: TDD, debugging, collaboration patterns, and proven techniques",
|
||||||
"version": "4.0.0",
|
"version": "4.0.2",
|
||||||
"author": {
|
"author": {
|
||||||
"name": "Jesse Vincent",
|
"name": "Jesse Vincent",
|
||||||
"email": "jesse@fsck.com"
|
"email": "jesse@fsck.com"
|
||||||
|
|||||||
11
README.md
11
README.md
@@ -85,7 +85,7 @@ Fetch and follow instructions from https://raw.githubusercontent.com/obra/superp
|
|||||||
|
|
||||||
3. **writing-plans** - Activates with approved design. Breaks work into bite-sized tasks (2-5 minutes each). Every task has exact file paths, complete code, verification steps.
|
3. **writing-plans** - Activates with approved design. Breaks work into bite-sized tasks (2-5 minutes each). Every task has exact file paths, complete code, verification steps.
|
||||||
|
|
||||||
4. **subagent-driven-development** or **executing-plans** - Activates with plan. Dispatches fresh subagent per task (same session, fast iteration) or executes in batches (parallel session, human checkpoints).
|
4. **subagent-driven-development** or **executing-plans** - Activates with plan. Dispatches fresh subagent per task with two-stage review (spec compliance, then code quality), or executes in batches with human checkpoints.
|
||||||
|
|
||||||
5. **test-driven-development** - Activates during implementation. Enforces RED-GREEN-REFACTOR: write failing test, watch it fail, write minimal code, watch it pass, commit. Deletes code written before tests.
|
5. **test-driven-development** - Activates during implementation. Enforces RED-GREEN-REFACTOR: write failing test, watch it fail, write minimal code, watch it pass, commit. Deletes code written before tests.
|
||||||
|
|
||||||
@@ -100,14 +100,11 @@ Fetch and follow instructions from https://raw.githubusercontent.com/obra/superp
|
|||||||
### Skills Library
|
### Skills Library
|
||||||
|
|
||||||
**Testing**
|
**Testing**
|
||||||
- **test-driven-development** - RED-GREEN-REFACTOR cycle (includes anti-patterns reference)
|
- **test-driven-development** - RED-GREEN-REFACTOR cycle (includes testing anti-patterns reference)
|
||||||
- **condition-based-waiting** - Async test patterns
|
|
||||||
|
|
||||||
**Debugging**
|
**Debugging**
|
||||||
- **systematic-debugging** - 4-phase root cause process
|
- **systematic-debugging** - 4-phase root cause process (includes root-cause-tracing, defense-in-depth, condition-based-waiting techniques)
|
||||||
- **root-cause-tracing** - Find the real problem
|
|
||||||
- **verification-before-completion** - Ensure it's actually fixed
|
- **verification-before-completion** - Ensure it's actually fixed
|
||||||
- **defense-in-depth** - Multiple validation layers
|
|
||||||
|
|
||||||
**Collaboration**
|
**Collaboration**
|
||||||
- **brainstorming** - Socratic design refinement
|
- **brainstorming** - Socratic design refinement
|
||||||
@@ -118,7 +115,7 @@ Fetch and follow instructions from https://raw.githubusercontent.com/obra/superp
|
|||||||
- **receiving-code-review** - Responding to feedback
|
- **receiving-code-review** - Responding to feedback
|
||||||
- **using-git-worktrees** - Parallel development branches
|
- **using-git-worktrees** - Parallel development branches
|
||||||
- **finishing-a-development-branch** - Merge/PR decision workflow
|
- **finishing-a-development-branch** - Merge/PR decision workflow
|
||||||
- **subagent-driven-development** - Fast iteration with quality gates
|
- **subagent-driven-development** - Fast iteration with two-stage review (spec compliance, then code quality)
|
||||||
|
|
||||||
**Meta**
|
**Meta**
|
||||||
- **writing-skills** - Create new skills following best practices (includes testing methodology)
|
- **writing-skills** - Create new skills following best practices (includes testing methodology)
|
||||||
|
|||||||
@@ -1,5 +1,35 @@
|
|||||||
# Superpowers Release Notes
|
# Superpowers Release Notes
|
||||||
|
|
||||||
|
## v4.0.2 (2025-12-23)
|
||||||
|
|
||||||
|
### Fixes
|
||||||
|
|
||||||
|
**Slash commands now user-only**
|
||||||
|
|
||||||
|
Added `disable-model-invocation: true` to all three slash commands (`/brainstorm`, `/execute-plan`, `/write-plan`). Claude can no longer invoke these commands via the Skill tool—they're restricted to manual user invocation only.
|
||||||
|
|
||||||
|
The underlying skills (`superpowers:brainstorming`, `superpowers:executing-plans`, `superpowers:writing-plans`) remain available for Claude to invoke autonomously. This change prevents confusion when Claude would invoke a command that just redirects to a skill anyway.
|
||||||
|
|
||||||
|
## v4.0.1 (2025-12-23)
|
||||||
|
|
||||||
|
### Fixes
|
||||||
|
|
||||||
|
**Clarified how to access skills in Claude Code**
|
||||||
|
|
||||||
|
Fixed a confusing pattern where Claude would invoke a skill via the Skill tool, then try to Read the skill file separately. The `using-superpowers` skill now explicitly states that the Skill tool loads skill content directly—no need to read files.
|
||||||
|
|
||||||
|
- Added "How to Access Skills" section to `using-superpowers`
|
||||||
|
- Changed "read the skill" → "invoke the skill" in instructions
|
||||||
|
- Updated slash commands to use fully qualified skill names (e.g., `superpowers:brainstorming`)
|
||||||
|
|
||||||
|
**Added GitHub thread reply guidance to receiving-code-review** (h/t @ralphbean)
|
||||||
|
|
||||||
|
Added a note about replying to inline review comments in the original thread rather than as top-level PR comments.
|
||||||
|
|
||||||
|
**Added automation-over-documentation guidance to writing-skills** (h/t @EthanJStark)
|
||||||
|
|
||||||
|
Added guidance that mechanical constraints should be automated, not documented—save skills for judgment calls.
|
||||||
|
|
||||||
## v4.0.0 (2025-12-17)
|
## v4.0.0 (2025-12-17)
|
||||||
|
|
||||||
### New Features
|
### New Features
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
name: code-reviewer
|
name: code-reviewer
|
||||||
description: |
|
description: |
|
||||||
Use this agent when a major project step has been completed and needs to be reviewed against the original plan and coding standards. Examples: <example>Context: The user is creating a code-review agent that should be called after a logical chunk of code is written. user: "I've finished implementing the user authentication system as outlined in step 3 of our plan" assistant: "Great work! Now let me use the code-reviewer agent to review the implementation against our plan and coding standards" <commentary>Since a major project step has been completed, use the code-reviewer agent to validate the work against the plan and identify any issues.</commentary></example> <example>Context: User has completed a significant feature implementation. user: "The API endpoints for the task management system are now complete - that covers step 2 from our architecture document" assistant: "Excellent! Let me have the code-reviewer agent examine this implementation to ensure it aligns with our plan and follows best practices" <commentary>A numbered step from the planning document has been completed, so the code-reviewer agent should review the work.</commentary></example>
|
Use this agent when a major project step has been completed and needs to be reviewed against the original plan and coding standards. Examples: <example>Context: The user is creating a code-review agent that should be called after a logical chunk of code is written. user: "I've finished implementing the user authentication system as outlined in step 3 of our plan" assistant: "Great work! Now let me use the code-reviewer agent to review the implementation against our plan and coding standards" <commentary>Since a major project step has been completed, use the code-reviewer agent to validate the work against the plan and identify any issues.</commentary></example> <example>Context: User has completed a significant feature implementation. user: "The API endpoints for the task management system are now complete - that covers step 2 from our architecture document" assistant: "Excellent! Let me have the code-reviewer agent examine this implementation to ensure it aligns with our plan and follows best practices" <commentary>A numbered step from the planning document has been completed, so the code-reviewer agent should review the work.</commentary></example>
|
||||||
|
model: inherit
|
||||||
---
|
---
|
||||||
|
|
||||||
You are a Senior Code Reviewer with expertise in software architecture, design patterns, and best practices. Your role is to review completed project steps against original plans and ensure code quality standards are met.
|
You are a Senior Code Reviewer with expertise in software architecture, design patterns, and best practices. Your role is to review completed project steps against original plans and ensure code quality standards are met.
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
---
|
---
|
||||||
description: "You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores requirements and design before implementation."
|
description: "You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores requirements and design before implementation."
|
||||||
|
disable-model-invocation: true
|
||||||
---
|
---
|
||||||
|
|
||||||
Use and follow the brainstorming skill exactly as written
|
Invoke the superpowers:brainstorming skill and follow it exactly as presented to you
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
---
|
---
|
||||||
description: Execute plan in batches with review checkpoints
|
description: Execute plan in batches with review checkpoints
|
||||||
|
disable-model-invocation: true
|
||||||
---
|
---
|
||||||
|
|
||||||
Use the executing-plans skill exactly as written
|
Invoke the superpowers:executing-plans skill and follow it exactly as presented to you
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
---
|
---
|
||||||
description: Create detailed implementation plan with bite-sized tasks
|
description: Create detailed implementation plan with bite-sized tasks
|
||||||
|
disable-model-invocation: true
|
||||||
---
|
---
|
||||||
|
|
||||||
Use the writing-plans skill exactly as written
|
Invoke the superpowers:writing-plans skill and follow it exactly as presented to you
|
||||||
|
|||||||
@@ -200,6 +200,10 @@ You understand 1,2,3,6. Unclear on 4,5.
|
|||||||
✅ "Understand 1,2,3,6. Need clarification on 4 and 5 before implementing."
|
✅ "Understand 1,2,3,6. Need clarification on 4 and 5 before implementing."
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## GitHub Thread Replies
|
||||||
|
|
||||||
|
When replying to inline review comments on GitHub, reply in the comment thread (`gh api repos/{owner}/{repo}/pulls/{pr}/comments/{id}/replies`), not as a top-level PR comment.
|
||||||
|
|
||||||
## The Bottom Line
|
## The Bottom Line
|
||||||
|
|
||||||
**External feedback = suggestions to evaluate, not orders to follow.**
|
**External feedback = suggestions to evaluate, not orders to follow.**
|
||||||
|
|||||||
@@ -52,14 +52,14 @@ Which would you prefer?
|
|||||||
|
|
||||||
### For Project-Local Directories (.worktrees or worktrees)
|
### For Project-Local Directories (.worktrees or worktrees)
|
||||||
|
|
||||||
**MUST verify .gitignore before creating worktree:**
|
**MUST verify directory is ignored before creating worktree:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Check if directory pattern in .gitignore
|
# Check if directory is ignored (respects local, global, and system gitignore)
|
||||||
grep -q "^\.worktrees/$" .gitignore || grep -q "^worktrees/$" .gitignore
|
git check-ignore -q .worktrees 2>/dev/null || git check-ignore -q worktrees 2>/dev/null
|
||||||
```
|
```
|
||||||
|
|
||||||
**If NOT in .gitignore:**
|
**If NOT ignored:**
|
||||||
|
|
||||||
Per Jesse's rule "Fix broken things immediately":
|
Per Jesse's rule "Fix broken things immediately":
|
||||||
1. Add appropriate line to .gitignore
|
1. Add appropriate line to .gitignore
|
||||||
@@ -145,29 +145,33 @@ Ready to implement <feature-name>
|
|||||||
|
|
||||||
| Situation | Action |
|
| Situation | Action |
|
||||||
|-----------|--------|
|
|-----------|--------|
|
||||||
| `.worktrees/` exists | Use it (verify .gitignore) |
|
| `.worktrees/` exists | Use it (verify ignored) |
|
||||||
| `worktrees/` exists | Use it (verify .gitignore) |
|
| `worktrees/` exists | Use it (verify ignored) |
|
||||||
| Both exist | Use `.worktrees/` |
|
| Both exist | Use `.worktrees/` |
|
||||||
| Neither exists | Check CLAUDE.md → Ask user |
|
| Neither exists | Check CLAUDE.md → Ask user |
|
||||||
| Directory not in .gitignore | Add it immediately + commit |
|
| Directory not ignored | Add to .gitignore + commit |
|
||||||
| Tests fail during baseline | Report failures + ask |
|
| Tests fail during baseline | Report failures + ask |
|
||||||
| No package.json/Cargo.toml | Skip dependency install |
|
| No package.json/Cargo.toml | Skip dependency install |
|
||||||
|
|
||||||
## Common Mistakes
|
## Common Mistakes
|
||||||
|
|
||||||
**Skipping .gitignore verification**
|
### Skipping ignore verification
|
||||||
- **Problem:** Worktree contents get tracked, pollute git status
|
|
||||||
- **Fix:** Always grep .gitignore before creating project-local worktree
|
- **Problem:** Worktree contents get tracked, pollute git status
|
||||||
|
- **Fix:** Always use `git check-ignore` before creating project-local worktree
|
||||||
|
|
||||||
|
### Assuming directory location
|
||||||
|
|
||||||
**Assuming directory location**
|
|
||||||
- **Problem:** Creates inconsistency, violates project conventions
|
- **Problem:** Creates inconsistency, violates project conventions
|
||||||
- **Fix:** Follow priority: existing > CLAUDE.md > ask
|
- **Fix:** Follow priority: existing > CLAUDE.md > ask
|
||||||
|
|
||||||
**Proceeding with failing tests**
|
### Proceeding with failing tests
|
||||||
|
|
||||||
- **Problem:** Can't distinguish new bugs from pre-existing issues
|
- **Problem:** Can't distinguish new bugs from pre-existing issues
|
||||||
- **Fix:** Report failures, get explicit permission to proceed
|
- **Fix:** Report failures, get explicit permission to proceed
|
||||||
|
|
||||||
**Hardcoding setup commands**
|
### Hardcoding setup commands
|
||||||
|
|
||||||
- **Problem:** Breaks on projects using different tools
|
- **Problem:** Breaks on projects using different tools
|
||||||
- **Fix:** Auto-detect from project files (package.json, etc.)
|
- **Fix:** Auto-detect from project files (package.json, etc.)
|
||||||
|
|
||||||
@@ -177,7 +181,7 @@ Ready to implement <feature-name>
|
|||||||
You: I'm using the using-git-worktrees skill to set up an isolated workspace.
|
You: I'm using the using-git-worktrees skill to set up an isolated workspace.
|
||||||
|
|
||||||
[Check .worktrees/ - exists]
|
[Check .worktrees/ - exists]
|
||||||
[Verify .gitignore - contains .worktrees/]
|
[Verify ignored - git check-ignore confirms .worktrees/ is ignored]
|
||||||
[Create worktree: git worktree add .worktrees/auth -b feature/auth]
|
[Create worktree: git worktree add .worktrees/auth -b feature/auth]
|
||||||
[Run npm install]
|
[Run npm install]
|
||||||
[Run npm test - 47 passing]
|
[Run npm test - 47 passing]
|
||||||
@@ -190,7 +194,7 @@ Ready to implement auth feature
|
|||||||
## Red Flags
|
## Red Flags
|
||||||
|
|
||||||
**Never:**
|
**Never:**
|
||||||
- Create worktree without .gitignore verification (project-local)
|
- Create worktree without verifying it's ignored (project-local)
|
||||||
- Skip baseline test verification
|
- Skip baseline test verification
|
||||||
- Proceed with failing tests without asking
|
- Proceed with failing tests without asking
|
||||||
- Assume directory location when ambiguous
|
- Assume directory location when ambiguous
|
||||||
@@ -198,7 +202,7 @@ Ready to implement auth feature
|
|||||||
|
|
||||||
**Always:**
|
**Always:**
|
||||||
- Follow directory priority: existing > CLAUDE.md > ask
|
- Follow directory priority: existing > CLAUDE.md > ask
|
||||||
- Verify .gitignore for project-local
|
- Verify directory is ignored for project-local
|
||||||
- Auto-detect and run project setup
|
- Auto-detect and run project setup
|
||||||
- Verify clean test baseline
|
- Verify clean test baseline
|
||||||
|
|
||||||
|
|||||||
@@ -4,13 +4,19 @@ description: Use when starting any conversation - establishes how to find and us
|
|||||||
---
|
---
|
||||||
|
|
||||||
<EXTREMELY-IMPORTANT>
|
<EXTREMELY-IMPORTANT>
|
||||||
If you think there is even a 1% chance a skill might apply to what you are doing, you ABSOLUTELY MUST read the skill.
|
If you think there is even a 1% chance a skill might apply to what you are doing, you ABSOLUTELY MUST invoke the skill.
|
||||||
|
|
||||||
IF A SKILL APPLIES TO YOUR TASK, YOU DO NOT HAVE A CHOICE. YOU MUST USE IT.
|
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.
|
This is not negotiable. This is not optional. You cannot rationalize your way out of this.
|
||||||
</EXTREMELY-IMPORTANT>
|
</EXTREMELY-IMPORTANT>
|
||||||
|
|
||||||
|
## How to Access Skills
|
||||||
|
|
||||||
|
**In Claude Code:** Use the `Skill` tool. When you invoke a skill, its content is loaded and presented to you—follow it directly. Never use the Read tool on skill files.
|
||||||
|
|
||||||
|
**In other environments:** Check your platform's documentation for how skills are loaded.
|
||||||
|
|
||||||
# Using Skills
|
# Using Skills
|
||||||
|
|
||||||
## The Rule
|
## The Rule
|
||||||
|
|||||||
@@ -56,6 +56,7 @@ The entire skill creation process follows RED-GREEN-REFACTOR.
|
|||||||
- One-off solutions
|
- One-off solutions
|
||||||
- Standard practices well-documented elsewhere
|
- Standard practices well-documented elsewhere
|
||||||
- Project-specific conventions (put in CLAUDE.md)
|
- Project-specific conventions (put in CLAUDE.md)
|
||||||
|
- Mechanical constraints (if it's enforceable with regex/validation, automate it—save documentation for judgment calls)
|
||||||
|
|
||||||
## Skill Types
|
## Skill Types
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user