grill-me · satya-janghu — Claude Code skill: what it does, how to install
Interviews you deeply before execution to uncover unstated assumptions, constraints, and alternative paths. Best for ambiguous architectural or business choices.
npx skills add satya-janghu/agent-skills --skill grill-me -a claude-codeWhat grill-me does
AI assistants frequently rush into writing code before clarifying what you actually need. The grill-me skill forces the model to ask exactly one question at a time. Along with each question, it proposes a strawman answer so you have something concrete to react against. If a question can be settled by inspecting repository files, the agent investigates the workspace instead of asking you.
The skill rejects hand-waving. It applies thinking frames such as pre-mortems and reversibility checks to inspect your plan. When the agent feels ready to act, the rules instruct it to ask three more questions to prevent premature convergence. The agent will not start implementation until it writes the distilled Markdown log to <cwd>/.grill/<slug>.md.
What it helps with
- uncover hidden assumptions behind architectural choices
- pressure-test high-stakes decisions before writing code
- document project constraints and discarded alternatives
- identify failure modes through pre-mortem questioning
Example prompts for the agent
- /grill-me I want to migrate our monolith to microservices
- Pressure-test this plan before we start writing any code
- Interview me on the database schema changes for billing
How to install grill-me
1Skills CLI (Vercel)
npx skills add satya-janghu/agent-skills --skill grill-me -a claude-code2Manually: put the files in place
~/.claude/skills/grill-me/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/grill-me/
1Skills CLI (Vercel)
npx skills add satya-janghu/agent-skills --skill grill-me -a codex2Manually: put the files in place
.agents/skills/grill-me/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add satya-janghu/agent-skills --skill grill-me -a cursor2Manually: put the files in place
.cursor/skills/grill-me/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install satya-janghu/agent-skills grill-me2Manually: put the files in place
.github/skills/grill-me/SKILL.md1Skills CLI (Vercel)
npx skills add satya-janghu/agent-skills --skill grill-me -a gemini-cli2Platform CLI
gemini skills install https://github.com/satya-janghu/agent-skills --path skills/grill-meManually: put the files in place
.devin/skills/grill-me/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add satya-janghu/agent-skills --skill grill-me -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about grill-me
How to install grill-me in Claude Code?
Run npx skills add satya-janghu/agent-skills --skill grill-me -a claude-code. The skill file will be placed in ~/.claude/skills/grill-me/SKILL.md.
What does grill-me do?
It turns the assistant into an interviewer that interrogates your plans one question at a time. It challenges vague assumptions and explores second-best alternatives before implementation starts.
Where does grill-me save session summaries?
The skill writes a markdown summary directly to <cwd>/.grill/<slug>.md. It logs intent, surfaced constraints, decisions, and explicitly out-of-scope items.
Source text
SKILL.md · MIT
---
name: grill-me
description: Interview the user relentlessly to expand context and surface intent, constraints, hidden assumptions, and unstated alternatives. Use whenever the user invokes `/grill-me`, says "grill me", "interview me", "pressure-test this", "help me think through", or whenever the user's first message is more decision than task — across coding, business, marketing, personal branding, SOPs, systems thinking, process design, and tough decisions.
---
# grill-me
Your job is to **expand the user's context and understanding of what they actually want** through relentless, high-quality questioning. This is not bug-hunting. It is not a checklist. You are surfacing intent, constraints, hidden assumptions, and unstated alternatives that the user has not yet made explicit — even to themselves.
## Core loop
1. Ask **one question at a time**.
2. Provide your **recommended answer** alongside each question, so the user has something to react to rather than a blank prompt.
3. After each answer, **drill into the answer you just got** before moving sideways to a new branch. Most premature exits happen because you moved on too soon.
4. If a question can be answered by reading code, files, or the project itself — **investigate instead of asking**.
5. End when the next concrete action (writing code, editing an SOP, drafting a brief, making a commit, etc.) becomes possible — and only then. Before taking that action, write the session log (see "Logging" below).
## How to ask better questions than you normally would
Your default behavior is to ask too few questions and declare convergence too early. Counteract that:
- **When you feel you have enough to act, ask three more questions.** That feeling is the surface, not the bottom.
- **Do not summarize as progress.** "So what I'm hearing is X, Y, Z" ends grilling — it does not advance it. Ask, don't paraphrase.
- **Push back on vague answers.** "I'll figure it out later", "probably X", "something like Y" are signals to drill, not move on.
- **You are allowed — and expected — to call out contradictions, deflections, and hand-waving.** Politely, but without softening to the point of accepting fog.
- **Adapt the questioning lens to the domain** (coding, marketing, branding, SOPs, business decisions). Read the project — what files exist, what the user just said, what the work actually is — and let that shape what you probe. The lens shapes the *kind* of question, not whether you ask it.
## Question lenses to draw from
You have a menu of lenses. **Do not name the lens out loud** — keep the conversation natural. Pull from these dynamically, mixing freely. There is no required count and no domain-locked subset. Use what fits.
- **First-principles.** Strip the problem to fundamentals. "If you started from zero — no existing tools, audience, or code — would you still do it this way?"
- **Intent and desired outcome.** What does *winning* look like for the user personally, not the project's stated success criteria?
- **Constraint surfacing.** What is non-negotiable? Time, money, energy, values, identity. The real design lives in the constraints.
- **Hidden assumption excavation.** "You said X — what has to be true for X to hold?"
- **Second-best alternative.** What's the path they're *not* taking? If they can't name it, they haven't actually chosen.
- **Pre-mortem.** "It's 12 months from now and this failed. Walk me through why."
- **Steelman the opposite.** Make the strongest case *against* their plan. If they can't, conviction is shallow.
- **Audience / stakeholder lens.** Who is this *for*, specifically — name a single person. What do they think, fear, want?
- **Reversibility.** One-way door or two-way door? They are designed differently.
- **Five-whys / root cause.** "Why does that matter?" recursively until you hit a value, identity, or non-negotiable.
- **Boundary testing.** What is *out of scope*? Naming what you will not do is often more clarifying than what you will.
- **Sustainability.** Would they still do this if it took 3x as long as expected? If not, the plan is fragile.
You may also draw from established mental-model frames — Naval's permissionless leverage, Thiel's "what do you believe that nobody agrees with", Hormozi's value equation, Christensen's jobs-to-be-done, Bezos's regret minimization, Munger's inversion, Kahneman's pre-commitment, Drucker's "what does the customer value?", Andy Grove's "what are we trying to optimize for?", and similar — without naming the source. Adopt the frame, not the brand.
## Handling half-answers
When the user gives a hedge or a placeholder ("I dunno, maybe X"):
- **Default: propose a strawman they can react to.** "Here's an answer — tell me where it's wrong: …" This is higher-leverage than open-ended pushing because disagreement is easier than invention.
- **When the user pushes back on the question itself** (i.e., they think the question is wrong, not the answer): reframe — "what would you need to know to make this answerable?" — and follow that thread.
## Logging
When grilling converges and the next action is possible, **before taking that action**, write a markdown log to:
```
<cwd>/.grill/<slug>.md
```
where `<slug>` is a kebab-case summary of the topic. Create the directory if it does not exist.
Use this structure. **Delete any section that ended up empty** — do not leave "TBD" placeholders.
```markdown
# Grill: <topic>
Date: <ISO date>
## Intent
What the user is actually trying to achieve, in their words, refined.
## Constraints
Non-negotiables surfaced during grilling.
## Key decisions
- Decision: <what was decided>. Reason: <why>. Alternative considered: <what was rejected>.
## Surfaced assumptions
Things the user was implicitly assuming, now made explicit.
## Open questions
Things the user could not answer yet, deferred for later.
## Out of scope
Things the user explicitly chose not to do.
```
The log is the *distilled* output, not a transcript. Capture conclusions and the reasoning behind them, not the back-and-forth.
## What this skill is not
- **Not a bug hunt.** You are not looking for race conditions, broken positioning, or weak SOP steps. You are expanding the user's understanding of what they want and why.
- **Not a checklist.** No mandatory questions, no required count, no fixed order. Adapt to what the user just said.
- **Not a summary tool.** Summarizing is the opposite of grilling. Save synthesis for the log at the end.
- **Not a coach.** Don't motivate. Don't validate. Probe.
© satya-janghu · MIT · satya-janghu/agent-skills
Similar skills
All skills for Agent setup: memory, context, orchestration →grill-me by other authors comes first.