理解 Superpowers:把 AI 编程从提示词变成工程流程

精选 · · 博客

查看原文

来源:obra/superpowers 仓库 README、Codex 使用说明、作者发布文章
整理日期:2026-05-20

核心结论:Superpowers 不是“教 AI 多写一点代码”,而是把 AI 编程从一次性提示词,升级成一套有约束、有检查、有分工的工程流程。

1. 一句话结论

如果我是前端开发者,我对 Superpowers 最值得学的不是某一个 skill,而是它背后的流程设计:

  • 先澄清需求,再写代码。
  • 先写计划,再开始实现。
  • 先隔离工作区,再并行推进。
  • 先写测试,再补实现。
  • 先做评审,再继续下一个任务。

它本质上是在解决一个老问题:

AI 会写代码,但如果没有流程约束,它很容易写快、写散、写偏。

Superpowers 的价值,就是把这些容易失控的地方,全部前置成强制步骤。

2. 这套设计模式到底是什么

从仓库说明看,Superpowers 可以理解成三层结构:

层级 作用 我的理解
Skills 一组可组合的能力说明 相当于“标准作业程序”
Session bootstrap 会话启动时注入的初始规则 强制 AI 先找技能、按流程办事
Workflow 从 brainstorm 到 review 的完整链路 把 AI 使用方式从聊天变成工程执行

它不是在追求一个“万能 Prompt”,而是在做一件更工程化的事:

把复杂任务拆成一组可复用、可触发、可校验的工作流技能。

这也是我理解它为什么叫 Superpowers

  • 技能本身是能力。
  • 触发机制是调度器。
  • 工作流是约束系统。

三者合起来,AI 才会表现得像一个更可靠的工程协作者,而不是一个随时自由发挥的生成器。

3. Superpowers 的核心工作流

根据官方 README,它的基本流程大致是下面这条链路:

  1. brainstorming
  2. using-git-worktrees
  3. writing-plans
  4. subagent-driven-developmentexecuting-plans
  5. test-driven-development
  6. requesting-code-review
  7. finishing-a-development-branch

这条链路最重要的不是“步骤多”,而是每一步都在处理 AI 编程里一个高频失控点。

步骤 在解决什么问题 如果没有这一步会怎样
brainstorming 用户需求模糊 AI 很快开始写错方向
using-git-worktrees 多任务互相污染 改动串线,回滚困难
writing-plans 任务太大、太散 AI 一次改太多,难 Review
subagent-driven-development 单线程效率低 大任务推进慢,质量不稳定
test-driven-development 只顾实现不验真 “看起来能跑”但实际不稳
requesting-code-review 自我感觉完成 问题积累到最后一起爆
finishing-a-development-branch 收尾随意 分支、提交、结果都混乱

4. 它背后的设计思想,我认为有 5 个关键点

4.1 Skill First:先定义做事方式,再让 AI 做事

Superpowers 最核心的模式,不是工具优先,而是技能优先。

也就是说:

  • 不是“让 AI 自己临场发挥”
  • 而是“先告诉 AI 遇到什么场景该怎么做”

这和前端团队里的规范体系很像:

  • ESLint 约束代码风格。
  • 组件规范约束抽象方式。
  • Git Flow 约束分支协作。
  • CI 约束交付标准。

Superpowers 做的是同一件事,只不过约束对象从“人类工程师”扩展到了“AI Agent”。

4.2 Workflow Over Prompt:流程比提示词更重要

很多人优化 AI 编程,思路还是:

  • 多写点提示词。
  • 多补点上下文。
  • 多强调“认真一点”。

但 Superpowers 的思路更工程化:

与其不断优化一句话,不如把完整过程设计出来。

这背后的判断我很认同:

  • 提示词解决的是单次表达问题。
  • 工作流解决的是持续稳定性问题。

前端项目一旦进入多人协作、长期维护、复杂状态流,就不能只靠“这次说清楚”。必须让过程本身减少失控。

4.3 Small Tasks:任务颗粒度必须足够小

官方文档明确强调,计划要拆成很小的任务块,甚至是几分钟级别的工程任务。

这很关键,因为 AI 一旦面对“大而模糊”的任务,常见结果就是:

  • 改动范围过大。
  • 夹带无关重构。
  • 为了显得完整主动增加抽象。
  • 难以验证每一步是否正确。

这套设计本质上是在做“面向 Agent 的任务编排”。

