Grill with docs
Skill KhaledSaeed18/dotclaude/skills/engineering/grill-with-docs
Stress-test a plan against the project's existing domain model by challenging terminology, surfacing contradictions with code, and updating CONTEXT.md and ADRs inline as decisions crystallise. Use when a plan or design needs to be checked against the project's documented domain model before implementation.From its SKILL.md
npx -y skills add KhaledSaeed18/dotclaude --skill grill-with-docsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
5.6 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it
Interview me relentlessly about every aspect of this plan until we reach a shared understanding. Walk down each branch of the decision tree, resolving dependencies between decisions one by one.
If arguments were passed, treat them as the subject to grill. Otherwise, ask what to stress-test before starting. If a question can be answered by exploring the codebase or reading existing files, do that instead of asking.
NEVER use the AskUserQuestion tool; ask questions as plain text output.
Your goals
- Discover every major decision and dependency.
- Walk the decision tree branch-by-branch.
- Resolve high-impact decisions before low-impact ones.
- Challenge assumptions and identify weaknesses, especially against the existing domain model.
- Surface risks, tradeoffs, and alternatives.
- Maintain a running model of unresolved questions.
- Make temporary assumptions when necessary and state them explicitly.
Hard rule: one question per turn
ONE question per turn. Then STOP. Wait for reply. No lists. No "and also". No follow-ups. No bundled sub-questions. One ? per response. Violating this defeats the skill; the user needs space to think, not a wall of questions.
If a question leads to more nested branches, move those to a new question. Never nest question numbers.
For every question
Index each question as Q1, Q2, Q3, …
-
Explain why the question matters.
-
Ask exactly one question.
-
Present the options as labeled choices (A, B, C, …) covering the realistic alternatives. Mark your recommended option with
← recommended. Example:A. Option one ← recommended B. Option two C. Option three
The user can reply with just a letter. If they pick a non-recommended option, acknowledge the tradeoff before moving on.
After each answer
- Update your understanding.
- Summarize any newly resolved decisions.
- Identify the next highest-priority unresolved dependency.
Domain awareness
Before starting the session, explore the codebase for existing documentation:
Most repos have a single context:
/
├── CONTEXT.md
├── docs/
│ └── adr/
│ ├── 0001-event-sourced-orders.md
│ └── 0002-postgres-for-write-model.md
└── src/
If a CONTEXT-MAP.md exists at the root, the repo has multiple bounded contexts. The map points to where each one lives:
/
├── CONTEXT-MAP.md
├── docs/
│ └── adr/ ← system-wide decisions
└── src/
├── ordering/
│ ├── CONTEXT.md
│ └── docs/adr/ ← context-specific decisions
└── billing/
├── CONTEXT.md
└── docs/adr/
Create files lazily, only when you have something to write. If no CONTEXT.md exists, create one when the first term is resolved. If no docs/adr/ exists, create it when the first ADR is needed.
During the session
Challenge against the glossary
When the user uses a term that conflicts with the existing language in CONTEXT.md, call it out immediately. Example: "Your glossary defines 'cancellation' as X, but you seem to mean Y; which is it?"
Sharpen fuzzy language
When the user uses vague or overloaded terms, propose a precise canonical term. Example: "You're saying 'account'; do you mean the Customer or the User? Those are different things in your glossary."
Stress-test with concrete scenarios
When domain relationships are being discussed, invent edge-case scenarios that probe the boundaries and force precision.
Cross-reference with code
When the user states how something works, check whether the code agrees. If you find a contradiction, surface it. Example: "Your code cancels entire Orders, but you just said partial cancellation is possible; which is right?"
Update CONTEXT.md inline
When a term is resolved, update CONTEXT.md right away; don't batch. Use the format in docs/CONTEXT-FORMAT.md.
CONTEXT.md is a glossary and nothing else, totally devoid of implementation details, specs, or architecture notes.
Offer ADRs sparingly
Only offer to create an ADR when all three are true:
- Hard to reverse: the cost of changing your mind later is meaningful.
- Surprising without context: a future reader will wonder "why did they do it this way?"
- Real trade-off: there were genuine alternatives and you picked one for specific reasons.
If any of the three is missing, skip the ADR. Use the format in docs/ADR-FORMAT.md.
Stop only when
- All critical decisions are resolved,
- remaining uncertainties are documented,
- major risks are identified,
CONTEXT.mdreflects all resolved terminology,- and a coherent plan can be restated end-to-end.
Final output
Produce a decision record covering:
- Restated plan: the full plan as understood, end-to-end.
- Resolved decisions: every key decision made and its rationale.
- Open questions: anything still unresolved, with the risk if left open.
- Risks & mitigations: identified risks and suggested mitigations.
- Glossary changes: terms added or updated in
CONTEXT.mdduring this session. - ADRs created: list any ADRs written, with a one-line summary of each.
What ships with it: 3 files
3.6 KB alongside SKILL.md
docs/
- ADR-FORMAT.md1.3 KB
- CONTEXT-FORMAT.md1018 B
- registry.json1.2 KB
Gives 0 of the 12 instructions most docs writing skills give in ~1.2k tokens
Counted across 1,637 of the 3,044 authors here whose files we hold, read 2026-08-07
- Announce the skill at startin 54 of 1637, across 26 files
- Convert legacy doc files before editingin 45 of 1637, across 7 files
- Predict questions readers might askin 42 of 1637, across 4 files
- Generate clarifying questions for initial contextin 42 of 1637, across 3 files
- Create document scaffold with placeholder textin 42 of 1637, across 3 files
- Brainstorm content options for each sectionin 42 of 1637, across 3 files
- Test the document with a fresh context-less instancein 42 of 1637, across 3 files
- Include exact file paths in every taskin 42 of 1637, across 15 files
- Ask interview questions one at a timein 42 of 1637, across 27 files
- Apply surgical edits during refinementin 41 of 1637, across 2 files
- Offer structured workflow or freeformin 40 of 1637, across 1 file
- Ask for document meta-contextin 40 of 1637, across 2 files
Said here and by no other author read
- treat arguments as the subject to grill
- index each question sequentially
- provide labeled multiple-choice options
- mark the recommended option
- summarize resolved decisions after each answer
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.