产品方法 / 2026年8月17日
AI 已经开始写代码,我却还没想清楚要做什么
一句模糊的语音想法,怎样在没有急着写代码的情况下,一步步变成可以开发的产品方案。
2026 年 7 月 26 日,我给 AI 发了一条语音转出来的消息。
女儿三岁,最近对恐龙感兴趣,想给她做一个本地的恐龙合集。最好有 3D 效果,我们可以在电脑上看,也可以把恐龙转起来。

我发给 Wayfinder 的第一条消息。
语音里有不少口头语,说得还有些绕。当时只是一个父亲想陪女儿看看恐龙。
今天再打开史前动物博物馆,里面已经有十八个展项。它公开上线后登上过 V2EX 当日最热第一,GitHub Stars 当时也过了五百。可在那条语音发出去的时候,我连它该做成网页还是应用都不知道。

后来做出来的史前动物博物馆。
我没有马上让 AI 写代码。我用 Wayfinder 先把已经确定的事和暂时没有答案的问题放进同一张 Map,然后一次只解决一个会改变方向的问题。
先不写代码,先把终点说清楚
Wayfinder 做的第一件事,是问我这轮结束时想拿到什么。
它建议先做一份可以交给开发者的首版方案,只保证眼前这台 Mac 能用,暂时不直接做成品。
我接受了先出方案,却改了后半句。我希望它是一个纯静态网页,可以放到 GitHub。别人下载以后也能在本地浏览器里打开,将来还可以在线访问。
这段很短的来回,先拦住了一个会影响后面所有工作的分岔口。假如当时直接开写,我们很可能已经在做一个只适合我自己电脑的本地应用。
这一轮的终点也从做出博物馆变成了把首版需要做的决定问清楚。它要描述一个可下载、可在浏览器里运行的 3D 史前动物馆,供家长陪三岁孩子一起探索。
一次只解决一个能回答的问题
目的地确认以后,Wayfinder 才开始建 Map。
Map 里放着我们要去哪里、已经确认了什么、暂时说不清的地方,以及这轮明确不做什么。一个问题已经能被准确地问出来,才会成为一张 ticket。每张 ticket 只回答一个问题,同时写清它要等哪些前置结果。
需要外部事实时就去调查,需要看见以后才能判断就先做原型,涉及偏好和取舍时再由我选择。每完成一张 ticket,结论都会写回 Map,被它挡住的下一张也随之解锁。

每个答案都会更新 Map,随后再打开下一个没有被阻塞的问题。
这比在聊天框里直接列一份计划麻烦,却解决了一个具体问题。新的任务不用重新猜项目是什么,也不用把所有历史对话都塞进上下文。它先读 Map,再接着处理眼前的问题。
先查限制,再做试验,最后才选架构
最能说明这套方法的,是本地怎样不起服务就能打开这条线。
我最初想得很简单。做成纯静态页面,下载到电脑,双击 HTML 文件就能看。
Wayfinder 没有立刻选择技术栈。它先调查浏览器在 file:// 协议下加载 3D 模型和 JavaScript 模块的限制。结果显示,直接双击打开并不可靠。本地版本仍然需要一个很小的服务来启动,或者把所有资源内嵌进构建产物。
下一步才是小试验。它真的加载了一只本地 GLB,播放本地中文音频,切换模型,也故意触发加载失败。到这里,我们知道浏览器路线能走,也知道哪些地方会出问题,却还没有决定正式架构。
最后一轮才选定 React、TypeScript、Vite 和 Three.js。在线版放 GitHub Pages,本地下载版通过一个很小的 Node 服务启动。第一版不做 PWA,也不做桌面安装包。
这三个步骤的顺序不能交换。先查浏览器限制,再跑最小试验,最后做选择,技术方案才有东西可以踩在脚下。
当证据推翻计划,就让计划改掉
Map 里的第一版规模原本大约是十二只动物。
最初的调查只能证明网上存在许可允许公开再分发的候选。它不能证明这些模型放在一起好看,也不能证明文件下载回来以后真的能在浏览器里使用。
于是我把候选逐个下载,检查贴图、动画、大小和结构,再放进同一个 Three.js 场景里转着看。第一轮结果并不理想。一套模型风格很统一,画面却太粗糙。有一只翼龙在列表页里看着没问题,下载后才发现模型是坏的。
第二轮找到了更好的剑龙和肿头龙,也进一步确认免费的候选仍然拼不出一套质量稳定的十二只阵容。
我宁愿先少做几只,也不想为了凑数把明显粗糙的模型放进去。第一版从十二只收缩到六至八只,最后先选八只。
决定留在 Map 里以后,下一轮任务看到八只,也能知道数字为什么变了,不会因为忘记当时的判断,又把十二只塞回计划。
有些答案,要看见以后才能选
页面怎样排,是另一类问题。
这件事继续查资料没有多大帮助。AI 做出几种很粗的页面,里面只有占位的动物轮廓和能点的按钮,目的只是让我比较浏览方式。

方案 A 的柔和水彩绘本方向。

方案 B 的分层剪纸绘本方向。
我最后喜欢另一个方案的故事书式构图,却觉得方案 A 直接显示动物名字的切换栏更直观。正式方向就用了前者的页面结构,拿来后者的切换方式,又加上不同动物之间缓慢变化的背景。
选择发生在我看过页面以后。AI 先把只能靠想象讨论的问题做成可以看、可以点的东西,我再告诉它喜欢哪一部分。
先跑通一只剑龙,再建整座馆
到 7 月 27 日,支撑首版开发的决定已经足够完整。后面的编码也从一只剑龙开始。
它先把内容、3D、音频和响应式界面从头到尾跑通一遍。模型能转,点击能听旁白,手机能看,加载失败还有替代画面。这只剑龙是最小的一次端到端验证。
它通过以后,馆才扩成九种动物,后来又到十二种。今天公开的版本有十八个展项。
十八个展项是后面一轮轮做出来、看出来、改出来的。Wayfinder 的主要工作停在第一只剑龙可以开工之前,它把通往这一步的路问清楚了。
我只在事情真的有雾时用它
现在,我只会在一种情况下开 Wayfinder。
这件事确定要跨很多轮任务,其中还有几项尚未决定。一旦选错,后面的代码、素材或内容都会跟着返工。
能在一两轮里说清并做完的功能,我不会专门建 Map。Wayfinder 很重,逐题确认也会累。它适合那些已经值得认真做,眼前又确实还有雾的事情。
回头再看开头那句话,里面其实已经有了整个项目最重要的东西。我想和女儿一起看恐龙。网页怎么打开,第一版做几只,模型从哪里来,都是后来一项一项问出来的。
每一步都很普通。问一个问题,查一点资料,看一个粗原型,再做一个选择。它们连在一起,真的把那句有点绕的话带到了一座可以打开的博物馆面前。
来源
这篇文章最早发表于微信公众号。
- 原题
- AI 已经开始写代码,我却还没想清楚要做什么
- 来源平台
- 微信公众号
- 来源日期
- 2026年8月17日
- 本站收录日
- 2026年8月26日