对前端尤其重要,因为前端任务天然容易混在一起:

  • 视觉改动
  • 交互改动
  • 状态管理改动
  • 接口联调
  • 权限控制
  • 埋点补充

如果不切小,AI 很容易在一个任务里同时动五层。

4.4 Review Before Continue:不允许一路写到最后

Superpowers 把 code review 放在任务之间,而不是全部做完后再看。

这个设计非常像大型前端项目里的分阶段门禁:

  • 一个任务完成先验收。
  • 发现偏差就立刻修。
  • 不让错误带着进入下一阶段。

这比“先让 AI 全写完,再统一看”强很多,因为后者的问题是:

  • 错了也不知道从哪一步开始错。
  • 改起来牵一发而动全身。
  • Review 成本指数上升。

4.5 Evidence Over Claims:没有验证,就不算完成

Superpowers 明确强调 TDD、验证和证据优先。

这个理念我特别认同,因为 AI 最危险的点不是不会写,而是会“非常自信地交付错的东西”。

所以这套模式要求:

  • 先写失败的测试。
  • 再写最小实现。
  • 再确认测试变绿。
  • 再考虑重构。

本质上,它是在用工程证据替代语言承诺。

5. 前端开发者应该怎么理解这套模式

如果我是前端开发者,我会把 Superpowers 理解成一套“AI 协作工程化框架”,而不是一个插件。

它主要适合下面几类前端工作。

5.1 适合:复杂页面迭代

比如:

  • 后台列表页加筛选条件
  • 复杂表单拆组件
  • 多 tab 页状态同步
  • 路由权限和菜单联动调整

这些任务的特点是:

  • 需求容易变
  • 影响面不止一个文件
  • 行为正确比代码写快更重要

Superpowers 的 brainstorm -> plan -> review 模式,刚好能压住这类问题。

5.2 适合:组件库或设计系统维护

比如:

  • Button、Table、Form 组件统一 API
  • 设计 token 迁移
  • 主题能力改造
  • 文档和示例同步更新

这类任务最怕“局部看起来合理,全局不一致”。

Superpowers 的价值在于:

  • 先统一设计意图
  • 再拆子任务
  • 再让子 Agent 并行推进
  • 每步都做 review 和验证

这很适合中大型前端团队。

5.3 适合:遗留项目重构

比如:

  • Options API 向 Composition API 迁移
  • JS 文件逐步改成 TS
  • 请求层和页面层解耦
  • 大组件拆分

遗留项目最怕的不是改不动,而是“边改边坏”。

Superpowers 通过小任务、隔离分支、阶段 review 的方式,能显著降低重构风险。

5.4 不太适合:极小的零碎任务

比如:

  • 改一句文案
  • 调一个间距
  • 改一个图标

这类任务如果也走完整套 brainstorm、plan、TDD、review,成本可能高于收益。

所以我不建议把它理解成“所有任务都必须满流程执行”。

更合理的理解是:

任务越复杂、风险越高、协作越多,这套模式越有价值。

6. 前端场景里,我会怎么具体运用

下面我用一个 Vue 3 中后台场景举例。

6.1 场景:订单列表页增加“按当前筛选条件导出”

如果直接对 AI 说:

给订单页加个导出按钮

大概率会出现这些问题:

  • 它自己补一套新状态。
  • 导出参数和页面筛选条件不同步。
  • 顺手改请求层,影响别的页面。
  • 为了“稳一点”加很多兜底分支。

而用 Superpowers 的思路,任务会更像这样:

第一步:brainstorming

先把需求说清楚:

  • 导出的是当前筛选结果,不是全量数据。
  • 导出参数必须复用现有筛选状态。
  • 不允许再维护第二份导出专用查询状态。
  • 权限跟列表页查看权限保持一致还是独立控制,要先定清楚。

第二步:writing-plans

拆成几个小任务:

  1. 确认导出接口参数与页面筛选模型映射。
  2. 在列表工具栏增加导出按钮和 loading 状态。
  3. 复用现有筛选参数生成导出请求。
  4. 补导出流程的交互反馈。
  5. 验证筛选、分页、重置后的导出行为。

第三步:subagent-driven-development

让不同子任务并行处理,但边界要清楚:

  • 一个 Agent 只处理 UI 接入。
  • 一个 Agent 只处理参数映射和请求封装。
  • 一个 Agent 只补测试或验证脚本。

