了解你的未知领域
什么是你的未知领域?当我向 Claude 提出问题时,通常会从四个方面拆解:
- 已知已知:这基本上就是我在提示中告诉代理的内容。我想让它做什么?
- 已知未知:我还没弄明白,但知道自己不知道的是什么?
- 未知已知:那些太显而易见以至于我不会写下来,但看到时会认出来的东西?
- 未知未知:我根本没考虑过的是什么?我不知道的知识有哪些?我知道某件事能做到多好吗?
最优秀的代理编码者通常未知领域较少。看像 Boris 或 Jarred 这样的人提示时,很明显他们对自己想要的东西非常清楚,且对代码库和模型行为都非常熟悉。

但他们也会假设存在未知。某种程度上,减少并规划你的未知领域是代理编码的技能。幸运的是,这项技能可以通过与 Claude 合作不断提升。
帮助 Claude 更好地帮助你

指导 Claude 需要微妙的平衡。如果你过于具体,Claude 会严格遵循指令,即使有时转变方向更合适;如果你过于模糊,Claude 往往会基于行业最佳实践做出选择和假设,但这些可能不适合你的任务。
如果你不考虑未知领域,结果往往两头落空:你不知道路上何时会遇到障碍,也不知道何时道路畅通,但仍希望 Claude 能灵活调整。
Claude 可以帮助你更快发现未知领域。它能快速搜索你的代码库和互联网,对大多数话题的了解远超你,还能更快从失败中迭代。
这个过程最重要的是给 Claude 提供你的起点背景。例如,告诉它你目前的思考阶段,披露你对问题和代码库的经验,让它像思维伙伴一样与你协作。
本文介绍了我用来发现未知领域的一些方法,包括:
实施前:
- 盲点检查
- 头脑风暴与原型
- 访谈
- 参考资料
- 实施计划
实施中:
- 实施笔记
实施后:
- 推介与说明文档
- 测验
实施前
盲点检查
开始工作时,了解自己的盲点非常有用。比如你在代码库新区域写功能,或用 Claude 协助不熟悉的任务(如设计迭代),很可能会有大量未知未知。
你可能不知道该问什么问题,什么才是好的,历史上做过哪些工作,或者该避开什么坑。
这时,你可以让 Claude 帮你发现并解释这些未知未知。我喜欢直接用“盲点检查”和“未知未知”这几个字眼。告诉它你是谁、知道什么,通常有助于 Claude 理解如何与你协作。
示例提示:
- “我正在添加一个新的认证提供者,但对代码库中的认证模块一无所知。能帮我做个盲点检查,找出相关的未知未知,并帮我更好地提示你吗?”
- “我不知道什么是调色,但需要给视频调色。能教我了解调色的未知未知,好让我更好地提示吗?”
头脑风暴与原型
当我面对大量未知已知(即只有看到才知道的标准)时,喜欢让 Claude 和我一起头脑风暴和做原型。
在原型阶段识别并表达未知已知非常重要,因为实施时发现它们代价较高。功能或规格的小改动可能导致代码实现大不同,且代理回退之前改动更困难。
比如,你可能只想看看在界面上加个按钮的效果,而不想马上接后端路由或维护额外状态。
另一个例子是视觉设计,我很难用语言表达,但看到时知道想要什么。这时我会让 Claude 给出几种设计方案。
我几乎每次编码前都会先做探索或头脑风暴,帮助我明确项目范围。Claude 经常能发现我忽略的高价值方案,但有时也会陷入细节。头脑风暴防止我定得范围过窄或过宽。
示例提示:
- “我想做个数据仪表盘,但没审美也不知道可能性。做个 HTML 页面,给我四种风格迥异的设计方案让我挑。”
- “别接后端,先做个单文件 HTML 模拟新编辑器工具栏,用假数据。我想先看布局效果。”
- “用户在引导后流失。我想让你搜索代码库,头脑风暴十个可能介入点,从最便宜到最激进,我会告诉你哪些点有用。”
访谈
头脑风暴后,我可能仍有未知。
这时我会让 Claude 逐条提问,帮我澄清模糊点。给它问题背景有助于它聚焦关键问题。

