Superpowers 工作流与核心技能

Superpowers 的 6 个核心技能如何串联成完整的开发工作流,以及它和 TDD、agentic workflow patterns 等现有概念的关系。

#type / synthesis #status / evergreen #tech / ai

[!info] related notes

Superpowers 工作流与核心技能

范围

这篇关系笔记讨论的不是单个 skill 怎么用,而是 Superpowers 的 6 个核心技能如何串联成完整开发工作流,以及这套工作流在现有知识体系中的位置。

为什么要放在一起理解

单个 skill 的价值有限。brainstorming 单独用只是”多问几个问题”,TDD 单独用只是”先写测试”。但当它们被串联成一条强制链时,就形成了一套完整的开发闭环:

需求不清 → 澄清
设计不明 → 写 spec
任务太粗 → 拆计划
代码隔离 → 开 worktree
质量保障 → TDD
执行分工 → 子 Agent
结果验证 → 双重 review

每个环节解决上一个环节可能遗留的问题。拆开看是工具,串起来是方法论。

完整工作流

阶段 1:需求澄清(brainstorming)

  • 触发:任何创造性工作之前
  • 动作:探索项目上下文 → 一次问一个澄清问题 → 提出 2-3 种方案 → 分段展示设计
  • 产出:docs/superpowers/specs/YYYY-MM-DD--design.md
  • 门禁:用户批准 spec 后才能进入下一阶段
  • 反模式:“这个太简单,不需要设计”

阶段 2:计划拆分(writing-plans)

  • 触发:已有 spec,准备做多步骤任务
  • 动作:把设计拆成 2-5 分钟粒度的小任务
  • 产出:docs/superpowers/plans/YYYY-MM-DD-.md
  • 要求:每个任务必须包含具体文件路径、代码、测试命令、预期输出
  • 假设执行者:有技能但不了解代码库、品味可疑、不太会测试的工程师

阶段 3:环境隔离(using-git-worktrees)

  • 触发:准备开始实现
  • 动作:创建独立 worktree/branch
  • 目的:避免直接在 main 上改,出问题可丢弃

阶段 4:测试先行(test-driven-development)

  • 触发:实现任何功能或 bugfix 之前
  • 铁律:没有先看到失败测试,就不能写生产代码
  • 流程:RED(写失败测试)→ GREEN(最小实现)→ REFACTOR(测试保持通过下清理)
  • 如果已先写了代码:删除,重新按 TDD 来

阶段 5:子 Agent 执行(subagent-driven-development)

  • 触发:执行多步计划时
  • 流程:
控制 Agent 读取计划
  → 派 implementer subagent(实现 + 测试 + commit)
  → 派 spec reviewer subagent(检查是否符合 spec)
  → 派 code quality reviewer subagent(检查代码质量)
  → 通过后进入下一个任务
  • 关键:每个任务使用干净上下文的子 Agent,避免主会话污染
  • 除非 blocked 或全部完成,否则持续执行不问用户

阶段 6:完成验证(finishing branch)

  • 触发:所有任务完成
  • 动作:运行全量测试
  • 选项:合并 / 开 PR / 保留分支 / 丢弃

与现有概念的关系

与 TDD 的关系

Superpowers 的 TDD skill 是对 TDD 的强制化包装。它把 TDD 从”推荐实践”升级成”没有先失败测试就不能写代码”的硬约束。详见 AI 编码时代的 TDD

区别于 TDD Skill(Matt Pocock 版):后者更偏 public interface 和 vertical slices,Superpowers 版更偏绝对强制。

与 Agentic Workflow Patterns 的关系

Superpowers 实现了 Agentic Workflow Patterns 中的两种模式组合:

  • Orchestrator-Workers:主 Agent 调度,子 Agent 执行具体任务
  • Evaluator-Optimizer:spec reviewer + code quality reviewer 构成评估-优化循环

它不是简单的 prompt chaining,而是把编排逻辑固化成了可重复的工作流。

与 Skills 概念的关系

Superpowers 是 Skills 的一个完整实现案例。它展示了 skills 的最佳实践:

  • 每个 skill 有明确的触发条件(description 字段)
  • 通过 bootstrap 注入确保 Agent 知道 skills 的存在
  • skill 内容不是建议而是强制约束
  • 使用 “STOP”、“MUST”、“Red Flags” 等强硬措辞压制 Agent 偷懒倾向

成本与收益

维度收益成本
需求质量减少误解和返工每次都要写 spec
代码质量TDD + 双重 review每个任务至少 3 个子 Agent
执行可靠性子 Agent 上下文干净token 消耗更高
调试效率系统化找根因不能”先试试”
流程一致性自动触发,不靠记忆简单任务也走完整流程
创建于 2026/5/27 更新于 2026/5/27