Clipping 微信公众号

Claude Fable 5 官方使用指北:真正会用 AI 编程的人,都要找到自己的「未知」

by AI兴观点 原文 ↗
Created: 2026-07-04

公众号名称:程叙架构与AI.

作者名称:AI兴观点

发布时间:2026-07-04 20:30

原文链接:https://x.com/trq212/status/2073100352921215386

✅点击上方🔺公众号🔺关注我✅

Fable 5 是 Claude 目前最强模型,但 Claude Code 团队成员 Thariq 和你我一样,每天跟它打交道时最深的感受不是「太强了」,而是「我也不知道怎么让它更强」。

他最近发了一篇长文,分享了他和 Fable 5 合作半年后的心得。不是教你写提示词,不是分享工具,而是一套关于 「未知」的框架

这篇文章没有废话。

看完你会发现:好的 AI 编程者和普通人的差距,不在技术深度,而在 搞清楚自己不知道什么


地图不等于疆域

这是 Thariq 整篇文章的起点。

地图(Map)是你给 Claude 的提示词、技能、上下文——你告诉它的一切。

疆域(Territory)是真正需要完成的工作——代码库、真实世界、实际约束。

地图和疆域之间的差距,就是所谓的 未知数(Unknowns)

当 Claude 遇到未知数,它必须基于对你意图的「最佳猜测」做决策。你做的工作越多,Claude 遇到的未知数就越多。

Fable 5 是第一个让 Thariq 觉得「工作质量的瓶颈,是我自己澄清未知数的能力」的模型。

重要的是:光是提前计划远远不够。你会在实现深处发现未知数,或者未知数会告诉你——你其实应该换个方式解决这个问题。

Thariq 的经验是:和 Fable 一起工作是在实现前、实现中、实现后持续发现未知数的迭代过程

他还做了一套示例工具来找这些未知数,但我们先建立直觉——什么时候该用它们。


你的未知数,分四种

每次跟 Claude 说一个问题,Thariq 会把它分解成 4 种类型:

类型含义对应什么
已知的已知(Known Knowns)你写进提示词的东西你明确告诉 AI 要什么
已知的未知(Known Unknowns)你没想清楚、但知道自己没想清楚的部分「这块我不确定」
未知的已知(Unknown Knowns)太理所当然以至于你永远不会写下来,但见到就能认出来「看见就懂了」
未知的未知(Unknown Unknowns)你完全没考虑过的角度、知识盲区「不知道竟然有这种解法」

最优秀的 AI 编程者,他们的特点是 未知数相对较少。看 Boris 或 Jarred 写提示词,你能明显感觉到他们极其清楚自己要什么——对代码库和模型行为都深度理解。

但他们也假设自己有未知数

在某种意义上,减少和规划你的未知数,就是 AI 编程的核心技能。 而且好在——和 Claude 一起工作本身就是练习这件事。


让 Claude 真正帮到你

给 Claude 下指令是一个微妙的平衡:

  • 太具体 → Claude 会严格执行你的指令,哪怕转弯可能更合适。
  • 太模糊 → Claude 会按行业最佳实践做默认选择,但可能不适合你的场景。

当你没有充分考虑自己的未知数时,两项全输。

Claude 能帮你更快发现未知数。它能极其快速地搜索你的代码库和互联网,远比你对大多数主题了解得多。它也能更快地从失败中迭代。

这个过程最重要的一步是:给 Claude 你的起点上下文。 比如告诉他你在思考过程的哪个阶段、你对该问题和代码库的经验水平、让他像一个思考伙伴一样和你合作。

Thariq 之前还写过用 HTML 和 Claude 工作的文章——在几乎所有情况下,HTML 都是可视化和表达未知数的最好方式。


实现前的四种武器

🎯 盲点扫描(Blind Spot Pass)——找出你不知道自己不知道的东西

开始工作的时候,最有价值的事之一就是搞清楚你的盲点。

比如你在代码库的新模块写一个功能,或者用 Claude 帮你不熟悉的工作(比如迭代设计),你很可能有大量 未知的未知——不知道要问什么问题、不知道「好」长什么样、不知道之前做过什么、不知道有哪些坑。

做法很简单:让 Claude 帮你找到你的未知未知,解释给你听。

示例提示词:

「我在加一个新的 auth 服务商,但完全不了解这个代码库里的 auth 模块。能不能帮我做一个盲点扫描,找出我的相关未知未知,帮我更好地向你提问?」

「我不知道什么是调色,但我需要调这个视频。教我理解我在调色上的未知未知,这样我就能更好地提问了。」


🧠 头脑风暴和原型(Brainstorms & Prototypes)——发现你的未知已知

当你面对大量 未知的已知——那些你只有看到才能定义的判断标准——最好的方式就是让 Claude 和你一起头脑风暴和做原型。

在原型阶段尽早发现和表述未知的已知,比在实现阶段发现要便宜得多。一个功能或规格的小改动,可能会导致完全不同的实现方式,让 AI 回退之前的代码也会更难。

比如你只是想看看一个按钮放在某个框架里好不好看,不需要真的接上后端路由或维护前端状态。

Thariq 几乎每次编码会话都从探索或头脑风暴阶段开始。Claude 经常会找到他本会错过的高价值方案,有时也会只见树木不见森林。

示例提示词:

「我为这些数据想做仪表盘,但我没有视觉品味,也不知道有什么可能性。给我做一个 HTML 页面,包含四种截然不同的设计方向,让我来选择。」

「在接任何东西之前,先用假数据做一个单独的 HTML 文件,模拟新的编辑器工具栏。我想在你碰真实应用之前先对布局做出反应。」

「这是我的粗略问题:用户在做完 onboarding 后流失了。搜索代码库,头脑风暴 10 个我们可以干预的地方,从最便宜到最大胆排序。我会告诉你哪些让我有感觉。」


