AI編程實戰:用gstack + OpenSpec + Superpowers + Ralph 做到真正的AI 驅動開發

作者:AI 早咖啡
日期:2026年5月21日 下午10:52
來源:WeChat 原文

整理版優先睇

速讀 5 個重點 高亮

用gstack、OpenSpecSuperpowersRalph組合拳,將AI編程從情緒化實習生升級為守紀律工程團隊

整理版摘要

呢篇文章係由一位實戰經驗豐富嘅開發者分享,佢想解決嘅根本問題係:點樣令AI編程工具唔再係一個「情緒化實習生」,而係一個守紀律嘅工程團隊。作者整合咗四款開源免費工具——gstack(虛擬團隊+治理框架)、OpenSpec(規格驅動開發)、Superpowers(編碼紀律執行器)同Ralph(自主迭代循環引擎)。整體結論係:呢四個工具各守一道關口,形成一條完整鏈路:治理→規格→紀律→自動化執行,缺一不可。

作者透過自身經驗示範,以一個Java後端積分系統為例,逐步展示點樣用呢套組合拳實現真正嘅AI驅動開發。佢強調,人工幹預點只需要兩個:需求驗證同代碼Review,中間嘅開發過程可以完全無人值守。文章仲提供咗詳細嘅安裝步驟、命令速查、常見出錯場景處理方法,同埋適合與唔適合使用嘅場景分析。

呢套方法嘅精髓係:先用gstack諗清需求,再用OpenSpec寫清規格,然後Superpowers確保編碼紀律,最後Ralph自動跑完。佢特別提醒,淨係用其中一兩個工具都會漏嘢,例如冇OpenSpec,AI會自由發揮;冇Superpowers,質量冇保證;冇gstack,方向可能一開始就錯;冇Ralph,人仍然要一直盯住,效率翻唔到倍。

  • gstack 提供23個專家角色,透過斜槓命令(如 /office-hours、/plan)幫你驗證需求、拆解任務、做Code Review,從源頭減少方向跑偏。
  • OpenSpec 用規格驅動開發(SDD),透過 ProposeApply→Archive 三步驟,將所有約定寫入文件系統,AI每次讀文件而唔係靠聊天記錄,解決上下文丟失問題。
  • Superpowers 強制TDD、設計先行、系統化Debug等工程紀律,禁止AI跳過測試或隨意寫代碼,確保輸出質量。
  • Ralph 將AI編碼工具包裝成任務循環,每個任務開新Session避免上下文腐化,可無人值守跑完整個任務列表,並用 --verify 參數做質量門禁。
  • 四工具配合時,人工幹預點只有需求驗證(gstack /office-hours)同最終Review(gstack /review + OpenSpec /opsx-archive),中間開發可完全自動化,適合新功能開發同老代碼重構。
值得記低
連結 github.com

gstack 倉庫

YC CEO Garry Tan 製作嘅虛擬團隊治理框架,含23個專家角色 Skill 文件。

連結 github.com

OpenSpec 倉庫

規格驅動開發框架,支援 Propose→Apply→Archive 流程同 Delta Spec 機制。

連結 github.com

Superpowers 倉庫

Jesse Vincent 製作嘅編碼紀律執行器,強制TDD、設計先行等工程最佳實踐。

連結 github.com

Ralph 倉庫

自主迭代循環引擎,將AI編碼工具包裝成任務循環,支援無人值守執行。

整理重點

工具組合概念:從治理到自動化嘅完整鏈路

呢篇文章介紹嘅四款工具——gstack、OpenSpec、Superpowers同Ralph——唔係各自為政,而係一條完整嘅開發鏈路。作者指出,好多團隊用AI編程時遇到嘅問題,例如「AI自由發揮」、「上下文愈嚟愈亂」、「跳過測試」,都源於缺少系統性約束。呢套組合拳嘅定位好清晰:gstack做治理,OpenSpec做規格,Superpowers做紀律,Ralph做自動化執行。

作者強調,好多開發者淨係用其中一兩個工具,結果依然要成日盯住AI。例如淨係用Ralph但冇OpenSpec,AI會自由發揮,最終代碼同需求南轅北轍;淨係用Superpowers但冇gstack,代碼寫得規範但方向可能一開始就錯咗。

整理重點

工具安裝與核心用法

