【Superpowers】Agentic Skills Framework 核心架构与设计原理深度解析

【Superpowers】Agentic Skills Framework 核心架构与设计原理深度解析

引子

当我第一次在终端里启动 Claude Code 并尝试构建一个 Web 应用时,我习惯性地开始写代码——然后被一个提示拦住了:

“I’m using the brainstorming skill to understand what we’re really building.”

这不是我熟悉的 AI 助手行为。大多数 Agent 工具都是「拿到需求就开干」,但 Superpowers 告诉我要先想清楚「做什么」和「为什么做」。

这个看似简单的设计选择,背后是一套完整的 Agent 软件开发方法论。Superpowers 是一个专为 AI Coding Agent 设计的技能框架(Agentic Skills Framework),它通过一组精心设计的技能(Skills)来约束和引导 Agent 的行为,让 AI 从「能写代码」变成「能做好软件工程」。

截至 2026 年 6 月,Superpowers 在 GitHub 上已获得 21.3 万星,支持 Claude Code、Codex CLI、OpenCode、Cursor 等主流 Coding Agent,是当前最火的 Agent 技能框架之一。

一、项目定位与解决的问题

1.1 核心问题

当前 AI Coding Agent 面临三大困境:

  1. 过度实现(Over-engineering):Agent 拿到需求后往往直接写代码,缺少设计环节,导致代码结构混乱、过度封装
  2. 上下文污染(Context Pollution):Agent 在长会话中容易受到历史消息影响,产生不一致的代码风格和逻辑
  3. 缺乏工程纪律:TDD、代码审查、细粒度任务分解等软件工程最佳实践往往被跳过

1.2 Superpowers 的价值主张

Superpowers 不是一个代码生成工具,而是一套软件工程方法论的数字化实现。它将经验证的软件开发最佳实践封装成可自动触发的技能(Skills),让 AI Agent 能够在正确的时间做正确的事。

二、核心架构:Skills 驱动的工作流

2.1 整体架构

graph TD
    subgraph "User Session"
        A[User Request] --> B[Agent Harness<br/>Claude Code / Codex / OpenCode]
    end
    
    subgraph "Superpowers Skills Layer"
        C[brainstorming<br/>需求分析与设计]
        D[writing-plans<br/>任务规划]
        E[subagent-driven-development<br/>子Agent执行]
        F[systematic-debugging<br/>系统调试]
        G[test-driven-development<br/>TDD]
        H[using-git-worktrees<br/>隔离工作区]
        I[finishing-a-development-branch<br/>分支收尾]
    end
    
    subgraph "Trigger Mechanism"
        J[Auto-trigger Rules<br/>自动触发规则]
        K[Explicit Invocation<br/>显式调用]
    end
    
    B --> J
    B --> K
    J --> C
    K --> C
    C --> D
    D --> E
    E --> F
    E --> G
    G --> H
    H --> I
    
    style C fill:#FFB3BA,color:#000
    style D fill:#FFDFBA,color:#000
    style E fill:#FFFFBA,color:#000
    style F fill:#BAFFC9,color:#000
    style G fill:#BAE1FF,color:#000

2.2 技能触发机制

Superpowers 的核心创新在于自动触发。技能通过两种方式激活:

  1. 自动触发(Auto-trigger):基于规则检测用户意图,自动在关键时刻激活对应技能
  2. 显式调用(Explicit Invocation):用户通过 /plugin install superpowers@... 命令手动触发

每个技能都有 YAML frontmatter 定义的触发条件:

1
2
3
4
---
name: brainstorming
description: "You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation."
---

2.3 技能分层

graph TD
    subgraph "Phase 1: Design"
        A[brainstorming<br/>需求探索与设计]
    end
    
    subgraph "Phase 2: Planning"
        B[writing-plans<br/>实现规划]
    end
    
    subgraph "Phase 3: Execution"
        C[subagent-driven-development<br/>子Agent驱动开发]
        D[executing-plans<br/>计划执行]
        E[using-git-worktrees<br/>隔离工作区]
    end
    
    subgraph "Phase 4: Quality"
        F[test-driven-development<br/>TDD]
        G[systematic-debugging<br/>系统调试]
        H[verification-before-completion<br/>完成前验证]
    end
    
    subgraph "Phase 5: Collaboration"
        I[requesting-code-review<br/>请求代码审查]
        J[receiving-code-review<br/>接收代码审查]
        K[finishing-a-development-branch<br/>分支收尾]
    end
    
    A --> B
    B --> C
    B --> D
    C --> E
    D --> E
    E --> F
    E --> G
    F --> H
    G --> H
    H --> I
    I --> J
    J --> K

