Superpowers vs Mattpocock:兩種不同的編程方式
整理版優先睇
Superpowers用完整流程管住Agent,mattpocock靠人機對齊留住控制權
呢篇文章係我深度對比咗兩套近年好受歡迎嘅編程Agent Skill之後嘅整理:Superpowers同mattpocock skill。兩套Skill本質上想解決同一個問題——點樣令Claude Code、Codex呢類Agent少犯錯,寫出更可靠、更容易維護嘅代碼。但深入用落會發現,佢哋代表住兩種截然唔同嘅Agent編程方式:一套想用完整流程管住Agent,另一套就主張俾開發者保留控制權。
先講Superpowers,佢而家有264k star,定位係一套軟件開發方法論,而唔係零散技能。佢要求Agent行一條固定路線:brainstorming理清需求、開Git Worktree、制定實現計劃、用子Agent執行、強制TDD、逐階段審查,最後驗證合併。呢啲步驟係硬性約束,明顯想透過流程限制Agent自由發揮。另一邊,mattpocock skill有197k star,作者Matt Pocock將佢定位成日常真實工程嘅技能,唔係用嚟「vibe coding」嘅自動化框架。佢唔想Skills接管成個開發過程,所以模組設計得好細、容易改動組合,例如grill-me會不斷追問需求直到決策明確,grill-with-docs仲會維護CONTEXT.md同寫低ADR。
總括嚟講,兩套都重視TDD,但Superpowers著重流程紀律,mattpocock著重測試邊界。如果要用一個比喻,Superpowers似自動駕駛,mat…
- Superpowers係一套完整軟件開發方法論,靠固定流程限制Agent自由發揮,適合大型新項目。
- mattpocock skill模組細細哋,俾開發者保留控制權,強調人機對齊先係減少錯誤嘅關鍵。
- 兩者都重視TDD,但Superpowers要求先親眼見到測試失敗先寫code,mattpocock就要求先確認測試邊界。
- 用比喻嚟講:Superpowers似自動駕駛,mattpocock似輔助駕駛,反映對流程控制嘅取態。
- 選擇邊套,取決於你想讓Agent接管幾多流程,同埋項目本身係咪已經有清晰脈絡。
Superpowers
一套完整軟件開發方法論嘅Skill,包含brainstorming、TDD、代碼審查等硬性流程,適合想要自動化流水線嘅開發者。
mattpocock skill
一組細粒度、易組合嘅Skill,主打grill-me、grill-with-docs、tdd等,強調人機對齊同長期上下文。
兩種Skill,同一個問題
呢篇文章係我深度對比咗兩套近年好受歡迎嘅編程Agent Skill之後嘅整理:Superpowers同mattpocock skill。佢哋本質上都係想解決同一個問題。
點樣令Claude Code、Codex呢類Agent少犯錯,寫出更可靠、更容易維護嘅代碼。
但深入用落會發現,兩套Skill嘅設計哲學好唔同。
Superpowers想用完整流程管住Agent,mattpocock就主張俾開發者保留控制權。
Superpowers:一條龍軟件開發流水線
Superpowers喺GitHub有264k star,自稱唔係一組散裝Skill,而係一套完整嘅軟件開發方法論。佢設計咗一條相對固定嘅路線。
- 1 先用brainstorming反問用戶,理清需求
- 2 創建獨立嘅Git Worktree
- 3 將設計轉換成詳細嘅實現計劃
- 4 用子Agent分任務執行,並強制行TDD
- 5 每個階段都做代碼審查,最後驗證測試,決定合併、提交PR或保留分支
呢啲環節有明確先後關係,Superpowers甚至要求Agent執行任何任務前,先判斷有冇適用嘅Skill。
相關流程被定義為必須執行嘅約束,而唔係可選建議。
我認為呢個先係Superpowers最鮮明嘅特點:透過流程限制Agent嘅自由發揮。
mattpocock skill:工程師嘅輔助駕駛
mattpocock skill有197k star,作者Matt Pocock將佢定位成每日真實工程開發用嘅技能。
佢唔係用嚟「vibe coding」嘅自動化框架。
佢唔希望Skills接管成個開發過程,因為佢認為完整嘅Agent開發框架會令開發者失去控制,出問題嗰陣好難修正。
所以佢將Skills模組設計得更細、更容易修改同組合。
最有代表性嘅功能係grill-me,佢會令Agent不停追問需求,直到計劃入面嘅決策明確。grill-with-docs仲會幫助項目記錄專有術語,維護CONTEXT.md,並將重要架構決策寫入ADR。
兩者都講TDD,但重點唔同
兩套Skill都將TDD放喺核心位置,都要求先寫測試用例再進行最小實現。但佢哋對TDD嘅關注點唔同。
Superpowers更強調流程紀律:Agent必須先親眼驗證測試失敗先可以寫code。
- Superpowers嚴格執行紅、綠、重構循環,唔允許喺測試完成之前開發。
- mattpocock嘅tdd強調測試邊界,寫測試前要先確認喺邊啲邊界上測試,然後按垂直切片逐個推進。
mattpocock每次只完成一個測試同對應嘅最小實現,而Superpowers就將成個測試節奏變成硬性關卡。
點樣選擇?睇你想讓Agent接管幾多
用一句話概括兩者嘅區別:Superpowers係自動駕駛,mattpocock係輔助駕駛。
Superpowers嘅brainstorming幫你理清模糊諗法,mattpocock嘅grill-me就係你本身有方案,只係要對齊顆粒度。
- 從零開始、範圍大、可清晰拆分任務嘅項目:揀Superpowers,流程完整,可以減少Agent長期執行時偏離目標嘅機會。
- 已經存在一段時間、或者自己好清楚點開發嘅項目:揀mattpocock,可以淨係用想用嘅Skill,唔使接受整套流程。
你可以淨係用grill-with-docs完善領域模型,用diagnosing-bugs排查問題,最後用code-review做審查。
喺之前嘅文章入面,我多次提到或者推薦過呢兩套 Skill,亦都做過簡單對比。
它們本質上解決嘅係同一個問題:點樣令 Claude Code、Codex 呢類編程 Agent 少犯錯,寫出更可靠、更容易維護嘅代碼。
最近我深度對比咗兩套技能,仔細睇落嚟,佢哋代表嘅係兩種唔同嘅 Agent 編程方式。
01Superpowers
到目前為止,Superpowers 嘅 GitHub 倉庫攞到咗 264k star。
它在 README 入面對自己嘅定位係:唔單止係一組零散嘅 Skills,而係一套完整嘅軟件開發方法論。

