Superpowers:让 AI 编程助手更专业的技能系统

一套为 AI 编程助手设计的结构化工作流技能,让代码开发更规范、更高效。
找了很多,也使用过很多的规则驱动开发技能,这个还是比较适合中小型项目开发的。

为什么要使用 Superpowers?

在日常软件开发中,我们经常会遇到这些问题:

常见问题 后果 Superpowers 解决方案
直接写代码,不先理解需求 返工、需求变更、进度延误 brainstorming 强制先探索需求
写完代码再补测试 测试覆盖率低,隐藏 bug TDD 强制先写测试
遇到 bug 就尝试"快速修复" 问题反复出现,越改越乱 systematic-debugging 强制先找根因
多步任务不做计划 遗漏步骤、进度失控 writing-plans 强制编写详细计划
声称完成就结束 缺少验证,线上出问题 verification-before-completion 强制验证

核心价值

Superpowers 能带来:

  1. 更少的返工 - 通过先思考再动手,减少因理解偏差导致的重复开发
  2. 更高的代码质量 - TDD 强制测试先行,确保代码可验证可维护
  3. 更快的调试速度 - 系统化方法避免盲目猜测,快速定位根因
  4. 更好的协作 - 详尽的实施计划让团队成员都能理解任务目标
  5. 可预测的进度 - 分解任务为可执行的小步骤,进度透明可控

谁适合使用?

  • 个人开发者 - 提升代码质量和工作效率
  • 团队开发者 - 统一开发流程,减少协作摩擦
  • 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*
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