安裝呢四個工具之前,你要先裝好Claude Code CLINode.js ≥ 18。作者推薦最簡上手路徑係淨係裝Superpowers,然後慢慢加返其他工具。佢哋全部係開源免費,MIT協議,你可以直接喺GitHub clone嚟用。

  1. 1 gstack:由YC CEO Garry Tan製作,提供23個專家角色,透過斜槓命令運作。關鍵命令包括 /office-hours(驗證需求)、/plan(任務分解)、/review(代碼Review)、/ship(發佈檢查)、/careful(安全護欄)、/freeze(凍結代碼狀態)。
  2. 2 OpenSpec:規格驅動開發框架,三步工作法:Propose(提案)→ Apply(實施)→ Archive(歸檔)。Delta Spec機制淨係記錄變更,唔會重寫整個文件,相當於維護一份永遠更新嘅ADR。
  3. 3 SuperpowersJesse Vincent製作嘅Skill文件集合,強制TDD、設計先行、系統化Debug同Code Review前置。佢透過CLAUDE.md注入規則,例如「先寫失敗測試,再寫實現」。
  4. 4 Ralph:取自動畫《辛普森一家》嘅角色,代表「唔聰明但死磕到底」。佢將AI編碼工具包喺一個任務循環腳本,每次迭代開全新AI Session,避免上下文腐化。
安裝Superpowers並啟用斜槓命令 bash
git clone https://github.com/obra/superpowers ~/.superpowers
# 跟住README運行安裝腳本,或手動將skills/目錄加入Claude Code配置
# 完成後喺項目根目錄運行Claude Code,/tdd、/debug等命令即可用

gstack 嘅 /office-hours 命令係暴力追問你需求嘅合理性,好似YC風格嘅想法驗證

OpenSpecDelta Spec 機制相當於喺代碼旁邊維護一份永遠最新嘅 Architecture Decision Record

Superpowers 強制 AI 先寫失敗測試再寫實現,唔準跳過測試

Ralph 每個任務開新 Session 係最重要嘅設計決策,防止上下文愈堆愈亂

整理重點

實戰:積分系統開發流程

作者用一個典型Java後端(Spring Boot + MyBatis Plus + Redis + RocketMQ)嘅積分系統做例子,展示四工具點樣配合。成個過程人工幹預點只有兩個:Step 3-4嘅無人值守,同Step 5嘅質量門禁。

  1. 1 Step 1 - 用gstack做需求驗證(5分鐘):輸入/office-hours,CEO角色會反問積分有效期、併發扣減冪等、兑換失敗回滾等問題。然後用/plan將任務拆成7個子任務,包括設計積分流水錶、實現冪等入賬Service、樂觀鎖扣減、過期定時任務、分佈式事務兑換、API文檔同集成測試。
  2. 2 Step 2 - 用OpenSpec鎖定規格(10分鐘):/opsx-propose積分入賬Service要求,AI生成技術設計草案,你Review後修改細節(例如冪等窗口期24小時),然後/opsx-apply鎖定規格寫入specs/points-service.md。
  3. 3 Step 3 - Superpowers注入TDD約束:自動透過Skill文件強制先寫失敗測試、同包命名、最少實現代碼、唔準mock所有依賴。
  4. 4 Step 4 - Ralph自主執行:將任務寫入tasks.md,啟動ralph run命令,指定spec同verify參數。Ralph會逐個任務開新Session,注入規格同TDD約束,先寫測試(紅燈),再寫實現(綠燈),測試通過後自動commit,打勾繼續下一個。
  5. 5 Step 5 - Review & 歸檔:gstack /review做安全同代碼規範檢查,/opsx-archive將變更合併進主文檔。

gstack 嘅 /office-hours 會反問你:積分是否有有效期?併發場景下扣減點樣保證冪等?

OpenSpec 嘅 /opsx-propose 生成技術設計草案後,你要人工Review再修改細節

Superpowers 禁止 AI 先寫實現再補測試,測試必須先紅後綠

Ralph 自動摘取 tasks.md 入面第一個 [ ] 任務,完成後打勾

整理重點

常態化開發習慣與常見出錯場景

作者分享咗幾個日常開發習慣,幫助你更好地用呢套工具。首要係任務粒度控制:每個AI Session最好喺15-20分鐘內完成,太大嘅任務AI會開始犯糊塗。另外,Spec先於代碼,OpenSpec嘅specs/目錄要加進git,新人三分鐘就可以理解架構決策。

  • gstack 嘅 /careful 模式:喺線上環境相關代碼(數據庫migration、Kafka Topic配置)生成時必須開啟,AI會喺每個危險操作前暫停等你確認。
  • 測試分層設置:ralph run 用 --verify 指定單元測試,用 --post-all 指定集成測試。硬約束:冇測試唔提交。
  • 上下文管理:每個Ralph迭代注入一個固定context.md文件,包含項目技術棧、代碼規範、當前任務規格、禁止事項(例如唔準改pom.xml parent版本)。
  • 常見出錯處理Ralph卡住(任務太大,手動拆細)、OpenSpec spec同代碼不一致(跑/opsx-archive同步)、/office-hours答唔上(需求未諗清,先諗清楚)、mvn test全綠但功能錯(補充集成測試或端到端用例)。

