什么是 Superpowers?
Superpowers 是一个为 AI 编程助手(如 Claude Code、Cursor 等)设计的智能技能框架和软件开发方法论。它通过提供一组可组合的“技能(skills)”和初始指令,为 AI 代理构建了一套完整的软件开发工作流。
它能做什么?
Superpowers 的核心在于改变 AI 代理“拿到需求就直接写代码”的习惯,转而采用更工程化的开发流程:
- 需求与设计确认:当你启动编程代理时,它会先退一步,询问并确认你真正想要实现的目标,而不是盲目开始编码。
- 制定实施计划:在设计获得你的认可后,代理会制定一份极其清晰的实施计划。该计划强调真正的红绿 TDD(测试驱动开发)、YAGNI(你不需要它)和 DRY(不要重复自己)原则。
- 子代理驱动开发(Subagent-Driven-Development):一旦你确认“开始”,它会启动子代理流程,让代理逐步完成每个工程任务,并对工作进行检查和审查。
- 高度自治:通过这套工作流,像 Claude 这样的 AI 代理通常能够自主工作几个小时,而不会偏离最初制定的计划。
简而言之,Superpowers 让你的 AI 编程助手具备了架构师和高级工程师的思维方式,能够更可靠、更自主地完成复杂的开发任务。
使用感受
我在 之前提到过 Ralph 和使用Ralph开发的 Aimo,当时提到
Ralph 的核心理念是将大型需求拆分为结构化的任务,并通过隔离上下文来避免 AI 在长对话中“迷失”。
先说结论,如果模型能力还可以持续提升,Ralph 是未来,Superpowers可能在某些特定任务中更有用。做一个简单的类比 Ralph算是敏捷开发,Superpowers 则算是瀑布流的开发模式
这两者我做一个大概的对比
- 模型使用上,Ralph主要依靠 模型能力,只包含了一个prd,一个 ralph文件,这和 Superpowers 理念有很大的区别,Superpowers 包含了一系列的AI 资产,旨在指导AI的工作流
- 开发流程上,Ralph 确定好prd后会生成一系列的任务,任务都足够的小且可验证,比如
{
"id": "US-009",
"title": "改造 ExploreService 接受可选 userModelId 参数",
"description": "作为用户,我希望 AI 探索功能使用我在输入框选择的模型来分析和生成内容。",
"acceptanceCriteria": [
"ExploreService 的 explore() 或等效入口方法新增可选参数 userModelId?: string | null",
"方法内部调用 getModelClient(db, userId, userModelId) 动态构造 ChatOpenAI 实例,替换原有硬编码初始化",
"ExploreController 接收请求体中的可选字段 userModelId?: string,并透传给 ExploreService",
"当 userModelId 为空时,回退到系统默认配置,行为与改造前一致",
"Typecheck passes"
],
"priority": 9,
"passes": true,
"notes": ""
}Superpowers 则使用skill在模型运行过程中指导模型按照工作流去工作,比如先实现再review,但是比较大的问题是,他没办法在一开始就规划好如何去check,人们也无法干预这个过程
-
任务拆分 Ralph 在任务拆分为plan的会话中,不会给很详细的代码,但是 Superpowers 会,这就会导致其在遇到稍微大一点规模的任务的时候,生成plan会报错,同时因为一个上下文生成的,会导致幻觉严重,准确率下降
-
执行结果上 每次生成一个干净会话的Raplh效果更好,Superpowers经常会出现丢细节的情况(不论是 子Agent模式 还是 checkpoint 模式 都存在这个问题)
可以借鉴的地方
虽然在任务执行层面不太好,但是在 superpowers 有一个 brainstorming 模式,可以用来生成详细的计划:
帮助将想法通过自然协作对话转化为完整的设计和规范。 首先理解当前项目背景,然后逐个提问以细化想法。一旦理解了你要构建的内容,就展示设计并获得用户批准。 在你展示设计并获得用户批准之前,不要调用任何实现技能,编写任何代码,搭建任何项目或采取任何实现行动。这适用于所有项目,无论其看似的简单程度。
在之前,都是我都是通过 /prd PROMPT 的方式调用 Ralph,后续阅读生成好的 PRD 经过多轮调整后才可以进行任务拆分,现在可以直接使用 brainstorming 在单轮session中AI会和你共创需求,除了减少后续调整的麻烦外,还可以借助AI给你很多创新的 idea AIMO 的AI知识回顾功能就是这么来的

对后续工作的指导
- 过多的Skill对于目前模型来说反而是一个干扰, AI可以自行探索之前的内容确保获取足够的上下文
- 任务的定义很重要, 够小保证目标不偏移,反馈回路保证可验证