三、核心技能详解

3.1 brainstorming —— 设计门禁

brainstorming 是整个工作流的设计门禁(Design Gate)。它的核心原则是:

「NO CODE BEFORE DESIGN」

硬门禁规则:

1
2
3
<HARD-GATE>
Do NOT invoke any implementation skill, write any code, scaffold any project, or take any implementation action until you have presented a design and the user has approved it. This applies to EVERY project regardless of perceived simplicity.
</HARD-GATE>

工作流程:

flowchart LR
    A[探索项目上下文] --> B{视觉问题?}
    B -->|是| C[提供视觉伴侣]
    B -->|否| D[提出澄清问题]
    C --> D
    D --> E[提出2-3种方案]
    E --> F[分节展示设计]
    F --> G{用户批准?}
    G -->|需要修改| F
    G -->|批准| H[编写设计文档]
    H --> I[规范自检]
    I --> J[用户审查]
    J -->|通过| K[触发writing-plans]

设计文档输出位置:

1
docs/superpowers/specs/YYYY-MM-DD-<topic>-design.md

3.2 writing-plans —— 细粒度任务分解

writing-plans 将设计文档转化为可执行的任务清单。它的核心原则是:

  • 每个任务 2-5 分钟完成
  • 每个任务有明确的文件路径、代码内容、验证步骤
  • 假设执行者是一个「有技能但缺乏上下文」的初级工程师

任务文档格式:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
### Task N: [组件名称]

**Files:**
- Create: `exact/path/to/file.py`
- Modify: `exact/path/to/existing.py:123-145`
- Test: `tests/exact/path/to/test.py`

- [ ] **Step 1: Write the failing test**
```python
def test_specific_behavior():
result = function(input)
assert result == expected
```yaml

- [ ] **Step 2: Run test to verify it fails**
Run: `pytest tests/path/test.py::test_name -v`
Expected: FAIL with "function not defined"

- [ ] **Step 3: Write minimal implementation**
```python
def function(input):
return expected
```yaml

- [ ] **Step 4: Run test to verify it passes**
Run: `pytest tests/path/test.py::test_name -v`
Expected: PASS

- [ ] **Step 5: Commit**

3.3 subagent-driven-development —— 并行子Agent执行

subagent-driven-development 是 Superpowers 的执行引擎。它的核心思想是:

为每个任务创建独立的子Agent,避免上下文污染

执行流程:

flowchart TD
    A[读取计划] --> B[创建TodoWrite]
    B --> C{更多任务?}
    C -->|是| D[派发实现子Agent]
    D --> E{有问题?}
    E -->|是| F[提供上下文]
    F --> D
    E -->|否| G[子Agent实现/测试/提交]
    G --> H[派发规范审查子Agent]
    H --> I{符合规范?}
    I -->|否| J[修复规范问题]
    J --> G
    I -->|是| K[派发代码质量审查]
    K --> L{通过?}
    L -->|否| M[修复质量问题]
    M --> G
    L -->|是| N[标记任务完成]
    N --> C
    C -->|否| O[派发最终代码审查]
    O --> P[finishing-a-development-branch]

关键设计:两阶段审查

  1. 规范合规审查(Spec Reviewer):确保代码实现了规范要求
  2. 代码质量审查(Code Quality Reviewer):确保代码符合质量标准

3.4 systematic-debugging —— 根因分析优先

systematic-debugging 强制执行根因分析优先原则:

1
NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST

调试四阶段:

flowchart TD
    A[Phase 1: 根因调查] --> B[仔细阅读错误信息]
    A --> C[稳定复现问题]
    A --> D[检查最近变更]
    A --> E[多组件系统添加诊断]
    
    B --> F[Phase 2: 形成假设]
    C --> F
    D --> F
    E --> F
    
    F --> G[Phase 3: 验证假设]
    G --> H{假设成立?}
    H -->|否| A
    H -->|是| I[Phase 4: 实施修复]
    
    I --> J[验证修复有效]
    J --> K[确认无副作用]

四、多Agent协作机制

4.1 主Agent + 子Agent 模式

Superpowers 采用主Agent协调 + 子Agent执行的架构:

sequenceDiagram
    participant User as 用户
    participant Main as 主Agent<br/>(当前会话)
    participant Sub1 as 子Agent-实现者
    participant Sub2 as 子Agent-规范审查
    participant Sub3 as 子Agent-质量审查
    
    User->>Main: "Let's build a React todo list"
    Main->>Main: brainstorming skill
    Main->>Main: writing-plans skill
    Main->>Sub1: 派发Task 1
    Sub1->>Sub1: 实现代码
    Sub1->>Sub2: 提交规范审查
    Sub2->>Sub1: 需要修改
    Sub1->>Sub1: 修复问题
    Sub2->>Sub3: 提交质量审查
    Sub3->>Sub3: 审查通过
    Sub3->>Main: Task 1完成
    Main->>Sub1: 派发Task 2
    Note over Sub1,Sub3: 并行执行多个任务