OpenSpec 嘅 specs/ 目錄要加進 git,同代碼一齊提交

gstack 嘅 /careful 模式會令AI喺危險操作前暫停等你確認

Ralph 嘅 --verify 參數就係質量門禁,冇測試通過唔會繼續

每個新Session啟動時讀 context.md,就唔會出現「AI唔知項目禁止改pom.xml」呢類低級錯誤

整理重點

適合場景 vs 唔適合場景

作者好坦誠咁講明呢套組合拳嘅適用範圍。新功能開發有清晰需求嘅時候,四工具全上效果最好,評分五粒星。老代碼重構都適合,但要先用OpenSpec做變更分析,再逐模塊重構。Bug修復就唔建議用Ralph Loop,淨係用Superpowers嘅Debug Skill定位根因就夠。

  • 新功能開發(有清晰需求):⭐⭐⭐⭐⭐ 四工具全上,效果最好
  • 老代碼重構:⭐⭐⭐⭐ 先用OpenSpec做變更分析,Ralph逐模塊重構
  • Bug修復:⭐⭐⭐ 淨係用Superpowers Debug Skill定位根因,唔好開Ralph Loop
  • 探索性原型:⭐⭐ 規格仲唔清晰,用gstack /office-hours就夠
  • 緊急線上問題:⭐ 直接上手,唔好用AI LoopRalph嘅延遲你等唔起

新功能開發四工具全上效果最好,但緊急線上問題要直接上手

探索性原型階段,用 gstack 嘅 /office-hours 就夠,唔需要全套工具

圖片

0. 同你介紹返套組合拳

呢套組合拳要解決嘅根本問題係:令 AI 好似一個守紀律嘅工程師團隊,而唔係一個情緒化嘅實習生

工具
本質定位
解決嘅核心痛點
gstack
虛擬工程團隊 + 治理框架
需求混亂、方向走歪、冇 Review
OpenSpec
規格驅動開發(SDD)框架
AI '亂估'、上下文丟失、改動冇跡可尋
Superpowers
編碼紀律執行器(TDD + 技能包)
AI Skip 測試、唔寫文檔、風格好隨意
Ralph
自主迭代循環引擎
人一直睇住 AI、大任務跑唔完、上下文爛咗

呢四個形成一條完整嘅鏈路:治理 → 規格 → 紀律 → 自動化執行

圖片

1. 前置條件

喺安裝任何工具之前,你需要:

  1. Claude Code CLI:呢四個工具都係基於 Claude Code 運行。去 claude.ai/code 下載同安裝。
  2. Node.js ≥ 18(Ralph 運行所需)
  3. Git:項目一定要喺 git 倉庫入面,Ralph 嘅自動提交先會生效。

最簡單上手路徑(推薦第一次只裝 Superpowers):

# 1. 克隆 Superpowers
git clone https://github.com/obra/superpowers ~/.superpowers

# 2. 按照倉庫 README 運行安裝腳本,或手動將 skills/ 目錄加入 Claude Code 配置
# 完成後在項目根目錄運行 Claude Code,/tdd、/debug 等斜槓命令即可用

四個工具都裝好曬之後,再進入完整工作流程。


2. 工具倉庫和安裝

工具
倉庫
安裝方式
gstack
garrytan/gstack(請以 GitHub 實際地址為準)
下載 Skill 檔案,跟 README 配置到 Claude Code
OpenSpec
Fission-AI/OpenSpec
同上,斜槓命令經 Skill 檔案註冊
Superpowers
obra/superpowers
同上,Jesse Vincent 嘅倉庫
Ralph
snarktank/ralph
獨立腳本,跟 README 配置好之後運行

四個都係開源免費嘅,全部用 MIT 協議。


3. 工具詳解

3.1 gstack:幫 AI 裝個虛擬團隊

YC CEO Garry Tan 做嘅呢個工具,係一套用 Markdown Skill 檔案嘅角色系統,等 Claude Code 扮演唔同專家角色。

核心思想好直接:唔好同一個通用 AI 傾需求,叫一組專家嚟協作。佢內置咗 23 個專家角色,由 CEO(戰略決策)、Engineering Manager(任務拆解)、QA Lead(測試策略)到 Security Reviewer(安全審計)。

關鍵命令快速查閲

/office-hours    # YC 風格的想法驗證,暴力追問你需求的合理性
/plan            # 工程經理視角做任務分解
/review          # 代碼 Review,含安全 + 標準合規檢查
/ship            # 最終發佈前的檢查清單
/careful         # 開啓安全護欄,防止 AI 亂跑破壞性命令
/freeze          # 凍結當前代碼狀態,禁止 AI 隨意修改
圖片

