告別 AI 瞎寫程式的時代:用 Superpowers 框架為 Claude Code 與 Codex 注入工程紀律

隨著 Claude Code 與 Codex 等自主程式開發代理的爆發,軟體開發迎來了極速生成時代,卻也帶來了盲目 Vibe Coding 的副作用。這正是我們在探討 AI 時代的工程師護城河 時面臨的核心困境:缺乏工程品質把關的 AI 代理,往往像個急躁的實習生,沒搞懂需求、沒寫測試就急著改代碼,最終留下難以維護的技術債。
為了給這些狂奔的 AI 代理套上緊箍咒,Jesse Vincent 開源了 Superpowers 代理協作框架(obra/superpowers)。本文將深入解析其運作機制,看它如何透過結構化技能與規則,為 AI 注入嚴格的工程紀律,將其訓練為嚴謹的軟體工程師。
什麼是 Superpowers 框架?它的運作原理是什麼?
Superpowers 本質上不是一個新的大語言模型,而是一套針對 AI 代理開發的「運作手冊與紀律規範」。
在傳統開發中,我們使用 Lint、靜態分析與 CI/CD 來約束人類工程師;而 Superpowers 則是利用 AI 代理本身具備「在採取行動前先閱讀本地脈絡」的特性,在專案目錄下配置一系列精心設計的 SKILL.md(技能檔)與規則。當 AI 代理啟動並掃描專案時,它會自動載入這些規範,並在後續的每一個開發步驟中強制執行。
這套框架將 AI 代理的開發生命週期約束在三個非談判性(Non-negotiable)的階段中:
第一階段:蘇格拉底式規格釐清(Socratic Brainstorming)
當你向 AI 代理下達「幫我重構資料庫連線池」或「新增一個 API 路由」的任務時,未受約束的 AI 會立刻開始動手修改檔案。
而在 Superpowers 規範下,AI 代理被禁止直接寫代碼。它必須先扮演一位挑剔的架構師,使用蘇格拉底式的提問,主動向人類開發者釐清:
- 這個功能的具體邊界是什麼?
- 有哪些已知的約束條件(如效能要求、第三方 API 限制)?
- 有沒有需要特別防範的邊緣案例(Edge Cases)?
只有當人類開發者確認規格無誤後,AI 才能進入下一階段。這從源頭上杜絕了「AI 因為瞎猜需求而寫出錯誤產品」的狀況。
第二階段:實作規劃(Implementation Planning)
規格釐清後,AI 代理必須在本機寫入一份詳細的實作計畫(通常為 plan.md)。這份計畫必須將宏大的任務拆解成細小的、可驗證的 To-do list。
透過這個步驟,AI 代理在面對大型程式庫(Codebase)時,能保持清晰的上下文脈絡,按部就班地執行計畫,並在遇到編譯錯誤時有據可依,避免陷入不斷自我修改卻越改越亂的死循環。
第三階段:測試驅動開發(Test-Driven Development, TDD)
這是 Superpowers 最硬核的核心紀律。框架強制要求 AI 代理必須遵循傳統軟體工程中的 TDD 循環(紅-綠-重構):
- 寫測試(Red):在動手寫任何功能代碼前,AI 必須先寫好單元測試或整合測試,並執行它以確認測試失敗。
- 寫實作(Green):編寫最簡可行代碼,使測試順利通過。
- 重構(Refactor):在測試的保護傘下,對代碼進行去八股化、消除重複(DRY)與效能優化,並確保測試依然通過。
這條防線極大程度地防止了 AI 生成沒有測試保護的「一次性垃圾代碼」,確保專案具備長期的可維護性。
實務配置:如何將 Superpowers 導入你的 AI 開發工具?
1. 在 Claude Code 中使用 Superpowers
Claude Code 提供了內建的插件系統,完全不需要手動建立目錄與複製檔案,只需在對話中執行單一指令即可完成安裝:
- 一鍵安裝:在啟動的
claude終端機對話中,輸入以下指令:(若需手動指定特定源,可使用1
/plugin install superpowers
/plugin install superpowers@superpowers-marketplace) - 自動載入:安裝完畢後,Superpowers 的技能會自動載入。當你對 Claude 下達任務時,它會自動觸發
/superpowers:brainstorm與/superpowers:write-plan,強制進入 TDD 流程。
2. 在 Codex 中配置 Superpowers
對於 Codex 命令行工具,我們同樣可以透過簡單的配置將其與本機環境結合:
- 指定載入目錄:只需在 Codex 設定檔中,將 Superpowers 的本機路徑加入到自動加載的
skills目錄:1
git clone https://github.com/obra/superpowers.git ~/.codex/skills/superpowers
- 這能讓 Codex 每次在該專案環境啟動時,自動將 Superpowers 的工程約束注入為全域 Context。
從「急躁打字員」到「嚴謹工程師」的價值反思
導入 Superpowers 框架後,最直觀的感受是:AI 變慢了。
它不再是一秒鐘刷出上百行代碼,而是會花時間跟你對齊需求、花時間寫測試、並在重構時小心翼翼。這對追求「快」的開發者來說可能有些不習慣,但從長遠的軟體生命週期來看,這種「慢」才是真正的快。
藉由強制的測試約束,Superpowers 帶來了以下核心商業與技術價值:
- 消除技術債:測試覆蓋率在開發過程中被自動補齊,代碼結構經過重構,避免了 Vibe Coding 累積的隱形債務。
- 保護人類開發者的精力:你不需要在 AI 寫完程式後去當「消防員」除錯,因為 AI 已經在測試階段自己把邊緣案例修正完畢。
- 重塑 AI 與人類的協作關係:人類從「代碼除錯員」回歸到「規格定義者與方向掌控者」,AI 則真正成為了具備工程素養的副駕駛。
結論
AI 程式工具的演進降低了開發的起跑難度,但軟體工程的本質壁壘從未改變——那便是對架構設計、測試覆蓋與代碼品質的紀律要求。
Jesse Vincent 的 Superpowers 框架,其核心智慧在於它認識到了「AI 的強大必須被紀律約束」。透過在專案中配置簡單的 Skills 與 Rules,我們能將人類累積數十年的工程實踐,自動化地約束在 AI 的工作流中。這是將 AI 程式工具從「寫玩具 App 的玩具」提升為「開發生產環境軟體的利器」過程中,極具前瞻性且不可或缺的關鍵一步。