Superpowers

用了 Claude Code 一段时间后,你会发现一个规律。

简单的任务,比如写个函数、改个 bug,它干得又快又好。但稍微复杂一点的任务,比如「实现一个完整的用户认证模块」,它就有点飘了。需求没搞清楚就开始写,写完不写测试,代码风格每次都不一样。

说白了...不对,坦率的讲,它就像一个很聪明的实习生。脑子好使,但没有纪律。你不管着它,它就按自己最舒服的方式来。

Superpowers 就是给这个聪明实习生配的「资深工程师导师」。

它到底在解决什么问题

没有 Superpowers 的时候,Claude Code 有这几个毛病

  • Vibe Coding 的混乱。AI 直接开始写代码,没有规划,频繁返工
  • 缺少 TDD 纪律。AI 习惯先写代码再补测试,甚至不写测试
  • 需求模糊直接动手。你说「做登录」,它就开始写,结果做的跟你想要的完全不是一回事
  • 代码质量不稳定。没有审查机制,质量全看 AI 当天「心情」

Superpowers 的解决思路很简单,先澄清需求,再制定计划,TDD 开发,代码审查,最后完成。

关键词是技能组合。它不是规范驱动,没有独立的规范层,而是通过一组可组合的技能来约束 Agent 的行为。社区规模很大,115K+ Star,由 Jesse Vincent(网名 obra)开发。

核心技能拆解

Superpowers 有 20 多个技能,我挑几个用得最多的聊聊。

测试驱动开发

提到 TDD 的时候自动激活。强制遵循 RED-GREEN-REFACTOR 循环

  1. 🔴 RED,先写一个失败的测试
  2. 🟢 GREEN,写最少的代码让测试通过
  3. 🔵 REFACTOR,重构代码,保持测试通过
  4. 重复

不提 TDD 的时候,Claude 可能写也可能不写测试。提了之后,技能强制走流程。Superpowers 的真正价值是「强化纪律」,不是「无中生有」。

头脑风暴

需求模糊的时候,Claude 不会直接动手,而是通过苏格拉底式提问逼你想清楚

  • 目标用户是谁?
  • 需要哪些功能?
  • 技术选型是什么?
  • 边界条件有哪些?

这个问题驱动的方式我有时候觉得比直接开干更有效。你想想看,很多时候 bug 和低效返工,根源就是需求没想清楚。

系统化调试

四阶段根因分析

  1. 复现问题。确认 bug 可稳定复现
  2. 隔离根因。二分法缩小范围,添加日志
  3. 验证假设。提出根因假设,设计验证实验
  4. 修复并验证。实施修复,添加回归测试

比「我看看哪里有问题」然后东改一下西改一下要靠谱得多。

协作类技能

writing-plans 把大任务分解成 2-5 分钟可完成的小任务,每个任务有预计时间和验收标准。executing-plans 批量执行计划,在每个检查点暂停确认。dispatching-parallel-agents 同时启动多个子代理并行工作。

技能怎么触发的

触发方式 示例
关键词触发 提到 TDD →test-driven-development 激活
场景触发 需求模糊 →brainstorming 主动提问
手动调用 直接用技能名称 /test-driven-development

常用触发关键词

技能 触发关键词
test-driven-development TDD、测试驱动、先写测试
brainstorming 需求模糊时自动触发
systematic-debugging 调试、bug、不工作
writing-plans 制定计划、规划

技能可以组合使用。你说「用 TDD 方式实现用户认证,完成后帮我做代码审查」,会同时触发 test-driven-developmentcode-review 两个技能。

标准工作流程

一个完整的开发流程长这样

1. Brainstorming(头脑风暴)
   ↓ 通过问答澄清真实需求

2. Design Document(设计文档)
   ↓ 分块展示设计,等待确认

3. Writing Plans(编写计划)
   ↓ 分解为 2-5 分钟的小任务

4. Subagent Development(子代理开发)
   ↓ 每个任务启动独立子代理
   ↓ 两阶段审查:规格符合性 + 代码质量

5. TDD(测试驱动开发)
   ↓ 强制 RED-GREEN-REFACTOR

6. Code Review(代码审查)
   ↓ 质量把关

7. 完成

看起来步骤挺多的。确实,它会让你的初期开发速度变慢。但你想想看,先花 10 分钟把需求想清楚,总比写了两小时代码发现方向错了要好吧。

安装

推荐通过 Marketplace 安装

# 添加 marketplace
/plugin marketplace add obra/superpowers-marketplace

# 安装
/plugin install superpowers@superpowers-marketplace

# 验证
/skills

也可以手动克隆到全局 skills 目录

mkdir -p ~/.claude/skills
git clone https://github.com/obra/superpowers.git ~/.claude/skills/superpowers

或者装到项目级别,团队成员共享

mkdir -p .claude/skills
cp -r ~/.claude/skills/superpowers .claude/skills/

什么时候用,什么时候别用

场景 推荐度 原因
生产级代码开发 ✅ 强烈推荐 强制 TDD、自动技能触发、减少疏漏
子代理并发执行 ✅ 强烈推荐 支持 subagent-driven-development
快速迭代项目 ⚠️ 一般 技能触发可能增加开销
规范生成代码 ❌ 不推荐 非规范驱动,没有独立规范层

快速原型或一次性脚本不需要走完整流程。Superpowers 适合需要长期维护的代码。

局限性

  • 非规范驱动。没有独立规范层,规范是副产品
  • 依赖代理平台。安装方式因平台而异
  • 缺少正式文档站点。主要靠 GitHub README 和社区
  • 初期效率感降低。需要时间澄清需求、先写测试、经过审查。但长期来看减少返工

技术架构

┌────────────────────────────────────────┐
│           Skills Library               │
│  ┌─────────┐ ┌─────────┐ ┌─────────┐  │
│  │ Testing │ │Debugging│ │  Collab │  │
│  └─────────┘ └─────────┘ └─────────┘  │
├────────────────────────────────────────┤
│           Hooks System                 │
│  Pre-task │ Post-task │ Triggers      │
├────────────────────────────────────────┤
│       Agent Integration                │
└────────────────────────────────────────┘

基于 Shell/JavaScript,核心是技能触发系统,通过 Hook 自动激活相关技能。