Superpowers 是一套不许跳步的开发方法:每一步由 Skill 自动触发,每一步都要你点头。
跟 Agent 说「帮我做个导出功能」,它立刻开始建文件、写代码,十分钟后你才发现它理解的需求和你想的不是一回事。Superpowers 就是冲这个来的。它的 README 开头讲得很直白:Agent 一看到你要做东西,不会马上开始写代码,而是先退一步,问清楚你到底想做什么。
它由 Jesse Vincent(GitHub 上的 obra)和 Prime Radiant 团队维护,2025 年 10 月发布,写作时 GitHub 上有将近 30 万 Star,MIT 许可。
它的理念就四条:
- 测试驱动:永远先写测试
- 系统化而不是即兴:按流程走,不靠猜
- 降低复杂度:简单是第一目标
- 证据优先:宣布成功之前先验证
一、安装
Superpowers 已经上架 Anthropic 的官方插件市场,在 Claude Code 里输入:
/plugin install superpowers@claude-plugins-official也可以用作者自己的市场,里面还有几个相关插件:
/plugin marketplace add obra/superpowers-marketplace
/plugin install superpowers@superpowers-marketplace装好之后新开一个会话,说一句要做个新东西,比如:
我想做一个 React 的待办清单正常的话,它不会动手写代码,而是先开始问你问题,说明 brainstorming 已经自动触发了。
二、它怎么做到自动的
Skill 要靠 description 被模型想起来才会加载,Superpowers 却要保证每次都被触发。办法在它的 hooks/hooks.json 里,全文只有这么多:
{
"hooks": {
"SessionStart": [
{
"matcher": "startup|clear|compact",
"hooks": [
{
"type": "command",
"command": "\"${CLAUDE_PLUGIN_ROOT}/hooks/run-hook.cmd\" session-start",
"shell": "bash",
"async": false
}
]
}
]
}
}一个 SessionStart Hook,在三个时间点触发:
- 新开会话(
startup) /clear之后- 上下文压缩(
compact)之后。
它把一个叫 using-superpowers 的引导 Skill 注入上下文,告诉 Agent 做任何事之前先检查有没有对应的 Skill。README 里对这件事的说法是:这些是必须执行的流程,不是建议。
前面讲过的 ECC 用 SessionStart 注入会话摘要,Superpowers 用同一个机制注入规矩。
compact 这个 matcher 是为压缩准备的:上下文压缩之后,最早注入的引导内容可能被压没了,所以要再注入一次。
README 提到,在没有压缩后 Hook 的平台上,长会话压缩掉开头的引导之后,Skill 就可能不再触发,建议开新会话。
💡 Superpowers 的仓库里没有
agents/目录。它要派的子代理(实现者、审查员),提示词都作为模板放在对应 Skill 的文件夹里,比如implementer-prompt.md、task-reviewer-prompt.md,派活时由主会话拼好再发出去。放在
agents/里的子代理,description 会常驻主线上下文。做成 Skill 里的模板,只有走到这一步、Skill 正文被加载时,模板才会被读到。自己写插件时,也可以把子代理提示词放进对应的 Skill,走到那一步才加载。
三、七步工作流
| 步骤 | Skill | 什么时候触发 | 交接物 | 关卡 |
|---|---|---|---|---|
| 1 | brainstorming |
动手做任何东西之前 | 项目级的需求写成 docs/superpowers/specs/YYYY-MM-DD-<主题>-design.md |
你批准完整描述:小改动在对话里批,项目批设计文档 |
| 2 | using-git-worktrees |
设计批准之后 | 一个新的 worktree 和分支,测试基线是干净的 | |
| 3 | writing-plans |
有了批准的设计 | docs/superpowers/plans/YYYY-MM-DD-<功能名>.md |
你审计划,选执行方式 |
| 4 | subagent-driven-development 或 executing-plans |
有了计划 | 进度账本 ledger | |
| 5 | test-driven-development |
实现过程中 | 测试、代码、提交 | |
| 6 | requesting-code-review |
任务之间 | 审查结论 | Critical 问题阻断 |
| 7 | finishing-a-development-branch |
所有任务完成 | 你选:合并 / 开 PR / 保留 / 丢弃 |
第 5 步的规矩很硬:测试之前写的代码会被删掉。先写一个失败的测试,看着它失败,再写最少的代码让它通过,然后提交。
除了这 7 个,仓库里还有系统化调试、完成前验证、接收审查意见、写 Skill 等辅助 Skill,一共 15 个:

下面挑三个最值得看的 Skill 精读。
💡 这里按 2026 年 10 月 9 日发布的 v7.0.0 讲,以你手上的版本为准。
四、brainstorming Skill:先弄清你要什么,再决定流程
brainstorming Skill 开头讲它为什么存在:Agent 会去做它以为你想要的东西,这个以为有时和你想的不一样。所以动手之前,先把要做什么弄清楚。
1. 第一条消息:只有两样东西
它要和你对话时,第一条消息只有两样东西,按顺序:
- 一句话告诉你:不想回答问题、想让它直接开始,说一声就行
- 一个开放式问题,让你开始描述。问的是真实的场景或具体画面,比如「你是在什么时候,开始希望有这个东西的?」
之后每条消息也只以一个问题结尾。
先问开放式问题,而不是先把选项摆给你,是因为选项会带偏方向。你用自己的话描述时带的意图,选项给不了。只有你说「你看着办」,它才给几个具体的选项或提议。
2. 怎么做出来的,由谁来定
平台、语言、库、媒介这些「怎么做」的选择,它会早早问清楚:哪些你想自己定,哪些交给它,你手上已经有什么。
你有主见,它就跟你讨论;你交给它,它就用合理的默认值,并且明确说出来。
它替你做的选择,在设计里要写成它的决定,不能写成你同意的。
发布说明里讲了加这一条的原因:有一次会话设计的是一个 iOS 应用,从头到尾没问平台,最后做出来一个网页应用。
3. 边问边复述
它理解了一部分(这东西是给谁用的、某个环节怎么运作),就用两三百字复述给你听,再接着问下一部分,直到全部讲完。