示例提示:
- “逐条提问,优先问那些答案会影响架构设计的模糊点。”
参考资料
有时你无法详细描述想要的东西,可能缺乏表达语言,或者太复杂。
这时,最好的办法是提供参考资料。虽然图表、文档、图片都可以,但最有价值的是源代码。
如果你有某个库实现了你想要的功能,或者有喜欢的设计组件,直接让 Claude 看那个文件夹,告诉它找什么,即使是不同语言。这比截图能提供更丰富的标记和结构细节。
示例提示:
- “vendor/rate-limiter 里的 Rust 库实现了我想要的退避机制。读它并用 TypeScript API 客户端重写相同语义。”
实施计划
准备好实施时,我会让 Claude 写个实施计划供我审阅。计划重点关注可能变动的部分,如数据模型、类型接口、用户体验流程。这样 Claude 能帮我发现可能需要调整的点。
示例提示:
- “写个 HTML 格式的实施计划,重点放在我可能调整的决策上:数据模型变更、新类型接口、用户相关内容。机械重构放后面,我信任你。”
实施中
实施笔记
计划满意后,我会开新会话,把相关文档传给 Claude,给它一个干净的上下文窗口,同时带上所有规划信息。比如传入规格文件和原型,让代理实现。
但无论计划多充分,总有未知未知潜伏。代理可能在工作中遇到边缘情况,需调整方案。
我会让 Claude 保持一个临时的“implementation-notes.md”(或 .html)文件,记录决策,方便下次改进。
示例提示:
- “保持 implementation-notes.md 文件。遇到边缘情况需偏离计划时,选保守方案,记录在‘偏离’部分,然后继续。”
实施后
推介与说明文档
交付成果最重要的是获得认可和批准。制作推介和说明文档有助于:
- 加快评审者理解,尤其是他们和你一样有未知领域时
- 加快专家批准,因为他们能看到你考虑了未知和常见失败点
示例提示:
- “把原型、规格和实施笔记打包成一个文档,我可以发 Slack 争取支持。开头放演示 GIF。”
测验
长时间工作后,Claude 可能完成了很多我没意识到的事。看代码差异只能粗略了解,因为很多行为依赖已有代码路径。
让我通过测验了解改动内容很有帮助。我只有完全通过测验才会合并代码。
示例提示:
- “给我一份 HTML 报告,包含改动的上下文、直觉、做了什么等说明,底部附带必须通过的测验。”
实践案例:发布 Fable
Fable 发布视频 完全用 Claude Code 编辑完成。对我来说这是新领域,我远非专家。
我从已知开始,知道 Claude 能用代码编辑和转录视频,但不确定准确度。于是让 Claude 解释 Whisper 转录原理,以及是否能用 ffmpeg 精准剪掉“嗯”或长停顿。
我想让 UI 与语音时间同步,但不确定可行性,便让 Claude 用 Remotion 和转录做了个原型视频试验。
视频看起来有点暗淡,我知道是调色问题,但不懂调色。第一次尝试让 Claude 做几种调色方案,但发现我不知道什么才算“好”。于是我让 Claude 教我调色,帮我发现未知领域。
地图与领地的匹配
模型越强大,正确方法能达成的目标越多。长远任务出错,往往是因为你没花足够时间定义未知领域,或没制定能让你和 Claude 共同适应未知的实施计划。
每个说明文档、头脑风暴、访谈、原型和参考资料,都是低成本发现未知的方式,避免后期高昂代价。
所以,下一个项目开始时,先让 Claude 帮你发现未知领域。
本文作者:Thariq Shihipar,Anthropic 技术团队成员。