4.2 上下文隔离

每个子Agent都是独立上下文,不继承主Agent的历史:

1
2
3
4
5
6
7
# 子Agent接收的上下文结构
subagent_context = {
"task_description": "...", # 具体任务描述
"file_paths": [...], # 涉及的文件
"spec_excerpt": "...", # 规范相关部分
"test_requirements": "...", # 测试要求
}

五、插件生态系统

5.1 多Harness支持

Superpowers 支持主流 Coding Agent:

Harness安装方式
Claude Code/plugin install superpowers@claude-plugins-official
Codex CLI/plugins → 搜索 superpowers
OpenCodeFetch from URL
Cursor/add-plugin superpowers
Gemini CLIgemini extensions install

5.2 插件结构

graph TD
    A[.claude-plugin/] --> B[plugin.json<br/>元数据]
    A --> C[marketplace.json<br/>市场配置]
    
    D[skills/] --> E[brainstorming/]
    D --> F[writing-plans/]
    D --> G[subagent-driven-development/]
    D --> H[systematic-debugging/]
    D --> I[test-driven-development/]
    D --> J[...其他技能]
    
    E --> E1[SKILL.md]
    E1 --> E2[scripts/]
    E2 --> E3[server.cjs]
    E2 --> E4[frame-template.html]

六、与同类项目对比

6.1 对比 1:Superpowers vs Deer Flow

维度SuperpowersDeer Flow
架构定位技能框架 + 开发方法论Agent编排 + 多模型协作
触发机制规则自动触发 + 显式调用配置驱动的Agent链
核心创新TDD + 细粒度任务分解混合Agent + 工具调用优化
适用场景软件开发全流程复杂研究任务

设计差异:

  • Deer Flow 通过配置定义Agent链,强调「谁来处理」
  • Superpowers 通过技能触发控制开发节奏,强调「什么时候做什么」

6.2 对比 2:Superpowers vs OpenHands

维度SuperpowersOpenHands
设计目标约束Agent行为,提升代码质量最大化Agent自主性
工作流设计→规划→执行(强门禁)任务→执行→验证(循环)
上下文管理子Agent隔离,上下文纯净共享上下文,长程记忆
TDD支持原生内置,强制执行可选集成

核心哲学差异:

  • OpenHands:「让Agent自由发挥,出了问题再修」
  • Superpowers:「让Agent按正确方式工作,从一开始就做对」

6.3 对比 3:Superpowers vs LangChain Agents

维度SuperpowersLangChain Agents
抽象层次技能层(行为规范)工具层(能力扩展)
触发方式规则自动触发推理引擎选择工具
代码耦合零依赖,纯技能定义框架依赖
开发场景专注软件工程通用工作流

七、优缺点分析

7.1 优点

维度说明
架构简洁性零外部依赖,纯文本技能定义,任何Agent都可加载
扩展性新增技能只需创建目录和SKILL.md文件
易用性自动触发机制降低用户学习成本
工程纪律内置TDD、代码审查等最佳实践
多Harness支持一套技能支持所有主流Coding Agent
子Agent隔离避免上下文污染,保持执行一致性

7.2 缺点与局限

维度说明
性能开销子Agent创建和两阶段审查增加执行时间
复杂度对于简单任务,完整流程可能过于繁琐
维护成本技能数量多,更新传播需要手动同步
平台锁定依赖特定Agent的插件系统

八、快速上手

8.1 安装(以 Claude Code 为例)

1
2
3
4
5
6
# 方式1:从官方市场安装
/plugin install superpowers@claude-plugins-official

# 方式2:从自定义市场安装
/plugin marketplace add obra/superpowers-marketplace
/plugin install superpowers@superpowers-marketplace

8.2 使用示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 1. 启动 Claude Code
claude

# 2. 提出需求(brainstorming 自动触发)
User: Let's make a react todo list

# 3. 等待设计审查完成后,开始规划
# (writing-plans skill 自动触发)

# 4. 执行计划
# (subagent-driven-development skill 自动触发)

# 5. 调试问题
# (systematic-debugging skill 自动触发)

8.3 核心技能命令

技能触发条件命令
brainstorming任何创建/修改行为前自动触发
writing-plans设计批准后自动触发
subagent-driven-development有实现计划时自动触发
systematic-debugging遇到Bug/失败时自动触发
test-driven-development进入实现阶段时自动触发

