今天早上读到一篇文章,标题很有意思:《半年踩完坑,我发现 SDD 圈子里有五条常识,全是错的》

文章讲的是 SDD(Spec-Driven Development)——就是当前 AI 编程圈最火的那套"先写规格文档,再让 AI 生成代码"的方法论。作者拆了五条圈内共识,逐条反驳:Spec 真的是 Truth 吗?流程越严格效果越好吗?精度越高真的越好吗?

读的时候我一直在点头。不是因为作者每句话都对,而是因为他反复在追问同一个底层问题:在 AI 越来越强的今天,我们到底该在什么环节用力?

这个问题跟我最近的实践感受太吻合了。

前阵子我在做一个语义解析智能体的项目。老实说,当时没用什么现成的框架或方法论,就是在 Claude Code 的对话框里跟 AI 一遍一遍地来回——它每给一个方案,我就追问它一个漏洞;它修正了,我继续追问。没有预设流程,就是本能地觉得"这里还没问透"。

做着做着,我意识到一件事:项目能顺利推进的原因,不是我 prompt 写得多好,而是我追问得够多。

说起来有点惭愧——其实我早就装过 Superpowers 这个框架了,4 月份就在插件列表里,但一直躺在那没真正启用过。

今天翻出来重新激活,读了它的核心技能文档。发现了一个叫 brainstorming 的技能,开篇第一行就是一句硬性门禁:

Do NOT invoke any implementation skill, write any code, scaffold any project, or take any implementation action until you have presented a design and the user has approved it.
——在呈现设计方案并获得用户批准之前,禁止写任何代码、搭任何框架、或采取任何实现动作。

换言之:不准写代码。先问清楚,再动手。

整个流程跟我之前的"本能追问"如出一辙——先探索项目上下文,然后一个问题一个问题地问:你的目的是什么?约束条件有哪些?怎么算成功?一次只问一个,给出推荐答案,用户确认了再问下一个。直到设计方案被逐块确认、写成文档、用户审阅通过,才允许进入开发阶段。

这不就是 苏格拉底式追问 吗?

然后我又发现了另一个技能,叫 「grill-me」——它核心只有一句话:"Interview me relentlessly about every aspect of this plan until we reach a shared understanding." 翻译过来就是:"无情地盘问我,直到我们对方案达成共识。"

半小时、20 个问题,沿着决策树每个分支走到底。你不被问倒,方案才算过关。

一个帮你"生"出方案,一个帮你"拷问"方案。两个技能方向不同,但底层方法一模一样——一次问一个问题,不给答案不罢休。

也是在这两件事的交汇中——那篇文章的追问、我自己的追问实践、加上这些框架的追问设计——我越来越确定:这个东西远不止是一个编程技巧。

一、AI 的最大问题不是"能力不够"

我过去做开发是这样跟 AI 协作的:描述一个功能 → AI 写代码 → 我看了发现不对 → 再描述 → AI 再改 → 循环。这个过程有个名字:vibe coding

Vibe coding 的问题不在于 AI 写不出好代码,而在于我的描述精度不够

核心洞见

AI 模型的推理能力其实很强,你的限制从来不在它的能力,而在于你给它的信号太粗糙了。

我的输入信号只有 256 个级别(8-bit),但 AI 需要 1600 万个级别(24-bit)才能精准理解。苏格拉底式追问就是那个信号放大器。

这不是编程的专属问题。任何 AI 交互都面对同样的尴尬:

场景 Vibe 做法(无追问) 追问后的做法
写作 "写一篇XX主题的文章" → AI 直接出稿,然后改 5 次 "读者是谁?发表在哪?什么调性?参考谁?" → 一次过
数据分析 "分析这个数据集" → AI 出一堆图表,大部分不是你要的 "要回答什么问题?决策者是谁?什么算'有洞察'?"
设计 "做个 landing page" → AI 出一个页面,然后改到崩溃 "品牌调性?目标转化?用户画像?参考竞品?"
产品需求 "做个XX功能" → AI 直接出方案,方向错了重来 "解决谁的什么问题?为什么是现在?怎么算成功?"
学习 "给我讲讲XX" → AI 输出教科书,你看了等于没看 "你知道多少?想解决什么?什么形式最容易吸收?"

没有追问环节,AI 输出的永远是一个 "平均答案"——不差,但也不对。AI 不是在猜,它是在等你给它足够的精度。

二、两个苏格拉底,缺一不可

说到追问,苏格拉底是绕不开的祖师爷。但苏格拉底其实有两种追问方式,对应两种不同的 AI 技能:

第一种:助产式(Maieutic)——Superpowers 的 brainstorming

苏格拉底母亲的职业是助产士。他继承了她帮助产妇接生的方式——你不把答案生出来,我帮你,但我不替你生。

Superpowers 框架中的 brainstorming 技能就是这个逻辑:它假设你知道你想要什么,只是还没理清楚。所以它一个问题一个问题地问你——"目的是什么?""约束条件有哪些?""还要考虑什么场景?"——帮你把方案出来。

每一步它都给你推荐答案,你只需要确认、修正或转向。一场下来,你的模糊想法变成了清晰的设计文档。

第二种:反诘式(Elenchus)——grill-me

这是苏格拉底更出名的版本——在雅典广场上拦住路人,问"什么是正义?",然后逐一证明对方说的都不对,把人问到哑口无言。