3.2 OpenSpec:規格係唯一嘅真相來源

傳統 AI 編程有個避唔到嘅問題:傾咗兩個鐘,AI 已經唔記得開頭定好嘅約束,開始自由發揮。OpenSpec 係一個 Spec 驅動開發框架,佢嘅答案好簡單:將所有約定寫入檔案系統,等 AI 每次由檔案度讀,而唔係靠聊天記錄。

三步工作方法

Propose(提案)→ Apply(實施)→ Archive(歸檔)
  • Propose/opsx-propose,AI 根據你嘅描述生成技術設計 + 任務清單,呢個係人工 Review 嘅檢查點
  • Apply/opsx-apply,對齊之後 AI 按規格逐步實施,唔再即興發揮
  • Archive/opsx-archive,完成之後自動將更改合併入主文檔,形成活文檔

Delta Spec 機制值得獨立講:佢唔會重寫成個文檔,只係記錄『呢次更改咗咩』。對 Java 項目嚟講,呢個相當於係代碼旁邊維護咗一份永遠最新嘅 ADR(Architecture Decision Record)。

圖片

3.3 Superpowers:幫 AI 裝上工程紀律

Jesse Vincent 做嘅呢套工具,係一組 Skill 檔案,專門用嚟強迫 AI 遵守工程最佳實踐。如果話 gstack 負責『做啱嘅事』,Superpowers 就負責『將事做啱』。佢透過 SKILL.md 檔案約束 AI:

  • TDD(測試驅動開發):唔畀 AI 先寫實作再補測試,一定要先寫失敗嘅測試
  • 設計先行:複雜功能一定要先出設計文檔,確認咗之後先寫代碼
  • 系統化 Debug:唔畀 AI 估問題,一定要用二分法 + 證據鏈定位
  • 代碼 Review 前置:提 PR 之前一定要過 Superpowers 自檢清單
圖片

3.4 Ralph:等 AI 自己行,你去瞓覺

個名取自《阿森一族》入面嘅 Ralph Wiggum,嗰種『唔聰明但係死撐到底』嘅性格。佢做嘅嘢講起嚟好簡單:將 AI 編碼工具包咗喺一個任務循環腳本入面,等佢無人值守行完成個任務列表。

每次疊代都開全新嘅 AI Session,呢個係 Ralph 最重要嘅設計決策。長對話入面上下文越堆越多,AI 會越嚟越亂;Ralph 令每個任務都喺一個乾淨嘅起點完成。

圖片

任務檔案示例tasks.md):

## Tasks

[x] 初始化 Spring Boot 項目骨架
[x] 設計 User 實體和 Repository 層
[ ] 實現用戶註冊 Service(含密碼加密)
[ ] 實現 JWT 鑑權過濾器
[ ] 編寫集成測試:註冊 + 登錄完整流程
[ ] Swagger 文檔接入

Ralph 會自動拎第一個 [ ] 任務,完成之後打剔,繼續下一個。


4. 四個工具點樣配合

用一個典型 Java 後端項目(Spring Boot + MyBatis Plus + Redis + RocketMQ)嘅新功能開發做例子:

人工幹預點得兩個

圖片

階段 3-4 可以完全無人值守;階段 5 嘅 Review 係質量門禁,唔係方向決策。

圖片

5. 積分系統 - 後端開發實戰

Step 1:用 gstack 做需求驗證(5 分鐘)

你:需要做一個用戶積分系統,用戶消費、簽到、推薦好友都能得分,積分可以兑換優惠券。

/office-hours

gstack 嘅 CEO 角色會反問你:

  • 積分有冇有效期?過期點樣處理?
  • 並發場景下積分扣減點樣保證冪等?
  • 兑換失敗係咪要回滾積分?
圖片

然後用 /plan 用工程經理視角拆任務:

## 工程任務拆解(gstack 輸出)

1. 
設計積分流水錶(points_ledger)+ 餘額快照表
2. 實現積分入賬 Service(含冪等鍵設計)
3. 實現積分扣減 Service(樂觀鎖 + 餘額校驗)
4. 積分過期定時任務(xxl-job 集成)
5. 積分兑換 Service(分佈式事務:積分扣減 + 優惠券發放)
6. 對外 API + Swagger 文檔
7. 集成測試:併發扣減場景驗證

Step 2:用 OpenSpec 鎖定規格(10 分鐘)

/opsx-propose 積分入賬 Service 實現

要求:
- 接口冪等,通過 bizId + bizType 去重
- 入賬成功發送 MQ 事件通知下游
- 使用樂觀鎖防止餘額超扣

OpenSpec 生成技術設計草案,你 Review 之後改兩處細節(例如冪等窗口期定為 24 小時),跟住:

/opsx-apply

