prd

prd

热门

为一项新功能生成产品需求文档(PRD)。在规划功能、启动新项目或要求创建PRD时使用。触发词:创建PRD、为...编写PRD、规划此功能、需求、规格说明。

2.2万Star
2087Fork
更新于 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:向数据库添加优先级字段
**描述:** 作为开发人员,我需要存储任务优先级,以便跨会话持久化。

**验收标准:**
- [ ] 向任务表添加优先级列:'high' | 'medium' | 'low'(默认'medium')
- [ ] 生成并成功运行迁移
- [ ] 类型检查通过

### US-002:在任务卡片上显示优先级指示器
**描述:** 作为用户,我想一眼看到任务优先级,以便知道哪些需要优先处理。

**验收标准:**
- [ ] 每个任务卡片显示彩色优先级徽章(红色=高,黄色=中,灰色=低)
- [ ] 无需悬停或点击即可看到优先级
- [ ] 类型检查通过
- [ ] 使用dev-browser技能在浏览器中验证

### US-003:在任务编辑中添加优先级选择器
**描述:** 作为用户,我想在编辑任务时更改其优先级。

**验收标准:**
- [ ] 任务编辑模态框中的优先级下拉菜单
- [ ] 显示当前优先级为选中状态
- [ ] 选择更改后立即保存
- [ ] 类型检查通过
- [ ] 使用dev-browser技能在浏览器中验证

### US-004:按优先级过滤任务
**描述:** 作为用户,我想过滤任务列表,以便在专注时只看到高优先级项目。

**验收标准:**
- [ ] 过滤下拉菜单,选项:全部 | 高 | 中 | 低
- [ ] 过滤器在URL参数中持久化
- [ ] 没有任务匹配过滤器时显示空状态消息
- [ ] 类型检查通过
- [ ] 使用dev-browser技能在浏览器中验证

## 功能需求

- FR-1:向任务表添加`priority`字段('high' | 'medium' | 'low',默认'medium')
- FR-2:在每个任务卡片上显示彩色优先级徽章
- FR-3:在任务编辑模态框中包含优先级选择器
- FR-4:在任务列表头部添加优先级过滤下拉菜单
- FR-5:在每个状态列内按优先级排序(高到中到低)

## 非目标

- 没有基于优先级的通知或提醒
- 没有基于截止日期的自动优先级分配
- 没有子任务的优先级继承

## 技术考虑

- 复用现有徽章组件,使用颜色变体
- 过滤状态通过URL搜索参数管理
- 优先级存储在数据库中,不计算

## 成功指标

- 用户可以在2次点击内更改优先级
- 高优先级任务立即显示在列表顶部
- 任务列表性能无回归

## 开放问题

- 优先级是否应影响列内任务排序?
- 是否应为优先级更改添加键盘快捷键?

检查清单

保存PRD之前:

  • [ ] 提出带字母选项的澄清问题
  • [ ] 纳入用户的回答
  • [ ] 用户故事小而具体
  • [ ] 功能需求编号且无歧义
  • [ ] 非目标部分定义了明确边界
  • [ ] 保存到 tasks/prd-[feature-name].md