💬 访谈模式(Interviews)——让 Claude 问你问题

做完足够的头脑风暴之后,你很可能仍然有未知。

这时候,让 Claude 来采访你——它会针对任何不清楚的地方追问你。关键是要给它足够的问题上下文,让它能问出好问题。

Thariq 的做法:让 Claude 一个一个地问,优先那些回答会改变架构方向的问题。

示例提示词:

「一个一个地问我,针对任何模糊之处提问。优先问那些我的回答会改变架构的问题。」

这个步骤的价值在于:你不需要自己去想「我不知道什么」,让 Claude 帮你挖掘出来。


📎 参考驱动(References)——当你无法描述时,指给它看

有时候你就是没办法详细描述你想要什么——可能你缺少对应的术语,也可能事情复杂到要说很久。

最好的答案就是给一个参考

你可以用图表、文档或图片,但最好的参考是源代码。如果你有一个库以某种方式实现了某个功能,或者有一个你特别喜欢的设计组件,直接把 Fable 指向那个文件夹,告诉它要关注什么——哪怕用的是不同的编程语言。

这也是 Claude Design 的工作方式。你不需要给它一个文件(当然你也可以那样做)。你可以指向一个你喜欢的网站上的模块,它会去读底层代码,而不仅仅是截图。

示例提示词:

「vendor/rate-limiter 里这个 Rust crate 实现了我想要的退避行为。读它,然后用同样的语义在我们的 TypeScript API 客户端里重新实现。」


实施计划:在动手前暴露可能的变化

当 Thariq 觉得准备充分了,他会让 Claude 整理一份实施计划,重点关注那些最可能发生变化的部分——数据模型、类型接口、UX 流程。

这能让 Claude 把那些他可能真正需要调整的东西推到表面,而不是在代码写完之后才发现。

示例提示词:

「用 HTML 写一份实施计划,但把那些我最可能调整的决策放在前面:数据模型变化、新的类型接口、任何面向用户的东西。把机械性的重构埋在底部,那部分我信得过你。」


实施笔记:捕捉过程中的未知未知

计划满意后,开一个新的会话,把相关的 artifact 传进去(比如一份 spec 文件和一个原型),让 agent 去实现。

但不管计划得多周全,总会有未知的未知潜伏着。Agent 可能在工作中发现,由于在代码里遇到了某个边缘情况,需要采取不同的策略。

Thariq 让 Claude Code 维护一个临时的 implementation-notes.md(或 .html)文件,记录过程中做的决策,这样可以从下一次尝试中学习。

示例提示词:

「维护一个 implementation-notes.md 文件。如果你遇到一个边缘情况迫使你偏离计划,选择保守方案,记录在 ‘Deviations’ 下,然后继续。」


交付物打包:加速认同与审批

把东西真正交付出去,最重要的一部分是获得认可和批准

在最终的文档中构建展示和说明性的 artifact 有两个作用:

  • 加速理解:审阅者和你出发点一样,有相同的未知数
  • 加速审批:专家想看到你已经考虑了那些他们会预见的未知和常见失败点

示例提示词:

「把原型、spec 和实施笔记打包成一份文档,我可以直接丢进 Slack 获得认可。用 demo GIF 开头。」


事后测验:确保自己真正理解了变更

经过一个漫长的协作会话,Claude 可能完成了比你意识到的多得多的东西。光读代码 diff 只能让你对发生了什么有一个浅层理解。

让 Claude 在给你一堆上下文之后考你关于改动的问题。只有完美通过测验才合并代码。

示例提示词:

「我想确保我完全理解这次改动发生了什么。给我一个 HTML 报告,包括上下文、直觉、做了什么等,最后加一个我必须通过的小测验。」


真实案例:Fable 发布视频背后的故事

这套框架不是纸上谈兵——Fable 5 的发布视频本身就是 Thariq 用这套方法做出来的。

Fable 的发布视频完全由 Claude Code 剪辑完成。这是他完全不熟悉的领域。

第一步:从知道的东西开始。 他知道 Claude 可以用代码编辑视频和转录,但不确定精确度够不够。于是让 Claude 解释 Whisper 这类转录的工作原理,以及能否用 ffmpeg 精确剪掉「嗯」和长时间停顿。

第二步:试原型。 他想让 Claude 创建一个与语音同步的 UI,但不确定能否做到,所以让 Claude 用 Remotion 和转录数据做一个原型视频看看是否可行。

第三步:承认自己不知道。 视频本身色调有点发灰。他知道这和调色有关,但其实不知道调色到底是什么。他的第一反应是让 Claude 做几个变体让他选——但他意识到:他根本不知道调色的「好」是什么样。 于是他转而让 Claude 教他调色,来发现自己的未知。

这个案例完美展示了整套框架的实际运行:从已知出发 → 试原型 → 发现自己不知道 → 让 AI 帮你搞懂 → 继续推进。


让地图和疆域匹配

模型越好,你就能用正确的方法做到越多。

当一个长周期任务回来结果是错的,很可能你需要多花时间定义你的未知数,或者创造一个让 Claude 能在其中即兴发挥的实施计划。

每一个解释、头脑风暴、访谈、原型、参考——都是在修复变得昂贵之前,低成本找出你不知道的东西的方式。

所以下次开始一个新项目时,先让 Claude 帮你找到你的未知数。


你的工具箱里,目前最缺的是哪一种——已知的已知?已知的未知?未知的已知?还是未知的未知?

别急着回答——好好想想。

如果觉得这篇文章有帮助,欢迎点赞、在看、转发!有问题也可以在评论区留言,我会尽量回复!


内容效果不满意?点此反馈

输入关键词开始搜索