Back to list
Tai-ch0802

sdd

by Tai-ch0802

A Chrome extension that mimics the vertical tabs of the Arc browser.

4🍴 2📅 Jan 24, 2026

SKILL.md


name: sdd description: "Spec-Driven Development (SDD): A structured workflow (Requirement -> Analysis -> Implementation) enforcing explicit documentation before coding."

Spec-Driven Development (SDD) Skill

本技能整合了 PRD (需求)SA (分析) 的知識,定義了本專案的標準開發流程。核心原則是 "No Spec, No Code"

核心原則

  1. Spec-First: 先有規格,才有程式碼
  2. Traceability: 每個需求都可追溯到設計與實作
  3. Acceptance-Driven: 每個需求都有可驗證的驗收條件
  4. Version Control: 規格文件有版本控制,變更需走流程
  5. Living Documentation: 程式碼變更必須同步更新規格,保持一致性

核心流程 (Core Workflow)

本專案採用三階段開發模式,所有產出物皆存放於按照 RULE_007 定義的 /docs/specs/ 目錄中。

Phase 1: Product Requirement (PRD)

  • 目標: 定義 "做什麼" (What) 和 "為什麼做" (Why)。
  • 檔案位置: /docs/specs/{type}/{ID-PREFIX}_{desc}/PRD_spec.md
  • 參考技能: prd (詳見 .agent/skills/prd/SKILL.md)
  • 快速指南: sdd/references/requirements.md
  • 關鍵內容:
    • User Stories (US-XX)
    • Functional Requirements (FR-XX, EARS syntax)
    • Acceptance Criteria (Given-When-Then) ⭐ 必要
    • Success Metrics / Out of Scope
  • 版本控制: 使用 Version 欄位 (e.g., v1.0)

Phase 2: System Analysis (SA)

  • 目標: 定義 "如何做" (How)。將業務需求轉化為技術規格。
  • 檔案位置: /docs/specs/{type}/{ID-PREFIX}_{desc}/SA_spec.md
  • 參考技能: sa (詳見 .agent/skills/sa/SKILL.md)
  • 快速指南: sdd/references/design.md
  • 關鍵內容:
    • Requirement Traceability Matrix ⭐ 必要
    • System Architecture (Mermaid)
    • API Specifications / Data Models
    • Test Impact Analysis ⭐ 必要
  • 版本控制: 標註對應的 PRD 版本

Phase 3: Implementation

  • 目標: 執行 SA 階段定義的任務。
  • 參考指南: sdd/references/tasks.md
  • 前置條件: PRD 和 SA 都必須進入 Approved/Frozen 狀態
  • 行動:
    • 依據 SA_spec.md 進行 Coding
    • Sync: 若實作發現設計需調整,必須先更新 SA/PRD
    • 對照 PRD_spec.md 的 Acceptance Criteria 進行驗收

命名規範 (Naming Convention)

目錄名稱格式:{ID_PREFIX}_{short-description}

ID_PREFIX 分為三種類型:

  1. ISSUE (標準): 對應 GitHub Issue ID。
    • 範例: ISSUE-123_tab-groups
    • 用途: 一般功能開發與 Bug 修復。
  2. PR (外部貢獻): 對應 Pull Request ID (若無 Issue)。
    • 範例: PR-456_typo-fix
    • 用途: 外部貢獻者直接提交的 PR。
  3. BASE (基底/歷史): 專案初始化或回溯補全的規格。
    • 範例: BASE-001_initial-architecture
    • 用途: 處理無對應 Issue 的歷史債務或基礎架構文件。

目錄結構範例

/docs/specs/
  ├── feature/
  │    └── ISSUE-101_tab-groups/   <-- Standard Flow
  │         ├── PRD_spec.md
  │         └── SA_spec.md
  └── fix/
       └── BASE-002_sync-bug/      <-- Legacy/Baseline
            ├── PRD_spec.md
            └── SA_spec.md

Agent 操作指引

當接到 User 任務時:

  1. Check Rule: 確認是否符合 RULE_007
  2. Scaffold: 使用 mkdir -p 建立正確的資料夾路徑。
  3. Draft PRD: 撰寫 PRD_spec.md必須包含 Acceptance Criteria
  4. Review Gate: 請求 User Review,等待核准。
  5. Draft SA: 撰寫 SA_spec.md必須包含 Requirement Traceability
  6. Review Gate: 請求 User Review,等待核准。
  7. Code: 核准後,開始實作。
  8. Verify: 對照 Acceptance Criteria 驗收。

Spec 變更流程

當 Spec 進入 Frozen 狀態後,任何變更需:

  1. 建立新版本 (e.g., v1.0 → v1.1)
  2. 在 Revision History 中記錄變更原因
  3. 重新取得 Reviewer 核准
  4. 更新相關的 Traceability Matrix

相關資源 (References)

PhaseQuick GuideFull Template
PRDsdd/references/requirements.mdprd/references/template_comprehensive.md
SAsdd/references/design.mdsa/references/system_design_doc.md
Taskssdd/references/tasks.md-

Score

Total Score

65/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

1ヶ月以内に更新

+10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

+5

Reviews

💬

Reviews coming soon