⚡ Superpowers

AI Coding Agent 的完整软件开发工作流框架 — 基于可组合的 "Skills",让你的 AI 智能体真正自主高效地写代码

by Jesse Vincent & Prime Radiant · MIT 协议 · GitHub

🧠 核心理念

🔴

测试驱动开发 (TDD)

永远先写测试,再写代码。红-绿-重构循环。

📐

系统化 > 随机尝试

用流程代替猜测,有章法地推进。

✂️

复杂度最小化

简单是第一目标,能不多就不多(YAGNI)。

证据 > 声称

声明成功前必须验证,跑过测试才算数。

🔄 完整工作流

1

💡 Brainstorming 头脑风暴

你说"我想做一个 XX",AI 不会直接写代码,而是先问你问题,理清真正想做什么,探索替代方案,逐段展示设计让你确认。最终保存设计文档。

2

🌿 Git Worktree 隔离分支

设计确认后,自动创建隔离工作区和新分支,跑项目初始化,验证干净的测试基线。不影响主分支。

3

📋 Writing Plans 制定计划

把工作拆成 2-5 分钟的小任务,每个任务有精确的文件路径、完整代码、验证步骤。清晰到"笨蛋都能照着做"。

4

🤖 Subagent-Driven Development

启动子代理逐个完成任务,两轮审查(先看是否符合 spec,再看代码质量)。Claude 通常能自主跑 2 小时不偏离计划。

5

🧪 Test-Driven Development

严格执行 RED-GREEN-REFACTOR:先写失败测试 → 确认失败 → 写最少代码 → 确认通过 → 提交。如果先写了代码再写测试,AI 会删掉重来。

6

🔍 Code Review 代码审查

每个任务之间自动审查,按严重程度报告问题。严重问题会阻断进度,不给蒙混过关。

7

🏁 Finishing 完成收尾

全部完成后验证测试,给你选项:合并 / 提 PR / 保留分支 / 丢弃。清理 worktree,干净利落。

📦 安装方式

🔵 Claude Code(官方市场)

最简单的方式,一行命令搞定:

/plugin install superpowers@claude-plugins-official

🟣 Claude Code(插件市场)

先注册第三方市场,再安装:

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

🟠 Cursor

在 Agent Chat 中输入:

/add-plugin superpowers

或在插件市场搜索 "superpowers"

🟢 Gemini CLI

直接用扩展命令安装:

gemini extensions install https://github.com/obra/superpowers

# 更新
gemini extensions update superpowers

⚫ Codex

让 Codex 自己装:

Fetch and follow instructions from:
https://raw.githubusercontent.com/obra/superpowers/refs/heads/main/.codex/INSTALL.md

⚪ OpenCode

同样让 agent 自行处理:

Fetch and follow instructions from:
https://raw.githubusercontent.com/obra/superpowers/refs/heads/main/.opencode/INSTALL.md

🧩 Skills 技能库

每个 skill 在对应场景自动触发,无需手动调用

Testing

test-driven-development

红-绿-重构循环,包含测试反模式参考。强制先写失败测试。

Debugging

systematic-debugging

4 阶段根因分析,包含根因追踪、纵深防御、条件等待技术。

Debugging

verification-before-completion

确保问题真的被修好了,不是看起来修好了。

Collaboration

brainstorming

苏格拉底式设计提问,在写代码前先想清楚。

Collaboration

writing-plans

详细实现计划,每个任务 2-5 分钟,精确到文件路径。

Collaboration

subagent-driven-development

子代理并行推进任务,两阶段审查(规范合规 + 代码质量)。

Collaboration

executing-plans

批量执行任务,带人工检查点。可暂停、可调整。

Collaboration

dispatching-parallel-agents

并发子代理工作流,多任务同时推进。

Collaboration

requesting-code-review

预审查清单,按严重度分级报告。Critical 问题阻断进度。

Collaboration

using-git-worktrees

并行开发分支,隔离工作区互不干扰。

Collaboration

finishing-a-development-branch

完成后验证测试,合并/PR/保留/丢弃四选一。

Meta

writing-skills

创建新 skill 的最佳实践,包含测试方法论。想贡献就看这个。

