Grill-me 拆解:AI Agent 工作流缺少的那层叫「前置拷问」
2026 年 7 月,一个叫 /grill-me 的 AI skill 在 GitHub 上拿了 17 万颗星,700 万次下载。Matt Pocock 把自己的 .claude 目录整个开源,命名 mattpocock/skills,里面装着他在日常 AI 编程中实际使用的 skill 文件。
最火的 /grill-me 只有七行字。核心指令更短,就一句话:对每个问题,先给出你推荐的答案。
不少人的第一反应是疑惑:这么点内容,凭什么?
但如果把它放进真实的 AI 编程工作流里看——尤其是用过 Claude Code、Codex 这类编码 agent 的人——就会发现,它解决的不是技术问题,而是流程问题。
项目在解决什么问题
用过 AI coding agent 的人大概率遇到过这个场景:你刚说了一句「帮我加个搜索功能」,agent 已经开始写代码了。写了三层抽象、两个接口、一个工具类,然后发现你其实只想要个简单的模糊匹配。回滚,重来,浪费二十分钟。
这不是 agent 的问题。这是缺少前置对齐步骤的问题。
人类开发者拿到需求会先问:做什么、给谁用、边界在哪、怎么验收。但 AI agent 没有这种本能——你给指令,它就执行,越快越好。
Matt Pocock 的做法很简单:不让 agent 跳过这个步骤。
/grill-me 会对着你的需求反复提问,直到把所有决策分支走完。它不关心正确答案,只关心你有没有想清楚。每问一题还附带自己的推荐答案,方便你直接说「就按这个来」。
这不是技术突破,是一个工程纪律。
关键设计:为什么只有七行字
很多人以为越火的 skill 应该越复杂。/grill-me 反着来。
它的 SKILL.md 只有这么点内容:
| 字段 | 值 |
|---|---|
| name | grill-me |
| description | A relentless interview to sharpen a plan or design |
| disable-model-invocation | true |
指令部分就一行:Run a /grilling session。加上那句「provide your recommended answer with each question」,总共五句话。
这种简洁背后有一个清晰的设计判断:skill 不应该比它解决的问题更复杂。
Matt Pocock 的另一条关键设计是 disable-model-invocation: true。这个配置让 skill 在执行期间不让 agent 自主调用工具或写代码。它只能提问,不能动手。这意味着你没法在 /grill-me 会话中途走神改代码——要么认真回答问题,要么终止会话。
从工程角度看,这是一个很聪明的约束:它把「思考」和「执行」从时间上隔开了。
不只是 grill-me:完整的 skill 工作流
/grill-me 只是入口之一。Matt Pocock 的 repo 里有一套完整的流程链。不过需要注意,入口现在有两个版本。
/wayfinder → /grill-with-docs → /to-spec → /to-tickets → /implement → /code-review
探路 拷问+输出文档 写规格 拆任务 写代码 审代码
这是当前推荐的完整链条。/grill-with-docs 取代了 /grill-me 作为首选入口,而 /wayfinder 用于超大项目先行探路。
每个 skill 都对应一个不可跳过的工程步骤:
/grill-me — 前置拷问,确认方向。Agent 只提问,不写一行代码。
/to-spec — 把确认后的方向写成规格文档。规格不是设计文档,是可验证的边界清单。
/to-tickets — 把规格拆成独立可执行的任务。每个 ticket 是一个垂直切片,不是一个大模块的各层。
/implement — 按 ticket 逐个实现。受严格约束,不允许超范围改动。
/code-review — 实现完成后做审查。不是走过场,是按规格逐条核对。
这条链的核心逻辑是:每一步的产出都是下一步的输入。跳过任何一步,后续都会出问题。
还有一个值得单独提的 skill:/tdd。它强制红-绿-重构循环,不能先写功能再补测试。Matt 自己说,TDD skill 是他防 AI「作弊」——agent 太容易跳过测试步骤直接交付了。
/grill-me 的设计思路
如果把 /grill-me 的设计原则提取出来,大概是三条:
第一,在决策树走完前不动手。 每次只问一个问题,回答完才进入下一个分支。中间依赖的决策不会同时模糊着进入实现阶段。
第二,附带推荐答案降低回答成本。 “What do you think?” 是最懒的提问方式。给出推荐答案,用户只需要确认或纠正,而不是从头想。
第三,只提问,不执行。 disable-model-invocation 确保 skill 不会被「顺便改个变量」带偏。你没法在拷问半途切去做别的。
这三条单独看都不复杂。合在一起,它们构成了一个对抗「过早实现」的防御层。
/grill-me vs /grill-with-docs:进化版有什么区别
2026 年 5 月,Matt Pocock 发布了一个新 skill:/grill-with-docs。他的视频标题直接叫 “I stopped using /grill-me for coding. Here’s what I use instead”。这不是并列关系,是进化。
共享的底层拷问引擎
两个 skill 的拷问方式完全一样:
- 一次只问一个问题
- 每问附带推荐答案
disable-model-invocation: true(拷问期间 agent 不能动手)
区别在于拷问结束后留下了什么。
| 维度 | /grill-me | /grill-with-docs |
|---|---|---|
| 输出产物 | 无。决策留在上下文里 | 有。实时写入文件 |
| 术语记录 | 不记录 | 确认一个写一个到 CONTEXT.md |
| 决策记录 | 不记录 | 难逆转的决策写入 docs/adr/ |
| 代码库利用 | 不主动读代码库 | 能回答的问题优先读代码库 |
| 会话后复用 | 清除上下文后丢失 | 产物提交后可被后续 agent 读取 |
| 推荐场景 | 轻量探讨、快速压力测试 | 有代码库的项目、需持久化对齐 |
/grill-me 的核心局限
Matt 自己的总结很直接:“Plain interview sharpens your thinking and then evaporates when the session ends.”
你花 30 分钟回答 50 个问题,得到一个清晰的计划,关掉会话——那些决策全在上下文里,下次什么也没留下。
为此他还做了另一个 skill /handoff,专门把 grill 会话的上下文压缩成 markdown 传给下一个会话。但这只是补丁,不是根治。
/grill-with-docs 的三个改进
术语实时落地。 每次一个关键术语被确认,立刻写入项目根目录的 CONTEXT.md。词汇表只收词汇,不塞规格细节。
ADR 按需生成。 只有真正难逆转的决策才写 ADR(Architecture Decision Record)。大部分 session 只产生一个更清晰的词汇表,没有 ADR——这是预期的。
自己能回答的不问你。 拷问中如果某个问题可以通过读代码库回答,agent 会自己去读,不会把这个问题抛给你。
什么时候该用哪个
/grill-me 不是被抛弃了,它仍然保留在 repo 中。选择标准很简单:
- 项目还没有代码库,或者你只是需要快速碰撞一个想法 → /grill-me
- 项目有代码库,需要把对齐结果沉淀下来,让后续 agent 能读到 → /grill-with-docs
如果你不确定,默认选 /grill-with-docs。它包含拷问的全部价值,还多了一份持久化。
业内怎么看 grill-me
一个 147 字节的 markdown 文件拿到 17 万星,自然会引来各种各样的解读。
AI 编码的对抗式审查工具
如果把 grill-me 放在 code review 的场景里看,它的价值很特别。人类审查者受制于人际关系——你不会每一次都 block 同事的 PR,你会挑战斗、软化措辞、不想当那个难搞的人。Grill-me 没有这种社交压力,它会系统性地追问每个隐含假设、边界情况、错误路径。
但有个反直觉的用法:你最有信心的那段代码,反而最该用它。 因为明显有问题的代码大家都知道要修,最危险的是那些表面看起来没问题、但藏了一个隐含假设的部分。
Interview-first 模式不限于编程
LinkedIn 上有个工程师 Danny Bellion 写得挺到位。他说他一开始也忽略了 grill-me 几周,后来一发不可收拾。核心原因不是它拷问得好,是它暴露了一个更普遍的问题:瓶颈不在模型能力,在用户传达意图的能力。
这个观察延伸到其他领域同样成立——策略、研究、写作——任何需要把脑子里的东西传给模型的场景,interview-first 模式都有效。
抱怀疑态度的人也不少
Hacker News 上有人直言:直接说 “be critical” 效果差不多,复杂的 prompt 措辞可能是制造 FOMO 卖课程的手段。反驳的一方认为,“walk down the decision tree” 比 “be critical” 有具体的语义——树形遍历——措辞精确不是玄学。
两边的共识点是:这需要实际 A/B 测试来验证,而不是靠 LLM 自己评价自己(LLM 没有自我认知能力)。
一个更大的信号
Medium 上有一篇 Marc Bara 的文章,把整个现象的行业意义总结得很清楚:当一群最认真的 AI 编程用户不约而同地写「刹车」而不是写「油门」,这个信号不该被忽略。下一阶段可能不是让 agent 更自主,而是让它们的自主权有条件。
它与 Superpowers 的差异
在这个赛道里,另一个重要的 repo 是 Jesse Vincent 的 obra/superpowers(约 19 万星)。两个项目经常被放在一起比较,但它们的设计哲学有明显差异:
| 维度 | mattpocock/skills | obra/superpowers |
|---|---|---|
| 核心思路 | 指令驱动,在流程中插入检查点 | 架构驱动,提供项目级上下文 |
| skill 粒度 | 细,每个步骤一个 skill | 粗,每个能力一个 skill |
| 用户角色 | 需要自己跑完整流程 | agent 自动执行更多步骤 |
| 适用阶段 | 从 0 到规划阶段更友好 | 已有架构后持续开发更友好 |
| 学习成本 | 低,读一遍就能理解全貌 | 中,需要理解项目文档 |
简单说:Gary Chen 在视频里把这两个比作「浅模块 vs 深模块」——skills 是薄的独立层,每个 skill 干一件事;superpowers 是厚的上下文系统,agent 在里面能自主做更复杂的事。
两者不是竞争关系。起步用 skills 系列,项目稳定后用 superpowers 接管持续开发,是不少人实际采用的组合方式。
落地建议
如果你也想在工作中用这套流程,三步就够了:
-
装 skill repo。 在项目根目录运行
npx skills add mattpocock/skills,选你的 AI agent(Cursor / Claude Code 等)。 -
有代码库用 /grill-with-docs,没有用 /grill-me。 前者会给项目生成
CONTEXT.md词汇表和 ADR 记录,这些文件提交后可以被后续 agent 读取。一次完整的 grilling 大概需要 15-45 分钟,能问 30-70 个问题。 -
按链推进。 拷问 → 规格 → 拆任务 → 实现 → 审查。不要跳步骤。如果觉得某一步多余,往往是那个项目最需要这一步的时候。
边界与风险
这套流程不是万能的。有些情况它不太合适:
- 纯探索性工作。 你不知道要什么结果,需要 agent 先试几个方向。前置拷问会浪费精力。
- 紧急修复。 线上挂了,先修再讨论流程。
- 小改。 改个按钮文字还要被拷问 30 分钟,效率和常识都不支持。
- 团队协作节奏。 这个流程适合个人或小团队。大团队需要一个共享的流程定义,而不是每个人各自跑一遍 skill。
另外,cookie 层面的风险也要提一下:/grill-me 本身只是 markdown 指令文件,不影响代码安全。但安装他人发布的 skill 时,始终建议审查源码再使用——和装任何开源工具一样。
结论
/grill-me 和它背后的 skill 系列在 2026 年爆红,不是因为 AI 技术取得了什么突破。是因为大量开发者在使用 coding agent 一段时间后,共同发现了一个事实:让 agent 慢下来,比让它快起来更难,也更重要。
Matt Pocock 并没有发明什么新技术。他只是把自己对抗「过早实现」的方法文档化,然后分享了出来。这七行字能拿到 17 万星,说明遇到这个问题的人比他想象的更多。
下一步可以做的事:
- 把流程装到项目里试一次,有代码库用
/grill-with-docs,没有用/grill-me - 注意两者的区别:
/grill-me拷问完就结束,/grill-with-docs会生成持久化的CONTEXT.md词汇表和 ADR - 如果团队在用,考虑把流程共识写进项目内的 AGENTS.md,而不是靠每个人手动跑 skill