指令用途
/implement 根據規格文件或一組 tickets 來執行實作工作。它會讀取規格或 tickets,自動進行程式碼編寫、測試、驗證,並在完成後進行 commit。
這就像有一個自動化的開發人員在幫你實作功能。
運作流程
- 讀取輸入:可以是規格文件、ticket 檔案,或 issue tracker 中的 tickets。
- 分析任務:理解需要實作的內容。
- 執行實作:按照規格或 tickets 進行程式碼編寫。
- 執行測試:編寫並執行測試。
- 驗證結果:確認實作符合規格或 tickets。
- Commit:將程式碼提交到版本控制系統。
實戰對話範例
範例一:根據規格實作
- You:
/implement --spec=docs/specs/product-search.md - AI:
正在讀取規格…
規格內容:
- 問題:使用者需要更快地找到商品
- 解決方案:新增搜尋功能
- 約束:不使用外部搜尋服務,搜尋時間 < 100ms
- 驗收標準:使用者可以搜尋商品,搜尋時間 < 100ms
開始實作…
Step 1: 設計搜尋介面
- 建立搜尋服務介面:
ISearchService - 定義搜尋方法:
search(query: string): Product[]
Step 2: 實作搜尋邏輯
- 建立搜尋服務實作:
InMemorySearchService - 使用簡單的字串匹配
Step 3: 優化搜尋效能
- 使用索引預先建立搜尋空間
- 搜尋時間優化至 < 50ms
Step 4: 建立測試
- 單元測試:測試搜尋邏輯
- 效能測試:測試搜尋時間
測試結果:✅ 所有測試通過
驗證結果:✅ 符合規格要求
Commit:
feat(product-search): 新增商品搜尋功能 - 建立搜尋服務介面和實作 - 優化搜尋效能至 < 50ms - 添加單元測試和效能測試
範例二:根據 tickets 實作
- You:
/implement --tickets=docs/tickets/2026-08-02-auth-system/ - AI:
正在讀取 tickets…
識別到的 tickets:
- Ticket #1: 設計 token 生成介面
- Ticket #2: 實作 token 生成邏輯
- Ticket #3: 設計 token 驗證介面
- Ticket #4: 實作 token 驗證邏輯
- Ticket #5: 設計 token 撤銷介面
- Ticket #6: 實作 token 撤銷邏輯
- Ticket #7: 更新所有 API 使用 token 驗證
- Ticket #8: 添加單元測試
分析依賴關係:
- Ticket #2 依賴 Ticket #1
- Ticket #4 依賴 Ticket #2 和 Ticket #3
- Ticket #6 依賴 Ticket #4 和 Ticket #5
- Ticket #7 依賴 Ticket #4
- Ticket #8 依賴 Ticket #6 和 Ticket #7
開始實作…
Ticket #1: 設計 token 生成介面
- 建立介面:
ITokenGenerator - 定義方法:
generate(userId: string): string - ✅ 完成
Ticket #2: 實作 token 生成邏輯
- 建立實作:
JwtTokenGenerator - 使用 jsonwebtoken 套件
- ✅ 完成
Ticket #3: 設計 token 驗證介面
- 建立介面:
ITokenValidator - 定義方法:
validate(token: string): ValidationResult - ✅ 完成
Ticket #4: 實作 token 驗證邏輯
- 建立實作:
JwtTokenValidator - 驗證簽名和過期時間
- ✅ 完成
Ticket #5: 設計 token 撤銷介面
- 建立介面:
ITokenRevoker - 定義方法:
revoke(token: string): void - ✅ 完成
Ticket #6: 實作 token 撤銷邏輯
- 建立實作:
TokenBlacklistRevoker - 使用 Redis 作為 blacklist
- ✅ 完成
Ticket #7: 更新所有 API 使用 token 驗證
- 更新 API middleware
- 所有 API 要求 token 驗證
- ✅ 完成
Ticket #8: 添加單元測試
- 測試 token 生成邏輯
- 測試 token 驗證邏輯
- 測試 token 撤銷邏輯
- ✅ 所有測試通過
Commit:
feat(auth): 實作 JWT token 認證系統 - 實作 token 生成、驗證、撤銷邏輯 - 更新所有 API 使用 token 驗證 - 添加完整的單元測試
輸入格式
規格檔案
/implement --spec=docs/specs/[spec-name].md
規格檔案格式參考 /to-spec 的輸出。
Ticket 檔案
/implement --tickets=docs/tickets/[ticket-set-name]/
Ticket 檔案格式參考 /to-tickets 的輸出。
Issue Tracker
/implement --issue=45
直接指定 issue ID,實作該 issue 中的規格或 tickets。
最佳實踐
- 確保規格或 tickets 清晰明確:模糊的規格會導致實作不符合預期
- 提供足夠的上下文:讓 AI 理解專案的架構和約束
- 設置合理的驗收標準:明確知道什麼時候算完成
- 定期檢查進度:確保實作方向正確
何時使用
- 已經完成規格或 tickets,需要實作
- 需要自動化執行重複性的實作工作
- 需要確保實作符合規格或 tickets
- 需要自動生成測試
何時不應該使用
- 規格或 tickets 還未完成
- 需要人類判斷的複雜決策
- 需要大量的上下文理解
與其他技能的區別
| 技能 | 目的 | 輸入 | 輸出 |
|---|---|---|---|
/to-spec |
整理對話為規格 | 對話 | Issue (規格) |
/to-tickets |
拆分為 tickets | 規格/對話 | Tickets |
/implement |
實作 tickets | 規格/tickets | 程式碼 + commit |