--- name: project-prd-planning description: | 根据已批准 BRD 输出 PRD(产品需求文档),形成可执行的模块化设计:功能列表、用户流程、界面。 tags: - planning - prd tags2: planning version: 1.2.0 metadata: hermes: tags: [planning, prd, requirement] --- # SKILL:project-prd-planning ## 适用场景 - BRD 已批准或具备明确业务目标,进入产品级设计。 ## 输入 - `project-brd-planning` 的 BRD 输出 - 现有用户路径、角色定义、指标口径、历史数据 ## 目标 PRD 的目标是把产品文档写清楚并可转向 SDD/开发执行: - 说明要做什么,不是“如何实现”。 - 在 BRD 的 WHY/HOW/WHAT 约束下,给出完整可复用、可验收、可落地的产品边界。 ## 输出(PRD 必须包含) PRD 不再是单一长文,而是**目录化交付**。主目录统一使用 `PRD/`,至少要形成以下结构,不得省略: - `PRD/` - `01-产品对齐.md` - `02-功能/` - `00-功能边界与模块清单.md` - `01-常见功能.md` - `02-通用功能.md` - `03-用户功能.md` - `04-核心功能能力清单.md` - `05-特殊业务流程功能清单.md` - `06-前台后台能力映射.md` - `03-流程/` - `00-通用流程/` - `01-主流程/` - `02-次流程/` - `03-二级流程/` - `04-异常流程/` - `05-流程总览与状态更新.md` - `04-界面/` - `00-前台界面/` - `01-后台界面/` - `02-菜单与跳转映射.md` - `03-界面-字段清单与校验.md` - `05-原型图/` - `00-菜单树.md` - `01-页面列表与按钮动作.md` - `02-原型图清单.md` - `index.html` - `06-验收与风险/` - `00-验收标准.md` - `01-阻塞项.md` - `02-追溯映射(BRD→PRD).md` ## 飞书知识库发布能力(已外部化) 本技能不再内嵌具体飞书发布执行细节。PRD 的飞书落库、限流重试、文件映射与导航页构建,已下沉到独立技能: - `planning:prd-feishu-wiki-sync` ## 飞书发布可追溯证据 - 进行飞书发布前后,必须保留: - 本地 PRD 文件清单(含 01~06 主干); - 落库映射 JSON(`file -> document_id/url/revision_id/ok/error`); - 导航页链接与回读记录。 ### 当前系统功能模块数量确定方法 - 先从 BRD 的 WHAT 里提取“对象 + 能力动词”对(如:Agent-新增/改/删/查/运行)。 - 对每个对象形成 1 个基础模块;对“跨对象共用能力”形成横向模块(如用户中心、权限、审计、报表)。 - 任何流程中出现的关键状态或操作实体都应映射到独立模块;不再单独“页面驱动”建模块,防止界面先于需求。 ### PRD 三大必填部分的细化要求 1. **功能列表(必有)** - 文档必须先形成 `02-功能/00-功能边界与模块清单.md`,并覆盖: - 模块名 - 需求来源(对应 BRD 条目) - 是否核心模块(是 / 否) - 模块职责(输入、输出、约束) - 前台/后台/公共能力边界 - `02-功能/01-常见功能.md`:平台级基础能力清单(登录态、通知、错误码、审计、权限等)。 - `02-功能/02-通用功能.md`:跨模块复用能力(搜索、筛选、排序、导入导出、权限透传、列表管理等)。 - `02-功能/03-用户功能.md`:角色/用户群体的业务能力。 - `02-功能/04-核心功能能力清单.md`:每个关键模块必须覆盖并在条目中逐项确认: - 增加(Create) - 查看/列表(Read/List) - 修改(Update) - 删除(Delete) - 搜索 - 筛选 - 排序 - 至少 1 条失败处理规则(如权限不足、并发冲突、状态冲突) - `02-功能/06-前台后台能力映射.md` 必须区分前台功能与后台功能。 - `02-功能/05-特殊业务流程功能清单.md` 单列“状态机、异步/定时、规则引擎、回放、回滚”等流程型能力。 2. **用户流程(必有)** - 流程必须写入 `03-流程/` 五类目录:通用流程、主流程、次流程、二级流程、异常流程。 ### 流程分类要求 - **通用流程**: - 注册、登录、找回密码、角色/权限变更、会话管理、登出。 - 如不需要独立用户系统,文档必须写明“无需实现”并给出替代机制。 - **主流程**: - 用户进入系统后的核心链路(如 Agent 管理系统中的新增/配置/运行/Dashboard)。 - 必须有主入口、核心动作、完成状态。 - **次流程**: - 支撑主流程的辅助链路(如配置、审核、日志查看、导入导出)。 - **二级流程**: - 对关键主流程拆分出的子链路(如新增 Agent 下的模板选择、参数联动、参数校验)。 - **异常流程**: - 接口超时、权限拒绝、校验失败、并发冲突、回滚失败、人工介入等。 每条流程应在对应目录文档中统一写明: - 触发入口 - 主要参与角色 - 前置条件与终止条件 - 步骤序列 - 分支、失败路径、回退路径 - 恢复条件 - 关键状态更新字段 `03-流程/05-流程总览与状态更新.md` 需给出从主流程到异常流程的全量闭环表。 3. **界面(必有)** - 基于功能与流程,必须在 `04-界面/` 下输出: - `00-前台界面/`: - 登录/注册/找回密码/权限提示 - 核心功能列表页 - 核心功能表单页 - 详情页 - 报表/数据页(Dashboard) - 错误与空态页 - `01-后台界面/`: - 系统配置 - 流程治理与规则配置 - 运维与权限管理 - 日志与审计 - `02-菜单与跳转映射.md`:明确一级菜单与二级菜单,及其落点页面。 - `03-界面-字段清单与校验.md`:页面字段、输入约束、字段级校验、只读/必填逻辑。 4. **原型图(必有)** - PRD 必须在 `05-原型图/` 交付 HTML 原型,不是可选项。 - `05-原型图/index.html` 为总入口,必须可直接打开比对。 - 至少包含: - 一级菜单、二级菜单与当前高亮。 - 页面卡片化列表(页面名、所属模块、入口动作)。 - 主要按钮/链接与跳转关系。 - 关键字段和默认状态展示。 - 每类页面(登录、列表、表单、详情、报表)给出最小结构化模板片段。 - 点击行为(在原型图内可用伪跳转说明):按钮文本、目标页面、入参来源、失败返回。 - `05-原型图/页面列表与按钮动作.md` 与 `02-菜单与跳转映射.md` 的内容必须一致。 - `05-原型图/原型图清单.md` 记录每个页面文件与对应功能模块、流程、验证方式。 5. **用户场景与测试场景(主/异常/回退)** - 按流程分类给出验收场景,不得少于: - 1 个主流程成功闭环 - 1 个次流程成功闭环 - 1 个二级流程成功闭环 - 2 个异常场景(含回退) 6. **验收与边界条款** - 功能优先级(Must / Should / Could) - 数据读写点与状态变更 - 非功能约束(性能/稳定/权限/兼容/可观测) - 依赖、风险与灰度策略 ## 执行步骤 1. 读取 BRD:提取目标、范围、验收门禁。 2. 用 BRD WHAT 做模块化拆解,并确定 `02-功能` 的基础目录内容。 3. 先产出通用流程,再补主流程,再补次流程与二级流程,最后补异常流程。 4. 映射“功能模块 x 流程”到前台/后台界面清单。 5. 基于映射生成菜单树与跳转关系。 6. 输出 HTML 原型草图(可直接打开),并写对应的页面说明文件。 7. 统一进行自检: - 是否缺少功能列表/用户流程/界面/原型图任一必备项。 - 目录是否完整、命名是否可回溯。 - 每个主流程是否有前提条件、分支、输出。 - 每个关键列表是否明确搜索/筛选/排序策略。 8. 标注阻塞项:若关键用户决策缺失或字段边界无法追溯 BRD,输出 `阻塞` 并返回 BRD 阶段。 ## 决策规则 - 若 PRD 里存在“实现方式”超过 2 个候选,不作最终选型,先标记为设计假设。 - 若关键用户决策缺失,输出 `阻塞` 并返回 BRD 阶段,不进入 SDD。 - 若某功能模块缺少基础界面形态(表单/列表/报表)或未写 CRUD/搜索/筛选/排序,则视为未达标(待修订)。 - 若 `05-原型图` 缺失或菜单跳转与界面映射不一致,直接判定该 PRD 未完成。 ## 成功标准 - PRD 能直接驱动 SDD 输入(包含模块-流程-界面-原型闭环)。 - 目录结构完整且可追溯到 BRD 的 `WHAT`。 - 覆盖主流程、次流程、二级流程、异常流程且有回退处理。 - 功能列表、流程、界面三件套均可映射到对应原型页面。 - 输出字段可转为单元级任务(见 `project-unit-decomposition`)。