agentleFS
gregwebsgregwebs/skills-sdlc/skills/experimental/grilling/SKILL.md

grilling

Skill20 starsChanged 44 days agoMITView on GitHub

Grill the user relentlessly - used for planning. Use when the user wants to stress-test their thinking, or uses any 'grill' trigger phrases.

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

Adopted by

Most recently taken up by

Used with

Projects with it also use capture-learning-tools, design-frontend-dev 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.
  • The-Vibe-CompanySkill

    capture-learning-tools

    Turn technical conversations, bugs, CI failures, review comments,

    Also in 5 projects that use this

  • The-Vibe-CompanySkill

    design-frontend-dev

    Clean Impeccable frontend design skill. Use when the user wants to

    Also in 5 projects that use this

  • RoentekSkill

    loop-me

    Grill me about specs for the workflows I want to build, within this workspace.

    Also in 58 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

  • FabienDehopreSkill

    decision-mapping

    Turn a loose idea into a sequenced map of investigation tickets, then drive them to resolution one at a time.

    Also in 8 projects that use this

  • AWSSkill

    wizard

    Generate an interactive bash wizard that walks a human through steps only they can perform. Use when provisioning infrastructure, setting up credentials or CI secrets, walking an unfamiliar third-party dashboard, or running a one-off migration or cutover. Don't invoke this for steps the agent can perform itself.

    Also in 136 projects that use this

  • +3 more from The-Vibe-Company

The file

We split this skill into the rules it gives an agent

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

  • 0

    Common

    Most of the 70 edited versions we read keep these.

  • 11

    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:

    All questions have a recommended answer.

    line 12
  2. Distinctive:

    Use this question template:

    line 18
  3. Distinctive:

    If the user's answer is a simple agreement (e.g.

    line 34
  4. Distinctive:

    After launching the sub-agent, your workflow will be:

    line 53
  5. Distinctive:

    If the user affirmed the previous question in the round, and the next question for the round is available, use it immediately

    line 56
  6. Distinctive:

    Ask a question to the user

    line 59
  7. Distinctive:

    Wait for user's answer

    line 60
  8. Distinctive:

    If the user's resposne is to asks for more detail, present information from the "depth" field if it appears to provide the needed detail.

    line 65
  9. Distinctive:

    check for any new answers, but do not wait unless you are done generating future questions

    line 124
  10. Distinctive:

    If an unanswered question in the current round has multiple good candidate answers then you can generate questions that will be used for …

    line 139
  11. Distinctive:

    When you have completed generating next questions for the current round, generate questions for the most likely next round.

    line 143

“Common” is measured: kept by at least 6 in 10 of the 70 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

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.

Question format

Recommendation and affirmation

All questions have a recommended answer. Most questions have alternative answers. The reasons for the recommendation and trade-offs with different approaches are stated succinctly.

Affirming is accepting the recommended answer.

Use this question template:

❓ **Q1.1** - **<question subject>**
<question body, might be multiple paragraphs>

1) <your recommended answer, and reason why>
2) <alternative answer, and reason why>
3) ...

Do you agree with the first recommended answer? Type "yes", or "1".
Or type the number of an alternative, or type a completely different response.

Alternatively you can use a selection menu. In that case the recommendation should be the default selected response.

If the user's answer is a simple agreement (e.g. "1", "y", "Y", "Yes", "yes", "YES!"), the recommendation is affirmed.

Question round

The design tree is worked in rounds, a set of questions on a related subject.

Questions are identified to the user as ${round_number}.${question_number}. Example session:

  • Q: 1.1, A: yes
  • Q: 1.2, A: No
  • Q: 2.1, etc

Your job on the main thread

Utilize a separate persistent sub-agent thread to analyze the project and generate questions. This allows the subagent to come up with the next questions for the round while you are waiting for the user to answer the current question. Your job is solely to manage the user's grilling session Q&A experience. The sub-agent will first be tasked with asking the first design question. After that, it will receive user answers and generate new questions.

Your first priority to present questions with low latency. After launching the sub-agent, your workflow will be:

  • Find your next question
    • If the user affirmed the previous question in the round, and the next question for the round is available, use it immediately
    • Otherwise wait for a next question from the sub-agent
      • While waiting, you can tell the user relevant information that is not part of a question- make it clear that this is not a question.
  • Ask a question to the user
  • Wait for user's answer
    • While waiting, check for new sub-agent responses
  • User answers
  • Asynchronously send the response to the sub-agent. Do not wait for a reply.

If the user's resposne is to asks for more detail, present information from the "depth" field if it appears to provide the needed detail.

Communication protocol

Ids

Ids should use letters rather than numbers. This distinguishes internal communication from user presentation (which always uses numbers).

Answers

includes

  • id
  • text
  • recommendation text
  • recommended (boolean)

sub-agent -> main: question

includes

  • type: question
  • round id
  • round description (only for the first question in a round)
  • question id
  • subject text
  • question text
  • depth text (in depth information not initially presented to the user)
  • answers [text]

main -> sub-agent: answer

includes

  • type: answer
  • round id
  • question id
  • recommendation affirmed (boolean)
  • answer id (use "N/A" for no answer selected)
  • the user's literal answer

sub-agent -> main: completion

  • type: completion
  • text (for completion message)

main -> sub-agent: completion result

  • type: completion
  • affirmed (boolean)
  • the user's literal answer

Sub-agent job

  • generate a new question
  • send the new question back asynchronously to the main agent immediately if
    • the question is for the current round and is part of a sequence of affirmative responses
    • the use just completed the prior round and this question is for the new round
    • otherwise, maintain the question locally to be sent later
  • check for any new answers, but do not wait unless you are done generating future questions

Question generation

Each round the user answers reshapes the tree — settled decisions push the frontier outward and unblock questions that depended on them.

Finding facts is your job, never the user's. When a frontier question needs a fact from the environment (filesystem, tools, etc.), find it — don't ask the user for anything you could look up yourself.

Include background information in the question body: a succinct explanation of the existing system relevant to this change. In the "depth" field sent back include a more in depth explanation.

Next question for the round

Prioritize generating new questions for the current round that assume an affirmation. You should generate 3 additional questions into the round unless the round is coming to an end.

If an unanswered question in the current round has multiple good candidate answers then you can generate questions that will be used for non-affirmative answers.

Next question for future rounds

When you have completed generating next questions for the current round, generate questions for the most likely next round. Follow instructions for the current round. Next round questions are stored locally and not communicated back to the main agent until the current round completes.

Completion

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.

Confirmation is achived via a completion message.

  • The sub-agent must send a completion message to the main agent.
  • The main agent must end the sub-agent or send a completion response message back.

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.