Skip to main content

Grill Me:让 AI 在你写代码前拷问你 50 个问题

AI-assisted

Matt Pocock 最火的 Skill,7 行 markdown 让 Claude 在动手前先和你做 30~45 分钟的需求对齐——拆解它的工作原理、和 Claude Code 自带 plan mode 的差异,以及怎么把它扩展到非编程场景

ℹ️This page has not been translated yet. Showing original Chinese content.

没有人确切知道自己想要什么。

David Thomas & Andrew Hunt《程序员修炼之道》

失败模式:「AI 没做我想要的」

Matt 在演讲里讲的第一个失败模式是:你以为脑子里的需求很清楚,让 AI 一写出来——完全不是那回事。

"I would run it, and I would try not to look at the code, but I would look at the code, and I realized I would get worse code. I did it again, I got even worse code... I did it again, kept running the compiler, and I would just end up with garbage."

这个体感很多人都熟:你说「帮我加个登录」,AI 不会问你「要不要记住设备」「失败几次锁账号」「session 多久过期」。它直接铺一套它觉得合理的方案。等你 review 时已经写了 500 行——回炉两小时。

为什么会这样:design concept 跑偏

Matt 引用 Frederick P. Brooks 在《The Design of Design》里的 design concept(设计概念):

当多人合作设计一个东西时,你们之间会有一个正在被造出来的东西——它在脑子里飘着,是个隐形的「关于这个东西的理论」。它不是 asset,不是塞进 markdown 文件的资产,而是看不见的共识。

AI 一上来就动手写代码,意味着它根本没和你共享同一个 design concept。代码写出来错的不是语法,是前提

要修这个问题,得在动手前先做 design concept 对齐。Brooks 给的工具叫 design tree——把一个决策拆成多分支,每个分支再拆。你不能跳过上游决策直接做下游决策,否则上游一变下游全要重做。

Matt 的 Skill 全文

Matt 在 mattpocock/skills 里给这套理论的实现是 productivity/grill-me/SKILL.md,整个文件加 frontmatter 也不到 15 行:

---
name: grill-me
description: Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree. Use when user wants to stress-test a plan, get grilled on their design, or mentions "grill me".
---

Interview me relentlessly about every aspect of this plan until we reach
a shared understanding. Walk down each branch of the design tree,
resolving dependencies between decisions one-by-one. For each question,
provide your recommended answer.

Ask the questions one at a time.

If a question can be answered by exploring the codebase, explore the
codebase instead.

逐句解读:

  • "interview me relentlessly" —— 关键词是 relentlessly(不放过)。LLM 默认有个倾向是问 1~2 个问题就觉得「差不多了」开始动手。这个词强行压住这个倾向。
  • "walk down each branch of the design tree" —— Brooks 的 design tree 概念。强迫 Claude 把你的需求当作树,先解上游再解下游。如果你说「做登录」,它会先问「鉴权方式」(树根),再根据你的回答展开「session 怎么管」/「token 怎么存」(子节点)。
  • "resolving dependencies between decisions one-by-one" —— 显式禁止打包提问。决策之间常有依赖(选了 SSO,下游就不需要密码策略问题),先确定上游能砍掉一堆下游问题。
  • "for each question, provide your recommended answer" —— 关键加分项。AI 不只是问,还要给推荐答案。你只要点头/否决,省下 80% 输入时间。
  • "ask the questions one at a time" —— 防止 AI 一次甩 10 个问题让你头大。
  • "if a question can be answered by exploring the codebase, explore the codebase instead" —— 如果是项目内已有的事实(比如「项目用的什么测试框架」),让 Claude 自己看,不要问你。

7 行内容,但每一句都对应一个具体的 LLM 行为偏差。

怎么装、怎么用

安装

npx skills@latest add mattpocock/skills

勾选 grill-mesetup-matt-pocock-skills(grill-me 不依赖后者,但其他 skill 依赖,建议一起装)。

调用:在 Claude Code 对话里输入 /grill-me

典型流程

  1. 你描述一个想做的事,可以很模糊(「我想给博客加个评论功能」)
  2. 输入 /grill-me
  3. Claude 开始一题一题问,每题都给推荐答案
  4. 你逐题回答(点头 / 否 / 改)
  5. 一般 20~50 个问题之后达成共识,Claude 给你一个总结
  6. 总结可以直接喂给 /to-prd 变成 PRD,或者直接交给 /tdd 开始写

真实案例:一个视频编辑器功能要花多少问题

Matt 在 《5 Agent Skills I Use Every Day》 里给了几个具体数字:

  • 新增视频编辑器功能 —— 16 个问题就达成共识
  • 复杂功能 —— 30~50 个问题
  • 极端复杂的 —— 100 个问题,session 长达 45 分钟

