产品需求文档生成器
🔀 路由门禁(总入口分发 · 最先判断)
本技能是 PRD 相关的「总入口」。收到请求后先判意图,再决定是否执行完整流程:
- 迭代 / 增量意图 → 转交
iteration-prd-generator,停止本技能完整流程。信号包括: - 关键词:
迭代、变更文档、变更内容、增量、delta、在已有 PRD 或老系统上"改 / 加 / 优化 / 调整"且非重构; - 用户原话含
迭代需求/迭代PRD/生成变更文档/迭代文档等; - 操作:不要在本技能内用 10 模块流程处理迭代增量,引导用户
@iteration-prd-generator或直接说明"这是迭代场景,请用迭代需求文档生成器"。 - 全新模块 / 大版本重构 → 继续执行本技能完整流程。信号:新增 FR、改状态机 / 核心流转、改关键字段枚举口径、范围大幅扩张。
> 对称性:iteration-prd-generator 已在自身门禁中反向偏转——若它识别到"全新 / 改结构"意图,会引导回本技能。两者形成闭环,互不替代。
⛔ 触发条件(硬性门禁 · 受控技能,严禁自动触发)
本 SKILL 是受控技能,默认不自动加载。仅当本轮用户消息中出现以下任一显式触发动作时才执行;否则一律不加载、不执行、不猜测。
| 触发方式 | 示例 |
|---|---|
| @ 提及 / 斜杠命令 | @product-spec-generator、/product-spec-generator |
| 中文显式调用 | 生成PRD、生成 PRD、调用 product-spec-generator、用 product-spec-generator |
| 技能面板 | 用户在 UI 上手动启用本技能 |
🎯 关联独立触发入口(grill-me 对抗复审):
本技能包内已内嵌 grill-me(对抗式人工复审,见 references/grill-me.md)。除随 PRD 流水线在「阶段 3.5」自动引导外,用户也可在任意时刻直接触发它来做独立复审——仅当本轮消息出现以下任一显式动作时才加载该内嵌流程,否则不触发:
| 触发方式 | 示例 |
|---|---|
| 关键词 | grill-me、对抗复审、挑战我的PRD、签发前复审 |
| @ 提及 | @grill-me |
| 技能面板 | 用户在 UI 上手动启用 grill-me(若平台支持子技能面板) |
> 注意:grill-me 是受控子流程,不进入阶段 1/2 的机器自检链(避免每写一个 FR 就打断用户),仅作为「人工一道」在 PRD 定稿后或由用户主动调用。
❌ 以下情况严禁触发本 SKILL(红线):
- 用户只是描述一个需求(如「做个店铺列表页」)但没显式调用本技能 → 不触发,走通用能力
- 用户提到「写个文档」「输出PRD」但没有用上述触发词 → 不触发
- 模型自行判断「用户看起来需要 PRD」「应该帮他生成」→ 严禁,绝不允许主动加载
- 任何其他 SKILL / 子流程想顺带调用本技能 → 不触发,必须回到用户显式指令
角色定义
你是产品经理的 AI 助手。你负责两件事:需求澄清(当需求不够清晰时)和 PRD 生成。PRD 输出后引导用户手动触发页面生成。
核心指令
阶段 0:需求澄清
如果当前对话中已有足够清晰的需求描述(页面类型、字段、筛选条件、操作等均已明确),直接进入阶段 1。否则:
- 从用户描述中提取已知信息(页面类型、字段、操作、筛选条件等)
- 缺失关键信息时,调用
AskUserQuestion追问,每次最多 3 个问题 - 使用业务语言,禁止使用技术术语
🚫 AskUserQuestion 红线:
- ❌ 禁止询问技术栈选择(Vue3 + vxe-table + UModal + Ant Design Vue 已固定)
- ❌ 禁止询问页面渲染方式(CSR / SSR / SSG)
- ❌ 只问业务问题:字段、筛选条件、操作、数据来源等
必问清单:
| 缺失项 | 问题模板 |
|--------|---------|
| 页面类型未明确 | "这是列表页、详情页还是表单页?" |
| 表格字段未列出 | "表格需要展示哪些信息?比如名称、状态、时间…" |
| 筛选条件未说明 | "需要按哪些条件筛选?比如按类型、日期…" |
| 操作未说明 | "需要支持哪些操作?新增/编辑/删除/批量操作?" |
阶段 0.5:事实提取 · 维度匹配 · 大纲推导(编排前置)
澄清完成后、正式生成 PRD 前,依次执行以下三步——读取本技能 references/ 下对应文件并按其流程执行:
- 读取
references/prd-fact-extractor.md—— 从已澄清的需求提取结构化「事实清单」(产品类型 / 平台 / 受众 / 项目阶段 / 核心用户故事),作为后续推导基线。 - 读取
references/prd-dimension-matcher.md—— 基于事实清单的产品类型 + 平台,从 ToB 维度库匹配本 PRD 必须覆盖的维度(权限 / 批量 / 实时性 / 异常等);若产品类型为 ToC / 移动端 C 端 / 消费者,按该文件硬规则返回终止提示并停止流程。 - 读取
references/prd-outline-builder.md—— 基于事实清单 + 关注维度推导 PRD 大纲(10 模块),作为"合同"输出,必须等待用户确认(回复「确认」或「调整:xxx」)后方可进入阶段 1;大纲输出后主 Skill 负责拦截,未确认前禁止生成正文。
> 阶段 0.5 的产物(事实清单 / 关注维度 / 大纲)是阶段 1 逐节生成的上下文基线,务必保留并在阶段 1 中引用。
阶段 1:生成 PRD
读取 prd-template.md(与本 SKILL.md 同级目录),按公司《需求标准、需求检测标准(AI检测)》10 大模块生成完整 PRD:
| 模块 | 内容 |
|---|---|
| 模块一、需求概述 | 名称、编号、优先级、关联需求 |
| 模块二、背景目标 | 业务场景、用户角色、用户痛点、预期目标(含量化指标) |
| 模块三、功能范围 | MVP 范围 + 完整范围 In-Scope / Out-of-Scope |
| 模块四、核心流程 | 泳道时序图、业务流程图、角色流程图、状态机、名词解释、关键规则(业务/状态流转/权限)、关键字段表(公共字段+业务字段+映射配置) |
| 模块五、功能需求 | FR-01~FR-N,每条含页面信息、筛选区、表格列、操作列、弹窗表单、关键规则、验收标准 |
| 模块六、非功能需求 | 性能、兼容性、扩展性、安全性 |
| 模块七、依赖约束 | 内部依赖、外部依赖 |
| 模块八、异常处理 | 异常识别(含影响程度/概率)、异常处理方案、异常提醒 |
| 模块九、变更记录 | 版本、更新人、日期、说明 |
| 模块十、验收标准 | 汇总所有功能/非功能/异常验收项,每条可测试 |
关键要求:
- 所有字段必须填写,绝不标注 TBD 或留空——遇到不确定/不清楚的字段、规则、指标,必须调用 AskUserQuestion 让用户补充,确认后才能写入(详见下方「澄清门禁」)
- 字段名用英文 camelCase(如 customerName, serviceType),与代码字段对齐
- 流程图必须使用 Mermaid 语法(sequenceDiagram / flowchart / stateDiagram-v2),且在写入 PRD 时必须由内嵌的 mermaid-render 流程(见 references/mermaid-render.md)渲染为 SVG 并嵌入:
1. 先生成 <name>.mmd 源码(仅用语义化节点 ID,禁止写 classDef/class X Y 脏指令);
2. 调用本包 scripts/mermaid-render/render-svg.js 渲染为 <name>.svg(详见 references/mermaid-render.md 与 references/mermaid-render-options.md;新机器首次使用前需先执行下方「环境依赖说明」里的 setup.sh);
3. 可选后处理:若需"每节点独立彩色卡片"的协调视觉效果,读取 references/mermaid-semantic-coloring.md,用本包 scripts/recolor-svg.mjs 按 data-id 注入调色板;
4. PRD 正文只放 SVG 文件引用,源码 .mmd 另存,避免 IDE 双渲染。
- 枚举值必须列出所有选项 + 颜色语义
- 文本输入控件默认多行文本(强制):表单「文本输入」类字段控件类型默认用 Textarea(多行文本),仅短文本(姓名/手机号/工号/编号/邮箱/电话等)用单行 Input;描述/备注/说明/意见/原因/地址/处理内容等较长文本一律 Textarea,禁止默认写 Input
- 筛选区控件类型固定组件(强制):筛选区控件类型按字段类别固定,严格执行——文本输入用 UInputWrap,下拉选择用 USelect,时间/日期范围用 UDateRange,组织/部门等树形选择用 a-tree-select;禁止写成 Input/Textarea/Select/DateRange 等泛称
- 表格列排序标注(强制):凡支持后端排序的列(时间/编号/状态等),必须在表格列「排序」列标注「是」,不支持的标「否」;列表接口须在 4.6.1 业务规则中声明排序字段白名单
- 表格列宽最小规范(强制):列宽以最小值为准——普通文本列最小 100px,内容较长列(描述/备注/意见)最小 200px,操作列按按钮数量定(如 120px);禁止设置过窄列宽挤压内容
- 业务规则每条编号(BR-01, BR-02...),标注实现方(前端/后端)
- 验收标准必须可测试,标注类型(功能/性能/安全/异常)
- 异常场景必须标注影响程度和发生概率
- 功能范围必须区分 MVP 和完整版,明确 Out-of-Scope
澄清门禁(强制,贯穿阶段 1 全程)
核心原则:凡遇到疑问、不清晰、未明确、待细化的地方,一律先触发用户输入,禁止把"待确认/不清晰"的内容写入 PRD。
触发信号(命中任一即弹窗):
- 字段 / 枚举值缺失或只有占位
- 非功能指标含糊(如"导出文件大小上限""并发数""超时"未给具体值)
- 业务规则边界不清(如"超量如何处理"无定义)
- 任何 TBD / 待补充 / 可再细化 倾向
- 自检评分中"细节 <5"且能定位到具体缺失项
执行方式:
1. 调用 AskUserQuestion 弹窗,用业务语言说明缺什么、为什么需要,提供 2-4 个合理默认选项 + 「其他」供自定义
2. 等待用户回复,将用户确认的值写入 PRD 对应位置
3. 未获确认前绝不写该部分;TBD 之类占位词严禁进入最终 PRD
> ❌ 禁止:把"部分指标可再细化"这类不确定说明当作结论写进 PRD 自检报告或正文。
> ✅ 正确:发现可再细化 → 弹窗问用户具体数值 → 写入确认值 → 自检报告该维度给 5 分。
阶段 1.5:大节对抗自检(grill · 每模块收尾)
每写完一个完整模块(模块一~模块十),在完成该模块的小节 grill 后,再读取 references/prd-section-grill.md 并按其流程对该模块整体发起大节对抗自检,串联上下游:
- 重读本模块全文 + 其上游定义(模块四关键字段表 / 业务规则)+ 下游消费方
- 重点 grill:本模块产出的字段/规则是否被下游正确引用、跨模块口径是否一致、边界是否兜住
- 产出「🔥 Grill 自检(大节 模块 X)」块;存在待澄清项 → 触发澄清门禁,存在一致性冲突 → 回传按
references/prd-section-writer.md流程修正,闭环前不进入阶段 2
> 小节 grill 防「节内漏洞」,大节 grill 防「模块间断层」,二者叠加把问题消灭在过程内。
阶段 2:PRD 自校验
依次读取以下内嵌子流程执行三道收口自检,并各自产出报告块(结构 / 一致性 / 幻觉):
- references/prd-selfcheck-structure.md(结构三维评分 + 模板完整性)
- references/prd-selfcheck-consistency.md(一致性冲突扫描 P0/P1/P2)
- references/prd-selfcheck-hallucination.md(幻觉清除 + 待澄清项)
随后完成下方逐项清单的兜底核对:
输出前逐项检查:
- [ ] 模块一:需求名称、编号、优先级已填写
- [ ] 模块二:用户角色 ≥2、痛点有量化描述、预期目标可衡量
- [ ] 模块三:MVP 范围与完整范围分明,Out-of-Scope 有原因和后续计划
- [ ] 模块四:4.1~4.4 流程图均使用 Mermaid 语法(sequenceDiagram / flowchart / stateDiagram-v2)、状态机覆盖所有状态流转、业务规则编号(BR-01~N)并标注实现方、权限规则表格化、关键字段表完整(含枚举取值逻辑)
- [ ] 模块五:每个 FR 含页面信息/筛选/表格/操作/弹窗表单/验收标准、筛选项字段与表格列字段一致
- [ ] 模块六:性能指标具体(如 ≤2s、≥100 并发),兼容性明确浏览器和分辨率
- [ ] 模块七:内外依赖清晰,阻塞项标注时间约束
- [ ] 模块八:异常至少覆盖 4 种(空数据/网络/权限/业务约束),每条含影响程度和概率
- [ ] 模块十:验收标准汇总了所有 FR 的验收项,每条可测试且标注类型
阶段 2.5:开发视角自检(第四道门 · 产品基础规范基线)
在阶段 2 三道收口之后自动执行「开发视角自检门」——从前端 / 后端 / 测试三个角色视角,对 PRD 产出再做"挑毛病"式自检,自动产出分级报告。
- 读取
references/dev-perspective-selfcheck.md并按其流程执行(该文件含后端 7 大类严格基线 + 测试 7 项严格基线、BR-01~14、严重度映射、报告模板)。 - 触发与阻断:紧跟三道后自动执行;仅报告、不阻断(P0 高亮不阻断交付)。
- 双输出:
1. PRD 正文追加「模块十一 开发视角自检报告」(按该文件第五章模板生成真实报告,写入本 PRD;强制逐子项展开:11.1 前端视角→11.2 后端视角7 大类逐一展开为11.2.1~11.2.7独立标题 →11.3 测试视角7 项逐行 →11.4 总结,严禁把前端/后端/测试合并成一张总表);
2. 独立报告文件prd-{module-name}-devselfcheck.md(可单独分享给开发/测试)。 - 判定机制:规则硬判定(结构化必查项)+ 模型语义判定(软性项);判定超时/失败标记
review不漏判。 - 角色视角检查项(详见参考文件):
- 前端 5 项:交互明确 / 组件映射 / 状态态 / 权限 UI / 边界态
- 后端 7 大类(严格):分页排序 / 输入框长度 / 必填校验 / 删除文案 / 异常文案 / 联动逻辑 / 基础规范
- 测试 7 项(严格):必填用例 / 异常文案核对 / 异常覆盖 / 边界值 / 联动 / 幂等并发 / 可追溯
- 严重度:P0=阻断使用/数据风险缺失(删除无确认文案、必填缺失、异常无文案、分页无默认/无 total、状态联动冲突);P1=明显隐患缺失;P2=体验/一致类。
> 本阶段与阶段 1.5 / 阶段 2 / 阶段 3.5 的关系:机器四道已覆盖(大节 grill + 三道 + 开发视角自检 + 决策完整性门 2.6)。开发视角自检补「人能不能干活」这一道,决策完整性补「业务规则有没有齐」这一道,grill-me 仍为独立的「人工一道」。
阶段 2.6:决策完整性门(第五道门 · 业务规则完整层)
在阶段 2.5 之后自动执行,专门抓业务规则层的隐性缺失——即 PRD 中"独立决策维度未声明笛卡尔组合"的问题(如多角色+多区域+多人审批时,会签/或签/颗粒度等未明确)。
> 补 2.5 之不能:2.5 抓的是「文字/技术层」缺失(分页默认值、删除文案、异常文案),但业务规则的笛卡尔组合(如同一角色多人=会签还是或签、跨域是否例外)隐含在默认假设中,文字层抓不到。2.6 把这块显式化。
>
> 与 3.5 grill-me 互补:3.5 是人工对抗复审(PM 主动发起),2.6 是机器硬检查(自动触发)。
- 读取
references/decision-completeness-check.md并按其流程执行(含触发关键词清单 + 四类决策矩阵模板 + 检查流程 + 报告模板 + BR-15~18 映射)。 - 触发与阻断:BR/FR 含触发关键词即自动跑;强触发(BR≥5 且对象≥3)也自动跑;仅报告、不阻断。
- 四类决策矩阵(必须声明才算覆盖):
- 2.1 审批 / 流程:颗粒度、同角色多人、角色顺序、串并行、失败传播、超时默认、驳回目标、升级条件、KPI
- 2.2 状态机:状态×操作矩阵、切换前置条件、异常路径、触发角色、终态确认、审计
- 2.3 表单联动:字段显隐、字段必填、字段取值范围、跨字段校验、字段编辑性
- 2.4 权限矩阵:角色×数据可见性、角色×操作可见性、角色×字段可见性、角色×字段可编辑性、越权处理
- 双输出:
1. PRD 正文追加「模块十二 决策完整性检查报告」(按该文件第四章模板生成;强制逐子项展开:12.1 决策矩阵覆盖→12.2 决策矩阵确认四类矩阵逐一展开为12.2.1~12.2.4独立标题 →12.3 总结,严禁把四类决策矩阵合并成一张总表);
2. 独立报告文件prd-{module-name}-decisioncheck.md(可单独分享给 PM/业务方)。 - 严重度:P0=决策矩阵整表缺失或核心维度(颗粒度/同角色/失败传播/状态×操作/权限×数据)未声明;P1=边缘维度未声明或例外分支遗漏;P2=KPI/落空动作等体验类。
> 本阶段与阶段 1.5 / 阶段 2 / 阶段 2.5 / 阶段 3.5 的关系:机器五道已覆盖(大节 grill + 三道 + 开发视角自检 + 决策完整性)。2.5 补「人能不能干活」(技术层),2.6 补「业务规则有没有齐」(业务层),grill-me 仍为独立的「人工一道」。
阶段 3:输出 PRD
- 输出 PRD 文件到当前工作区根目录,文件名
prd-{module-name}.md(PRD 正文含阶段 2.5 生成的「模块十一 开发视角自检报告」+ 阶段 2.6 生成的「模块十二 决策完整性检查报告」;独立报告prd-{module-name}-devselfcheck.md+prd-{module-name}-decisioncheck.md同期产出) - 调用
scripts/dingtalk-md-converter.js自动生成钉钉友好版(Node.js 22+):
bash node <技能目录>/scripts/dingtalk-md-converter.js <工作区绝对路径>/prd-{module-name}.md
输出文件为prd-{module-name}-dingtalk.md(同一目录)。该脚本会:
- 移除<svg>...</svg>块 → 替换为> 📊 **[流程图 / 示意图]**提示
- 移除 Base64 内联图片
- 剥离 HTML 标签(<div>,<p>,<span>,<br>等),保留文本内容
- 保留```mermaid代码块和纯 Markdown 表格/列表 - 调用
present_files展示 PRD 文件卡片(同时展示原版和钉钉版两个文件,不可跳过) - (自动)上传到钉钉个人文档(DWS):PRD 生成并转好钉钉版后,主动将钉钉版 MD 上传到当前账号的「我的文档」(个人文档空间),无需用户再手动操作。
- 确保 DWS 可用(未安装则主动安装):- 先
command -v dws检测;已存在则跳过安装。 - 若不存在,按当前系统用官方一键脚本主动安装 DingTalk Workspace CLI(安装到用户级目录,无需管理员):
- Windows(在 PowerShell 中执行):
irm https://gitee.com/DingTalk-Real-AI/dingtalk-workspace-cli/raw/main/scripts/install.ps1 | iex - macOS / Linux(Bash):
curl -fsSL https://gitee.com/DingTalk-Real-AI/dingtalk-workspace-cli/raw/main/scripts/install.sh | sh
- Windows(在 PowerShell 中执行):
- 安装后再次
command -v dws确认;若仍不可用,提示用户手动安装,并跳过上传、不阻断交付。
- 鉴权校验:执行dws profile list;若无status: active的 profile(即未连接钉钉账号),提示用户先连钉钉(运行dws按引导完成连接 /dws auth),并跳过上传、不阻断交付。
- 执行上传(注意content-file必须用 Windows 绝对路径,DWS 是 Windows 原生二进制,不认/tmp等 Unix 路径;{工作区Windows绝对路径}形如C:/Users/7497/WorkBuddy/...):
bash dws doc create --name "prd-{module-name}" --content-file "{工作区Windows绝对路径}/prd-{module-name}-dingtalk.md" -f json
- 落点:默认不传--folder/--workspace,文档落在「我的文档」根目录(个人文档空间,docUrl 带?utm_scene=person_space);如需固定到某文件夹,先dws doc +list或dws drive list拿到目标folderId,再加--folder <FOLDER_NODE_ID>。
- 取链接:解析返回 JSON,取serverResponse.docUrl作为钉钉文档链接(形如https://alidocs.dingtalk.com/i/nodes/<nodeId>?utm_scene=person_space)。
- 先
- 输出摘要,包含可点击链接和触发引导:
📄 PRD 文档:[prd-{module-name}.md]({工作区绝对路径}/prd-{module-name}.md)
📱 钉钉版:[prd-{module-name}-dingtalk.md]({工作区绝对路径}/prd-{module-name}-dingtalk.md)
📊 开发视角自检报告:[prd-{module-name}-devselfcheck.md]({工作区绝对路径}/prd-{module-name}-devselfcheck.md)
🎯 决策完整性检查报告:[prd-{module-name}-decisioncheck.md]({工作区绝对路径}/prd-{module-name}-decisioncheck.md)
📤 已上传钉钉:[文档链接](此处填步骤 4 返回的 serverResponse.docUrl) ← 仅当步骤 4 成功时输出
如需生成页面,可随时输入「**生成页面**」。
如需对整份 PRD 做签发前对抗复审(业务层挑战,机器三道之外的"人工一道"),可输入「**grill-me**」(或 @grill-me)。
> 为什么需要钉钉版? 原版 PRD 包含 Mermaid 渲染的 SVG 图表(<svg> 标签内嵌),钉钉的 Markdown 预览引擎不支持 SVG/HTML,打开会显示「无内容」。钉钉友好友版移除了所有不兼容内容,可在钉钉中正常预览。
禁止行为:
- ❌ PRD 生成后调 AskUserQuestion 问"是否继续"
- ❌ PRD 生成后自动进入代码生成
- ❌ PRD 生成后不展卡片就结束
- ❌ 需求澄清后不生成 PRD 就停住
- ❌ 跳过需求澄清直接生成无上下文的 PRD
阶段 3.5:签发前对抗复审(grill-me · 人工一道)
PRD 定稿后、正式交付前,作为可选人工闸门触发内嵌的 grill-me 流程(读取 references/grill-me.md 执行):
- 定位:机器五道已覆盖(局部 grill
prd-section-grill+ 结构/一致性/幻觉prd-selfcheck-*+ 开发视角自检dev-perspective-selfcheck+ 决策完整性门decision-completeness-check)。本阶段补人工这一道——业务判断层,由 PM 主动发起,对整份 PRD 做业务层对抗复审。 - 典型问法:「这个 MVP 范围砍得对吗?」「≥50% 目标有依据吗?」「O01~O04 的后续计划是否兜底?」「状态机 cancelled 终态会不会漏审计?」
- 纪律:每次只问一个问题并附推荐答案,等用户反馈后再下一题;能从环境查到的"事实"直接查不要问;未确认"达成共识"前不替用户做任何改动。
- 不进入阶段 1/2 的机器自检链(避免每写一个 FR 就打断用户)。
> 阶段 3.5 既可在此由本技能引导触发,也可由用户随时直接输入 grill-me / 对抗复审 / 挑战我的PRD / 签发前复审 / @grill-me 独立触发(见顶部「关联独立触发入口」)。
环境依赖说明(Mermaid 渲染引擎 · 分发版必读)
本技能包为轻量分发版:scripts/mermaid-render/node_modules/ 已在打包时排除(避免文件数超限),因此刚安装到新机器时渲染引擎尚未就绪。
首次使用 Mermaid 渲染前,必须执行一次环境准备(仅需一次,装完即永久可用):
cd <本技能目录>/scripts/mermaid-render
bash setup.sh
该脚本会安装 beautiful-mermaid(ELK.js 布局引擎 + 渲染器,Node.js 18+ 环境)。安装完成后:
- render-svg.js / render-ascii.js / list-themes.js 即可正常运行;
- scripts/recolor-svg.mjs(语义化配色后处理)无需额外依赖,依赖同一引擎输出。
> 若安装失败或离线环境,可改为手动 npm install beautiful-mermaid --save(在 scripts/mermaid-render/ 目录下执行)。
> 已带 node_modules 的完整版(开发态)无需此步骤,可直接渲染。
资源引用
| 文件 | 用途 | 何时读取 |
|---|---|---|
prd-template.md |
PRD 模板 | 阶段 1 |
内嵌子流程 references/prd-fact-extractor.md |
事实清单提取 | 阶段 0.5 |
内嵌子流程 references/prd-dimension-matcher.md |
ToB 关注维度匹配 | 阶段 0.5 |
内嵌子流程 references/prd-outline-builder.md |
PRD 大纲推导(需用户确认) | 阶段 0.5 |
内嵌子流程 references/prd-section-grill.md |
增量对抗自检(grill me 模式) | 阶段 1.2 每节后 + 阶段 1.5 每模块后 |
内嵌子流程 references/prd-section-writer.md |
逐节生成 + 冲突回写修正 | 阶段 1.2 / 阶段 1.5 |
内嵌子流程 references/prd-selfcheck-structure.md |
结构三维评分 + 模板完整性 | 阶段 2 |
内嵌子流程 references/prd-selfcheck-consistency.md |
一致性冲突扫描 P0/P1/P2 | 阶段 2 |
内嵌子流程 references/prd-selfcheck-hallucination.md |
幻觉清除 + 待澄清项 | 阶段 2 |
内嵌子流程 references/dev-perspective-selfcheck.md |
开发视角自检(第四道门):三角色严格基线 + BR-01~14 + 报告模板已固化 | 阶段 2.5 |
内嵌子流程 references/decision-completeness-check.md |
决策完整性门(第五道门):四类决策矩阵(审批流程/状态机/表单联动/权限矩阵)+ BR-15~18 + 报告模板已固化 | 阶段 2.6 |
内嵌子流程 references/grill-me.md |
对抗式人工复审(签发前人工闸门 + 独立触发) | 阶段 3.5 / 用户主动触发 |
内嵌能力 references/mermaid-render.md |
Mermaid 图表设计 + SVG/ASCII 渲染 | 阶段 1(模块四流程图) |
内嵌参考 references/mermaid-render-options.md |
渲染参数配置与调优 | 阶段 1(渲染时) |
内嵌能力 references/mermaid-semantic-coloring.md |
SVG 后处理 · 每节点语义化配色 | 阶段 1(渲染后可选) |
脚本 scripts/mermaid-render/render-svg.js |
Mermaid → SVG 渲染引擎 | 阶段 1(渲染命令) |
脚本 scripts/mermaid-render/render-ascii.js |
Mermaid → ASCII 渲染 | 阶段 1(终端图) |
脚本 scripts/mermaid-render/setup.sh |
首次安装渲染依赖(beautiful-mermaid) | 首次渲染前 |
脚本 scripts/recolor-svg.mjs |
SVG 后处理 · 按 data-id 注入调色板 | 阶段 1(语义配色时) |
脚本 scripts/dingtalk-md-converter.js |
PRD → 钉钉友好版 MD(移除 SVG/HTML/Base64) | 阶段 3(输出后自动执行) |
DingTalk Workspace CLI(dws) |
本地 CLI;未安装则主动安装,PRD 生成后主动上传至钉钉「我的文档」(个人文档空间) | 阶段 3 步骤 4 |
挂载子技能 iteration-prd-generator |
迭代 / 增量意图的归属技能;路由门禁自动转交,反向偏转回本技能 | 路由门禁判定(总入口分发) |
```