你有没有遇到过这种情况:让AI帮忙写代码,它倒是“唰唰”地输出了一大段,结果一看,不是跑不通,就是缺失关键的测试,甚至还夹杂着一堆炫技但实际用不上的复杂逻辑?
你试图纠正它,却发现它像一头倔驴,越改方向越偏。这其实不是AI不够聪明,而是我们缺少一套能让它遵循工程纪律、有序高效工作的“管理方法”。
今天介绍的主角——Superpowers,正是这样一套旨在让AI Agent像专业软件工程师一样工作的框架。它不试图改变底层AI模型,而是为AI设计了一套严谨的行为准则和工作流,引导其在正确的轨道上高效奔跑。目前该项目在GitHub上已经收获了超过12.2万颗星,热度颇高。

1. Superpowers 解决了什么痛点?
当前直接使用AI进行编程辅助,常常面临几个明显的痛点:
- 缺乏需求澄清:AI往往拿到模糊指令就直接开写,不会主动提问以明确边界和细节。
- 缺乏规划:直接跳入代码实现,不进行任务分解和步骤设计。
- 缺乏验证:代码写完就结束,不编写测试用例,也不验证功能是否符合预期。
结果就是,AI产出的代码质量不稳定、难以维护、更无法进行有效的团队协作。更糟糕的是,开发者需要花费大量时间去纠正AI,而不是让它真正解放生产力。
Superpowers的解决思路很明确:为AI制定一套软件工程师的行为准则,让它像一个有经验的老手一样工作。
2. Superpowers 的核心机制:技能与强制工作流
Superpowers的核心是“技能(Skills)”与“强制工作流”的结合。它将软件开发的关键实践(如设计评审、TDD、代码审查等)封装成一个个可自动或手动触发的“技能”,并规定它们必须在特定工作流阶段执行。
内嵌的强制工作流阶段如下:
| 阶段名称 |
激活条件/时机 |
操作描述 |
brainstorming |
编程前 |
通过提问细化粗略想法、探索替代方案、分模块展示设计以供验证,并保存设计文档。 |
using-git-worktrees |
设计审批后 |
在新分支创建隔离的工作区,运行项目初始化,验证测试基线是否干净。 |
writing-plans |
设计审批后 |
将工作拆解为多个耗时2-5分钟的微任务;每个任务包含精确的文件路径、完整的代码和验证步骤。 |
subagent-driven-development 或 executing-plans |
有可用计划时 |
每个任务派发给新的子代理执行(分两阶段评审:规格合规性 → 代码质量),或批量执行并设置人工检查点。 |
test-driven-development |
实现阶段 |
强制执行红绿重构流程:编写失败测试 → 见证失败 → 编写最少可通过代码 → 见证通过 → 提交;删除未通过测试的代码。 |
requesting-code-review |
任务间 |
基于计划评审代码,按严重性报告问题;关键问题将阻塞后续进度。 |
finishing-a-development-branch |
所有任务完成后 |
验证测试状态、提供操作选项(合并/拉取请求/保留/丢弃)、清理工作区。 |
内置的核心技能 (Skills) 包括:
| Skill 名称 |
作用 |
触发条件 |
brainstorming |
通过提问澄清需求,生成设计文档。 |
自动(当需求模糊时) |
writing-plans |
基于需求撰写多步实施计划。 |
自动(拥有需求文档且开始编码前) |
executing-plans |
执行书面实施计划,在独立会话中落地代码并配合审查检查。 |
手动(需输入 /superpowers:execute-plan 命令) |
test-driven-development |
为功能或Bug修复编写测试用例,指导后续编码。 |
自动(开始编写实现代码前) |
requesting-code-review |
在提交前请求代码审查,确保代码符合要求。 |
自动(完成主要功能或准备合并时) |
subagent-driven-development |
通过创建子代理来执行独立任务,推进实施计划。 |
自动(执行计划中包含独立任务时) |
using-git-worktrees |
通过Git工作树隔离特性分支工作区,准备独立的开发环境。 |
自动(需要隔离环境时) |
finishing-a-development-branch |
处理开发分支完成后的集成决策(合并/清理)。 |
自动(检测到所有测试通过且任务完成时) |
触发机制说明:
- 自动触发:系统根据上下文条件(如需求模糊、测试通过、检测到Bug)自动执行相应技能,无需用户输入命令。
- 手动触发:需要用户主动输入特定的命令(如
/superpowers:execute-plan)来启动。
一个典型的工作流可能是:brainstorming(自动)→ 用户确认需求 → writing-plans(自动)→ 用户输入 /superpowers:execute-plan(手动)→ test-driven-development(自动)→ finishing-a-development-branch(自动)。
3. 如何使用 Superpowers?
1. 安装
安装方法根据你使用的AI编程工具有所不同:
2. 开始使用
安装后,直接向你的AI助手描述需求即可,例如:“帮我添加一个用户登录功能”。
AI会自动触发 brainstorming 技能,开始向你提问以澄清需求,例如:“你需要支持哪种登录方式?(邮箱/手机号/第三方登录)”。
3. 确认方案并启动执行
在你确认设计后,输入命令:/superpowers:write-plan。
AI会生成一份详细的实施计划,例如:
1. 创建 login.html
- 验证:页面加载后显示登录表单
2. 实现登录API
- 验证:POST /login 返回 JWT
......
然后,输入命令:/superpowers:execute-plan。
AI将自动开始执行该计划,并且每一步都会严格遵循 测试驱动开发 (TDD) 的流程:
- 先写一个会失败的测试(RED)
- 再编写最少量的代码使测试通过(GREEN)
- 最后对代码进行重构优化(REFACTOR)
你可以随时使用 /superpowers:help 命令查看所有可用的技能。
项目地址:https://github.com/obra/superpowers
通过引入 Superpowers 这样的框架,我们能够将AI Agent从无序的代码生成器,转变为遵循工程实践的可靠协作者。这不仅是工具的升级,更是开发范式的进步。如果你对这类提升开发效率的开源实战项目感兴趣,欢迎到云栈社区的对应板块交流讨论,分享你的使用心得。