用過 Superpowers 嘅朋友應該都知道,佢為開發過程設計咗一條相對固定嘅路徑:
- 先通過
brainstorming反問用戶搞清楚需求 - 建立獨立嘅 Git Worktree
- 將設計轉換成詳細嘅實現計劃
- 用子 Agent 分任務執行
- 喺實現過程入面強制執行 TDD(測試驅動開發)
- 對每個階段都做代碼審查
- 最後驗證測試,然後決定合併、提交 PR 或者保留分支
呢啲環節之間存在明確嘅先後關係。
Superpowers 甚至要求 Agent 喺執行任何任務之前,都要先判斷有冇適用嘅 Skill。相關流程被定義為必須執行嘅約束,而唔係可選建議。
呢個亦都係我認為 Superpowers 最鮮明嘅特點:佢試圖透過流程限制 Agent 嘅自由發揮。
02mattpocock skill
到目前為止,mattpocock skill 嘅 GitHub 倉庫攞到咗 197k star。
Matt Pocock 將自己嘅 Skills 描述為:呢啲係佢每日用喺真實工程開發嘅技能,而唔係用嚟進行「vibe coding」嘅自動化框架。

佢並唔希望 Skills 接管成個開發過程。相反,佢認為某啲完整嘅 Agent 開發框架會令開發者失去控制,而且喺流程出現問題嘅時候好難修正。所以,佢將自己嘅 Skills 模組設計得更細,亦都更容易修改同組合。
當中最有代表性嘅功能就係 grill-me。
grill-me 會令 Agent 不停追問需求,直到計劃入面嘅決策明確為止。grill-with-docs 喺呢個基礎上,仲會幫項目記錄專有術語,維護 CONTEXT.md,而且將重要嘅架構決策寫入 ADR。
Matt 嘅核心判斷係,Agent 產生錯誤代碼嘅首要原因通常唔係因為模型能力不足,而係人類同 Agent 冇真正對齊。
所以,mattpocock skill 更加重視項目嘅長期上下文。佢希望 Agent 同開發者逐漸形成一套共享語言,令函數、文件、測試同討論都用相同嘅領域概念。
03兩者都重視 TDD,但係重點唔同
Superpowers 同 mattpocock skills 都將 TDD(測試驅動開發)放喺非常核心嘅位置,亦都要求先寫測試用例,再進行最小實現。
不過,佢哋對 TDD 嘅關注點並唔完全一樣。
Superpowers 更加強調流程紀律。Agent 必須親眼驗證測試失敗咗,先至可以進行編碼。佢唔允許喺測試完成之前進行開發工作,成個過程強調嚴格執行紅、綠、重構循環。
mattpocock 嘅 tdd Skill 就更加強調測試邊界。
喺寫測試之前,開發者同 Agent 仲要首先確認應該喺邊啲邊界上進行測試。測試會按照垂直切片逐個推進,每次只完成一個測試同對應嘅最小實現。
04自動駕駛同輔助駕駛
如果要用一句話概括兩者嘅分別,我會將 Superpowers 睇成自動駕駛系統,將 mattpocock skills 睇成工程師嘅輔助駕駛工具。
Superpowers 嘅 brainstorming 顧名思義更加似頭腦風暴,目的係幫助開發者釐清模糊嘅想法。
而 mattpocock 嘅 grill-me 更加似你個腦入面已經有咗方案,只係需要同 Agent 對齊顆粒度,然後確定細節。
Superpowers 希望建立一條穩定、可重複嘅軟件生產流水線。需求澄清、設計、計劃、實現、測試、審查同合併都有對應嘅 Skill。只要開發者認可呢套方法,就可以將較長嘅任務交畀 Agent 按流程持續執行。
mattpocock skills 就保留咗更多人為控制權。佢冇強迫所有項目都行同一條完整流水線。開發者可以淨係使用 grill-me 釐清需求,亦都可以單獨安裝 tdd 或者同代碼審查相關嘅 Skill。
呢種方式更加靈活,但亦都意味住開發者需要自己判斷應該喺咩時候調用邊啲能力。
05點樣揀
對於一個由零開始、範圍比較大,而且可以清晰拆分任務嘅項目,我會更加傾向用 Superpowers。
佢嘅優勢係流程完整。尤其係喺需求容易失控、Agent 可能連續工作比較長時間嘅情況下,設計確認、任務拆分、Worktree 隔離、子 Agent 審查同驗證,都可以減少 Agent 喺執行過程中逐漸偏離目標嘅概率。
但對於已經存在一段時間嘅項目,或者我自己已經非常清楚應該點樣開發嘅時候,我會更加鍾意 mattpocock skills。
佢唔會要求我為咗修改一個功能而接受成套流程。我可以使用 grill-with-docs 完善領域模型,用 diagnosing-bugs 排查複雜問題,最後調用 code-review 做代碼審查。
好難講邊一種更好,真正嘅分別在於,你想 Agent 接管幾多流程、保留幾多控制權。
06推薦閲讀
在之前的文章中,我多次提到或安利過這兩套 Skill,也進行過簡單對比。
它們本質上解決的是同一個問題:如何讓 Claude Code、Codex 這類編程 Agent 少犯錯誤,寫出更可靠、更容易維護的代碼。
最近深度對比使用了兩套技能,仔細看下來,它們代表的是兩種不同的 Agent 編程方式。
01Superpowers
截至目前,Superpowers 的 GitHub 倉庫獲得了 264k star。
它在 README 中對自己的定位是:不只是一組零散的 Skills,而是一套完整的軟件開發方法論。