規格鎖定,寫入 specs/points-service.md,之後所有 AI Session 都係由呢個檔案讀約束,唔會走樣。

Step 3:Superpowers 注入 TDD 約束

Superpowers 安裝之後經 Skill 檔案自動注入呢啲約束,唔需要手動配置。下面係同等嘅手動寫法,方便你睇清楚佢到底喺 CLAUDE.md 入面強制咗啲乜:

## 強制規則(來自 Superpowers)

執行任何編碼任務前,必須:
1. 先寫失敗的單元測試(用 JUnit 5 + Mockito)
2. 測試文件命名:`[ClassName]Test.java`,與實現類同包
3. 實現類只能包含讓測試通過的最少代碼
4. 測試通過後再考慮重構

禁止:
先寫實現再補測試
測試裏 mock 所有依賴(必須有至少一個真實斷言)

Step 4:Ralph 自動執行(可以去嘆咖啡喇)

將 gstack 拆好嘅任務寫入 tasks.md,啟動 Ralph:

ralph run \
  --tasks tasks.md \
  --spec specs/points-service.md \
  --tool claude-code \
  --verify "mvn test" \
  --on-success "git add -A && git commit -m '[ralph] {task_name}'"
圖片

Ralph 會:

  1. 讀 tasks.md,拎第一個 [ ] 任務:『實現積分入賬 Service(含冪等鍵設計)』
  2. 開新 Claude Code Session,注入 OpenSpec 規格 + Superpowers TDD 約束
  3. AI 先寫 PointsServiceTest.java(紅燈),再寫 PointsServiceImpl.java(綠燈)
  4. 跑 mvn test,全部通過之後自動 commit
  5. 打剔,繼續下一個任務

期間你唔需要睇住佢。一個中等複雜度嘅積分系統(7 個任務),Ralph 通常喺幾個鐘內行完,具體時間取決於任務複雜度同 AI 反應速度。

圖片

Step 5:Review & 歸檔

gstack /review          # 安全 + 代碼規範檢查
/opsx-archive           # 變更合併進主文檔

6. 我嘅常態化開發習慣

6.1 任務粒度控制

Ralph 嘅每個任務唔可以太大。經驗值係:一個 AI Session 喺 15-20 分鐘內可以完成。太大嘅任務上下文會越嚟越長,AI 開始亂。拆分原則:

圖片

6.2 Spec 先於代碼

OpenSpec 嘅 specs/ 目錄要加入 git,同代碼一齊提交。新人入項目睇 specs/,三分鐘內理解架構決策。呢個比讀代碼快 10 倍。

6.3 gstack 嘅 /careful 模式

喺線上環境相關嘅代碼(數據庫 migration、Kafka Topic 配置)生成嗰陣,必須開啟 gstack 嘅 /careful 模式。佢會令 AI 喺每個危險操作之前暫停,等你確認。

6.4 測試係 Ralph 嘅退出條件

Ralph 嘅 --verify 參數就係你嘅質量門禁。建議分層設置:

--verify   "mvn test -Dtest=*Test"            # 單元測試,每個任務完成後跑
--post-all "mvn verify -P integration-test"   # 集成測試,所有任務完成後跑一次

冇測試,Ralph 唔提交,唔打剔,唔繼續。呢個係硬約束。

6.5 上下文管理

每個 Ralph 疊代啟動 Claude Code 嗰陣,注入一個固定嘅上下文檔案(context.md):

## 項目上下文(每個 Session 必讀)

項目:XX 教育平台後端服務
技術棧:Spring Boot 3.x + MyBatis Plus + Redis + RocketMQ
代碼規範:@see specs/coding-standards.md
當前任務規格:@see specs/points-service.md
禁止事項:不引入新的第三方庫,不修改 pom.xml 的 parent 版本

每個新 Session 啟動嗰陣讀呢個檔案,就唔會出現『AI 唔知當前項目禁止改 pom.xml』呢類低級錯誤。

6.6 常見出錯場景處理

問題
通常原因
處理方式
Ralph 卡喺某個任務鬱唔到
任務粒度太大,AI 上下文用曬
手動拆成兩個更細嘅任務,重新行
OpenSpec 生成嘅 spec 同代碼唔一致
實施嗰陣臨時改咗設計但冇更新 spec
跑 /opsx-archive 將變更同步返去文檔
gstack /office-hours 嘅問題答唔到
需求本身冇諗清楚
返去諗清楚先進入工具鏈,唔好死撐
mvn test
 全綠但功能表現唔啱
測試覆蓋嘅係假設而唔係真實行為
手動行集成測試,或者補充端到端場景用例

7. 適合場景 vs 不適合場景

