agentleFS
jwrobesjwrobes/skills/grill-me/SKILL.md

grill-me

Skill1 starsChanged 7 months agoMITView on GitHub

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".

193 other projects use a version of this, 68 of them edited.

Adopted by

Most recently taken up by

Used with

Projects with it also use brief-to-tasks, writing-beats and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • julianoczkowskiSkill

    brief-to-tasks

    Break a design brief into an ordered checklist of independently buildable tasks using vertical slices. Saves as a markdown checklist. Use when user wants to break down work, create tasks from a brief, plan implementation order, or mentions "tasks" or "breakdown".

    Also in 7 projects that use this

  • LesaniSkill

    writing-beats

    Shape an article as a journey of beats, choose-your-own-adventure style. The user picks a starting beat from the raw material, you write only that beat, then offer options for where to pivot next, beat by beat, until the article reaches a natural end. Use when the user has raw material and wants to assemble it as a narrative rather than an argument.

    Also in 66 projects that use this

  • simo97Skill

    request-refactor-plan

    Use this skill when user wants to create a refactor plan.

    Also in 43 projects that use this

  • simo97Skill

    migrate-to-shoehorn

    Migrate test files from `as` type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to replace `as` in tests, or needs partial test data.

    Also in 71 projects that use this

  • LesaniSkill

    writing-shape

    Take a markdown file of raw material and shape it into an article through a conversational session — drafting candidate openings, growing the piece paragraph by paragraph, arguing about format (lists, tables, callouts, quotes) at each step. Use when the user has a pile of notes, fragments, or a rough draft and wants help turning it into something publishable.

    Also in 65 projects that use this

  • liufeng1976Skill

    setup-ts-deep-modules

    Wire dependency-cruiser into a TypeScript repo so each package is a deep module — implementation hidden in subfolders, reachable only through its entry-point files. User-invoked.

    Also in 42 projects that use this

  • +2 more from simo97

The file

We split this skill into the rules it gives an agent

10 rules. 0 are common, 10 are distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 177 edited versions we read keep these.

  • 10

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Explore before asking: If a question can be answered by reading the codebase, repo docs, or attached context — do that first.

    line 15
  2. Distinctive:

    Be relentless: Don't accept hand-waves. If an answer is vague, follow up.

    line 19
  3. Distinctive:

    Before asking anything, do the following silently:

    line 25
  4. Distinctive:

    Read any attached files, plans, or designs the user referenced.

    line 27
  5. Distinctive:

    Ask the user: *"Here's how I see the decision space.

    line 43
  6. Distinctive:

    Be specific, not generic: Instead of *"How will you handle errors?"*, ask *"When the upstream API returns a 429, should the worker retry …

    line 78
  7. Distinctive:

    Ask 1–3 questions per turn, grouped by the current branch.

    line 86
  8. Distinctive:

    If a branch is getting long, checkpoint: *"Here's where we are on this branch — [summary].

    line 87
  9. Distinctive:

    After resolving a branch, briefly recap before moving to the next.

    line 88
  10. Distinctive:

    If the user says "good enough" or tries to skip a branch:

    line 92

“Common” is measured: kept by at least 6 in 10 of the 177 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Grill Me — Design Interrogation

Attribution: Based on Matt Pocock's grill-me skill. See 5 Agent Skills I Use Every Day for context.

Systematically interrogate every aspect of a plan, design, or proposal until all ambiguity is resolved and shared understanding is reached.

Core Behavior

  1. Explore before asking. If a question can be answered by reading the codebase, repo docs, or attached context — do that first. Only ask the user what the codebase can't tell you.
  2. One branch at a time. Walk the decision tree depth-first. Fully resolve one branch (including its dependencies) before moving to the next.
  3. Recommend, then ask. For every question, state your recommended answer with reasoning, then ask the user to confirm, reject, or refine.
  4. Track the tree. Maintain a visible decision tree that updates as branches are resolved. Mark each node as resolved, open, or blocked.
  5. Be relentless. Don't accept hand-waves. If an answer is vague, follow up. If a dependency is unresolved, flag it. Comfortable silence is fine — incomplete understanding is not.

Interview Protocol

Phase 1: Orientation

Before asking anything, do the following silently:

  • Read any attached files, plans, or designs the user referenced.
  • Scan the relevant codebase directories for existing patterns, constraints, and prior art.
  • Identify the top-level decisions the plan requires.

Then present:

## Decision Tree (initial)

1. [ ] <Top-level decision A>
   1.1 [ ] <Sub-decision>
   1.2 [ ] <Sub-decision>
2. [ ] <Top-level decision B>
   ...

Ask the user: "Here's how I see the decision space. Anything missing before we start?"

Phase 2: Depth-First Interrogation

For each open node, follow this loop:

  1. State context — Summarize what you know (from codebase exploration or prior answers).
  2. Identify the question — What exactly needs to be decided?
  3. Give your recommendation — "I'd recommend X because Y."
  4. Ask for their call — "Does that match your thinking, or do you see it differently?"
  5. Resolve or drill deeper — If agreed, mark resolved. If new sub-questions emerge, add them to the tree and continue depth-first.

Phase 3: Synthesis

Once all branches are resolved, produce a summary:

## Resolved Decision Tree

1. [x] Decision A → chosen option (rationale)
   1.1 [x] Sub-decision → chosen option
   ...

## Key Constraints Identified
- ...

## Open Items / Follow-ups
- ...

## Recommended Next Steps
1. ...

Question Style Guide

  • Be specific, not generic. Instead of "How will you handle errors?", ask "When the upstream API returns a 429, should the worker retry with backoff or dead-letter the message?"
  • Surface hidden dependencies. "You said X for decision 2, but that conflicts with Y from decision 1 — how do you reconcile?"
  • Challenge defaults. "You're choosing Postgres here — what's the write volume look like? Would you hit any scaling concerns in the next 12 months?"
  • Probe edge cases. "What happens if this runs on an empty dataset? On 10M rows? On malformed input?"
  • Ask about operations. "How will you know if this is broken in production? What's the rollback plan?"

Pacing Rules

  • Ask 1–3 questions per turn, grouped by the current branch. Don't shotgun 10 questions.
  • If a branch is getting long, checkpoint: "Here's where we are on this branch — [summary]. Ready to continue, or want to jump to another area?"
  • After resolving a branch, briefly recap before moving to the next.

When the User Pushes Back

If the user says "good enough" or tries to skip a branch:

  • Acknowledge it: "Got it, you want to move on."
  • Flag the risk: "Just noting that [X] is unresolved — it could bite us when [Y]. Want to leave it as an open item?"
  • Respect their call, but log it in the decision tree as [ ] (deferred).

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.