13 KiB
13 KiB
Vibe-Kanban 工作流程 - 技能整合規劃
版本: 3.0
日期: 2025-01-15
狀態: 實施階段
執行摘要
本規劃整合多個現有技能,建立完整的軟體開發工作流程。
總計: 11 個現有技能 + 5 個新建技能
Agent: 8 個核心 Agent + 1 個主控協調器
階段: 12 個工作流程階段
現有技能整合清單
核心技能(直接使用)
| Skill | 來源 | 用途 | 整合階段 |
|---|---|---|---|
brainstorming |
skills | PM 需求探索 | Stage 1 |
plan-ceo-review |
gstack | CEO 商業價值審核 | Stage 2 |
write-a-prd |
skills | PRD 撰寫(含訪談) | Stage 3 |
grill-me |
skills | 深度驗證閘門 | Stage 3.5 |
prd-to-plan |
skills | 實作計畫產出 | Stage 8 |
design-an-interface |
skills | API 介面設計 | Stage 4 |
tdd |
skills | 測試驅動開發 | Stage 9 |
qa |
skills | QA 測試驗收 | Stage 10 |
review |
gstack | PR 代碼審核 | Stage 11 |
land-and-deploy |
gstack | 部署流程 | Stage 12 |
cso |
gstack | 安全審核 | Stage 7/11 |
codex |
gstack | 多 AI 代碼審核 | Stage 11 |
新增技能(需實作)
| Skill | 用途 | 優先級 |
|---|---|---|
vibe-kanban |
主控協調器 | P0 |
be-api-design |
OpenAPI 規格產出 | P1 |
go-backend-dev |
Golang 後端實作 | P1 |
dba-schema |
資料庫 Schema 設計 | P1 |
ux-prototype |
UX 原型設計 | P2 |
Agent 角色定義
| # | Agent | 角色 | 主要技能 |
|---|---|---|---|
| 1 | Orchestrator | 主控協調器 | vibe-kanban |
| 2 | PM Agent | 產品經理 | brainstorming, write-a-prd |
| 3 | CEO Reviewer | 商業決策者 | plan-ceo-review |
| 4 | Backend Agent | Golang 後端工程師 | be-api-design, go-backend-dev, design-an-interface, tdd |
| 5 | DBA Agent | 資料庫工程師 | dba-schema |
| 6 | UX Agent | 使用者體驗設計師 | ux-prototype |
| 7 | QA Agent | 品質保證工程師 | qa |
| 8 | DevOps Agent | 運維工程師 | land-and-deploy |
| 9 | Design Reviewer | 設計審核者 | design-review |
| 10 | Security Reviewer | 安全審核者 | cso |
| 11 | Code Reviewer | 代碼審核者 | review, codex |
完整工作流程(含 Grill-Me 整合)
┌─────────────────────────────────────────────────────────────────────────────┐
│ VIBE-KANBAN + GRILL-ME 工作流程 │
└─────────────────────────────────────────────────────────────────────────────┘
Stage 1: Brainstorming (PM Agent)
├── Skill: brainstorming
├── 輸入: 使用者想法
├── 輸出: docs/brainstorm/{date}-{feature}.md
└── 下一步: CEO Review
Stage 2: CEO Review (CEO Reviewer)
├── Skill: plan-ceo-review
├── 輸入: Brainstorm 文件
├── 輸出: docs/ceo-review/{date}-{feature}.md
└── 下一步: PRD 撰寫
Stage 3: PRD 撰寫 (PM Agent)
├── Skill: write-a-prd
├── 輸入: CEO Review 結果
├── 輸出: docs/prd/{date}-{feature}.md (初版)
└── 下一步: 深度驗證 (可選)
Stage 3.5: 深度驗證 ⭐ GRILL-ME 整合點
├── Skill: grill-me
├── 觸發條件: 使用者選擇 "進行深度驗證"
├── 輸入: PRD 初版
├── 驗證項目:
│ ├── 每個功能性需求的完整性
│ ├── 使用者故事的邊界情況
│ ├── 非功能性需求的遺漏
│ ├── 驗收標準的可測試性
│ └── 潛在風險和依賴
├── 輸出: 強化後的 PRD
└── 下一步: API Design
Stage 4: API Design (Backend Agent)
├── Skill: be-api-design + design-an-interface
├── 輸入: PRD
├── 輸出: docs/api/{date}-{feature}.yaml
└── 下一步: DB Schema (平行)
Stage 5: DB Schema (DBA Agent)
├── Skill: dba-schema
├── 輸入: API 規格
├── 輸出: docs/db/{date}-{feature}.sql
└── 下一步: UX Prototype (平行)
Stage 6: UX Prototype (UX Agent)
├── Skill: ux-prototype
├── 輸入: PRD + API + DB
├── 輸出: docs/design/{date}-{feature}/
└── 下一步: Design Review
Stage 7: Design Review (Design Reviewer)
├── Skill: design-review
├── 輸入: 所有設計文件
├── 輸出: docs/design/review-report.md
├── 決策點:
│ ├── ✅ 通過 → Task Breakdown
│ └── ❌ 退回 → PRD 修改
└── 下一步: Task Breakdown
Stage 8: Task Breakdown (Orchestrator)
├── Skill: prd-to-plan
├── 輸入: 所有設計文件
├── 輸出: ./plans/{feature}.md
└── 下一步: 實作 (平行)
Stage 9: Implementation (Backend + Frontend Agents)
├── Backend Skill: go-backend-dev + tdd
├── Frontend Skill: (現有技能或手動)
├── 輸入: 實作計畫
├── 輸出: 程式碼
└── 下一步: QA
Stage 10: QA (QA Agent)
├── Skill: qa
├── 輸入: 程式碼 + 驗收標準
├── 輸出: .gstack/qa-reports/qa-report.md
├── 決策點:
│ ├── ✅ 通過 → PR Review
│ └── ❌ 失敗 → 退回 Task Breakdown
└── 下一步: PR Review
Stage 11: PR Review (Code Reviewer)
├── Skill: review + codex
├── 輸入: PR
├── 輸出: PR 審核報告
├── 決策點:
│ ├── ✅ 通過 → Deploy
│ └── ❌ 失敗 → 退回 Task Breakdown
└── 下一步: Deploy
Stage 12: Deploy (DevOps Agent)
├── Skill: land-and-deploy
├── 輸入: 已核准 PR
├── 輸出: .gstack/deploy-reports/deploy-report.md
└── 🎉 完成
Grill-Me 深度驗證詳細設計
觸發機制
在每個關鍵階段後,Orchestrator 會詢問:
╔══════════════════════════════════════════════════════════════╗
║ 🔥 深度驗證機會 ║
╠══════════════════════════════════════════════════════════════╣
║ ║
║ 當前階段: PRD 撰寫 ║
║ 狀態: ✅ 初版已完成 ║
║ ║
║ 是否需要進行深度驗證 (grill-me)? ║
║ 這將透過密集訪談壓力測試計畫的完整性。 ║
║ ║
║ [A] 是 - 進行深度驗證 (推薦用於關鍵功能) ║
║ [B] 否 - 直接進入下一階段 ║
║ ║
╚══════════════════════════════════════════════════════════════╝
驗證檢查清單
Stage 3.5 - PRD 深度驗證
驗證項目:
功能性需求:
- "每個 FR 是否有明確的驗收標準?"
- "使用者故事是否覆蓋所有使用者角色?"
- "是否有遺漏的邊界情況?"
非功能性需求:
- "效能需求是否具體可量測?"
- "安全性需求是否完整?"
- "可用性和可靠性是否考量?"
技術可行性:
- "現有技術棧是否支援?"
- "是否有外部依賴風險?"
- "擴展性是否考量?"
業務邏輯:
- "所有業務規則是否明確?"
- "錯誤處理流程是否定義?"
- "狀態轉換是否清晰?"
整合流程圖
graph TD
A[Stage 3: PRD 初版] --> B{深度驗證?}
B -->|是| C[Stage 3.5: grill-me]
B -->|否| D[Stage 4: API Design]
C --> C1[問題 1: 需求完整性]
C1 --> C2[問題 2: 邊界情況]
C2 --> C3[問題 3: 風險評估]
C3 --> C4[...更多問題]
C4 --> E[強化 PRD]
E --> D
D --> F[後續階段]
各階段交付文件
| 階段 | Agent | 主要技能 | 輔助技能 | 交付文件 |
|---|---|---|---|---|
| 1 | PM | brainstorming | - | docs/brainstorm/{date}-{feature}.md |
| 2 | CEO Reviewer | plan-ceo-review | - | docs/ceo-review/{date}-{feature}.md |
| 3 | PM | write-a-prd | - | docs/prd/{date}-{feature}.md (初版) |
| 3.5 | PM | grill-me | - | docs/prd/{date}-{feature}.md (強化版) |
| 4 | Backend | be-api-design | design-an-interface | docs/api/{date}-{feature}.yaml |
| 5 | DBA | dba-schema | - | docs/db/{date}-{feature}.sql |
| 6 | UX | ux-prototype | - | docs/design/{date}-{feature}/ |
| 7 | Design Reviewer | design-review | cso | docs/design/review-report.md |
| 8 | Orchestrator | prd-to-plan | dispatching-parallel-agents | ./plans/{feature}.md |
| 9 | Backend | go-backend-dev | tdd | internal/, cmd/, pkg/ |
| 10 | QA | qa | - | .gstack/qa-reports/qa-report.md |
| 11 | Code Reviewer | review | codex | PR 審核報告 |
| 12 | DevOps | land-and-deploy | - | .gstack/deploy-reports/deploy-report.md |
技能依賴關係
技能依賴:
brainstorming:
輸入: 使用者想法
輸出: brainstorm.md
plan-ceo-review:
輸入: brainstorm.md
輸出: ceo-review.md
write-a-prd:
輸入: ceo-review.md
輸出: prd.md (初版)
grill-me: # 可選
輸入: prd.md (初版)
輸出: prd.md (強化版)
依賴: write-a-prd
be-api-design:
輸入: prd.md
輸出: api-spec.yaml
輔助: design-an-interface
dba-schema:
輸入: api-spec.yaml
輸出: schema.sql
ux-prototype:
輸入: prd.md, api-spec.yaml, schema.sql
輸出: design/
design-review:
輸入: design/
輸出: review-report.md
prd-to-plan:
輸入: prd.md, api-spec.yaml, design/
輸出: ./plans/{feature}.md
go-backend-dev:
輸入: ./plans/{feature}.md
輸出: 程式碼
輔助: tdd
qa:
輸入: 程式碼, prd.md (驗收標準)
輸出: qa-report.md
review:
輸入: PR
輸出: pr-review.md
輔助: codex
land-and-deploy:
輸入: pr-review.md (已核准)
輸出: deploy-report.md
Golang 後端特定規則(go-backend-dev)
架構風格
預設架構: Clean Architecture (適合中型專案)
專案結構:
cmd/api/main.go # 進入點
internal/
domain/ # Entities, Value Objects
usecase/ # Business Logic
interface/
http/ # Handlers
repository/ # Repository interfaces
infrastructure/ # DB, Cache implementations
pkg/
logger/ # Zap
errors/ # 自定義錯誤
validator/ # go-playground/validator
api/openapi.yaml
migrations/
test/
編碼規範
命名:
Package: 小寫單數 (user, not users)
Interface: 方法名 + 'er' (Reader, Writer)
Exported: PascalCase
Internal: camelCase
錯誤處理:
- Always check errors
- Error strings lowercase
- Use fmt.Errorf with %w
API 設計:
RESTful: /api/v1/{resource}
狀態碼: 200, 201, 400, 401, 404, 422, 500
測試:
- Unit tests >= 80% 覆蓋率
- Integration tests for critical paths
- Use testify + mockery
實作優先順序
Phase 1: 核心框架 (Week 1)
| 優先級 | Skill | 複雜度 | 說明 |
|---|---|---|---|
| P0 | vibe-kanban | 高 | 主控協調器,整合所有技能 |
| P0 | grill-me 整合 | 中 | 設計深度驗證流程 |
Phase 2: 設計階段技能 (Week 2)
| 優先級 | Skill | 複雜度 | 說明 |
|---|---|---|---|
| P1 | be-api-design | 中 | OpenAPI 規格產出 |
| P1 | go-backend-dev | 高 | Golang 後端實作 |
| P1 | dba-schema | 中 | 資料庫設計 |
Phase 3: 整合測試 (Week 3)
- 整合所有現有技能
- 端到端流程測試
- 退回機制測試
Phase 4: 優化 (Week 4)
- 效能優化
- 文件完善
- 使用指南
附錄
A. 技術棧建議
Golang 後端:
- 框架: Gin 或 Echo
- ORM: GORM 或 sqlx
- 配置: Viper
- 日誌: Zap
- 驗證: go-playground/validator
- 測試: testify + mockery
- 文件: swag (Swagger)
資料庫:
- 主要: PostgreSQL
- 快取: Redis
- 遷移: golang-migrate/migrate
部署:
- 容器: Docker
- CI/CD: GitHub Actions
B. 參考資源
- Uber Go Style Guide
- golang-standards/project-layout
- Go Clean Architecture
- A Philosophy of Software Design (for grill-me 概念)
下一步: 開始實作 vibe-kanban 主控技能?