場景
適合程度
說明
新功能開發(有清晰需求)
⭐⭐⭐⭐⭐
四個工具全用,效果最好
舊代碼重構
⭐⭐⭐⭐
OpenSpec 先做變更分析,Ralph 逐個模塊重構
Bug 修復
⭐⭐⭐
推薦只用 Superpowers Debug Skill 定位根因,唔開 Ralph Loop
探索性原型
⭐⭐
規格仲未清晰,用 gstack /office-hours 就夠
緊急線上問題
唔好用 AI Loop,直接上手,Ralph 嘅延遲你等唔起

8. 總結

gstack 幫你諗清楚,OpenSpec 幫你講清楚,Superpowers 幫你做規範,Ralph 幫你自動行完。

四個工具各守一道關口,缺咗邊個都會漏。

  • 只用 Ralph 冇 OpenSpec:AI 自由發揮,最後代碼同需求南轅北轍
  • 只用 OpenSpec 冇 Superpowers:規格啱,但 AI Skip 測試,質量冇保證
  • 只用 Superpowers 冇 gstack:代碼寫得規範,但方向可能由一開始就錯咗
  • 只用 gstack 冇 Ralph:人仲要睇住 AI 一步步行,效率翻唔到數量級
圖片
圖片

0. 給你介紹一套組合拳

這套組合拳要解決的根本問題是:讓 AI 像一個守紀律的工程師團隊,而不是一個情緒化的實習生

工具
本質定位
解決的核心痛點
gstack
虛擬工程團隊 + 治理框架
需求混亂、方向跑偏、沒有 Review
OpenSpec
規格驅動開發(SDD)框架
AI "瞎猜"、上下文丟失、變更無跡可查
Superpowers
編碼紀律執行器(TDD + 技能包)
AI 跳過測試、不寫文檔、風格隨意
Ralph
自主迭代循環引擎
人一直盯着 AI、大任務跑不完、上下文腐化

四者形成一條完整的鏈路:治理 → 規格 → 紀律 → 自動化執行

圖片

1. 前置條件

在安裝任何工具之前,你需要:

  1. Claude Code CLI:這四個工具都基於 Claude Code 運行。前往 claude.ai/code 下載並安裝。
  2. Node.js ≥ 18(Ralph 運行所需)
  3. Git:項目必須在 git 倉庫內,Ralph 的自動提交才能生效。

最簡上手路徑(推薦第一次只裝 Superpowers):

# 1. 克隆 Superpowers
git clone https://github.com/obra/superpowers ~/.superpowers

# 2. 按照倉庫 README 運行安裝腳本,或手動將 skills/ 目錄加入 Claude Code 配置
# 完成後在項目根目錄運行 Claude Code,/tdd、/debug 等斜槓命令即可用

四個工具都安裝妥當後,再進入完整工作流。


2. 工具倉庫和安裝

工具
倉庫
安裝方式
gstack
garrytan/gstack(請以 GitHub 實際地址為準)
下載 Skill 文件,按 README 配置到 Claude Code
OpenSpec
Fission-AI/OpenSpec
同上,斜槓命令通過 Skill 文件註冊
Superpowers
obra/superpowers
同上,Jesse Vincent 的倉庫
Ralph
snarktank/ralph
獨立腳本,按 README 配置後運行

四個都是開源免費的,全部 MIT 協議。


3. 工具詳解

3.1 gstack:給 AI 裝上虛擬團隊

YC CEO Garry Tan 做的這個工具,是一套基於 Markdown Skill 文件的角色系統,讓 Claude Code 扮演不同專家角色。

核心思想很直接:不要跟一個泛用 AI 談需求,召喚一組專家來協作。它內置了 23 個專家角色,從 CEO(戰略決策)、Engineering Manager(任務拆解)、QA Lead(測試策略)到 Security Reviewer(安全審計)。

關鍵命令速查

/office-hours    # YC 風格的想法驗證,暴力追問你需求的合理性
/plan            # 工程經理視角做任務分解
/review          # 代碼 Review,含安全 + 標準合規檢查
/ship            # 最終發佈前的檢查清單
/careful         # 開啓安全護欄,防止 AI 亂跑破壞性命令
/freeze          # 凍結當前代碼狀態,禁止 AI 隨意修改
圖片

3.2 OpenSpec:規格是唯一的真相來源

傳統 AI 編程有個繞不過去的坑:聊了兩小時,AI 已經忘了開頭定好的約束,開始自由發揮。OpenSpec 是個 Spec 驅動開發框架,它的答案很簡單:把所有約定寫進文件系統,讓 AI 每次從文件裏讀,而不是靠聊天記錄。

三步工作法

Propose(提案)→ Apply(實施)→ Archive(歸檔)
  • Propose/opsx-propose,AI 基於你的描述生成技術設計 + 任務清單,這是人工 Review 的檢查點
  • Apply/opsx-apply,對齊後 AI 按規格逐步實施,不再即興發揮
  • Archive/opsx-archive,完成後自動將變更合併進主文檔,形成活文檔

