规划就是一切:把想法变成 AI 能听懂的"上下文包"
去年这个时候,我准备做一个"自动把语音笔记整理成结构化文档"的小工具。
Vibe Coding 指南 · 第 03 篇
💀 一个真实的翻车故事
去年这个时候,我准备做一个"自动把语音笔记整理成结构化文档"的小工具。
我打开 Cursor,对着 AI 噼里啪啦敲:
"做一个语音转文字的网页,可以上传录音文件,自动整理成笔记。"
第一天,AI 给我搭了个能用的雏形——上传按钮、调用 Whisper API、把文字塞到一个文本框里。完美。
第二天,我说"加个用户登录"。AI 装了个登录库,写了几个页面。还行。
第三天,我说"笔记要能分类,再加个标签系统"。AI 改了数据库结构,但前端有几个地方颜色对不上,我让它"统一一下风格"。它改了。
第四天,我说"导出 PDF 时要带封面"。AI 改了导出逻辑,结果原来的上传功能挂了。我说"上传又坏了",它说"修好了",又跑去改——这次登录又挂了。
第七天,我打开项目,发现有 47 个文件,30 多个 bug,AI 改 A 坏 B 改 B 坏 C,我已经看不懂自己的代码长啥样了。
我把整个文件夹删了。
🎯 这事的根本原因
这个翻车不是 AI 不行,也不是我不努力。
根本原因是我从头到尾没有"规划"。
我一直在跟 AI 玩一个游戏叫:"我想到啥说啥,你听到啥写啥。"
AI 没有任何"全局视图"——它不知道这个产品最终长啥样、不知道哪些功能是核心、不知道哪些不能动。所以它每次都是局部最优解:你要加登录,它就装个登录;你要改风格,它就改风格。
但所有局部最优堆在一起,就是全局灾难。
Vibe Coding 圈里有句话,我现在写在屏幕上方提醒自己:
"凡是上来不规划直接干的,最后都得推倒重来。"
这就是为什么我说这是整个系列最重要的一篇。如果你只能看一篇,看这篇。
🏗️ 一个精妙的类比:盖房子
Vibe Coding 之于规划,就像盖房子之于设计图。
你能想象一个工人,不看图纸,听包工头说"先砌一面墙吧"——他就砌;然后包工头说"再加一个窗户"——他在墙上凿洞;然后包工头说"这房子要承重三层"——工人傻了,因为他刚砌的墙根本不是承重墙……
这就是没规划的 Vibe Coding。
而有规划的 Vibe Coding 是怎样?
先有设计图:这是个三层小别墅,朝南,承重墙在中间,厨房在东侧——所有人都看着同一张图。然后工人砌的每一块砖,都跟最终目标对齐。
规划就是给 AI 的"设计图"。
🖼️ 图片建议: 左右对比图。左边"没规划":一群小工人乱砌墙,每个人砌一块、互相打架,整个房子歪歪扭扭。右边"有规划":墙上挂着大设计图,工人们井然有序,每块砖都对得上图纸。卡通风格,色彩明快。
📋 三份关键文档:你的设计图三件套
来自 vibe-coding-prompt-template 这个仓库的工作流,业内已经几乎成了标准。一共三步、三份文档:
| Step | 文档 | 它回答什么问题 | 谁来写 |
|---|---|---|---|
| 1. Deep Research | research-XXX.md | 这事值不值得做?市场有谁?竞品咋样? | ChatGPT/Claude 帮你写 |
| 2. PRD | PRD-XXX-MVP.md | 到底要做什么?不做什么?验收标准是啥? | ChatGPT/Claude 帮你写 |
| 3. Tech Design | TechDesign-XXX-MVP.md | 用什么技术栈?怎么搭架构? | ChatGPT/Claude 帮你写 |
注意一个反直觉的点:这三步全部在 ChatGPT/Claude 的对话窗口里完成,你完全不需要打开 IDE。
这是很多新人最反直觉的地方——"我不是要写代码吗?为什么花三个小时跟 ChatGPT 聊天?"
因为这三个小时,省下的是后面三个星期的返工。
让 Karpathy 自己来说一句:他做 MenuGen 那个项目,前期规划花了 60% 的时间,写代码只占 40%。这还是他亲自写。
📊 Step 1:Deep Research——先证明这事值得做
很多人跳过这一步,觉得"我有 idea 就够了,去查啥竞品"。
这是大坑。 因为:
- 大概率你的 idea 已经有人做过了——花 20 分钟查一下,省得做完才发现 GitHub 上有个一模一样的开源项目还比你好
- 竞品的失败原因,往往就是你要避开的雷
- 写 PRD 前,你需要知道"用户到底缺啥"——竞品分析就是用户调研的捷径
怎么做?
打开 ChatGPT(或者 Claude.ai),用下面这段提示词。这是我从 vibe-coding-prompt-template 仓库的 part1-deepresearch.md 提炼简化的中文版:
你是一位资深的产品策略顾问。我有一个产品 idea,
需要你帮我做深度市场调研。
请按下面流程跟我对话:
第一步:先问我 5 个问题,把这个 idea 弄清楚:
1. 目标用户是谁(年龄/角色/场景)
2. 用户当前如何解决这个问题
3. 我的解决方案核心是什么
4. 我愿意投入多少时间和资源
5. 商业模式(如果有)
第二步:基于我的回答,输出一份调研报告,包含:
- 市场规模和趋势(最近 12 个月)
- 主要竞品(至少 5 个,含开源和商业)
- 每个竞品的优势/劣势/定价
- 我这个 idea 的差异化机会点
- 主要风险和坑(至少 3 个)
- 一个诚实的建议:值不值得做,为什么
要求:
- 联网搜索最新信息(如果你的工具支持)
- 数据要可验证,不确定的标注"待验证"
- 不要恭维我,发现 idea 有硬伤直接说
我的 idea 是:[在这里写你的 idea,一两句话即可]
用法:
- 把这段贴进 ChatGPT,回车
- AI 会反问你 5 个问题——认真回答,这一步质量决定后面所有文档质量
- 它输出报告——存成
research-XXX.md
关键技巧:
- ✅ 开启 ChatGPT 的"网页搜索"功能(界面上有个地球图标),不开的话竞品信息可能是过期的
- ✅ 报告里有任何你不熟悉的竞品,追问:"xxx 这个竞品具体怎么用?给我 3 个真实用户评价。"
- ❌ 别在这一步就跟 AI 讨论技术——这是产品阶段,不谈代码
🖼️ 图片建议: 一张"研究报告"页面的示意图。顶部是项目名,下面分块展示:市场规模(带个小柱状图)、5 个竞品 logo 排成一行(每个下面有简短优劣势)、差异化机会点(用 💡 图标)、风险(用 ⚠️ 图标)。整体像一份咨询报告的封面。
📝 Step 2:PRD——把想法变成可执行的需求
PRD 全称 Product Requirements Document,产品需求文档。
如果说研究报告回答"做不做",PRD 就是回答"做什么、不做什么"。
这一步最关键的一个理念是:明确"非目标"和"非目标"和"非目标"——重要的事说三遍。
什么意思?大部分新人写需求,全是"要做什么"——要登录、要支付、要导出、要分享、要 AI、要协作……
但优秀的 PRD 一定有一节叫 "Non-Goals"(不做什么)。比如:
- ❌ MVP 阶段不做多语言(只支持中文)
- ❌ MVP 阶段不做多用户协作(只单人使用)
- ❌ MVP 阶段不做移动端(只 Web)
- ❌ MVP 阶段不集成第三方登录(只邮箱密码)
为什么这玩意儿这么重要?
因为 AI 默认会"贴心"地帮你做很多事。你说"加登录",它可能顺手给你加了第三方 OAuth、加了忘记密码流程、加了二步验证。一周后你回头看,发现项目里 30% 的代码都是你压根用不上的"贴心功能"。
有了 Non-Goals,AI 会自己刹车。
提示词(精简中文版):
你是一位资深产品经理。基于我之前的调研报告,
帮我写一份 MVP 的 PRD(产品需求文档)。
请先问我以下问题:
1. MVP 的核心用户故事是什么?("作为___,我想要___,以便___")
2. 必须有哪 3 个核心功能?(再多就不是 MVP 了)
3. 哪些功能明确不做?(至少列 5 个 Non-Goals)
4. 验收标准:什么算"MVP 跑通了"?
然后输出 PRD,结构:
1. 产品定位(一句话)
2. 目标用户(具体到画像)
3. 核心用户故事(3-5 个)
4. 功能列表(带优先级 P0/P1)
5. Non-Goals(明确不做的,至少 5 条)
6. 验收标准(可量化的)
7. 关键风险
要求:
- 全部用中文
- 功能描述要具体到"点哪个按钮、出什么结果"
- 不要写"用户友好""体验好"这种虚词
用法:
把调研报告丢进同一个对话(或开新对话再贴),然后用这段提示词。AI 会问你那 4 个问题,老实答。
输出存成 PRD-XXX-MVP.md。
自检 checklist:
- 一个外行看了能复述出来"这是个做什么的产品"
- 功能列表 P0 不超过 5 个
- Non-Goals 至少 5 条
- 每个功能都能想象出具体界面长什么样
如果这四条有一条不满足,回去改。
🏛️ Step 3:Tech Design——选一套你能 Hold 住的技术栈
这一步决定你后面会不会被卡住。
核心原则只有一句话:最简单但最健壮(来自 vibe-coding-cn 仓库的原话)。
什么叫最简单但最健壮?
- ❌ 用最 fancy 的——别。新框架文档少,AI 训练数据少,写出来 bug 多
- ❌ 用最旧的——也别。生态衰退了,AI 不会用最佳实践
- ✅ 用最主流、社区最活跃、AI 训练数据最多的
2026 年我推荐的"懒人技术栈"(适合做 Web 类产品):
| 场景 | 推荐栈 | 理由 |
|---|---|---|
| 静态网站 / 个人站 | Next.js + Tailwind + Vercel 部署 | AI 写 Next.js 的能力封神 |
| 带后端的 Web App | Next.js(前后端一体)+ Supabase(DB + Auth)+ Vercel | 一个人能维护,三个东西全免费起步 |
| AI 应用 | Next.js + Vercel AI SDK + OpenRouter | 切模型不用改代码 |
| 移动 App | React Native + Expo | 跨平台、AI 熟、调试方便 |
| Python 脚本 / 工具 | Python + uv(包管理)+ FastAPI(如果要 web) | 简单 |
| 数据分析 | Python + Pandas + Streamlit | 一键出可视化 |
核心建议:Next.js + Supabase + Vercel 这套组合是当下 Vibe Coding 友好度最高的栈,初学者闭着眼睛选都不会错。
提示词:
你是一位资深技术架构师。基于我的 PRD,
帮我做技术栈选型并出一份技术设计文档。
先问我:
1. 我的技术背景(完全不会 / 会一点 / 是开发者)
2. 部署/运维偏好(不想管 / 愿意学一点 / 完全 OK 自己搭)
3. 预算(有多少钱可以花在云服务上)
4. 时间预期(MVP 想几天/几周做出来)
然后输出技术设计文档,包含:
1. 技术栈选择(前端 / 后端 / 数据库 / 部署)
2. 每个选择的理由(为什么不选其他)
3. 系统架构图(用 Mermaid 语法画)
4. 数据库 schema(如果有数据库)
5. 关键 API 接口列表
6. 已知风险和应对
铁律:
- 选最主流的,不选最新的
- 选最少组件能跑通的,不堆砌技术
- 优先选 AI 写起来熟的(Next.js > Vue,Python > Go)
- 一个人能维护得住
输出存成 TechDesign-XXX-MVP.md。
🖼️ 图片建议: 一张"技术栈层级图"。从上到下:前端层(Next.js + Tailwind)→ API 层(Next.js API Routes)→ 数据库层(Supabase)→ 部署层(Vercel)。每一层下面标"为什么选它"的一句话。色彩用 Vercel 黑、Supabase 绿、Tailwind 青蓝,整体科技感。
📦 把三份文档"打包"成上下文
现在你手上有了:
research-XXX.md (Step 1 产出)
PRD-XXX-MVP.md (Step 2 产出)
TechDesign-XXX-MVP.md (Step 3 产出)
接下来怎么用?
新建一个项目文件夹,比如 weekly-report-tool/,在里面建一个子文件夹 docs/,把三份文档丢进去:
weekly-report-tool/
└── docs/
├── research-WeeklyReport.md
├── PRD-WeeklyReport-MVP.md
└── TechDesign-WeeklyReport-MVP.md
这就是你的"上下文包"。
下一篇我们会讲怎么把这个上下文包"焊"到 AI 的脑子里——也就是 AGENTS.md 和记忆库的设置。
但在那之前,你已经完成了 Vibe Coding 最重要的 60% 工作。
⚠️ 这一步最容易犯的 5 个错
错 1:跳过 Deep Research
"我都想清楚了,直接写就行了"——99% 的概率你后面要重做。20 分钟的事,别省。
错 2:PRD 写得像作文
"用户友好""极致体验""智能化"——这种词 AI 看不懂。要写"点击导出按钮,弹出一个对话框让用户选 PDF/Word,选完后生成文件下载"。
错 3:技术栈贪新
"听说 Bun 比 Node 快,用 Bun 吧"——AI 训练数据里 Bun 比 Node 少 100 倍,你会被各种小坑卡死。主流就行。
错 4:一份文档跨多个对话写
ChatGPT/Claude 有上下文长度限制。一份文档一个对话,写完存盘,开新对话继续下一个。
错 5:写完不审一遍
AI 写的东西一定要你自己读一遍。不是因为 AI 不靠谱,是因为写完之后你的脑子里要有这份文档——后面你要用它跟 AI 沟通,你不熟悉它就用不好。
🎬 给你的作业
如果你看完这一篇没动手,那就白看了。
今晚花两小时,做完下面三件事:
- 想一个你真正想做的小工具(哪怕只是给自己用)
- 用上面三个提示词,依次跑出
research / PRD / TechDesign三份文档 - 在本地建一个
项目名/docs/文件夹,把文档存进去
做完之后你会发现两件事:
- 你的 idea 比你以为的更具体了
- 你对要做的东西有了"全局视图"——这是后面所有事的基础
下一篇,我们正式进入 IDE,把这个"上下文包"装到 AI 脑子里——AGENTS.md 和记忆库:让 AI 拥有项目记忆,不再忘事。
下篇见。
—— 面包君