使用過 Superpowers 的朋友們應該都知道,它為開發過程設計了一條相對固定的路徑:
- 先通過
brainstorming反問用戶理清需求 - 創建獨立的 Git Worktree
- 將設計轉換成詳細的實現計劃
- 使用子 Agent 分任務執行
- 在實現過程中強制執行 TDD(測試驅動開發)
- 對每個階段都進行代碼審查
- 最後驗證測試並決定合併、提交 PR 或保留分支
這些環節之間存在明確的先後關係。
Superpowers 甚至要求 Agent 在執行任何任務前,都要先判斷是否存在適用的 Skill。相關流程被定義為必須執行的約束,而不是可選建議。
這也是我認為 Superpowers 最鮮明的特點:它試圖通過流程限制 Agent 的自由發揮。
02mattpocock skill
截至目前,mattpocock skill 的 GitHub 倉庫獲得了 197k star。
Matt Pocock 將本人的 Skills 描述為:這些是他每天用於真實工程開發的技能,而不是用來進行“vibe coding”的自動化框架。

他並不希望 Skills 接管整個開發過程。相反,他認為某些完整的 Agent 開發框架會讓開發者失去控制,並且在流程出現問題時難以修正。因此,他將自己的 Skills 模塊設計得更小,也更容易修改和組合。
其中最有代表性的功能就是 grill-me。
grill-me 會讓 Agent 不斷追問需求,直到計劃中的決策明確。grill-with-docs 在此基礎上,還會幫助項目記錄專有術語,維護 CONTEXT.md,並將重要的架構決策寫進 ADR。
Matt 的核心判斷是,Agent 產生錯誤代碼的首要原因通常不是因為模型能力不足,而是人類與 Agent 沒有真正對齊。
因此,mattpocock skill 更重視項目的長期上下文。它希望 Agent 和開發者逐漸形成一套共享語言,讓函數、文件、測試和討論都使用相同的領域概念。
03兩者都重視 TDD,但重點不同
Superpowers 和 mattpocock skills 都把 TDD(測試驅動開發)放在非常核心的位置,也都要求先寫測試用例,再進行最小實現。
不過,它們對 TDD 的關注點並不完全相同。
Superpowers 更強調流程紀律。Agent 必須先親眼驗證測試失敗,才能進行編碼。它不允許在測試完成之前進行開發工作,整個過程強調嚴格執行紅、綠、重構循環。
mattpocock 的 tdd Skill 則更強調測試邊界。
在編寫測試前,開發者和 Agent 還需要先確認應該在哪些邊界上進行測試。測試會按照垂直切片逐個推進,每次只完成一個測試和對應的最小實現。
04自動駕駛與輔助駕駛
如果要用一句話概括兩者的區別,我會把 Superpowers 看成自動駕駛系統,把 mattpocock skills 看成工程師的輔助駕駛工具。
Superpowers 的 brainstorming 顧名思義更像是頭腦風暴,旨在幫助開發者理清模糊的想法。
而 mattpocock 的 grill-me 更像是你的腦海裏已經有了方案,只是需要與 Agent 對齊顆粒度並確定細節。
Superpowers 希望建立一條穩定、可重複的軟件生產流水線。需求澄清、設計、計劃、實現、測試、審查和合並都有對應的 Skill。只要開發者認可這套方法,就可以將較長的任務交給 Agent 按流程持續執行。
mattpocock skills 則保留了更多人為控制權。它沒有強迫所有項目都走同一條完整流水線。開發者可以只使用 grill-me 澄清需求,也可以單獨安裝 tdd 或代碼審查相關的 Skill。
這種方式更靈活,但也意味着開發者需要自己判斷應該在什麼時候調用哪些能力。
05如何選擇
對於一個從零開始、範圍較大,而且可以清晰拆分任務的項目,我更傾向於使用 Superpowers。
它的優勢是流程完整。尤其是在需求容易失控、Agent 可能連續工作較長時間的情況下,設計確認、任務拆分、Worktree 隔離、子 Agent 審查和驗證,都可以減少 Agent 在執行過程中逐漸偏離目標的概率。
但對於已經存在一段時間的項目,或者我自己已經非常清楚應該怎樣開發時,我會更喜歡 mattpocock skills。
它不會要求我為了修改一個功能而接受整套流程。我可以使用 grill-with-docs 完善領域模型,使用 diagnosing-bugs 排查複雜問題,最後調用 code-review 進行代碼審查。
很難說哪一種更好,真正的區別在於,你希望 Agent 接管多少流程、保留多少控制權。