Delta Spec 機制值得單說:它不重寫整個文檔,只記錄"這次變更了什麼"。對 Java 項目來說,這相當於在代碼旁邊維護了一份永遠最新的 ADR(Architecture Decision Record)。

圖片

3.3 Superpowers:給 AI 裝上工程紀律

Jesse Vincent 做的這套工具,是一組 Skill 文件,專門用來強制 AI 遵守工程最佳實踐。如果說 gstack 負責"做對的事",Superpowers 負責"把事做對"。它通過 SKILL.md 文件約束 AI:

  • TDD(測試驅動開發):不允許 AI 先寫實現再補測試,必須先寫失敗的測試
  • 設計先行:複雜功能必須先出設計文檔,經確認後再寫代碼
  • 系統化 Debug:不允許 AI 猜問題,必須用二分法 + 證據鏈定位
  • 代碼 Review 前置:提 PR 前必須過 Superpowers 自檢清單
圖片

3.4 Ralph:讓 AI 自己跑,你去睡覺

名字取自《辛普森一家》裏的 Ralph Wiggum,那種"不聰明但死磕到底"的勁兒。它做的事情說起來很樸素:把 AI 編碼工具包在一個任務循環腳本里,讓它無人值守地跑完整個任務列表。

每次迭代都開啓全新的 AI Session,這是 Ralph 最重要的設計決策。長會話裏上下文越堆越多,AI 會越來越糊塗;Ralph 讓每個任務都在一個乾淨的起點上完成。

圖片

任務文件示例tasks.md):

## Tasks

[x] 初始化 Spring Boot 項目骨架
[x] 設計 User 實體和 Repository 層
[ ] 實現用戶註冊 Service(含密碼加密)
[ ] 實現 JWT 鑑權過濾器
[ ] 編寫集成測試:註冊 + 登錄完整流程
[ ] Swagger 文檔接入

Ralph 會自動摘取第一個 [ ] 任務,完成後打勾,繼續下一個。


4. 四工具如何配合

以一個典型 Java 後端項目(Spring Boot + MyBatis Plus + Redis + RocketMQ)的新功能開發為例:

人工干預點只有兩個

圖片

階段 3-4 可以完全無人值守;階段 5 的 Review 是質量門禁,不是方向決策。

圖片

5. 積分系統-後端開發實戰

Step 1:用 gstack 做需求驗證(5 分鐘)

你:需要做一個用戶積分系統,用戶消費、簽到、推薦好友都能得分,積分可以兑換優惠券。

/office-hours

gstack 的 CEO 角色會反問你:

  • 積分是否有有效期?過期如何處理?
  • 併發場景下積分扣減如何保證冪等?
  • 兑換失敗是否要回滾積分?
圖片

然後用 /plan 讓工程經理視角拆分任務:

## 工程任務拆解(gstack 輸出)

1. 
設計積分流水錶(points_ledger)+ 餘額快照表
2. 實現積分入賬 Service(含冪等鍵設計)
3. 實現積分扣減 Service(樂觀鎖 + 餘額校驗)
4. 積分過期定時任務(xxl-job 集成)
5. 積分兑換 Service(分佈式事務:積分扣減 + 優惠券發放)
6. 對外 API + Swagger 文檔
7. 集成測試:併發扣減場景驗證

Step 2:用 OpenSpec 鎖定規格(10 分鐘)

/opsx-propose 積分入賬 Service 實現

要求:
- 接口冪等,通過 bizId + bizType 去重
- 入賬成功發送 MQ 事件通知下游
- 使用樂觀鎖防止餘額超扣

OpenSpec 生成技術設計草案,你 Review 後修改兩處細節(比如冪等窗口期定為 24 小時),然後:

/opsx-apply

規格鎖定,寫入 specs/points-service.md,後續所有 AI Session 都從這個文件讀約束,不會走樣。

Step 3:Superpowers 注入 TDD 約束

Superpowers 安裝後通過 Skill 文件自動注入這些約束,不需要手動配置。下面是等效的手動寫法,方便你看清楚它到底在 CLAUDE.md 裏強制了什麼:

## 強制規則(來自 Superpowers)

執行任何編碼任務前,必須:
1. 先寫失敗的單元測試(用 JUnit 5 + Mockito)
2. 測試文件命名:`[ClassName]Test.java`,與實現類同包
3. 實現類只能包含讓測試通過的最少代碼
4. 測試通過後再考慮重構

禁止:
先寫實現再補測試
測試裏 mock 所有依賴(必須有至少一個真實斷言)

Step 4:Ralph 自主執行(可以去喝咖啡了)

