ClawSkills logoClawSkills

Prd

创建和管理产品需求文档 (PRD)。在以下情况使用:(1) 使用用户故事创建结构化任务列表,(2) 指定具有验收标准的

介绍

# PRD Skill

创建和管理产品需求文档(PRD)以进行功能规划。

## 什么是 PRD?

**PRD(Product Requirements Document,产品需求文档)** 是一种结构化的规范,用于:

1. 将一个功能分解为**小型的、独立的用户故事** 2. 为每个故事定义**可验证的验收标准** 3. 按**依赖关系**(架构 → 后端 → UI)对任务进行排序

## 快速开始

1. 在项目中创建/编辑 `agents/prd.json` 2. 定义包含验收标准的用户故事 3. 通过更新 `passes: false` → `true` 来跟踪进度

## prd.json 格式

```json { "project": "MyApp", "branchName": "ralph/feature-name", "description": "Short description of the feature", "userStories": [ { "id": "US-001", "title": "Add priority field to database", "description": "As a developer, I need to store task priority.", "acceptanceCriteria": [ "Add priority column: 'high' | 'medium' | 'low'", "Generate and run migration", "Typecheck passes" ], "priority": 1, "passes": false, "notes": "" } ] } ```

### 字段描述

| 字段 | 描述 | |-------|-------------| | `project` | 用于上下文的项目名称 | | `branchName` | 此功能的 Git 分支(以 `ralph/` 为前缀) | | `description` | 一句话功能摘要 | | `userStories` | 待完成的故事列表 | | `userStories[].id` | 唯一标识符(US-001, US-002) | | `userStories[].title` | 简短的描述性标题 | | `userStories[].description` | "作为一个[用户],我想要[功能]以便[收益]" | | `userStories[].acceptanceCriteria` | 可验证的检查清单项 | | `userStories[].priority` | 执行顺序(1 = 最先) | | `userStories[].passes` | 完成状态(完成时从 `false` 变为 `true`) | | `userStories[].notes` | 由代理添加的运行时备注 |

## 故事规模

**每个故事应能在一个上下文窗口中完成。**

### ✅ 规模适中: - 添加数据库列和迁移 - 向现有页面添加 UI 组件 - 使用新逻辑更新服务器操作 - 向列表添加筛选下拉菜单

### ❌ 过大(需拆分): - "构建整个仪表板" → 拆分为:架构、查询、UI、筛选器 - "添加身份验证" → 拆分为:架构、中间件、登录 UI、会话

## 故事排序

故事按优先级顺序执行。前面的故事绝不能依赖于后面的故事。

**正确顺序:** 1. 架构/数据库更改(迁移) 2. 服务器操作 / 后端逻辑 3. 使用后端的 UI 组件 4. 仪表板/摘要视图

## 验收标准

必须可验证,不能模糊。

### ✅ 好的示例: - "向 tasks 表添加 `status` 列,默认值为 'pending'" - "筛选下拉菜单包含选项:All, Active, Completed" - "类型检查通过"

### ❌ 坏的示例: - "工作正常" - "用户可以轻松地做 X"

**始终包含:** `"Typecheck passes"`

## 进度跟踪

当故事完成时更新 `passes: true`。使用 `notes` 字段记录运行时观察结果:

```json "notes": "Used IF NOT EXISTS for migrations" ```

## 快速参考

| 操作 | 命令 | |--------|---------| | 创建 PRD | 保存到 `agents/prd.json` | | 检查状态 | `cat prd.json | jq '.userStories[] | {id, passes}'` | | 查看未完成项 | `jq '.userStories[] | select(.passes == false)' prd.json` |

## 资源

详见 `references/` 中的详细文档: - `agent-usage.md` - AI 代理如何执行 PRD(Claude Code, OpenCode 等) - `workflows.md` - 顺序工作流模式 - `output-patterns.md` - 模板和示例

更多产品