GitHub 推出的 Spec-Kit 嘗試用 SDD(Spec-Driven Development) 的方式,把「規格 → 技術規劃 → 任務拆解」這條鏈路自動化,並且支援多種 AI CLI Agent,包括 Claude Code。
這篇文章會示範如何用 Claude Code + Spec-Kit,從零開始建立一個規格驅動的開發流程。

開發環境
- Windows 11 Pro
- Claude Code v1.0.120
- spec-kit:github/spec-kit: 💫 Toolkit to help you get started with Spec-Driven Development
安裝 Cluade
npm install -g @anthropic-ai/claude-code
安裝 Spec-Kit
Spec-Kit 的安裝方式很簡單,直接用 uvx
從 GitHub Repo 拉取:
uvx --from git+https://github.com/github/spec-kit.git specify init "Lab.EventBus.SpecKit"
my-sdd-project
:會建立一個資料夾,裡面放好 Spec-Kit 的初始檔案- 如果要在現有專案中初始化,加上
--here
即可
挑選 cli,或是直接指定 AI Cli
uvx --from git+https://github.com/github/spec-kit.git specify init "Lab.EventBus.SpecKit" --ai claude

我在 WSL 下,所以使用 sh


安裝後的目錄結構如下圖

Spec-Kit 三大指令
Spec-Kit 的核心是三個指令,對應 SDD 的三個階段:
指令 | 作用 | Claude Code 的角色 |
---|---|---|
/specify | 撰寫 產品需求文件(PRD),專注「是什麼、為什麼」 | 幫你釐清需求背景與目標 |
/plan | 根據 PRD 產生 技術規劃(Tech Plan) | 幫你決定技術棧、架構、限制 |
/tasks | 根據規格與規劃拆解成 可執行任務 | 幫你生成 TDD/BDD 任務清單 |
實際演練:Task Management Service
這裡我們用 Claude Code + Spec-Kit,做一個簡單的 App。
1. 初始化專案
uvx --from git+https://github.com/github/spec-kit.git specify init "Lab.EventBus.SpecKit"
cd "Lab.EventBus.SpecKit"
Spec-Kit 會建立好資料夾結構,並提示你下一步該做什麼。
2. 撰寫規格(/specify)
語法:
在 Claude Code 中輸入
/specify <需求>
需求,盡量描述清楚:
/specify 建立第一版的 Task Management Platform 集中管的理平台,需要以下 WebAPI 功能
1. 調用端呼叫建立任務 API,API 在 Queue 建立任務資訊
2. 調用端呼叫取出任務 API,API 從 Queue 取出任務資訊,並在資料庫新增任務資訊
3. 調用端呼叫執行任務 API,API 從資料庫取出任務資訊,欄位資訊包含了 Callback API 的位置
4. 調用端使用 HttpClient 呼叫 Callback API
注意:
- 編碼原則要參考 https://github.com/yaochangyu/api.template CLAUDE.md
- 實作的時要從 https://github.com/yaochangyu/api.template 複製出來改,改成符合需求的命名空間
- 文件需要流程圖、有限狀態機、循序圖,使用 mermaid 編寫。
產生
- ./specs/001-task-management-platform/spec.md
- 001-task-management-platform 分支
內容包含:
- 產品目標
- 使用者故事
- 功能清單
- 驗收條件
NOTE:這裡不會跟你互動採集需求,所以必須得靠自己盡可能的描述清楚,這點 Claude Code PM 做得比較好
結果如下圖:


3. 技術規劃(/plan)
語法:
/plan <需求>
計畫,這裡我把需要注意的事情也填上,確保 AI 按照規則:
/plan 001-task-management-platform
- 編碼原則要參考 https://github.com/yaochangyu/api.template CLAUDE.md
- 實作的時要從 https://github.com/yaochangyu/api.template 複製出來改,改成符合需求的命名空間
- 文件需要流程圖、有限狀態機、循序圖,使用 mermaid 編寫。
或者是輸入
/plan 001-task-management-platform
內容可能包含:
- 技術棧(例如 ASP.NET Core+PostgreSQL)
- 架構圖
- API 設計
- 資料庫 Schema
執行畫面如下:


NOTE:檢視文件,若有問題直接用對話的方式,修正文件,例如:TDD → BDD
4. 任務拆解(/tasks)
語法:
/tasks <需求>
/tasks 001-task-management-platform
列出可執行的任務,例如:
- [ ] 建立 Flutter 專案骨架
- [ ] 實作 Todo Model 與 SQLite 儲存
- [ ] 寫新增/刪除/完成的 UI 與邏輯
- [ ] 撰寫單元測試與整合測試
執行畫面如下:

NOTE:檢視文件,若有問題直接用對話的方式,修正文件
5. 實作(/implement)
語法:
/implement <需求>
/implement 001-task-management-platform
或是單一編號
/implement T001
執行畫面如下:

心得
這次用 Claude Code + Spec-Kit 的感覺是:
- 優點
- 規格、規劃、任務全自動生成,減少遺漏
- 支援多種 AI CLI Agent,不綁死在單一平台
- 對 TDD/BDD 友好,任務清單可直接對應測試案例
- 限制
- 目前偏向「文件生成」,實作階段還是要自己接手
- 規格品質取決於你輸入的描述精準度
範例位置
sample.dotblog/AI.SDD/Lab.EventBus.SpecKit at master · yaochangyu/sample.dotblog
若有謬誤,煩請告知,新手發帖請多包涵
Microsoft MVP Award 2010~2017 C# 第四季
Microsoft MVP Award 2018~2022 .NET