TechSummary 2025-09-02
· 閱讀時間約 27 分鐘
🚀 AI 驅動的規範式開發:GitHub 開源工具包 Spec Kit 入門
- 挑戰與解決方案: 隨著 AI 程式碼生成工具日益強大,傳統的「憑感覺寫程式」(vibe-coding) 方式常導致程式碼無法編譯或未能完全符合需求。GitHub 提出「規範式開發」(Spec-driven development),將規範視為活生生的可執行文件,作為工具與 AI 代理生成、測試、驗證程式碼的單一事實來源。
- Spec Kit 工具包: GitHub 開源工具包 Spec Kit 旨在將規範式開發引入 AI 程式碼生成工作流程,支援 GitHub Copilot、Claude Code 和 Gemini CLI 等工具。
- 四階段開發流程:
- Specify (規範): 提供高層次的「是什麼」和「為什麼」,AI 生成詳細的用戶旅程和預期成果規範。
- Plan (規劃): 提供技術棧、架構和限制,AI 生成全面的技術實作計劃。
- Tasks (任務): AI 將規範與計劃分解為可單獨實作與測試的小型任務。例如,從「建置認證」變成「創建驗證電子郵件格式的用戶註冊端點」。
- Implement (實作): AI 根據任務逐一生成程式碼,開發者審查針對特定問題的精確變更。
- 核心優勢:
- 意圖即真理: 從「程式碼是真理來源」轉變為「意圖是真理來源」,使規範可執行並自動轉化為工作程式碼。
- 減少猜測: 明確的規範、技術計劃和任務提供 AI 更高清晰度,提高其效率。
- 適用場景: 適用於從零開始的新專案 (Greenfield)、現有系統的功能擴展 (Feature work) 及遺留系統現代化 (Legacy modernization)。
- 大規模應用: 組織的安全政策、合規規則、設計系統限制等要求可直接整合到規範和計劃中,供 AI 使用。
- Spec Kit 使用範例 (CLI):
- 初始化專案:
uvx --from git+https://github.com/github/spec-kit.git specify init <PROJECT_NAME>
- 生成規範:
/specify "Build a new e-commerce product catalog with search functionality."
- 生成技術計劃:
/plan "Use Python, FastAPI, PostgreSQL, and integrate with Stripe for payments."
- 分解任務並實作:
/tasks
- 初始化專案: