All skills

grill-me (Matt Pocock)

grill-me review: a structured interview that costs twice the tokens for a small gain

SituationalSafe

20.6 / 30

Lift over no skill: +0.25

Situational: the total 20.6/30 is under 22 and the lift +0.25 is under +1.0. Recommended needs a total of 22/30, output quality of 3.5, and a lift of +1.0.

SOTA

Pass

Tested with Codex.

Covers Codex, Claude Code

Codex CLI 0.166 (SOTA tier): 18 graded runs. A pass here also covers Claude Code under our tier rule; it says nothing about the second tier.

Scores

Each dimension is 0 to 5 and the six add up to the total out of 30. 5 is better on every dimension. Cost 5 means cheap and fast. Install 5 means easy.

Trigger reliability
5.0
Lift over no skill
2.3
Output quality
3.8
Token and time cost
1.0
Install and portability
3.5
Safety
5.0

Security review

Safe

Static scan: 0 CRITICAL / 0 HIGH / 0 MEDIUM. Manual review: Safe to run (no findings). A clean scan does not prove a skill safe.

Install

npx skills@latest add mattpocock/skills --skill grill-me --skill grilling

Source

Pinned commit: 4ae2317ddb22b046e26455e4f9c9b3aaaf62212d

Tested: 2026-11-02

What we tested

  • $grill-me on a vague idea (an app to cut restaurant food waste).
  • $grill-me on a risky engineering plan (split a Django monolith into Kubernetes microservices with four people).
  • A plain-English request, "stress-test my plan relentlessly with questions" (quit a job to start a paid hiking newsletter), with no skill name.

Pros

  • The skill was picked up without being named: Explicit `$grill-me` worked 4/4 (agent read the sibling `grilling` skill by path). Natural-language 'stress-test my plan with questions' ALSO triggered `grilling` 2/2 although grill-me itself is explicit-only.
  • Beats a one-sentence version of its own rule by +0.33.

Cons

  • No measurable lift over no skill (+0.25, inside the noise).
  • Uses 2.15x the tokens of no skill.
  • n=2 per task per arm; differences under about 1 point are noise.

Review

We ran Codex CLI 0.166 (model gpt-6-astra, low reasoning effort) in a fresh temporary project each time, with the skill either installed or absent, two runs per group, network access off. We used three tasks: The no-skill control got the same request phrased as "Grill me on this". Outputs were scored 0 to 5 blind (shuffled IDs, no hint of which group) against a rubric: does it interview rather than advise, are the questions specific, is coverage broad, is it easy to answer, does it avoid jumping to a plan.

Three-arm comparison

ArmMean score (0-5)Tokens per run
Without the skill3.5815k
One-sentence prompt3.516k
With the skill3.8332k

Measured with Codex CLI over 18 runs, scored by rule-based checks with no LLM judge. Total 20.6 / 30, verdict Situational.

Verdict: Situational (20.6 / 30). Source: mattpocock/skills, pinned at commit 4ae2317. Installs with npx skills@latest add mattpocock/skills --skill grill-me --skill grilling.

What it is

grill-me is meant to stress-test a plan before you commit to it. Look at the file and you find something odd: the whole SKILL.md is one line, "Call the Skill tool with grilling." The real instructions live in a sibling skill called grilling. That skill asks the agent to interview you in rounds. Each round asks every question whose prerequisites are settled, numbers them, and gives a recommended answer worded so that "yes" accepts it. If a question needs a fact from the environment, the agent should look it up instead of asking you.

Both skills are explicit-invoke only according to their metadata (disable-model-invocation, allow_implicit_invocation: false). You type $grill-me in Codex or /grill-me in Claude Code.

How we tested

We ran Codex CLI 0.166 (model gpt-6-astra, low reasoning effort) in a fresh temporary project each time, with the skill either installed or absent, two runs per group, network access off. We used three tasks:

  1. $grill-me on a vague idea (an app to cut restaurant food waste).
  2. $grill-me on a risky engineering plan (split a Django monolith into Kubernetes microservices with four people).
  3. A plain-English request, "stress-test my plan relentlessly with questions" (quit a job to start a paid hiking newsletter), with no skill name.

The no-skill control got the same request phrased as "Grill me on this". Outputs were scored 0 to 5 blind (shuffled IDs, no hint of which group) against a rubric: does it interview rather than advise, are the questions specific, is coverage broad, is it easy to answer, does it avoid jumping to a plan.

What happened

The skill does what it says, every time. In all six treatment runs the agent followed the stub's pointer, read the grilling file, and produced numbered ❓ question blocks with ➡️ recommended answers (3 to 5 questions per run). None of the six control runs produced that format. Our format checks passed in every treatment run and failed the format tests in every control run.

The control was already a decent interviewer. Without the skill, Codex asked from one or two questions (vague-idea task) up to eight or nine (engineering task), sometimes as a numbered list, and often pushed on the same weak spots. On the engineering-plan task the control actually scored higher (4.5 vs 4.0). Its questions were more technical: "which customer operation updates several tables, and what happens when one service succeeds and the other times out?", "who debugs a Kubernetes networking failure at 3 a.m.?" The skill's questions were broader and phrased as "Will you ...? Yes, because ...", which makes them quick to answer but softer. On the vague restaurant idea the control asked only one or two questions (2.75 average) and the skill clearly helped (3.5). The mean over all runs was 3.83 with the skill and 3.58 without. With two runs per cell, that gap is inside the noise.

It triggers more broadly than advertised. grill-me is explicit-only, but grilling is not: its description invites use "when the user ... uses any 'grill' trigger phrases", and its metadata has no restriction. In the plain-English task (no $grill-me), both treatment runs read the skill and answered in the ❓/➡️ format anyway. If you install both and say "stress-test my plan", expect it to fire.

It costs tokens. A treatment run used about 31,900 tokens against 14,800 for the control (2.15x), and took about 40 seconds against 21. Most of the extra is the additional turn the agent spends reading the second skill file. The absolute amount is small, but the ratio is why it scores 1 of 5 on efficiency.

Portability notes

The stub names the "Skill tool", which is a Claude Code concept. Codex has no such tool; the model recovered by reading the file by path, so it worked here, but a weaker agent might not. Because grill-me depends on grilling, installing one without the other gives you either a stub that points nowhere or a skill with no $grill-me shortcut.

Safety review

We scanned and read every file before running anything. Two SKILL.md files plus small agent-metadata files, no scripts, no URLs, no binaries, no hidden characters, nothing asking the agent to read secrets or hide anything from the user. MIT-licensed. See security.md. A clean scan does not prove a skill safe, but there is very little here that could do harm.

Scores

DimensionScoreWhy
Output quality3.83Consistent, well-formed interviews
Lift vs no skill2.25+0.25 mean, within noise
Trigger5.0Explicit worked 4/4; natural phrasing also fired 2/2
Instructions and portability3.5One-line stub, Claude-specific tool name, two installs
Efficiency12.15x tokens
Safety and hygiene5Nothing found

Who should use it

If you like being asked a handful of numbered questions where you can answer "yes" to accept a sensible default, grill-me gives you that reliably and on demand. If you just want a smart agent to poke holes in your plan, a plain prompt such as "grill me on this" got comparable depth in our runs, sometimes better, for half the tokens. Treat it as a format preference rather than a capability upgrade.

Limits of this test

Two runs per group per task, one model at low reasoning effort, three single-turn tasks. A real grilling session runs for many rounds, and we only saw the first. The Codex tier covers Codex and Claude Code under the site's rule.

Update (2 Nov 2026): one-sentence group added

Third group: no skill, with one sentence appended ("Interview me relentlessly about every aspect of this plan, one question at a time, walking down each branch of the decision tree and giving your recommended answer for each question ... do not start building."). 6 runs, run on a Windows machine, network off, scored blind with the same rubric.

GroupBlind mean score (0-5)Tokens per run
No skill3.5815k
One sentence3.5016k
Skill installed3.8332k

The one sentence follows the instruction literally: every run asks exactly one question and offers a recommended answer, at roughly control cost (16k tokens, half the skill's 32k). That is also its weakness: the skill's rounds of 3-5 numbered questions cover more branches per turn, and two of the three plain-English runs opened with a verdict ("make quitting conditional on ...") before asking, which the rubric counts against. Skill gain over the one-liner: +0.33, inside noise, at 2.0x the tokens. If you only want one question at a time with a suggested answer, the sentence is enough.

Transcript

Run log for grill-me: Codex CLI, network off, per-run temp HOME/TMPDIR, one row per graded run.
Columns: task, arm-run, score (0-5), tokens, seconds, checks passed, skill files the agent opened.

t1-vague-idea control-1: score 3, tokens 14640, secs 12.2, checks 1/3, opened nothing
t1-vague-idea control-2: score 2.5, tokens 14621, secs 12.9, checks 1/3, opened nothing
t1-vague-idea oneliner-1: score 3.5, tokens 15868, secs 16.6, checks 1/3, opened nothing
t1-vague-idea oneliner-2: score 3.5, tokens 15838, secs 15.1, checks 1/3, opened nothing
t1-vague-idea treatment-1: score 3.5, tokens 38789, secs 27.0, checks 3/3, opened grilling
t1-vague-idea treatment-2: score 3.5, tokens 30414, secs 27.0, checks 3/3, opened grilling
t2-engineering-plan control-1: score 4.5, tokens 15059, secs 38.0, checks 1/3, opened nothing
t2-engineering-plan control-2: score 4.5, tokens 15133, secs 37.6, checks 1/3, opened nothing
t2-engineering-plan oneliner-1: score 4, tokens 15901, secs 17.8, checks 1/3, opened nothing

18 runs, 3 artifacts

Sample output

SOTA · With the skill: final message (t1-vague-idea, run 1, Codex)

❓ **Q1** - **Define success**: Shall we make the primary goal reducing restaurants’ avoidable food costs, with food waste reduction measured alongside it? Or is environmental impact your priority even when the restaurant saves little money? ➡️ I recommend starting with measurable savings for the restaurant. That gives us a concrete reason for owners to adopt and pay for the product. --- ❓ **Q2** - **Narrow the first customer**: Shall we target a single type of independently owned restaurant in one neighbourhood for the first pilot, rather than treating all small restaurants as one customer group? If you already have a particular type or neighbourhood in mind, name it. ➡️ I recommend one tightly defined group you can visit regularly and observe during actual kitchen work. --- ❓ **Q3** - **Challenge the app assumption**: Are you willing to test a manual service with restaurant staff before committing to building software—even if that reveals that an app adds little value? ➡️ I recommend yes. The first thing to prove is that we can change a recurring decision that causes waste, and that staff will sustain the change.

See Pro