grill-me 就是这个版本。它假设你的方案有漏洞,只是你还没发现。所以它沿决策树逐条追问——"选 A 而不是 B,理由是什么?""如果这个假设不成立呢?""这个依赖确定了吗?"——你不被问倒,说明方案靠谱;你被问倒了,说明还好在写代码之前发现了。

维度 brainstorming(助产式) grill-me(反诘式)
假设 你知道答案,我来帮你理清 你以为你知道,但你有漏洞
语气 协作探索 对抗性质疑
问题风格 "你的目的是什么?" "如果这个假设不成立呢?"
输出 设计方案文档 风险清单 + 方案修正

聪明人的直觉是只用一个。但真正有效的是两个都用

brainstorming(助产式):帮你生出一个设计方案

grill-me(反诘式):把这个方案往死里拷问

你没被问倒 → 方案靠谱
你被问倒了 → 还好在写代码之前发现了

三、追问才是元技能

说到这里你可能注意到了——所有让 AI 干活的框架,本质都在做同一件事:

技能 它在做的事 背后其实是
writing-plans(拆方案) 把设计拆成可执行任务 追问"什么步骤做?每步多久?"
TDD(测试驱动开发) 先写测试再写代码 追问"什么叫这个功能是对的?"
systematic-debugging(调试) 四阶段根因分析 追问"症状是什么?根因是什么?证据呢?"——其实是 5 Whys
code review(代码审查) 审查后修改代码 追问"这里为什么这样写?有没有更好的方式?"
finishing-branch(收尾) 合并前验证 追问"真的做完了吗?证据呢?"

去掉所有包装,每个技能的核心动作都一样:在行动之前,先追问清楚。

所以苏格拉底式追问不是众多 AI 能力之一——它是元技能。其他所有技能都在它之上生长。没有追问环节,其他技能的效率和可靠性都会下降一个数量级。

元技能树

追问 ├─ brainstorming(助产式追问 → 设计方案)
   ├─ grill-me(反诘式追问 → 压力测试方案)
   ├─ TDD(测试用例追问 → "什么叫对")
   ├─ debug(5 Whys追问 → 根因)
   ├─ code review(同行追问 → 代码质量)
   └─ 你也可以反向追问 AI:"你确定吗?为什么?"

四、追问的四个实用原则

光说"要多追问"不够。在实践中,我总结了四个原则:

1
一次只问一个问题。 一次性抛出 5 个问题等于没问。大脑受不了。这是 Superpowers 和 grill-me 共同的铁律。
2
优先给选择,而不是开空白。 "用 React 还是 Vue?"比"你用什么框架?"更容易得到精准回答。
3
说不清成功标准,就说反面。 "不要慢"→"首屏 <2s"。 "不要绑定厂商"→"K8s 可移植"。反面清单列出来,正面标准自然浮现。
4
用第一版逼出真正的约束。 很多约束你无法在真空中预定义。先定个粗糙版本开干,看到第一个可运行的东西,你立马就能说出"这里不对"。
成功标准不是一次性能定死的。 它是随着你看到实物,逐轮浮现的。先追问到"够清楚",然后开干,然后继续追问。这是一条螺旋上升的路径。

五、Vibe 的反面是追问

Vibe coding 流行的原因很简单——它爽。一句话下去,代码出来了,那个瞬间很有成就感。

但 vibe 的问题是:第一版通常能用,然后你要改点东西。改了这里那里崩了,你再描述一次,AI 再改——循环 5 次后,代码变成一个没人看得懂的💩山。

追问的反倒是:慢就是快。 花 30 分钟被问到烦躁,然后让 AI 去写代码。然后关掉电脑去睡觉,第二天它还在跑,而且没跑偏。

这需要你接受一个反直觉的事实:你花在"被问"上的时间,不是浪费,而是投资。 它的回报是在后续 10 次交互中、每次少花 10 分钟改错。

六、不限于代码,不限于工具

最初我以为这是编程的专属。后来我发现它是所有 AI 交互的底层模式。

让 AI 写文章,先追问——读者是谁?发表在哪?什么调性?

让 AI 做分析,先追问——要回答什么问题?决策者是谁?什么算有洞察?

让 AI 做设计,先追问——品牌调性?目标转化动作?用户是谁?

让 AI 做研究,先追问——研究深度还是广度?输出格式?给谁看?

领域在变,追问的结构不变。 目的 → 约束 → 成功标准 → 参考锚点。四个维度,四种追问,适用于任何领域。


回到开头。我从装 Superpowers 开始,无意中发现了一个贯穿所有 AI 技能的底层模式——追问。不管是 brainstorming 帮你"生"出方案,还是 grill-me 帮你"拷问"方案,它们的本质都是同一件事:在你让 AI 做任何事情之前,先让它把你问到无话可说。

这不是一个技巧。这是一个元技能。它是所有 AI 交互的底座,是所有"让 AI 干活"的技能的前提条件,是不管你用 ChatGPT、Claude、Copilot 还是任何工具都绕不过去的核心能力。

最后一次洞察

Vibe work 之所以出问题,不是因为 AI 不够强,而是因为你允许 AI 在没被追问清楚之前就开始输出了。

下次让 AI 做任何事之前,先问自己一个问题——我被问透了吗?

如果答案是没有,那不要开干。先追问,再行动。

这是 AI 时代最重要的元技能。没有之一。