grilling · v1.0 · 2026-09-11 · sha256 c3af8d4fc18a0a09
grilling v1.0A
Immutable. This exact content is served forever at /api/v1/blob/c3af8d4fc18a0a09.
--- name: grilling description: > Grill the user relentlessly about a plan, decision, or idea. Use when the user wants to stress- test their thinking, or uses any 'grill' trigger phrases. allowed-tools: Read Grep Glob Bash Task compatibility: > Owns the grilling procedure. grill-me and grill-with-docs are thin entry points that call this skill. metadata: tags: design-tree, frontier-rounds, stress-testing, plan-review, interview platforms: Claude, ChatGPT, Gemini, Codex version: "1.0" source: mattpocock/skills upstream_commit: 3cca18b368ae95cdbdebbff572ccafa662551015 invocation: model-invoked --- # Grilling — Design Tree Interview Grill the user relentlessly about a plan, decision, or idea. Use when the user wants to stress-test their thinking, or uses any 'grill' trigger phrases. This skill is imported from `mattpocock/skills` (MIT) and is **model-invoked** upstream. ## When to use this skill - Grill the user relentlessly about a plan, decision, or idea. - Use when the user wants to stress-test their thinking, or uses any 'grill' trigger phrases. ## Instructions Interview the user relentlessly until you reach a shared understanding. Map this as a **design tree**: every decision branches into the decisions that hang off it. Work the tree in **rounds**. The **frontier** is every decision whose prerequisites are already settled: the questions you can ask _now_ without guessing at answers you haven't heard yet. Ask the whole frontier in one round: number each question and give your recommended answer. Then wait for the user's answers before the next round. Format a round like so: ``` ❓ **Q1** - **<question title>**: <question body, might be multiple paragraphs, including multiple choices> ➡️ <your recommended answer> --- ❓ **Q2** - **<question title>**: <question body, might be multiple paragraphs, including multiple choices> ➡️ <your recommended answer> ``` Each round the user answers reshapes the tree: settled decisions push the frontier outward and unblock questions that depended on them. Recompute the frontier and ask the next round. A question whose answer depends on another question still open in this round belongs to a _later_ round, not this one. Finding _facts_ is your job, never the user's. When a frontier question needs a fact from the environment (filesystem, tools, etc.), dispatch a sub-agent to find it; don't ask the user for anything you could look up yourself. Don't block on it: a running exploration is an unsettled prerequisite, so only the questions downstream of it wait for the sub-agent to report; ask the rest of the frontier now. The _decisions_ are the user's: put each to them and wait. The session is done when the frontier is empty: every branch of the design tree visited, nothing left silently assumed. Do not act on it until the user confirms you have reached a shared understanding. ## Examples - Apply this skill to one narrow scope first, confirm the output matches the shape described above, then widen to the full task. - When a step needs a fact from the repository or the environment, look it up instead of asking the user for it. ## Best practices - Keep the upstream procedure intact; record deviations explicitly instead of silently improvising. - Stop and hand control back to the user at every decision point this skill marks as theirs. - Prefer small reversible changes, and state assumptions rather than burying them. ## References - Upstream skill: `mattpocock/skills` `skills/productivity/grilling/SKILL.md` (commit `3cca18b`, MIT) - Project standards: `.agent-skills/skill-standardization/SKILL.md` - Validator script: `.agent-skills/skill-standardization/scripts/validate_skill.sh`