ワンクリックで
ai-pm-prd
PRD 生成技能。整合需求分析、竞品研究、用户故事,输出完整的产品需求文档。支持产品分身写作风格和设计规范。 当用户说「生成PRD」「写PRD」「产品需求文档」「需求文档」「功能规格书」「输出PRD」 「帮我写需求」「把需求整理成文档」时,立即使用此技能。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
PRD 生成技能。整合需求分析、竞品研究、用户故事,输出完整的产品需求文档。支持产品分身写作风格和设计规范。 当用户说「生成PRD」「写PRD」「产品需求文档」「需求文档」「功能规格书」「输出PRD」 「帮我写需求」「把需求整理成文档」时,立即使用此技能。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
| name | ai-pm-prd |
| description | PRD 生成技能。整合需求分析、竞品研究、用户故事,输出完整的产品需求文档。支持产品分身写作风格和设计规范。 当用户说「生成PRD」「写PRD」「产品需求文档」「需求文档」「功能规格书」「输出PRD」 「帮我写需求」「把需求整理成文档」时,立即使用此技能。 |
| argument-hint | [项目目录路径 | --style=风格名] |
| allowed-tools | Read Write Edit Bash(mkdir) Bash(ls) Bash(cat) Bash(node) Bash(rm) Bash(python3) Bash(grep) Agent |
{项目目录}/02-analysis-report/(最新 V,需求分析,必需){项目目录}/03-competitor-report/V{版本}.md(竞品研究,如有){项目目录}/04-user-stories/(最新 V,用户故事,如有)templates/prd-styles/{风格名}/style-config.json(写作风格,可选){项目目录}/05-prd/<当前 PRD 文件>(首次新建默认 05-PRD-v1.0.md,建议改描述名 [YYYYM][域]<标题>-V1.0.md 经 PM 确认;落盘后写 _status.json.active_prd)
🔑 「当前 PRD 文件」约定:本文档(及 export-guide)下方出现的
05-PRD-v1.0.md及其同名导出.pdf/.docx/-illustrated.pdf一律指「当前 PRD 文件」变量,由ai-pm/scripts/resolve_current_prd.py(_status.json.active_prd权威)解析,非写死名字。
目录结构:
{项目目录}/05-prd/
├── README.md
└── <当前 PRD 文件>.md # 默认 05-PRD-v1.0.md,建议描述名
在开始生成 PRD 之前,询问用户:
是否开启 AI 配图模式?
开启后,PRD 生成完毕时会自动扫描所有 Mermaid 流程图,调用 AI 配图服务(baoyu-imagine)渲染成高清插图并嵌入 PRD。
⚠️ 会产生 API 费用,每张图约 0.1–0.3 元。
1. 开启(推荐,PRD 更直观)
2. 跳过(保持 Mermaid 代码)
ai_illustration_mode = true,继续步骤 1ai_illustration_mode = false,继续步骤 1先检测 06-prototype/screenshots/manifest.json 是否存在,决定是否展示含截图选项。
使用 AskUserQuestion 工具(交互式单选),不要用纯文字输出让用户手动输入字母。
有 manifest.json 时,提供5个选项:
无 manifest.json 时:只展示 A/B 两个选项,并在问题描述中提示"如需含截图版,请先运行 /ai-pm prototype"。
用户选择后记录 $EXPORT_MODE,继续执行步骤2。
检查是否有 --style 参数或 $PM_STYLE 环境变量,若有则读取对应的 style-config.json 并应用:
structure.chapterOrder)formatting.tableFields)contentFocus:用户故事篇幅、指标详细程度等)⚠️ 强制规则:先判 doctype 选模板,再读模板动笔
① 先判 doctype(阶段 + 形态),别让 feishu-template 抢先(指回 phase-5-prd 步骤 A.0/A.0.1,不复制逻辑):
templates/prd-styles/default/decision-review-template.md 的 4 节骨架,不套 feishu、不写详细功能设计。templates/prd-styles/default/feishu-template.md(按 product_type 注入 agent-supplement)。full、并在 PRD 文件头注明判断依据。_status / L1 upsert / 文件头 <!-- doctype: -->)。② 读到所选模板后:PRD 的所有章节结构、字段名称、字段顺序必须严格与所选模板一致,不得凭印象自行调整。
references/prd-structure.md 已是完整骨架版、非 bullet)。用户上传模板就是为了让输出严格对齐,任何"我觉得这样更合理"的自行调整都是错的。
职责边界:
本技能是独立入口,但 PRD 质量机制与 phase-5 共用一套,不旁路(单一事实源在 .claude/skills/ai-pm/phases/phase-5-prd.md 和 .claude/agents/pm-agent.md,此处只接线不复制):
.claude/skills/ai-pm/references/pm-judgment-card.md(角色/越界红线/责任分工){项目目录}/05-prd/ai-md/_conventions.md(有→注入骨架+词表+黑名单;无但有历史 PRD→先建约定包;0→1 项目→静默跳过)+ 落 grounding-input.mdmkdir -p {项目目录}/05-prd/
生成 05-PRD-v1.0.md 并创建 README.md(说明目录用途)。
PRD 中包含 Mermaid 代码块时,生成方式取决于执行环境:
ai_illustration_mode=true):步骤6 负责调用 baoyu-imagine 批量生成 AI 图片,不走 md2docx.py 内部渲染ai_illustration_mode=false):Mermaid 代码块保留原样写入 DOCX/PDF,不触发任何渲染在执行导出前,对 PRD Markdown 源文件做正则扫描,检测以下敏感信息:
sk-/key-/token- 开头)、数据库连接串、密码明文、私钥片段192.168.*/10.*)、内部域名(.internal/.local/.corp)、手机号、身份证号、邮箱如果发现敏感信息,提示用户:
⚠️ 敏感信息扫描发现 {N} 处:
🔴 L42: sk-a****xxxx(API Key)
🟡 L78: 192.***.***.100(内部 IP)
🟡 L103: 138****8000(手机号)
选择:
A. 自动脱敏后导出(替换为占位符)
B. 忽略,直接导出
C. 我先手动修改,稍后再导出
[API_KEY_REDACTED],手机号 → 138****8000),原文不动无发现则静默通过,不打扰用户。
邮箱排除白名单:example.com、example.org、test.com、localhost 等占位域名自动跳过。
输出 PRD 关键摘要:
✅ PRD 已生成:05-prd/05-PRD-v1.0.md
功能模块:{N} 个 | P0:{N} 项 | 核心指标:{N} 条
PRD 文件落盘后,立即做两件:
① 写 _status.json.active_prd(当前 PRD 权威源)= 刚落盘的 PRD 文件名——后续 skill 都靠它定位当前 PRD(见 resolve_current_prd.py)。
② patch {项目}/05-prd/README.md(当前活跃表只人读、不被机器解析):
新增 PRD 时:
修改/重命名 PRD 时:
A 级定稿 / B 级 / C 级 / 草稿 / 已废弃 / 已超出版本,不能自创废弃 PRD 时:
已废弃 / 已超出版本版本号变化时(如从 V1.2 升到 V1.3):
README.md 的「当前版本」字段跨版本关系:从 PRD 正文「版本范围说明」抽取,禁止自己推断。
不 patch README 不算完成此步骤。详细模板见 templates/project-index/prd-readme.template.md。
然后按 ai_illustration_mode 分支处理:
ai_illustration_mode=false:直接按步骤1所选 $EXPORT_MODE 执行导出(使用原始 PRD),输出完成提示后流程结束。ai_illustration_mode=true:跳过此处导出,继续执行步骤6(AI 配图),导出将在步骤6完成后进行。读取当前 PRD 文件({项目目录}/05-prd/<当前 PRD 文件>,取 _status.json.active_prd;默认 05-PRD-v1.0.md),找到所有 ```mermaid ... ``` 代码块。
为每个代码块生成两部分标识:
flow1、flow2、… (序号前缀)scene-routing、quiz-generation文件名格式:{id}-{slug},如 flow1-scene-routing。
在 /tmp/mermaid-prompts/ 目录(不存在则先 mkdir -p)下,为每个 Mermaid 块创建对应的 prompt 文件:
/tmp/mermaid-prompts/{编号}-prompt.md
prompt 内容格式(中文,清晰描述流程图):
专业产品流程信息图,扁平矢量 corporate-memphis 风格,纯白色背景(#FFFFFF),蓝色系配色(主色#1D4ED8)。中文标注,清晰可读,简洁专业,适合嵌入PRD文档。充足留白,节点间用带箭头连接线。布局类型:{根据流程形态选择 linear-progression 水平从左到右 / tree-branching 双分支并列 / diamond-decision 菱形决策 等}。
流程内容(基于以下 Mermaid 代码转化为可视化信息图):
{Mermaid 代码内容,去掉 ```mermaid ... ``` 标记,只保留代码本体}
图表标题:{从 Mermaid 代码内容提炼一个简短标题}
在 /tmp/mermaid-prompts/batch.json 写入以下格式(所有路径均为绝对路径):
{
"tasks": [
{
"id": "flow1",
"promptFiles": ["/tmp/mermaid-prompts/flow1-prompt.md"],
"image": "{项目目录绝对路径}/11-illustrations/flow1-scene-routing.png",
"ar": "16:9"
},
{
"id": "flow2",
"promptFiles": ["/tmp/mermaid-prompts/flow2-prompt.md"],
"image": "{项目目录绝对路径}/11-illustrations/flow2-quiz-generation.png",
"ar": "16:9"
}
]
}
provider/model/quality 不要硬编码,由 baoyu-imagine 从用户 EXTEND.md 读取。
11-illustrations 目录路径:{项目目录}/11-illustrations/(不存在则先 mkdir -p 创建)。
image 字段格式:{项目目录绝对路径}/11-illustrations/{id}-{slug}.png,按实际 Mermaid 块数量生成对应条目。
然后执行以下命令,等待所有图片生成完毕(最多等待 10 分钟):
~/.bun/bin/bun ~/.claude/skills/baoyu-imagine/scripts/main.ts --batchfile /tmp/mermaid-prompts/batch.json
若命令退出码非0或有 task 生成失败,对应 Mermaid 块在 _export_tmp.md 中保留原始代码块(不替换为图片引用),并在完成时告知用户哪几张图片生成失败。
在 PRD 文件同目录({项目目录}/05-prd/)下创建 _export_tmp.md,内容为 PRD 文件的完整拷贝,但将成功生成的每个 Mermaid 代码块替换为对应的图片引用:

注意:原始 PRD 文件(05-PRD-v1.0.md)保持不变,_export_tmp.md 仅作为导出临时文件。
图片全部(或部分)生成后,按步骤1所选 $EXPORT_MODE 执行导出,导出工具使用 _export_tmp.md 而非原始 PRD:
md2docx.py 传入 _export_tmp.md 路径build-pdf-html.js 传入 _export_tmp.md 路径导出完成后输出汇总:
✅ 已生成 {N} 张配图({M} 张失败保留原始代码块)
✅ {格式A} → 05-prd/05-PRD-v1.0.{ext}
导出完成后(无论成功或失败均执行清理),删除临时文件:
rm -f "{项目目录}/05-prd/_export_tmp.md"
rm -rf /tmp/mermaid-prompts/
无模板时的兜底结构见 references/prd-structure.md。
.bak 备份文件,Git 历史已足够| 选项 | 产物文件 | 命令(独立触发时) |
|---|---|---|
| A 仅 Markdown | 05-PRD-v1.0.md | 默认 |
| B 纯文字 PDF | 05-PRD-v1.0.pdf | --export=pdf |
| C DOCX 含截图 | 05-PRD-v1.0.docx | --export=docx |
| D PDF 含截图 | 05-PRD-v1.0-illustrated.pdf | --export=pdf-illustrated |
| E 全套 | DOCX + 两个 PDF | --export=all |
PDF/DOCX 导出的完整实现(build-pdf-html.js 代码 + 三条导出路径命令)见 references/export-guide.md。
战略沙盘 skill。用于高阶产品战略推演、智囊团对话、项目级或产品级多项目战略议题讨论,帮助用户在正式规划、汇报或决策前拆解问题、暴露假设、进行多视角交锋和表达预演。Use when the user asks for 战略沙盘、战略推演、智囊团、产品战略、下一阶段方向、资源取舍、产品级战略、多项目推演、增长瓶颈、竞争应对、用户心智、组织协同、汇报前战略预演,或使用 `/ai-pm strategy` / `/ai-pm-strategy`。
数据分析技能。提供数据指标设计、数据洞察分析、仪表盘生成三大能力。从数据中发现产品需求和优化机会。 当用户说「分析数据」「上传Excel」「数据洞察」「数据可视化」「做仪表盘」「数据看板」 「指标设计」「埋点方案」「从数据里找需求」「数据报表」时,立即使用此技能。
原型生成技能。基于 PRD 生成可交互的单页网页原型,支持移动端和 Web 端。 首次生成时询问设计规范(公司规范 / AI 情境定制 / 主流组件库),项目内记住偏好。 若项目存在 Codex 生成的视觉锚点包(06-prototype-visual/manifest.json),生成 HTML 前必须读取并遵循。 当用户说「生成原型」「做原型」「可交互原型」「HTML原型」「页面原型」「低保真」「高保真原型」 「画个界面」「把PRD做成原型」时,立即使用此技能。 边界:本技能用于「把已有 PRD/需求做成可评审原型」;脱离 PRD 的纯视觉探索、通用 UI 组件生成或视觉精修,可使用外部 impeccable 增强,但 AI_PM 原型默认以 ai-pm-frontend-design 为本地设计内核。
当需要从零开始走完完整产品立项流程(需求→分析→竞品→用户故事→PRD→原型→评审)时使用。 支持多项目管理和断点续传,复杂需求可启用多代理协作。 当用户说「我有个产品想法」「帮我做个产品」「从零开始做需求」「全流程出PRD」 「做一个App/小程序/系统」「产品立项」「继续上次的项目」「切换项目」时,立即使用此技能。
去除中文文本里的 AI 腔,让文字像真人直白写出来的。针对中文语境的真·AI tell: 工整对仗排比、"通过X实现Y"、范畴词冗余(进行了优化/起到…作用)、互联网黑话堆砌 (赋能/抓手/闭环/颗粒度)、强行升华结尾、程度副词通胀、空泛连接词、规整书面腔。 并压住"去 AI 味后滑向文青腔/段子腔"的冲动——目标是直白大白话,不是有文采。 可选用本机真实语料把文字校准到具体某个人的声音。
PM 风格 lint 命令入口(评审前最后一道关)。 本 skill 是 `pm-agent` 的 thin wrapper——接收 PRD 文件路径,调用 pm-agent 用 lint mode 扫描整份 PRD,输出 punch list(越界 + 缺失 + 篇幅)。 与 `pm-agent` 的关系:driver = 命令糖衣 / pm-agent = 真正的判断引擎。判断卡 / 反例 / 越界规则单一事实源在 pm-agent,driver 不重复维护。 与 `ai-pm-review`(六角色评审会)和 `multi-perspective-review`(多视角技术审查)的区别:driver 是 PM 个人风格 lint,5 分钟出结论。 当用户说「PM 守门」「审视 PRD」「PRD 挑刺」「PRD 越界检查」「driver 一下」「PRD 自审」「评审前体检」「历史 PRD 回归」时,使用此 skill。