將 gstack 拆解的任務寫入 tasks.md,啓動 Ralph:

ralph run \
  --tasks tasks.md \
  --spec specs/points-service.md \
  --tool claude-code \
  --verify "mvn test" \
  --on-success "git add -A && git commit -m '[ralph] {task_name}'"
圖片

Ralph 會:

  1. 讀 tasks.md,摘第一個 [ ] 任務:"實現積分入賬 Service(含冪等鍵設計)"
  2. 開新 Claude Code Session,注入 OpenSpec 規格 + Superpowers TDD 約束
  3. AI 先寫 PointsServiceTest.java(紅燈),再寫 PointsServiceImpl.java(綠燈)
  4. 跑 mvn test,全部通過後自動 commit
  5. 打勾,繼續下一個任務

期間你不需要盯着它。一箇中等複雜度的積分系統(7 個任務),Ralph 通常在數小時內跑完,具體時間視任務複雜度和 AI 響應速度而定。

圖片

Step 5:Review & 歸檔

gstack /review          # 安全 + 代碼規範檢查
/opsx-archive           # 變更合併進主文檔

6. 我的常態化開發習慣

6.1 任務粒度控制

Ralph 的每個任務不能太大。經驗值是:一個 AI Session 在 15-20 分鐘內能完成。太大的任務上下文會越來越長,AI 開始犯糊塗。拆分原則:

圖片

6.2 Spec 先於代碼

OpenSpec 的 specs/ 目錄要加進 git,和代碼一起提交。新人入項目看 specs/,三分鐘內理解架構決策。這比讀代碼快 10 倍。

6.3 gstack 的 /careful 模式

在線上環境相關的代碼(數據庫 migration、Kafka Topic 配置)生成時,必須開啓 gstack 的 /careful 模式。它會讓 AI 在每個危險操作前暫停,等你確認。

6.4 測試是 Ralph 的退出條件

Ralph 的 --verify 參數就是你的質量門禁。建議分層設置:

--verify   "mvn test -Dtest=*Test"            # 單元測試,每個任務完成後跑
--post-all "mvn verify -P integration-test"   # 集成測試,所有任務完成後跑一次

沒有測試,Ralph 不提交,不打勾,不繼續。這是硬約束。

6.5 上下文管理

每個 Ralph 迭代啓動 Claude Code 時,注入一個固定的上下文文件(context.md):

## 項目上下文(每個 Session 必讀)

項目:XX 教育平台後端服務
技術棧:Spring Boot 3.x + MyBatis Plus + Redis + RocketMQ
代碼規範:@see specs/coding-standards.md
當前任務規格:@see specs/points-service.md
禁止事項:不引入新的第三方庫,不修改 pom.xml 的 parent 版本

每個新 Session 啓動時讀這個文件,就不會出現"AI 不知道當前項目禁止改 pom.xml"這類低級錯誤。

6.6 常見出錯場景處理

問題
通常原因
處理方式
Ralph 卡在某個任務不動
任務粒度太大,AI 上下文耗盡
手動拆成兩個更小的任務,重新跑
OpenSpec 生成的 spec 與代碼不一致
實施時臨時改了設計但沒更新 spec
跑 /opsx-archive 把變更同步迴文檔
gstack /office-hours 的問題答不上來
需求本身沒想清楚
先回去想清楚再進入工具鏈,別硬撐
mvn test
 全綠但功能表現不對
測試覆蓋的是假設而非真實行為
手動跑集成測試,或補充端到端場景用例

7. 適合場景 vs 不適合場景

場景
適合程度
說明
新功能開發(有清晰需求)
⭐⭐⭐⭐⭐
四工具全上,效果最好
老代碼重構
⭐⭐⭐⭐
OpenSpec 先做變更分析,Ralph 逐模塊重構
Bug 修復
⭐⭐⭐
推薦只用 Superpowers Debug Skill 定位根因,不啓 Ralph Loop
探索性原型
⭐⭐
規格還不清晰,用 gstack /office-hours 就夠了
緊急線上問題
別用 AI Loop,直接上手,Ralph 的延遲你等不起

8. 總結

gstack 幫你想清楚,OpenSpec 幫你說清楚,Superpowers 幫你做規範,Ralph 幫你自動跑完。

四個工具各守一道關口,缺了哪個都會漏。

  • 只用 Ralph 沒有 OpenSpec:AI 自由發揮,最終代碼和需求南轅北轍
  • 只用 OpenSpec 沒有 Superpowers:規格對了,但 AI 跳過測試,質量無保證
  • 只用 Superpowers 沒有 gstack:代碼寫得規範,但方向可能從一開始就錯了
  • 只用 gstack 沒有 Ralph:人還是得盯着 AI 一步步做,效率翻不了數量級
圖片