prd

prd

熱門

為新功能產生產品需求文件(PRD)。在規劃功能、啟動新專案,或要求建立 PRD 時使用。觸發詞:建立 prd、為……撰寫 prd、規劃此功能、需求、規格說明。

2.2萬星標
2087分支
更新於 2026/2/2
SKILL.md
唯讀
名稱
prd
描述

為新功能產生產品需求文件(PRD)。在規劃功能、啟動新專案,或要求建立 PRD 時使用。觸發詞:建立 prd、為……撰寫 prd、規劃此功能、需求、規格說明。

PRD 產生器

建立清晰、可執行且適合實作的詳細產品需求文件。


工作內容

  1. 接收使用者的功能描述
  2. 提出 3-5 個必要的釐清問題(附選項)
  3. 根據回答產生結構化的 PRD
  4. 儲存至 tasks/prd-[feature-name].md

重要: 請勿開始實作。只需建立 PRD。


步驟 1:釐清問題

僅在初始提示不明確時提出關鍵問題。專注於:

  • 問題/目標: 此功能解決什麼問題?
  • 核心功能: 關鍵動作是什麼?
  • 範圍/界線: 不應包含什麼?
  • 成功標準: 我們如何知道已完成?

問題格式如下:

1. 此功能的主要目標是什麼?
   A. 改善新用戶的入門體驗
   B. 提高用戶留存率
   C. 減少支援負擔
   D. 其他:[請說明]

2. 目標用戶是誰?
   A. 僅限新用戶
   B. 僅限現有用戶
   C. 所有用戶
   D. 僅限管理員

3. 範圍為何?
   A. 最小可行版本
   B. 完整功能實作
   C. 僅後端/API
   D. 僅 UI

這讓使用者可以快速回覆「1A、2C、3B」。記得縮排選項。


步驟 2:PRD 結構

產生包含以下章節的 PRD:

1. 簡介/概述

功能及其解決問題的簡要描述。

2. 目標

具體、可衡量的目標(條列式)。

3. 使用者故事

每個故事需要:

  • 標題: 簡短的描述性名稱
  • 描述:「身為[用戶],我想要[功能],以便[益處]」
  • 驗收標準: 可驗證的檢查清單,定義「完成」的意義

每個故事應夠小,能在一次專注的會議中完成。

格式:

### US-001:[標題]
**描述:** 身為[用戶],我想要[功能],以便[益處]。

**驗收標準:**
- [ ] 具體可驗證的標準
- [ ] 另一個標準
- [ ] 型別檢查/lint 通過
- [ ] [僅限 UI 故事]使用 dev-browser 技能在瀏覽器中驗證

重要事項:

  • 驗收標準必須可驗證,不能含糊。「正常運作」是不好的。「按鈕在刪除前顯示確認對話框」才是好的。
  • 對於任何涉及 UI 變更的故事: 務必將「使用 dev-browser 技能在瀏覽器中驗證」納入驗收標準。這確保前端工作的視覺驗證。

4. 功能需求

編號的功能清單:

  • 「FR-1:系統必須允許使用者……」
  • 「FR-2:當使用者點擊 X 時,系統必須……」

要明確且無歧義。

5. 非目標(超出範圍)

此功能將不包含的內容。對於管理範圍至關重要。

6. 設計考量(選用)

  • UI/UX 需求
  • 若有線框圖,提供連結
  • 可重用的相關現有元件

7. 技術考量(選用)

  • 已知的限制或依賴
  • 與現有系統的整合點
  • 效能需求

8. 成功指標

如何衡量成功?

  • 「將完成 X 的時間減少 50%」
  • 「將轉換率提高 10%」

9. 開放問題

剩餘問題或需要釐清的領域。


為初階開發者撰寫

PRD 的讀者可能是初階開發者或 AI 代理。因此:

  • 要明確且無歧義
  • 避免行話或加以解釋
  • 提供足夠細節以理解目的和核心邏輯
  • 編號需求以便參考
  • 在有用處時提供具體範例

