| name | vibe-coding-prd |
|---|---|
| description | 把任意形态的产品输入——零散需求、一句话想法、原始 PRD(含飞书/doubao 链接)、竞品分析—— 提炼成可直接发给 Claude Code / Codex 等编码 Agent 的 Vibe Coding PRD(精简 md 文档)。 触发场景:"帮我写一个用来 vibe coding 的 PRD"、"生成 vibe coding PRD"、 "把这个需求/PRD/竞品分析整理成能给 Claude Code 的 PRD"、"把飞书 PRD 转成编码 Agent 能读的版本"。 用户是技术小白:技术选型要给推荐并用大白话解释。产出剔除商业价值等噪音,只保留编码 Agent 需要的信号。 |
Vibe Coding PRD 生成器
把用户给的任意素材,经过分类 → 需求确认 → 功能设计 → 技术选型 → 原型确认 → 明细设计 → 验收标准,最终落成一份编码 Agent 可直接开工的 md 格式 PRD。
硬性规则(每条必须遵守)
- 不推断用户意图。任何没说清的点,用
AskUserQuestion弹框确认,不脑补、不默认。 - 两个确认卡点不可跳过:① 需求定义未确认,不进功能清单;② 原型图未二次确认,不进明细设计。
- 只写编码 Agent 用得上的内容。删掉商业价值、市场分析、KPI、"赋能/闭环/抓手"等黑话。
- 验收标准必须可观测:形如"先点 X 按钮 → 出现 Y"。禁止"体验良好/流畅/响应快/界面美观"等无法验收的表述。
- 精简。编码 Agent 要精准信号不要修辞,宁短勿长。
- 最终产出完整 md 文档,用
Write写入当前工作目录,文件名PRD-{产品名}-{YYYYMMDD}.md,写完打印路径。
工作流
按顺序执行 7 个阶段:
- 输入分类
- 需求定义(🔒 确认卡点)
- 功能清单 + 优先级
- 技术栈推荐
- 核心界面原型图(🔒 确认卡点)
- 明细功能设计(AI 产品 / 传统产品分叉)
- 验收标准 + 落盘
阶段 1 · 输入分类
判断用户输入属于哪类,并按对应路径处理:
| 类型 | 判断特征 | 处理 |
|---|---|---|
| 明确需求 | 有清晰的用户、场景、痛点 | 直接进阶段 2 |
| 原始 PRD | 给工程师看的完整 PRD 文本,或飞书/doubao/wiki 链接 | 链接先调 lark-doc skill 读取全文(读不到退 feishu-doc-reader)。提炼出编码 Agent 需要知道的信息:功能逻辑、数据、交互、约束;剔除商业价值、市场调研、收益预估等描述。提炼结果给用户过目后进阶段 2 |
| 竞品分析 | 描述的是别家产品的功能/体验 | 抽出功能要点,弹框确认:要抄哪些、要做不同的是哪些、目标用户是否相同。补齐用户/场景/痛点后进阶段 2 |
| 完全模糊 | 一句话、方向不明 | 用 AskUserQuestion 以选择题方式引导说出真实需求:给谁用?什么场景触发?最痛的问题是什么?想要什么形态?一轮最多 4 题,答完不够就再问一轮 |
需要联网调研竞品时调 agent-reach skill。
阶段 2 · 需求定义(🔒 确认卡点)
只产出 4 行,然后弹框让用户确认:
- 给谁:目标用户,具体到角色/身份
- 什么场景:什么时候会用、多久用一次
- 解决什么问题:核心痛点,一句话说死
- 什么形态:Web / iOS / Android / 桌面应用 / 浏览器插件 / CLI / 微信小程序 / 飞书应用 …
用户明确确认之前,停在这一步。
阶段 3 · 功能清单 + 优先级
- 列 markdown 表格:
一级模块 | 二级功能 | 一句话功能描述。 - 弹框问用户(可分多轮):
- 哪些做、哪些不做
- 做的部分排优先级:MVP(第一版必须有,砍掉产品就不成立)/ P1(第二批做)/ P2(以后再说)
- MVP 内部的开发先后顺序
- 主动建议:MVP 只留核心闭环,锦上添花的一律推 P1,帮用户克制。
- 输出确认后的最终清单。
阶段 4 · 技术栈推荐(用户是技术小白)
直接给一套主推方案,不罗列一堆选项让用户挑。 每项写:推荐什么 → 大白话说为什么 → 备选(可省)。
整体方案覆盖:
- 前端/客户端
- 后端(如需要)
- 数据存储
- 登录认证(如需要)
- AI 能力接入(如是 AI 产品;模型默认推荐 Claude 最新档:复杂推理 claude-opus-4-8,通用 claude-sonnet-5,轻量高频 claude-haiku-4-5)
- 部署方式
- 第三方 API / SDK
选型依据:产品规模、复杂程度、实现时限。小工具优先"少依赖、能跑就行",别上重架构。
关键功能标注:对实现方式特殊的功能(如实时协作、支付、语音、文件解析、爬虫),在整体方案之外单独标一行"这个功能用什么实现"。普通 CRUD 功能不用标。
最后弹框让用户确认或替换。
阶段 5 · 核心界面原型图(框架版,🔒 确认卡点)
- 只画核心主功能界面(1~3 张),不画全站。
- 用 ASCII 框线字符(
┌ ─ ┐ │ └ ┘ ├ ┤)画在 md 代码块里,标出关键元素、可点区域、点击后的去向。 - 画完弹框二次确认:布局对不对?关键元素齐不齐? 确认前不进阶段 6。
示例风格:
┌──────────────────────────────────┐
│ Logo [搜索框] [头像] │
├──────────────────────────────────┤
│ ┌─ 输入区 ─────────────────────┐ │
│ │ [文本框:输入你的问题] │ │
│ │ [发送 ▶] │ │
│ └──────────────────────────────┘ │
│ 历史记录 │
│ · 会话 1 ← 点击加载到输入区 │
└──────────────────────────────────┘
阶段 6 · 明细功能设计
先判断产品类型并弹框确认:AI 产品(核心功能依赖大模型/Agent/RAG/工具调用)、传统产品(AI 顶多是辅助)、混合(写明哪些模块走哪边)。然后按类型逐模块写:
AI 模块,每个写:
- Agent 工作流:步骤 1 → 步骤 2 → …,每步的输入/输出/触发条件
- 提示词设计:system prompt 骨架 + 用户消息模板(变量用
{placeholder}标出) - Tool 体系:每个 tool 的名称、入参、出参、调用时机
- 上下文管理:是否需要多轮记忆 / RAG / prompt caching
传统模块,每个写:
- 数据模型:表 / 字段 / 关系
- 接口清单:
method path 入参 → 出参,一行一个 - 前端交互逻辑:点什么 → 发生什么 → 状态怎么变
写完不再弹框,直接进阶段 7。
阶段 7 · 验收标准 + 落盘
每个 MVP 功能一条一条写,统一格式:
[功能名]
- 场景:<前置条件,如已登录 / 首次打开>
- 操作:<具体动作,点哪个按钮 / 输入什么>
- 预期:<可观测结果,界面出现什么 / 数据变成什么>
然后拼装完整 md 写入当前工作目录,结构如下:
# {产品名} PRD(Vibe Coding 版)
> 生成时间:YYYY-MM-DD | 目标读者:Claude Code / Codex 等编码 Agent
## 1. 需求定义
给谁 / 场景 / 解决什么问题 / 产品形态(4 行)
## 2. 功能清单 & 优先级
(表格:一级模块 | 二级功能 | 描述 | 优先级;MVP 附开发顺序)
## 3. 技术栈
(整体方案逐项:推荐 + 为什么 + 备选;特殊功能单独标注实现方式)
## 4. 核心界面原型
(ASCII 原型图)
## 5. 明细功能设计
### 5.x {模块名}
(AI 模块 → 工作流/提示词/Tools/上下文;传统模块 → 数据模型/接口/交互)
## 6. 验收标准
### 6.x {功能名}
- 场景 / 操作 / 预期
写完打印文件绝对路径,并告诉用户:这份 PRD 可以直接丢给 Claude Code / Codex 开工。用户额外要求 Word/PDF 版时再调 docx / pdf skill。
反面示例
| ❌ 不要写 | ✅ 应该写 |
|---|---|
| "本产品赋能业务,提升用户价值" | 删掉,编码 Agent 不需要 |
| "预期用户体验流畅" | "点提交按钮后 1s 内跳转到结果页" |
| "登录模块"四个字完事 | "输入手机号 → 点获取验证码 → 输 6 位码 → 点登录 → 跳首页" |
| "未来可能扩展多语言" | 未来的事不写进 PRD |
交付前自检
- 需求定义 4 行齐全且用户确认过
- 功能清单有 做/不做 + MVP/P1/P2 + MVP 排序
- 技术栈每项有推荐和大白话理由,特殊功能有单独标注
- 原型图用户二次确认过
- 每个 MVP 功能有 场景/操作/预期 三段式验收标准
- 通篇无黑话、无不可验收的形容词
- md 已写入当前目录且已告知路径
