Superpowers:让 AI 编程助手更专业的技能系统
Superpowers:让 AI 编程助手更专业的技能系统
一套为 AI 编程助手设计的结构化工作流技能,让代码开发更规范、更高效。
找了很多,也使用过很多的规则驱动开发技能,这个还是比较适合中小型项目开发的。
为什么要使用 Superpowers?
在日常软件开发中,我们经常会遇到这些问题:
| 常见问题 | 后果 | Superpowers 解决方案 |
|---|---|---|
| 直接写代码,不先理解需求 | 返工、需求变更、进度延误 | brainstorming 强制先探索需求 |
| 写完代码再补测试 | 测试覆盖率低,隐藏 bug | TDD 强制先写测试 |
| 遇到 bug 就尝试"快速修复" | 问题反复出现,越改越乱 | systematic-debugging 强制先找根因 |
| 多步任务不做计划 | 遗漏步骤、进度失控 | writing-plans 强制编写详细计划 |
| 声称完成就结束 | 缺少验证,线上出问题 | verification-before-completion 强制验证 |
核心价值
Superpowers 能带来:
- 更少的返工 - 通过先思考再动手,减少因理解偏差导致的重复开发
- 更高的代码质量 - TDD 强制测试先行,确保代码可验证可维护
- 更快的调试速度 - 系统化方法避免盲目猜测,快速定位根因
- 更好的协作 - 详尽的实施计划让团队成员都能理解任务目标
- 可预测的进度 - 分解任务为可执行的小步骤,进度透明可控
谁适合使用?
- 个人开发者 - 提升代码质量和工作效率
- 团队开发者 - 统一开发流程,减少协作摩擦
- AI 编程助手用户 - 让 AI 产出更专业、更可靠的代码
关键洞察: AI 编程助手虽然强大,但容易"急于求成"——快速给出答案而忽略最佳实践。Superpowers 通过强制结构化流程,确保 AI 遵循软件工程的黄金法则。
什么是 Superpowers?
Superpowers 是一套为 AI 编程助手提供结构化工作流程指导的技能系统。它不是简单的提示词模板,而是一套完整的"最佳实践"方法论,帮助 AI 助手在开发过程中遵循软件工程的黄金法则。
核心理念
Superpowers 的设计哲学可以用一句话概括:
“如果有一丝可能某个技能适用于你的任务,你必须调用它。”
这不是建议,而是强制要求。因为软件开发中的"捷径"往往是通往技术债务的快车道。
安装指南
Superpowers 技能可集成到多种 AI 编程助手中。以下是集成方式:
前置条件: 已安装 Claude Code、Codex 或 OpenCode 之一
方式一:Claude Code 插件市场安装(推荐)
Claude Code 支持通过插件市场安装 Superpowers,最为简便:
步骤 1:注册插件市场
/plugin marketplace add obra/superpowers-marketplace
步骤 2:安装 Superpowers 插件
/plugin install superpowers@superpowers-marketplace
步骤 3:验证安装
/help
成功安装后,您应该能看到以下命令列表:
/superpowers:brainstorm - Interactive design refinement
/superpowers:write-plan - Create implementation plan
/superpowers:execute-plan - Execute plan in batches
更新 Superpowers
已安装的 Superpowers 可以通过以下命令更新:
/plugin update superpowers
方式二:Codex 平台安装
Codex 用户需要通过以下步骤安装 Superpowers:
执行安装命令
在 Codex 中执行以下命令:
Fetch and follow instructions from https://raw.githubusercontent.com/obra/superpowers/refs/heads/main/.codex/INSTALL.md
详细安装文档可参考:docs/README.codex.md
方式三:OpenCode 平台安装
OpenCode 用户可以通过以下方式安装 Superpowers:
执行安装命令
在 OpenCode 中执行命令:
Fetch and follow instructions from https://raw.githubusercontent.com/obra/superpowers/refs/heads/main/.opencode/INSTALL.md
详细配置文档可参考:docs/README.opencode.md
注意: 技能必须符号链接到
~/.config/opencode/skills/superpowers/
方式四:通用 MCP 客户端集成(集成qwencode)
任何支持 MCP 协议的客户端都可以集成 Superpowers。
使用 npx 运行
{
"mcpServers": {
"superpowers": {
"command": "npx",
"args": ["-y", "/superpowers-mcp"]
}
}
}
本地开发安装
# 克隆仓库
git clone https://github.com/obra/superpowers.git
cd superpowers
# 安装依赖并构建
npm install
npm run build
# 在 MCP 配置中指向本地构建
{
"mcpServers": {
"superpowers": {
"command": "node",
"args": ["/path/to/superpowers/dist/index.js"]
}
}
}
验证安装
安装完成后,建议通过以下方法验证 Superpowers 是否正常运行:
检查核心技能是否可用
claudecodeCLI里执行:
- 尝试使用
/superpowers:brainstorm命令启动交互式设计讨论 - 使用
/superpowers:write-plan命令生成项目实施计划 - 使用
/superpowers:execute-plan命令批量执行计划
或者qwencodeCLI里/skills
superpowers 技能是否存在。
验证工作流集成
Superpowers 会自动集成到您的开发流程中,包括:
| 技能 | 用途 |
|---|---|
| brainstorming | 设计细化技能 |
| using-git-worktrees | Git 工作树管理 |
| writing-plans | 实施计划生成 |
| test-driven-development | 测试驱动开发流程 |
| systematic-debugging | 系统调试技巧 |
注意: Superpowers 正在积极开发中,项目地址和包名可能会有调整。建议在安装前查看 GitHub 官方仓库 获取最新信息。
可用技能一览
Superpowers 提供了 14 个核心技能,覆盖软件开发的完整生命周期:
| 技能名称 | 用途 | 使用时机 |
|---|---|---|
| brainstorming | 创意探索与设计 | 任何新功能开发之前 |
| test-driven-development | 测试驱动开发 | 实现功能或修复 Bug 时 |
| systematic-debugging | 系统化调试 | 遇到 Bug 或测试失败时 |
| writing-plans | 编写实施计划 | 多步骤任务开始前 |
| executing-plans | 执行实施计划 | 有书面计划需要执行时 |
| subagent-driven-development | 子代理驱动开发 | 执行包含独立任务的计划 |
| verification-before-completion | 完成前验证 | 声称工作完成之前 |
| requesting-code-review | 请求代码审查 | 完成主要功能实现后 |
| receiving-code-review | 接收代码审查 | 收到代码审查反馈时 |
| finishing-a-development-branch | 完成开发分支 | 实现完成、测试通过后 |
| using-git-worktrees | 使用 Git Worktrees | 需要隔离开发环境时 |
| dispatching-parallel-agents | 并行代理调度 | 有 2+ 个独立任务时 |
| writing-skills | 编写新技能 | 创建或编辑技能时 |
| using-superpowers | 使用 Superpowers | 任何对话开始时 |
核心技能详解
1. Test-Driven Development (TDD)
核心理念: 先写测试,看着它失败,再写最少的代码让它通过。
红绿重构循环
┌─────────────────────────────────────────────────────────────┐
│ │
│ RED ──► 验证失败 ──► GREEN ──► 验证通过 ──► REFACTOR │
│ │ │ │ │
│ │ │ │ │
│ └───────────────────┴────────────────────┘ │
│ ▲ │
│ │ │
│ 下一个测试 │
│ │
└─────────────────────────────────────────────────────────────┘
铁律
没有失败的测试,就不写生产代码
错误示范:
// ❌ 先写实现
function retryOperation(fn) {
for (let i = 0; i < 3; i++) {
try { return fn(); }
catch (e) { if (i === 2) throw e; }
}
}
// 然后写测试... 这不是 TDD!
正确示范:
// ✅ 第一步:写失败的测试
test('retries failed operations 3 times', async () => {
let attempts = 0;
const operation = () => {
attempts++;
if (attempts < 3) throw new Error('fail');
return 'success';
};
const result = await retryOperation(operation);
expect(result).toBe('success');
expect(attempts).toBe(3);
});
// 第二步:运行测试,确认它失败
// 第三步:写最少的代码让测试通过
// 第四步:重构(如果需要)
常见借口与真相
| 借口 | 真相 |
|---|---|
| “太简单了不需要测试” | 简单代码也会出错,测试只需 30 秒 |
| “我之后再补测试” | 后补的测试立即通过,证明不了任何事 |
| “我已经手动测试过了” | 手动测试不可重复,无法回归验证 |
| “删掉几小时的代码太浪费” | 沉没成本谬误,保留未验证的代码才是技术债务 |
2. Systematic Debugging
核心理念: 永远先找到根本原因,再尝试修复。
四阶段调试流程
阶段 1: 根因调查
│
├── 仔细阅读错误信息
├── 稳定复现问题
├── 检查最近的变更
└── 收集多层系统的证据
│
▼
阶段 2: 模式分析
│
├── 找到工作的示例
├── 与参考实现对比
└── 识别差异
│
▼
阶段 3: 假设与测试
│
├── 形成单一假设
├── 最小化测试
└── 验证后再继续
│
▼
阶段 4: 实施
│
├── 创建失败的测试用例
├── 实施单一修复
└── 验证修复有效
铁律
没有根因调查,就不做修复
危险信号:
- “快速修复一下,之后再调查”
- “试试改 X 看看行不行”
- “一次改多个地方试试”
- 已经尝试了 3+ 次修复还没成功
当 3+ 次修复失败时: 停下来,质疑架构设计。
3. Brainstorming
核心理念: 在任何创造性工作之前,先充分探索需求。
流程
探索项目上下文
│
▼
逐一提问澄清 ──► 一次只问一个问题
│
▼
提出 2-3 个方案 ──► 包含权衡分析和推荐
│
▼
分段呈现设计 ──► 每段后确认
│
▼
用户批准?
│
├── 否 ──► 返回修改
│
└── 是 ──► 编写设计文档
│
▼
调用 writing-plans 技能
硬性规则
在呈现设计并获得用户批准之前,
不得调用任何实现技能、编写任何代码、搭建任何项目。
这适用于每个项目,无论看起来多么简单。
4. Writing Plans
核心理念: 为零上下文的工程师编写详尽的实施计划。
计划文档结构
# [功能名称] 实施计划
> **For Claude:** 必须使用 superpowers:executing-plans 逐任务执行此计划。
**目标:** [一句话描述构建内容]
**架构:** [2-3 句描述方法]
**技术栈:** [关键技术/库]
---
### 任务 N: [组件名称]
**文件:**
- 创建: `exact/path/to/file.py`
- 修改: `exact/path/to/existing.py:123-145`
- 测试: `tests/exact/path/to/test.py`
**步骤 1: 编写失败的测试**
```python
def test_specific_behavior():
result = function(input)
assert result == expected
步骤 2: 运行测试验证失败
运行: pytest tests/path/test.py::test_name -v
预期: FAIL with “function not defined”
步骤 3: 编写最小实现
def function(input):
return expected
步骤 4: 运行测试验证通过
运行: pytest tests/path/test.py::test_name -v
预期: PASS
步骤 5: 提交
git add tests/path/test.py src/path/file.py
git commit -m "feat: add specific feature"
#### 任务粒度原则
每个步骤是一个动作(2-5 分钟):
- "编写失败的测试" - 一个步骤
- "运行确认失败" - 一个步骤
- "实现最小代码让测试通过" - 一个步骤
- "运行测试确认通过" - 一个步骤
- "提交" - 一个步骤
---
## 使用示例
### 场景一:开发新功能
用户: 帮我实现一个用户登录功能
AI: 我将使用 brainstorming 技能来探索这个需求…
[调用 brainstorming 技能]
首先,让我了解一下项目上下文...
问题 1: 这个登录功能是用于什么类型的应用?
- Web 应用
- 移动应用
- 桌面应用
[用户选择后继续提问...]
[最终呈现设计并获得批准]
[调用 writing-plans 创建实施计划]
### 场景二:修复 Bug
用户: 用户报告登录时偶尔会失败
AI: 我将使用 systematic-debugging 技能来调查这个问题…
[调用 systematic-debugging 技能]
阶段 1: 根因调查
1. 请提供具体的错误信息
2. 这个问题是稳定复现还是偶发的?
3. 最近有什么相关的变更?
[收集证据后继续...]
### 场景三:实现功能
用户: 按照这个计划实现功能
AI: 我将使用 test-driven-development 技能来实现…
[调用 TDD 技能]
步骤 1: 编写失败的测试
[编写测试代码]
步骤 2: 运行测试确认失败
[运行测试]
步骤 3: 编写最小实现
[编写实现代码]
步骤 4: 运行测试确认通过
[运行测试]
步骤 5: 提交
[git commit]
---
## 不同平台的调用方式
### Claude Code
Claude Code 原生支持技能,直接在对话中提及即可:
使用 brainstorming 技能帮我设计用户认证系统
或使用 Skill 工具:
Skill: brainstorming
### Qwen Code / MCP 客户端
通过 MCP 工具调用:
列出可用技能
mcp__superpowers__list_skills
读取特定技能
mcp__superpowers__read_skill skill_name: “test-driven-development”
---
## 最佳实践
### 1. 技能优先级
当多个技能可能适用时,按以下顺序:
1. **流程技能优先**(brainstorming, debugging)- 决定如何处理任务
2. **实现技能其次**(TDD, frontend-design)- 指导执行
### 2. 不要跳过技能
| 想法 | 现实 |
|-----|------|
| "这只是个简单问题" | 问题也需要技能检查 |
| "我需要更多上下文" | 技能检查在澄清问题之前 |
| "让我先探索代码库" | 技能告诉你如何探索 |
| "这个不需要正式技能" | 如果技能存在,就使用它 |
### 3. 技能类型
- **刚性技能**(TDD, debugging):严格遵循,不要偏离
- **灵活技能**(patterns):根据上下文调整原则
---
## 常见问题
### Q: Superpowers 支持哪些 AI 编程助手?
**A:** Superpowers 主要支持:
- **Claude Code** - 原生集成,体验最佳
- **Qwen Code** - 通过 MCP 协议集成
- **其他 MCP 客户端** - 任何支持 MCP 的客户端
### Q: Claude Code 和 Qwen Code 的集成有什么区别?
**A:**
| 特性 | Claude Code | Qwen Code |
|-----|-------------|-----------|
| 集成方式 | 原生支持 | MCP 协议 |
| 配置复杂度 | 简单 | 中等 |
| 技能调用 | 直接对话或 Skill 工具 | MCP 工具调用 |
| 自定义技能 | 支持 | 支持 |
### Q: 如何创建自定义技能?
**A:** 使用 `writing-skills` 技能来创建新的技能:
使用 writing-skills 技能帮我创建一个新的代码审查技能
### Q: 技能可以组合使用吗?
**A:** 可以。典型的组合流程:
brainstorming → writing-plans → test-driven-development → verification-before-completion
---
## 总结
Superpowers 不是要限制 AI 助手的能力,而是通过结构化的工作流程,确保软件开发遵循经过验证的最佳实践。
**记住:**
> 如果有一丝可能某个技能适用于你的任务,调用它。
>
> 这不是可选项,这是必须。
通过这套技能系统,AI 编程助手可以:
- 在编码前充分理解需求
- 用 TDD 保证代码质量
- 用系统化方法调试问题
- 用详尽计划指导实施
最终产出更可靠、更易维护的代码。
---
## 参考资源
- [Claude Code 官方文档](https://docs.anthropic.com/claude-code)
- [MCP 协议文档](https://modelcontextprotocol.io/)
- [Superpowers GitHub 仓库](https://github.com/anthropics/superpowers)
---
*本文档更新于 2026-03-22*
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)