第四步:requesting-code-review

Review 重点不是“能不能跑”,而是:

  • 是否复用了同一份筛选状态
  • 是否引入了重复逻辑
  • 是否影响了现有列表请求流程
  • 是否加了不必要的兼容分支

这就是前端里非常典型的 Superpowers 用法。

7. 如果我要在自己的前端项目里借鉴,我会优先学这 6 个技能

Skill 它解决什么问题 前端里怎么用
brainstorming 需求不清就开写 先把页面行为、权限、状态边界问清楚
writing-plans AI 一次改太多 把页面、组件、接口、测试拆成独立任务
using-git-worktrees 多任务开发互相污染 并行处理多个页面改动或多个重构分支
subagent-driven-development 单个 Agent 推进太慢 UI、状态、测试拆给不同 Agent
test-driven-development 改完只看表面效果 给 hooks、utils、状态逻辑先写失败测试
requesting-code-review AI 自评偏乐观 每个任务完成后先做结构和风险复核

如果你不想一次性全部照搬,我建议先学前三个:

  1. brainstorming
  2. writing-plans
  3. requesting-code-review

因为这三个技能最直接影响结果质量,而且对前端项目的适配成本最低。🚀

8. 这套模式对前端架构有什么启发

从前端架构师视角看,Superpowers 最有价值的不是“AI 自动化”,而是它在逼你把隐性经验显式化。

它要求你把这些东西写清楚:

  • 什么叫任务完成
  • 什么叫不允许修改
  • 什么叫高风险改动
  • 什么叫组件职责清晰
  • 什么叫状态复用而不是复制

这件事非常重要,因为很多前端团队的问题本来就不是技术栈不行,而是工程约束没有写出来。

所以我觉得 Superpowers 有两个层面的价值:

层面 价值
对 AI 提高稳定性和可控性
对团队 倒逼流程、规范、边界更清晰

换句话说:

你以为你是在训练 AI,实际上你也在反向整理自己的工程方法论。

9. 我不建议你照搬的地方

虽然我认可这套模式,但也不建议原封不动照搬。

9.1 不要把所有任务都强制 TDD

前端里很多任务是:

  • 视觉改版
  • 文案调整
  • 布局优化
  • 交互细节微调

这些任务不一定适合严格测试先行。

更合理的做法是分层:

  • 纯逻辑、状态流、工具函数,优先 TDD
  • 复杂组件行为,补关键交互测试
  • 纯样式调整,以手测和视觉回归为主

9.2 不要为了并行而并行

多 Agent 并行只有在任务边界足够清晰时才有效。

如果前端任务本身强耦合,比如:

  • 页面 UI 改动依赖状态结构改造
  • 状态改造又依赖接口字段调整

这时候强行并行,结果通常是反复冲突和重复返工。

9.3 不要把 skill 当成“命令菜单”

Skill 的本质不是快捷指令,而是行为约束。

如果只是把它理解成:

  • 这个命令用来写计划
  • 那个命令用来开评审

那你学到的只是表层。

真正值得借鉴的是:

什么场景下,必须先停下来做哪一步。

10. 我的结论

Superpowers 这套设计模式,本质上是在把 AI 编程从“会写”升级成“会按工程方式交付”。

对前端开发者来说,我最推荐学的不是安装方式,而是下面三件事:

  • 学它如何先做需求澄清。
  • 学它如何把任务切成可执行的小块。
  • 学它如何把 review 和验证前置到过程里。

如果你已经在做中后台、组件库、设计系统、遗留项目重构,这套模式很值得借鉴。💡

如果只用一句话总结它对前端的启发,那就是:

不要再把 AI 当“更快的代码补全”,而要把它当“需要流程约束的协作工程师”。

11. 我建议的落地步骤

如果你想在自己的前端项目里试一轮,我建议按这个顺序落地:

  1. 先别急着装全套技能,先模仿它的流程。
  2. 任何中等以上任务,先写 背景 + 目标 + 范围 + 约束 + 验收标准
  3. 把任务拆成 2 到 5 分钟级别的小步骤,不让 AI 一次改太多。
  4. 每完成一个小任务,都单独做一次 review。
  5. 对状态管理、工具函数、复杂数据转换优先引入测试先行。
  6. 等流程跑顺后,再考虑把这些规则沉淀成你自己的 skill 或团队规范。

这样做的收益最大,而且最符合前端团队的实际情况。✅