Appearance
Superpowers AI 開發方法論(與 OpenSpec 對比)
一套 AI 輔助開發方法論框架,透過強制性工作流(TDD、subagent 隔離、兩階段 code review)確保 AI agent 依紀律執行任務;與 OpenSpec SDD 框架 互補,各自解決「怎麼做(執行紀律)」與「做什麼 + 長期 Spec 管理」兩個問題。
概述
Superpowers(obra/superpowers)是一套 AI 開發方法論框架,支援 Claude Code、Cursor、GitHub Copilot CLI、Codex、OpenCode、Gemini CLI 等六大平台。它的核心問題是「怎麼讓 AI agent 用紀律寫程式碼」,解法是透過一系列強制性工作流指令:TDD(先寫測試才能實作)、subagent 隔離(每任務派發全新 subagent 防止 context 污染)、以及 spec compliance + code quality 的兩階段 code review。
與之相對,OpenSpec SDD 框架 解決的是同一條鏈上的另一個問題:「怎麼讓人和 AI 在寫程式碼之前對齊需求,並在長期維護中保持 spec 和程式碼的一致」。一句話區分:Superpowers 管怎麼做,OpenSpec 管做什麼以及做完後怎麼記錄。兩者互補而非競爭。
核心內容
定位差異
| 工具 | 類型 | 核心問題 |
|---|---|---|
| Superpowers | 開發方法論(methodology) | 怎麼讓 AI agent 用紀律執行任務 |
| OpenSpec | 規格管理框架(spec management) | 如何對齊需求 + 長期保持 spec 與程式碼同步 |
各階段能力對比
規劃階段
| 能力 | Superpowers | OpenSpec |
|---|---|---|
| 需求釐清對話 | ✅ brainstorming skill(一次一個問題、選擇題優先、2-3 方案) | ✅ /opsx:propose 產出 proposal.md |
| 設計文件產出 | ✅ 存為 docs/superpowers/specs/ | ✅ design.md + specs/ |
| Spec 自我審查 | ✅ inline self-review(規劃完成時即掃描 placeholder、矛盾、模糊度) | ⚠️ /opsx:verify 提供 AI 驅動的三維度驗證,但設計在實作後執行,非規劃時即時檢查 |
| 大型專案拆解 | ✅ brainstorming 自動偵測並建議拆成子專案 | ✅ 可建多個 change 並行 |
| 探索與構思 | ❌ 無(brainstorming 可釐清需求,但無程式碼調查能力) | ✅ /opsx:explore:Greenfield 構思 / 需求釐清 / Brownfield 調查 / 架構比較;帶 implementation guardrail(嚴格禁止寫程式碼) |
| 視覺化輔助(mockup) | ✅ 瀏覽器端 visual companion | ❌ 無 |
任務規劃階段
| 能力 | Superpowers | OpenSpec |
|---|---|---|
| 任務拆解粒度 | ✅ 2-5 分鐘/任務,含精確檔案路徑、完整程式碼、驗證步驟 | ✅ checkbox 格式,較高層次描述 |
| No Placeholders 規則 | ✅ TBD、vague description、// ... existing code ... 視為計畫失敗 | ❌ 無 task-level 的 No Placeholders 品質檢查(artifact 層有 dependency chain 但粒度較粗) |
| 計畫 vs. Spec 一致性 | ✅ 寫完計畫後自動 self-review | ❌ 無(verify 在實作後才做) |
| 檔案架構預規劃 | ✅ 要求預先 map out 所有要建立/修改的檔案 | ❌ 未明確要求 |
實作階段
| 能力 | Superpowers | OpenSpec |
|---|---|---|
| TDD 強制 | ✅ RED→GREEN→REFACTOR,anti-pattern 規則指示 agent 必須刪除未經 TDD 的程式碼並從測試重來 | ❌ 無強制 |
| Subagent 隔離 | ✅ 每任務全新 subagent,防 context 隨任務累積而污染 | — 不適用(OpenSpec 不管理執行層 context 策略,由底層 agent 平台決定) |
| 兩階段 Code Review | ✅ spec compliance review → code quality review(逐任務) | ❌ 無 |
| 實作中修改 Spec | ❌ brainstorming 後凍結 | ✅ 隨時可改任何 artifact,fluid |
| Git Worktree 隔離 | ✅ 專門的 using-git-worktrees skill 自動建立 worktree | ❌ 無(OpenSpec 不涉及 git 工作流管理) |
驗證與收尾
| 能力 | Superpowers | OpenSpec |
|---|---|---|
| 逐任務品質閘門 | ✅ critical issues 阻擋下一任務,必須修復才能繼續 | ❌ 無阻擋機制 |
| 全局 Spec 驗證 | ❌ 只有逐任務 review,無全局視角 | ✅ /opsx:verify(完整性、正確性、一致性三維度) |
| Spec 歸檔持久化 | ❌ spec 留在獨立檔案,不聚合為系統規格 | ✅ delta spec 自動合併到 openspec/specs/ |
長期管理能力
| 能力 | Superpowers | OpenSpec |
|---|---|---|
| Spec 為 Source of Truth | ❌ 每份 spec 獨立,無跨 session 聚合 | ✅ 每次 archive 後 spec 自動合併 |
| Brownfield 專案支援 | ❌ 無專門機制,每次從零理解 codebase | ✅ /opsx:explore + /opsx:onboard + config.yaml |
| Spec 漂移偵測 | ❌ 無 | ✅ /opsx:sync 偵測 drift 並更新 spec |
| 多 change 並行管理 | ⚠️ 透過 git worktree 檔案隔離,無上層管理視圖 | ✅ openspec list + bulk-archive |
| 跨工具支援 | ✅ 6 平台 | ✅ 25+ 工具 |
| 除錯方法論 | ✅ 4 階段系統化除錯(Superpowers 獨有) | ❌ 無 |
Superpowers 的核心強項
- 執行紀律的強制性:TDD、code review、subagent 隔離是以強制性 prompt 指令約束的工作流,不是建議。agent 的 skill 指令明確定義了違規時的處理方式(例如未經 TDD 的程式碼必須刪除並從測試重新開始),且 subagent-driven-development 流程中 reviewer 不通過會阻擋任務推進。OpenSpec 的 apply 只是「逐任務執行」,沒有對應的品質紀律 enforcement。
- Subagent 架構(限 Claude Code、Codex 等支援 subagent 的平台):每任務派發全新 subagent,context 不會隨任務累積而污染;controller 專注協調而非執行。不支援 subagent 的平台(Gemini CLI、Copilot CLI 等)會 fallback 到
executing-plans單一 session 順序執行模式。 - 計畫嚴謹度(No Placeholders):No Placeholders 規則確保每個任務有精確的檔案路徑、完整程式碼範例、預期的輸出,而不是 TBD 的待填坑。
- 系統化除錯:4+1 階段根因分析(D-1 觀察收集證據 → D-2 建立假設 → D-3 驗證假設 → D-4 修復驗證,外加 D-4.5 架構評估——3 次修復失敗後觸發)是 Superpowers 獨有能力。
- Git Worktree 自動化:平行開發的隔離性由 git 層級保證,不只是邏輯上的「不同任務」。
OpenSpec 的核心強項
- Spec 為活文件(Source of Truth):每次 archive 把 delta spec 合併回主 spec,系統規格自然成長。Superpowers 的 spec 是散落的獨立檔案,無跨 session 的規格聚合。
- Thinking Phase 與 Brownfield 漸進式導入:
/opsx:explore是 OpenSpec 的 Thinking Phase 指令,涵蓋 Greenfield 構思、需求釐清、Brownfield 調查、架構決策比較,並帶有 implementation guardrail(嚴格禁止寫程式碼,強制思考/實作分離)。與 Superpowers brainstorming 的關鍵差異:explore 原生支援程式碼調查、產出可直接持久化為 OpenSpec artifacts。搭配/opsx:onboard與config.yaml提供完整的既有專案導入路徑;詳見 OpenSpec 導入現有專案(Brownfield 指南)。 - 全局驗證:
/opsx:verify拿完整程式碼比對 proposal/specs/design.md,可見 Superpowers 逐任務 review 看不到的全局盲點。 - Spec 漂移偵測(sync):程式碼改了但 spec 沒跟上時,主動偵測並修復——這是長期維護中的關鍵能力。
- 多 change 並行的上層管理:
openspec list一覽所有進行中的 change 及完成度,bulk-archive處理 spec 衝突。
關鍵要點
- Superpowers 與 OpenSpec 是互補關係:前者管執行紀律,後者管需求對齊與 spec 持久化
- Superpowers 的強制性工作流(TDD、subagent 隔離)是其不可取代的核心差異化
- OpenSpec 的 spec 持久化和全局驗證填補了 Superpowers 的長期管理盲點
- 除錯場景應優先使用 Superpowers 的 systematic-debugging(OpenSpec 無此能力)
- Greenfield 專案可從 Superpowers brainstorming 開始;Brownfield 專案應先用 OpenSpec
explore建立脈絡
實際應用
整合工作流
| 階段 | 使用工具 | 原因 |
|---|---|---|
| 專案脈絡建立 | OpenSpec init + config.yaml | Superpowers 無此機制 |
| 探索與構思(可選) | OpenSpec /opsx:explore(Greenfield 構思 / 需求釐清 / Brownfield 調查);必要時加 /opsx:onboard 建立正式基線 | Greenfield 可改用 Superpowers brainstorming(但無程式碼調查、無 guardrail);Brownfield 場景 Superpowers 無此機制 |
| 需求對齊與 Spec 產出 | OpenSpec /opsx:propose | 產出有結構的 artifact 且持久化為 source of truth |
| 任務計畫拆解 | Superpowers writing-plans | 更嚴謹(No Placeholders、精確到檔案路徑和程式碼) |
| 實作執行 | Superpowers subagent-driven-development(或 executing-plans) | 強制 TDD + 兩階段 review;subagent context 隔離僅限 Claude Code/Codex,其餘平台 fallback 為順序執行 |
| 全局驗證 | OpenSpec /opsx:verify | Superpowers 只有逐任務 review,缺乏全局視角 |
| 歸檔 | OpenSpec /opsx:archive | Spec 自動合併回主 spec,成為活文件;archive 會在需要時自動提示執行 sync |
| 除錯 | Superpowers systematic-debugging | OpenSpec 無除錯能力 |
流程圖:
OpenSpec init + config.yaml + onboard ← 建立專案基線(Brownfield 必做)
↓
(可選)OpenSpec /opsx:explore ← Thinking Phase:構思 / 需求釐清 / 調查(需 init 後才能執行)
↓
OpenSpec /opsx:propose ← 產出 spec artifact
↓
Superpowers writing-plans ← 基於 spec 寫嚴謹計畫(No Placeholders)
↓
Superpowers subagent-driven-development ← TDD + 兩階段 review(同步更新 tasks.md)
↓
OpenSpec /opsx:verify ← 全局驗證 spec vs. 實作
↓
OpenSpec /opsx:archive ← 歸檔 + spec 合併(含自動 sync 提示)CLAUDE.md 整合設定
在專案 CLAUDE.md 中加入以下指示,讓 Superpowers agent 知道如何銜接 OpenSpec artifact:
markdown
## OpenSpec + Superpowers Integration
- When Superpowers brainstorming would normally produce a spec, instead read the
existing OpenSpec artifacts from `openspec/changes/<name>/` as the design input.
- **REQUIRED after every plan task completes** (subagent-driven-development,
executing-plans, or manual execution): update the corresponding checkbox in
`openspec/changes/<name>/tasks.md` with `[x]` syntax **before** calling
TaskUpdate/TodoWrite to mark it complete. Do this per task, not at the end.
Checklist to run after each task:
1. Edit `openspec/changes/<name>/tasks.md` — mark completed task items `[x]`
2. Then mark the task complete in TaskUpdate/TodoWrite
**Why this is easy to forget in subagent-driven-development:** subagents handle
implementation and do not update openspec tasks. The controller (you) must do
it after each subagent returns DONE, before moving to the next task.
- Do NOT use Superpowers' finishing-a-development-branch for archiving; use
`/opsx:verify` then `/opsx:archive` instead.相關概念
- OpenSpec SDD 框架 — Superpowers 的互補工具:負責需求對齊、Spec 持久化、全局驗證(
/opsx:verify) - OpenSpec 導入現有專案(Brownfield 指南) — 整合工作流的起點:
explore+onboard建立既有專案脈絡 - GitHub Copilot Sub-Agent 編排 — 另一種 AI sub-agent 架構,與 Superpowers 的 subagent-driven 模式有相通之處(均強調 context 隔離)
- Claude Code 權限模式 — Superpowers 支援的平台之一,搭配 Superpowers 時建議使用 auto 模式
- Harness Code Review SOP — 以 Harness 在 Claude Code 中建立六視角平行 code review 團隊,可銜接 Superpowers
subagent-driven-development完成後的審查環節