Superpowers app icon
Superpowers
Coding agent skills and runtime bootstrap

Superpowers v6.0.3 架构与流程编排图解

这份报告基于最新拉取后的本地代码重新生成。Superpowers 是一套给 coding agent 使用的工程方法论插件, 通过会话启动注入、技能库、平台工具映射、TDD、子代理执行、review gate 和分支收尾流程,把代理约束成可验证、可复盘、可交付的开发者。

version 6.0.3 commit 896224c 生成日期 2026-06-20 仓库已 fast-forward pull
Superpowers logo
01启动时注入 using-superpowers bootstrap
02按任务触发具体 skill,而不是一次塞入全部流程
03通过 spec、plan、tests、review、ledger 留下证据链
04以人类伙伴审批作为关键状态转换门

目录

1. 总览

它是什么

Superpowers 是一套跨 harness 的 agentic skills framework。核心不是业务代码,而是 skills/*/SKILL.md 里的流程协议,以及把这些协议在会话开始时送进模型上下文的 runtime bootstrap。

它怎么工作

会话开始时,平台适配层注入 using-superpowers。这个元技能要求代理在任何回应、澄清问题、文件读取或实现动作之前,先判断是否有相关技能必须激活。

用户想法功能、bug、PR、review、技能修改
元技能using-superpowers 检查技能触发
流程技能brainstorming、TDD、debugging、SDD
工程证据spec、plan、tests、commits、reviews
图 1:Superpowers 的核心不是单个命令,而是一条由技能、产物和门禁组成的工程证据链。
一句话:它把 coding agent 的默认行为从“收到需求就写代码”改造成“先判断技能,先澄清需求,先写设计和计划,先写失败测试,再实现,再 review,再用新鲜证据声明完成”。

2. 本次拉取后的关键变化

这次 pull 后仓库从之前阅读到的 5.1.0 进入 6.0.3。架构报告必须按新版理解。

新增 harness

README 现在列出 Claude Code、Antigravity、Codex App/CLI、Cursor、Factory Droid、Gemini CLI、Copilot CLI、Kimi Code、OpenCode 和 Pi。

SDD review 重构

每个任务不再派 spec reviewer 和 quality reviewer 两个代理,而是派一个 task-reviewer-prompt.md,一次返回 spec compliance 与 code quality 两个 verdict。

文件交接降低 token

任务 brief、implementer report、review diff package 通过文件传递,避免把长 diff 和长报告永久塞进主会话上下文。

进度 ledger

SDD 进度写入 .superpowers/sdd/progress.md。上下文压缩后,控制器可以根据 ledger 和 git log 恢复,而不是重派已完成任务。

Visual companion 加固

Brainstorm Companion 有会话 key、cookie、WebSocket 鉴权、路径沙箱、重启复用端口、4 小时 idle timeout。

测试职责拆分

tests/ 保留插件代码测试;真实 LLM 行为测试迁往外部 evals/ drill harness。

3. 分层架构

Superpowers 的代码很薄,但流程很厚。最清晰的看法是把它分成六层。

分发层
.claude-plugin.codex-plugin.cursor-plugin.kimi-plugingemini-extension.json.opencode.pi。负责让不同 harness 安装同一套技能。
启动层
hooks/session-starthooks/session-start-codex、OpenCode message transform、Pi context hook、Gemini context file。负责把 using-superpowers 注入首轮上下文。
技能层
skills/*/SKILL.md。包含 brainstorming、writing-plans、TDD、systematic-debugging、SDD、review、finish 等流程。
工具映射层
skills/using-superpowers/references/*-tools.md 与部分 manifest inline mapping。把“创建 todo、调 skill、派 subagent、读写文件”等动作映射到各平台真实工具。
执行层
spec、plan、worktree、task brief、report file、review package、progress ledger、commit。这里形成可审查的工程产物。
验证层
TDD red-green、root-cause debugging、task review、whole-branch review、fresh verification、plugin tests、drill evals。
flowchart TB
  User["Human partner"] --> Harness["Coding harness"]
  Harness --> Adapter["Distribution and adapter layer"]
  Adapter --> Bootstrap["Session-start bootstrap"]
  Bootstrap --> Meta["using-superpowers meta skill"]
  Meta --> Router{"Which skill applies?"}
  Router --> Brain["brainstorming"]
  Router --> Debug["systematic-debugging"]
  Router --> Plan["writing-plans"]
  Router --> TDD["test-driven-development"]
  Router --> SDD["subagent-driven-development"]
  Router --> Finish["finishing-a-development-branch"]
  Brain --> Spec["Spec document"]
  Plan --> PlanFile["Implementation plan"]
  SDD --> Evidence["Briefs, reports, review packages, ledger, commits"]
  TDD --> Evidence
  Debug --> Evidence
  Finish --> Outcome["merge, PR, keep, discard"]
    

4. 启动注入与平台适配

docs/porting-to-a-new-harness.md 把 Superpowers 的跨平台机制总结成三个不变量:技能共享、工具映射按平台提供、bootstrap 必须在每个会话开始时自动注入。

4.1 三种集成形态

Shape A:Shell hook

Claude Code、Codex、Cursor、Copilot CLI 类似。平台在 SessionStart 执行脚本,脚本读取 using-superpowers/SKILL.md 并输出 JSON additional context。

Shape B:In-process plugin

OpenCode 和 Pi。插件在进程内注册技能目录,并通过 message/context lifecycle 插入 bootstrap。

Shape C:Instructions file

例如 Gemini extension 通过 contextFileName: "GEMINI.md" 让 harness 加载扩展内自带的上下文文件。

4.2 平台入口表

平台 入口 bootstrap 方式 备注
Claude Code .claude-plugin/plugin.json + hooks/hooks.json hooks/session-start 输出 hookSpecificOutput.additionalContext startup、clear、compact 都注入。
Codex .codex-plugin/plugin.json + hooks/hooks-codex.json 专用 hooks/session-start-codex v6 改为独立 Codex SessionStart hook。
Cursor .cursor-plugin/plugin.json + hooks/hooks-cursor.json sessionStartrun-hook.cmd session-start 使用 Cursor 的 additional_context 字段。
Kimi Code .kimi-plugin/plugin.json sessionStart.skill: "using-superpowers" manifest 内含详细 Kimi tool mapping,例如 AskUserQuestionTodoListAgent
OpenCode .opencode/plugins/superpowers.js experimental.chat.messages.transform 插入第一个 user message 模块级缓存 bootstrap,避免每个 agent step 读文件。
Pi .pi/extensions/superpowers.ts session_startsession_compact 后在 context 事件注入 注册 skillPaths,Pi 无标准 subagent/todo 时有 fallback 说明。
Gemini CLI gemini-extension.json + GEMINI.md 扩展声明 context file GEMINI.md 引用 using-superpowers 和 Gemini tool mapping。
Antigravity skills/using-superpowers/references/antigravity-tools.md README 说明 agy plugin install 后运行 session-start hook v6 新增,要求通过标准 React todo acceptance test。
flowchart LR
  subgraph A["Shape A: shell hook"]
    HookCfg["hooks-*.json"] --> RunHook["run-hook.cmd"]
    RunHook --> Shell["session-start script"]
    Shell --> Json["additionalContext JSON"]
  end
  subgraph B["Shape B: plugin callback"]
    Plugin["JS/TS extension"] --> Register["Register skills path"]
    Plugin --> Transform["Mutate message/context"]
  end
  subgraph C["Shape C: context file"]
    Manifest["Extension manifest"] --> Context["Declared context file"]
  end
  Json --> Boot["using-superpowers bootstrap"]
  Transform --> Boot
  Context --> Boot
    

5. 技能库设计

技能是项目的真正核心。每个技能用 frontmatter 描述触发场景,正文则给出强流程、红旗、反合理化、检查清单和交接规则。

技能 触发场景 作用
using-superpowers会话开始元技能。任何行动前先判断技能是否适用。
brainstorming创造性工作、功能、组件、行为修改先探索上下文、提问、比较方案、分段确认设计,最后写 spec。
writing-plans已有 spec 或多步需求写实施计划,新增 Global Constraints 和 Interfaces,控制任务边界。
using-git-worktrees开始功能实现或执行计划前检测现有隔离,优先 harness 原生 worktree,再 fallback 到项目内 .worktrees/
subagent-driven-development执行独立任务计划每任务 fresh implementer、task reviewer、文件交接、progress ledger、最终 whole-branch review。
executing-plans没有或不使用子代理时执行计划顺序执行计划,遇到 blocker 停下,不猜。
test-driven-development功能、bugfix、重构、行为变化红绿重构。没有先看见失败测试,就不能写生产代码。
systematic-debuggingbug、测试失败、异常行为先读错误、复现、查变化、追数据流,再假设和修复。
requesting-code-review任务完成、重大功能、合并前派 reviewer 子代理,基于 base/head SHA 审查 diff。
receiving-code-review收到 review 反馈先理解和验证,再实现或技术性 push back。
verification-before-completion任何完成声明前必须有刚运行过的验证命令和输出证据。
finishing-a-development-branch实现完成,需要集成选择测试、检测环境、给 merge/PR/keep/discard 选项,按 provenance 清理 worktree。
dispatching-parallel-agents多个独立问题可并行按问题域派并行子代理,之后整合与全量验证。
writing-skills创建或修改技能把技能写作当作 TDD,用 pressure scenario 和 eval 验证行为。

6. 主开发流程

主流程是一个状态机,每一步都有下一步的指定技能和产物。

1

Brainstorm

探索上下文、一问一答、方案权衡、设计审批。

2

Spec

写入 docs/superpowers/specs/,自审,再交给人类审阅。

3

Plan

写入 docs/superpowers/plans/,包含 Global Constraints、Interfaces、精确测试和 commit。

4

Worktree

确认隔离环境和 clean baseline,避免污染当前分支。

5

Execute

优先 SDD,fallback 到 inline executing-plans。

6

Finish

fresh tests 后选择 merge、PR、keep 或 discard。

flowchart TD
  Idea["User idea or feature request"] --> Brain["brainstorming"]
  Brain --> Design{"Design approved?"}
  Design -- "no" --> Brain
  Design -- "yes" --> Spec["Write spec and commit"]
  Spec --> HumanSpec{"Human reviewed spec?"}
  HumanSpec -- "changes" --> Spec
  HumanSpec -- "approved" --> Plan["writing-plans"]
  Plan --> PlanFile["Implementation plan"]
  PlanFile --> Worktree["using-git-worktrees"]
  Worktree --> Exec{"Execution path"}
  Exec -- "recommended" --> SDD["subagent-driven-development"]
  Exec -- "fallback" --> Inline["executing-plans"]
  SDD --> Finish["finishing-a-development-branch"]
  Inline --> Finish
  Finish --> Result["merge / PR / keep / discard"]
    

7. SDD 子代理编排

v6 的 SDD 是这次最大变化。它把主会话变成控制器,把实现、review、修复都通过文件交接给子代理,并用 ledger 抵抗上下文压缩。

flowchart TD
  Start["Read plan once
note global constraints"] --> Preflight["Pre-flight plan review
find conflicts before Task 1"] Preflight --> Ledger["Check .superpowers/sdd/progress.md"] Ledger --> Brief["scripts/task-brief PLAN N
writes task brief file"] Brief --> Impl["Implementer subagent
reads brief, writes report file"] Impl --> Status{"DONE / CONCERNS / CONTEXT / BLOCKED"} Status -- "NEEDS_CONTEXT" --> Context["Controller adds context"] --> Impl Status -- "BLOCKED" --> Escalate["More context, stronger model, split task, or ask human"] --> Impl Status -- "DONE" --> Package["scripts/review-package BASE HEAD
writes diff package file"] Package --> Review["Task reviewer
brief + report + diff package"] Review --> Verdict{"Spec OK and quality approved?"} Verdict -- "no" --> Fix["One fix subagent for all Critical/Important findings"] --> Package Verdict -- "yes" --> Mark["Append progress ledger
mark todo complete"] Mark --> More{"More tasks?"} More -- "yes" --> Brief More -- "no" --> Whole["Whole-branch review
requesting-code-review"] Whole --> Finish["finishing-a-development-branch"]

7.1 文件交接机制

文件/脚本 用途 为什么这样设计
scripts/task-brief 从 plan 中抽取任务全文到独立 brief 文件。 implementer 读文件,不让主会话粘贴长任务文本。
task-N-report.md implementer 写完整报告、测试结果和 TDD evidence。 主会话只接收短状态,细节放文件,reviewer 可直接读取。
scripts/review-package 生成 commit list、diff stat、完整 diff 的 review package。 避免 diff 进入控制器上下文,同时让 reviewer 一次读取完整证据。
.superpowers/sdd/progress.md 记录任务完成状态和 commit range。 上下文压缩后可恢复,不重复派发已完成任务。

7.2 Reviewer 的新版职责

Spec Compliance Verdict

检查是否缺需求、加了额外功能、误解任务;无法从 diff 验证的跨任务要求标为 Cannot verify from diff,交给控制器处理。

Code Quality Verdict

检查结构、错误处理、测试质量、文件职责、YAGNI、DRY。reviewer 是只读的,不能改 working tree、index、HEAD 或 branch。

新版 SDD 的核心收益:一次 task review 给出 spec 和 quality 两个 verdict,减少 reviewer 数量;长文本转文件传递,减少 token;ledger 提供恢复点,减少压缩后的重复执行。

8. 可视化 Brainstorm Companion

brainstorming/visual-companion.md 描述了一个浏览器伴侣:当问题“看图比读文字更清楚”时,agent 可以启动本地小服务器,推送 mockup、流程图、布局选项,让用户在浏览器里点击选择。

flowchart LR
  Agent["Agent"] --> Start["scripts/start-server.sh"]
  Start --> Server["server.cjs
HTTP + WebSocket"] Server --> Browser["Browser tab
?key=session token"] Agent --> Screen["Write newest HTML
content directory"] Screen --> Server Browser --> Events["state/events
clicks and selections"] Events --> Agent Server --> Security["Token auth, cookie, sandboxed files,
no-store headers, 4h idle timeout"]

8.1 安全模型

8.2 图文协作循环

1

Offer

只有即将进入视觉问题时,单独发消息征求用户同意。

2

Render

写 HTML fragment 到 screen_dir,服务器自动包 frame。

3

Interact

用户在浏览器里看 mockup、点击选项,也可以在终端回复文字。

4

Read

agent 读 state_dir/events,合并终端反馈,再迭代。

9. 质量门禁

设计门禁

brainstorming:设计获批前不得实现、scaffold 或调用实现技能。

TDD 门禁

test-driven-development:没有先看见失败测试,不得写生产代码。

根因门禁

systematic-debugging:完成根因调查前不得提出修复。

验证门禁

verification-before-completion:没有刚运行的验证输出,不得声称完成。

review 门禁

subagent-driven-development:每任务 task review,最后 whole-branch review。

PR 门禁

CLAUDE.md 与 PR 模板:查重、真实问题、人类审 diff、披露 agent 环境、target dev

10. 测试与 eval

v6 文档把测试分成两类。

tests/:插件代码测试

验证非 LLM 代码是否工作,例如 brainstorm server、OpenCode plugin loading、bootstrap caching、Codex plugin sync、Kimi manifest、shell lint。

evals/:真实 agent 行为评估

使用 drill harness 驱动真实 Claude Code、Codex、Gemini CLI 会话,并由 LLM actor/verifier 判断技能合规。该目录现在作为外部 eval harness,而非内置 tests 主体。

cd evals
uv sync --extra dev
export ANTHROPIC_API_KEY=sk-...
uv run drill run triggering-test-driven-development -b claude

11. 贡献约束

仓库的 CLAUDE.md 和 PR 模板对 agent 贡献非常强硬。原因是维护者明确观察到大量 agent PR 被拒,常见问题包括没读模板、重复 PR、编造问题、隐藏 agent 来源、把项目特定内容塞进 core。

要求 含义
完整填写 PR 模板不能空白、不能占位、不能只写泛泛总结。
搜索 open 和 closed PR发现重复必须停止,不再开同类 PR。
证明真实问题必须描述具体 session、错误、失败模式或用户体验。
确认属于 core领域特定、工具特定、第三方推广应做独立插件。
披露 authoring environmentmodel、harness、harness version、installed plugins 都要写。
人类审完整 diff没有人类明确批准,不提交 PR。
target devmain 是发布分支,活跃开发先到 dev

12. 读源码路线

如果你要继续深挖,建议按这个顺序读。

  1. README.md:项目定位、支持平台、基础 workflow。
  2. RELEASE-NOTES.md:v6.0.0 到 v6.0.3 的设计变化,尤其 SDD、visual companion、new harness。
  3. skills/using-superpowers/SKILL.md:全局技能触发协议。
  4. hooks/session-starthooks/session-start-codex.opencode/plugins/superpowers.js.pi/extensions/superpowers.ts:不同 bootstrap 形态。
  5. docs/porting-to-a-new-harness.md:跨平台集成的 invariants 和三种 shape。
  6. skills/brainstorming/SKILL.mdskills/brainstorming/visual-companion.md:从需求澄清到可视化协作。
  7. skills/writing-plans/SKILL.md:新版 plan 的 Global Constraints、Interfaces、task right-sizing。
  8. skills/subagent-driven-development/SKILL.mdimplementer-prompt.mdtask-reviewer-prompt.md:新版 SDD 的控制器、实现者、reviewer 协议。
  9. skills/test-driven-development/SKILL.mdskills/systematic-debugging/SKILL.mdskills/verification-before-completion/SKILL.md:三大质量纪律。
  10. docs/testing.md:插件测试与行为 eval 的分工。

结论

Superpowers 的设计不是“给代理多几条建议”,而是把软件交付拆成可触发、可验证、可恢复的流程单元。v6 的重点是跨平台中立化、SDD 降本增严、文件化交接、可视化协作安全加固,以及把技能行为测试提升为 eval 问题。

本报告生成自本地仓库 /Users/chenmeili/Documents/GitHub/superpowers,拉取后 HEAD 为 896224c,版本为 6.0.3