🖥️ 实战演练:从安装到完成一个功能

假设你要给一个 Python Web 项目加一个「用户登录」功能,完整流程如下:

① 安装 Superpowers(一次性)

bash — 安装插件
$ # 在 Claude Code 里输入:
> /plugin marketplace add obra/superpowers-marketplace
✓ Marketplace added

> /plugin install superpowers@superpowers-marketplace
✓ Installed superpowers v2.x

# 重启 Claude Code,开始使用
$ claude --resume

② 头脑风暴 — 说出你的想法

claude — Brainstorming
# 你不需要任何特殊命令,直接说需求:
> 我想给我的 Flask 项目加一个用户登录功能

🧠 Superpowers 自动触发 brainstorming skill...

Claude: 在写代码之前,让我先确认几个问题:

1. 用户存储用什么?数据库?文件?还是接第三方(OAuth)?
2. 需要记住密码的 hash 方案吗?推荐 bcrypt
3. 需要"记住我"功能吗?
4. 密码重置流程需要吗?

> 用 SQLite 存储,需要 bcrypt,不要记住我,先不要密码重置

Claude: 好的,我整理一下设计:

📋 设计文档概要:
  - 用户表: id, username, password_hash, created_at
  - 登录接口: POST /login (username, password)
  - 注册接口: POST /register (username, password)
  - Session 管理: Flask-Login
  - 密码存储: bcrypt hash

可以吗?确认后我会制定实施计划。

> 可以,搞

✓ 设计文档已保存到 docs/login-feature-design.md

③ 自动创建隔离工作区

bash — Git Worktree
🧠 Superpowers 触发 using-git-worktrees...

# 你什么也不用做,Claude 自动执行:
$ git worktree add ../myapp-login-feature -b feature/user-login
Preparing worktree (new branch 'feature/user-login')

$ cd ../myapp-login-feature
$ pip install -r requirements.txt
✓ Dependencies installed

$ pytest --tb=short
✓ Clean test baseline: 0 failures

Claude: 好了,隔离环境准备完毕,主线代码不受影响。

④ 制定实施计划

claude — Writing Plans
🧠 Superpowers 触发 writing-plans...

Claude: 以下是实施计划,每个任务 2-5 分钟:

┌─────────────────────────────────────────────────┐
│  Task 1: 创建用户模型和数据库                    │
│  📁 models.py                                   │
│  - User 类,id/username/password_hash/created_at │
│  - bcrypt hash 密码                             │
│  - ✅ 验证: pytest tests/test_models.py          │
├─────────────────────────────────────────────────┤
│  Task 2: 注册接口                               │
│  📁 routes/auth.py                              │
│  - POST /register                               │
│  - 输入校验 + 重复检查                           │
│  - ✅ 验证: pytest tests/test_register.py        │
├─────────────────────────────────────────────────┤
│  Task 3: 登录接口 + Session                     │
│  📁 routes/auth.py                              │
│  - POST /login, Flask-Login 集成                │
│  - ✅ 验证: pytest tests/test_login.py           │
├─────────────────────────────────────────────────┤
│  Task 4: 登出 + 受保护路由装饰器                 │
│  📁 routes/auth.py + decorators.py              │
│  - POST /logout, @login_required                │
│  - ✅ 验证: pytest tests/test_protected.py       │
└─────────────────────────────────────────────────┘

> 没问题,开搞

⑤ TDD + 子代理开发

claude — Subagent-Driven Development
🧠 Superpowers 触发 subagent-driven-development...

📡 Dispatching Task 1 to subagent...

# ─── 子代理执行 RED-GREEN-REFACTOR ───

🔴 RED: 先写失败测试
$ cat tests/test_models.py
  def test_user_password_hash():
      user = User(username="alice", password="secret123")
      assert user.password_hash != "secret123"
      assert user.check_password("secret123") == True
      assert user.check_password("wrong") == False

$ pytest tests/test_models.py
FAILED — ModuleNotFoundError: No module named 'models'
✗ 测试失败(符合预期)