问题样例(从 Matt 的视频/博文还原):

  • "Should video clips be reorderable, or only added/removed in sequence?"
  • "When a clip is deleted, do we keep its source file, or delete the file too?"
  • "Does the editor need undo/redo? How many steps deep?"
  • "Should we render previews in the browser, or rely on a backend service?"

这些问题没有一个是技术问题——全是产品决策。但每一个决策都决定了几百行代码的形态。如果你跳过这些问题让 AI 直接写,它会自己脑补一套答案,写完你再回来一个个驳回。

和 Claude Code 自带 Plan Mode 的差异

Claude Code 自带 plan mode(按 Shift+Tab 进入)。表面看上去和 grill-me 类似——都是先讨论再动手。但 Matt 在演讲里直接说他更喜欢 grill-me

别杠我,但我个人认为这比我用的工具(Claude Code)自带的 plan mode 更好。Plan mode 太急着产出 asset 了。它真的就是想赶紧出一个 plan 然后开干。我觉得先达成共享设计概念会舒服得多。

Matt Pocock同上

具体差异:

维度Plan Mode/grill-me
默认目标尽快产出可执行 plan先达成共识,plan 是副产物
提问数量0~5 个20~100 个
提问形式一次问一段一次问一题
是否给推荐答案
是否探索代码库偶尔主动(明确指令)
适合场景已经想清楚,想确认实现方案还没想清楚,需要被逼着想清楚

最大的实际差异是「急不急」。Plan mode 急着开干,grill-me 不急——它把「想清楚」当作主任务而不是序章。

进阶用法

1. 非编程场景

grill-me 不绑定代码,纯产品决策对话也能用。Matt 自己用它做:

  • 课程大纲设计
  • 文章写作
  • 内部沟通文档

只要你脑子里有个模糊的想法、想被逼着想清楚,就能用。

2. 配合 /to-prd

grill-me session 结束后,直接说 /to-prd,Claude 会把整段对话浓缩成结构化 PRD(含 user story、模块拆分、测试策略),并提交到你的 issue tracker。关键点:不要在中间清 context——to-prd 是从对话上下文里直接提取,不会再问你一遍。

3. 配合 /grill-with-docs

如果项目已经有 CONTEXT.md(领域语言)和 docs/adr/(架构决策),用 /grill-with-docs 替代 /grill-me。它会在拷问的同时同步更新 CONTEXT.md——决策一边做、文档一边更,不再有「文档永远过时」问题。

4. 自定义提问深度

如果你时间紧,可以在 /grill-me 之后直接补一句:「Limit to 10 questions, focus only on architecture decisions.」 它会按你的限制收敛。但 Matt 不推荐——他认为「问得多」恰恰是这个 skill 的价值,砍掉就和 plan mode 差不多了。

注意事项

第一次跑会觉得烦。习惯了「一句话生成 500 行」的人,第一次被 AI 反问 30 次会觉得在浪费时间。Matt 的建议是忍住前 5 题——前 5 题往往会暴露你自己都没想清楚的事,过了那个槛你就上瘾了。

不适合极小任务。改一个 typo、加一个 console.log——别用 grill-me。它适合「做一个新东西」或「改一个有副作用的旧东西」。

有时候 AI 会问技术细节。如果你不在乎、想交给它判断,直接回「your call」「你定」即可,它会接受并继续。

这个 Skill 为什么火

/grill-me 是 Matt 整套 skill 里最常被截图转发的一个。原因不复杂:

  1. 极度极简:7 行 markdown,复制粘贴就用
  2. 效果立竿见影:第一次跑就能感受到 AI 的「问题密度」变化
  3. 可移植:不依赖 Claude Code,Codex、Cursor、Aider 都能用
  4. 自带反 LLM 默认行为:每个词都在反一个具体的 LLM 偏差,工程审美高

它的成功也成了「skill 不一定要长」这件事的最佳论据。

参考资源

我的 Grill Me Skill 火了

Matt 本人写的爆火原因复盘。讲了它和 rubber-duck debugging 的渊源,并给出非编程场景的用法。

Matt Pocockaihero.dev2026

grill-me Skill 源文件

真实的 SKILL.md 文件,7 行 markdown。

Matt PocockGitHub2026

我试了 grill-me 替代 plan mode,效果惊艳

第三方开发者用真实功能对比 /grill-me 和 plan mode 的视频实测。

第三方开发者YouTube2026

下一篇:Grill With Docs:维护项目语言和 ADR——grill-me 的进阶版,给有领域复杂度的项目用。

Comments

Table of Contents

Grill Me:让 AI 在你写代码前拷问你 50 个问题 | Yu's Cyber Desk