九、适用场景分析

9.1 最佳场景

  • 大型复杂项目:需要设计、规划、多人协作的企业级应用
  • 长期维护项目:需要保持代码一致性和技术债务可控
  • 高代码质量要求:TDD、代码审查是团队标准流程

9.2 不适合场景

  • 简单脚本任务:一个简单函数或配置文件不需要完整流程
  • 探索性原型:需要快速迭代验证想法,不适合设计门禁
  • 单次数据处理:一次性数据转换不需要工程化

十、趋势与展望

10.1 当前趋势

  1. 技能生态化:更多垂直领域技能(安全测试、性能分析)正在涌现
  2. 跨Harness标准化:Skills格式正在成为Agent行为定义的事实标准
  3. 评估驱动优化:通过真实会话评估持续改进技能效果

10.2 未来方向

  • 技能商店(Skills Marketplace):类似App Store的技能发现和分发
  • 技能组合(Skills Composition):多个技能的自由组合
  • 技能评估自动化:基于任务完成度自动评估技能效果

总结

Superpowers 代表了一种重要的范式转变:不是让AI学会更多技能,而是让AI在正确的时机使用正确的技能。它不是替代软件工程师,而是将那些经过验证的软件工程最佳实践数字化,让AI能够可靠地执行。

从某种意义上说,Superpowers 正在做的事情,与20年前极限编程(XP)运动类似——将最佳实践内化为日常行为,只是执行者从人变成了AI。

核心价值:让AI从「能写代码」变成「能做好软件工程」


项目信息

  • GitHub: https://github.com/obra/superpowers
  • 星标: 213,735+
  • 语言: Shell(技能定义)+ 多语言集成
  • 支持Harness: Claude Code, Codex CLI, OpenCode, Cursor, Gemini CLI, GitHub Copilot CLI

对比分析

Superpowers 的设计哲学是”用技能(Skills)约束 Agent 行为 + 强 TDD 流程”。在”AI Coding Agent 工作流”赛道里,跟它定位接近、且社区讨论最多的项目是 Claude Code 自带的 Skills 系统(Sub-agents + Commands)和 DSPy 风格的”程序化提示工程”。下面对它们做一次对比。

维度一:抽象层级

项目抽象单位约束方式主要载体
SuperpowersSkill(Markdown + 可执行脚本)强制 prompt 注入 + 流程Claude Code / Codex CLI / Cursor 等
Claude Code Sub-agentsSub-agent(独立上下文)系统提示词 + 工具白名单Claude Code 原生
OpenAI Codex CLI SkillsSkill(YAML/Markdown)Hooks + 沙箱执行Codex CLI 原生
DSPyModule / Signature / Optimizer程序化提示 + 自动优化Python SDK,模型无关

维度二:流程纪律

  • Superpowers:把”brainstorming → spec → plan → TDD → review”做成默认流程,强制 Agent 走完才能动手写代码
  • Claude Code Sub-agents:提供并行/串行编排能力,但不强制”先想后写”
  • Codex CLI Skills:以”工具调用安全 + Hook”为主,对”工程方法论”约束较弱
  • DSPy:把 prompt 当作”可编译的程序”,侧重”自动找最优 prompt”,不约束开发流程

维度三:可移植性

  • Superpowers:跨 Harness 移植(Claude Code / Codex / Cursor / OpenCode / Gemini / Copilot CLI)
  • Claude Code Sub-agents:紧绑 Claude Code 生态
  • Codex CLI Skills:紧绑 Codex CLI
  • DSPy:模型与 Harness 无关,但和具体 Coding CLI 集成需要自写胶水

优缺点小结

  • Superpowers:方法论 + 跨工具移植性双优;缺点是依赖 Harness 本身支持 skill 协议
  • Claude Code Sub-agents:Claude Code 用户上手零成本;缺点是跨工具不可移植
  • Codex CLI Skills:与 OpenAI 生态深度集成;缺点是工具/模型生态较窄
  • DSPy:可优化、可解释;缺点是偏 Python 工程视角,对”产品级方法论”无约束

何时选 Superpowers

  • 你的开发流程强调”先 spec、再 plan、再 TDD”
  • 你同时使用多个 Coding Agent(Claude Code + Cursor + Codex),希望技能库只写一次
  • 你想要”团队统一的工程纪律”而不是”个人 prompt 调优”

何时不选 Superpowers

  • 你的目标只是”自动优化 prompt”——选 DSPy
  • 你只用一个 Coding Agent(且是 Claude Code)——Sub-agents 零成本
  • 你不需要”先想后做”的纪律——直接用普通 Coding Agent 即可

参考资料