Skills 系統運作
Superpowers 的核心是 Skills 系統——一個可組合、可重複使用的開發技能庫。
Skills 的架構
基本結構
每個 Skill 都包含以下組成部分:
1. 觸發詞(Triggers)
觸發詞是啟動特定 Skill 的關鍵字組:
"brainstorming" skill 的觸發詞:
- brainstorm
- brainstorming
- 探索
- 發想
- 創意發散
當您在對話中使用這些詞彙時,AI 會識別出您想要使用該 Skill。
2. 使用時機(When to Use)
每個 Skill 都明確定義了適用的情境:
- ✅ 適用情境:明確列出何時使用該 Skill
- ❌ 不適用情境:說明何時不應該使用
3. 實際範例(Examples)
提供具體的使用範例,展示:
- 使用者輸入範例
- AI 的回應範例
- 完整的對話流程
Skills 的類型系統
分析型 Skills
特點:在實作前進行分析和思考
- Brainstorming:創意發散、需求探索
- Systematic Debugging:系統化問題診斷
規劃型 Skills
特點:制定詳細的實作計畫
- Writing Plans:撰寫實作計畫
- Test-Driven Development:TDD 方法論
執行型 Skills
特點:執行既定的計畫或任務
- Executing Plans:執行實作計畫
- Finishing Development Branch:完成開發分支
驗證型 Skills
特點:驗證和確認實作結果
- Verification Before Completion:完成前驗證
- Requesting Code Review:請求程式碼審查
- Receiving Code Review:接收程式碼審查回饋
Skills 的使用流程
1. 識別需求
首先識別當前的開發需求:
- 需要探索新功能?
- 需要制定計畫?
- 需要除錯問題?
- 需要驗證結果?
2. 選擇 Skill
根據需求選擇合適的 Skill:
需求:探索新功能方向
↓
選擇:Brainstorming Skill
3. 觸發 Skill
使用觸發詞啟動 Skill:
「使用 brainstorming skill 探索使用者認證功能的多種實作方式」
4. 執行流程
AI 會按照 Skill 的定義執行相應的流程:
Brainstorming Skill 執行流程:
1. 理解問題背景
2. 發散多種可能方案
3. 分析每種方案的優缺點
4. 提供建議和推薦
5. 組合應用
單個 Skill 可能不足以完成複雜任務,需要組合多個 Skills:
完整功能開發流程:
brainstorming → writing-plans → test-driven-development
→ verification-before-completion
Skills 的進階使用
條件式組合
根據任務特性動態組合 Skills:
簡單任務:
writing-plans → executing-plans
複雜任務:
brainstorming → writing-plans → test-driven-development
→ systematic-debugging → verification
→ requesting-code-review
迭代式優化
使用同一組 Skills 進行迭代優化:
第一輪:brainstorming → writing-plans → executing-plans
第二輪:systematic-debugging → verification
第三輪:verification → requesting-code-review
錯誤處理
當遇到問題時,使用特定的 Skills:
遇到 Bug:
systematic-debugging → verification-before-completion
收到審查意見:
receiving-code-review → executing-plans → verification
Skills 的最佳實踐
1. 明確意圖
使用明確的觸發詞和清晰的需求描述:
- ✅ 好:「使用 brainstorming skill 探索使用者註冊的多種實作方式」
- ❌ 差:「幫我想一些使用者註冊的點子」
2. 適當組合
不要過度組合 Skills,選擇最需要的:
- 小型任務:2-3 個 Skills
- 中型任務:4-6 個 Skills
- 大型任務:6-8 個 Skills
3. 驗證結果
每次使用 Skills 後,都要驗證結果:
- 使用
verification-before-completionskill - 測試實際的程式碼
- 確認符合預期
4. 記錄學習
記錄每次使用 Skills 的經驗:
- 哪些組合特別有效?
- 哪些 Skill 在特定情境下更好用?
- 如何優化使用流程?
常見問題
Q1:同時使用多個 Skills 會衝突嗎?
A:不會。Skills 設計為可以順序執行,每個 Skill 都有明確的輸入和輸出。
Q2:如何知道該用哪個 Skill?
A:根據當前的開發階段和任務類型選擇。參考各個 Skill 的「使用時機」說明。
Q3:可以自訂 Skills 嗎?
A:可以。Superpowers 支援自訂 Skills,但建議先熟悉現有 Skills 的使用方式。
Q4:Skills 適合所有專案嗎?
A:Skills 是通用的開發方法論,適用於大多數軟體開發專案。
下一步
理解 Skills 系統後,您可以:
開始使用 Skills 來提升您的開發效率!