輸出

  • 格式: Markdown(.md
  • 位置: tasks/
  • 檔名: prd-[feature-name].md(kebab-case)

PRD 範例

# PRD:任務優先順序系統

## 簡介

為任務增加優先順序層級,讓使用者能專注於最重要的事項。任務可標記為高、中、低優先順序,並提供視覺指示和篩選功能,協助使用者有效管理工作量。

## 目標

- 允許為任何任務指派優先順序(高/中/低)
- 提供優先順序層級之間的清晰視覺區別
- 啟用依優先順序篩選和排序
- 新任務預設為中優先順序

## 使用者故事

### US-001:在資料庫中新增優先順序欄位
**描述:** 身為開發者,我需要儲存任務優先順序,以便跨工作階段保留。

**驗收標準:**
- [ ] 在 tasks 資料表中新增 priority 欄位:'high' | 'medium' | 'low'(預設 'medium')
- [ ] 成功產生並執行遷移
- [ ] 型別檢查通過

### US-002:在任務卡片上顯示優先順序指示器
**描述:** 身為使用者,我想要一眼看到任務優先順序,以便知道哪些需要優先處理。

**驗收標準:**
- [ ] 每個任務卡片顯示彩色優先順序徽章(紅色=高、黃色=中、灰色=低)
- [ ] 無需懸停或點擊即可看到優先順序
- [ ] 型別檢查通過
- [ ] 使用 dev-browser 技能在瀏覽器中驗證

### US-003:在任務編輯中新增優先順序選擇器
**描述:** 身為使用者,我想要在編輯任務時變更其優先順序。

**驗收標準:**
- [ ] 任務編輯彈窗中有優先順序下拉選單
- [ ] 顯示目前優先順序為已選取
- [ ] 選擇變更後立即儲存
- [ ] 型別檢查通過
- [ ] 使用 dev-browser 技能在瀏覽器中驗證

### US-004:依優先順序篩選任務
**描述:** 身為使用者,我想要篩選任務清單,以便在專注時只看到高優先順序項目。

**驗收標準:**
- [ ] 篩選下拉選單,選項:全部|高|中|低
- [ ] 篩選條件保留在 URL 參數中
- [ ] 沒有符合篩選條件的任務時顯示空狀態訊息
- [ ] 型別檢查通過
- [ ] 使用 dev-browser 技能在瀏覽器中驗證

## 功能需求

- FR-1:在 tasks 資料表中新增 `priority` 欄位('high' | 'medium' | 'low',預設 'medium')
- FR-2:在每個任務卡片上顯示彩色優先順序徽章
- FR-3:在任務編輯彈窗中包含優先順序選擇器
- FR-4:在任務清單標題中新增優先順序篩選下拉選單
- FR-5:在每個狀態欄內依優先順序排序(高到中到低)

## 非目標

- 不提供基於優先順序的通知或提醒
- 不根據到期日自動指派優先順序
- 子任務不繼承優先順序

## 技術考量

- 重用現有徽章元件並加入顏色變體
- 篩選狀態透過 URL 搜尋參數管理
- 優先順序儲存在資料庫中,非計算得出

## 成功指標

- 使用者能在 2 次點擊內變更優先順序
- 高優先順序任務立即顯示在清單頂部
- 任務清單效能無回歸

## 開放問題

- 優先順序是否應影響欄內任務排序?
- 是否應為優先順序變更新增鍵盤快捷鍵?

檢查清單

儲存 PRD 前:

  • [ ] 已提出附選項的釐清問題
  • [ ] 已納入使用者的回答
  • [ ] 使用者故事小而具體
  • [ ] 功能需求已編號且無歧義
  • [ ] 非目標章節定義了明確界線
  • [ ] 已儲存至 tasks/prd-[feature-name].md