🟢 GREEN: 写最少代码让它通过
$ cat models.py
  from flask_sqlalchemy import SQLAlchemy
  from bcrypt import hashpw, checkpw, gensalt

  db = SQLAlchemy()

  class User(db.Model):
      id = db.Column(db.Integer, primary_key=True)
      username = db.Column(db.String(80), unique=True)
      password_hash = db.Column(db.String(128))

      def __init__(self, username, password):
          self.username = username
          self.password_hash = hashpw(
              password.encode(), gensalt()
          ).decode()

      def check_password(self, password):
          return checkpw(
              password.encode(),
              self.password_hash.encode()
          )

$ pytest tests/test_models.py
PASSED ✓ 3/3 tests pass

🔵 REFACTOR: 代码已够简洁,跳过

$ git add -A && git commit -m "feat: user model with bcrypt"
✓ Task 1 完成,已提交

📡 Dispatching Task 2 to subagent...
  ... (Task 2-4 重复 RED-GREEN-REFACTOR 循环) ...

⑥ 代码审查

claude — Code Review
🧠 每个任务完成后自动触发 requesting-code-review...

📡 Dispatching code-reviewer subagent...

📋 审查报告:
  ├── Task 1 (User Model)
  │   ✅ Critical: 无
  │   ⚠️  Warning: 密码长度未限制上限 (低风险)
  │   ✅ 通过
  ├── Task 2 (Register)
  │   ✅ Critical: 无
  │   💡 Suggestion: 可以加邮箱验证(YAGNI,先跳过)
  │   ✅ 通过
  ├── Task 3 (Login)
  │   🔴 Critical: 登录失败没有 rate limiting!
  │   ⛔ 阻断 — 修复后才能继续
  └── Task 4 (Logout)
      ⏳ 等待 Task 3 修复后审查

Claude: Task 3 有安全问题,我在修复...
✓ 已添加 rate limiting (5次/分钟)
✓ 重新审查通过

⑦ 完成收尾

claude — Finishing
🧠 Superpowers 触发 finishing-a-development-branch...

$ pytest
============================= 12 passed in 0.34s =============================
✓ 全部测试通过

Claude: 全部完成!你怎么处理这些代码?

  [A] 合并到主分支 (git merge)
  [B] 创建 GitHub Pull Request
  [C] 保留分支,我稍后处理
  [D] 丢弃

> B

$ gh pr create --title "feat: user login" --body "..."
✓ https://github.com/you/myapp/pull/42

$ git worktree remove ../myapp-login-feature
✓ Worktree 清理完毕

🎉 Done! 一个完整的开发周期,从想法到 PR。

⚡ 快速参考:你只需要记住这些

bash — Cheat Sheet
# ===== 安装(一次性) =====
> /plugin install superpowers@claude-plugins-official

# ===== 日常使用(不需要记命令!) =====
# 直接说你要什么,Superpowers 自动触发:

> "帮我做个用户系统"        # → 自动 brainstorm → plan → TDD
> "这个 API 报错了帮我看看"  # → 自动 systematic-debugging
> "帮我 review 一下这段代码"  # → 自动 requesting-code-review

# ===== 更新 =====
> /plugin update superpowers

# ===== 你不需要做的事 =====
# ✗ 手动调用 skill 名字
# ✗ 记忆任何命令
# ✗ 管理 worktree / branch
# ✗ 写测试(agent 自己写)

# ===== 唯一的"规则" =====
# 当 Claude 问你问题时,认真回答
# 当 Claude 给你选项时,选一个
# 其他的,全都交给它

🤔 vs OpenClaw Skills 的区别

⚡ Superpowers

  • 🎯 专注 Coding Agent 工作流
  • 🔧 面向 Claude Code / Cursor / Codex / Gemini CLI
  • 📋 强制 TDD + Code Review 流程
  • 🤖 子代理并行开发,可自主跑数小时
  • 🧩 Skills 是代码开发的"手术流程"

🐾 OpenClaw Skills

  • 🎯 专注 AI 助手 全场景
  • 🔧 面向 OpenClaw 平台
  • 📋 搜索/日历/钱包/文档/消息等生活工具
  • 🤖 单代理 + ClawHub 市场分发
  • 🧩 Skills 是各种"超能力扩展包"

两者不冲突 — Superpowers 管"怎么写代码",OpenClaw 管"怎么当助手"