| name | grill-with-docs |
| description | Stateful relentless interview (grilling primitive) that also creates durable docs: CONTEXT.md glossary and ADRs via domain-modeling. Use when working in a working directory and you want to sharpen a plan/design while leaving a paper trail. Trigger: "grill with docs", "grill this design", "sharpen with docs", "design session with records". |
R — Reference (≤100 words)
Upstream: skills/engineering/grill-with-docs/SKILL.md (7 lines). Delegates to two skills: grilling (the interview primitive: rounds, frontier, facts=agent, decisions=user) + domain-modeling (active discipline: challenge terms, sharpen language, stress-test scenarios, cross-reference code, update CONTEXT.md inline, offer ADRs sparingly). Description: "A relentless interview to sharpen a plan or design, which also creates docs (ADR's and glossary) as we go." Key distinction from grill-me: stateful—requires working directory, creates/maintains CONTEXT.md and ADRs. If in a working directory, this is strictly better than grill-me (same interview + paper trail).
I — Methodology (in own words)
Core principle: Grilling + domain-modeling = thinking + durable memory. Every design session leaves the codebase smarter.
Dual-skill invocation: This skill is the composition of two upstream skills:
- grilling drives the interview: design tree, frontier, rounds, fact-finding sub-agents, user decisions
- domain-modeling runs continuously alongside: every term used gets checked against CONTEXT.md, sharpened, stress-tested, cross-referenced with code, written to CONTEXT.md; ADRs offered when criteria met
Stateful artifacts produced:
CONTEXT.md (glossary, per CONTEXT-FORMAT.md) — updated inline during grilling
docs/adr/NNNN-title.md (per ADR-FORMAT.md) — created when trade-off decisions land
- If multi-context:
CONTEXT-MAP.md + per-context CONTEXT.md/docs/adr/
Flow: User brings a design/plan → grilling rounds proceed → domain-modeling intercepts every term/decision → artifacts grow → session ends with shared understanding and committed vocabulary/decisions.
Entry point: "grill with docs" or any design discussion in a repo directory.
A1 — Upstream Typical Applications
- New feature design: "grill with docs on the payment refactor" → CONTEXT.md gets "PaymentMethod", "Refund", "IdempotencyKey"; ADR for "event-sourced vs CRUD"
- Architecture review: "grill this module boundary" → seam placement decisions → ADR for "seam at Repository interface"
- Onboarding: new dev runs grill-with-docs on existing module → CONTEXT.md captures tribal knowledge
- Pre-implementation: "grill before we code" → spec emerges + vocabulary locked → to-spec → to-tickets → implement
A2 — Trigger Scenarios (3 contexts + language signals + sibling distinction)
| Context | User Language Signals (≥3) | vs Sibling Skills |
|---|
| Repo design session | "grill with docs", "design session", "sharpen with records", "leave a paper trail" | vs grill-me: grill-me is stateless/no repo; grill-with-docs requires repo + creates CONTEXT.md/ADRs |
| Vocabulary capture | "capture our terms", "document our language", "build the glossary", "CONTEXT.md" | vs domain-modeling: domain-modeling is the discipline; grill-with-docs is the session that drives it |
| Decision recording | "record this decision", "why did we choose", "ADR for this", "trade-off doc" | vs domain-modeling alone: grill-with-docs includes grilling to reach the decision; domain-modeling just records it |
E — Execution Steps (each with "完成标准:")
-
Verify working directory — Confirm git repo exists; locate/create CONTEXT.md (root or context-specific per CONTEXT-MAP.md).
完成标准: Repo root identified; CONTEXT.md exists or created; CONTEXT-MAP.md checked.
-
Invoke grilling + domain-modeling — Call Skill tool for both "grilling" and "domain-modeling". Grilling drives rounds; domain-modeling intercepts terms/decisions.
完成标准: Both skills active; first grilling round presented; domain-modeling monitoring.
-
Run grilling rounds with domain capture — Each round: agent asks frontier questions; user answers; domain-modeling challenges terms, sharpens, stress-tests, cross-references code, updates CONTEXT.md inline.
完成标准: Each round completes with CONTEXT.md updated for any new/changed terms.
-
Create ADRs for trade-off decisions — When a decision meets all 3 criteria (hard to reverse, surprising, genuine trade-off), domain-modeling creates ADR.
完成标准: ADR file created in correct location (root or context docs/adr/) per ADR-FORMAT.md.
-
Converge on shared understanding — Continue rounds until frontier empty. Final CONTEXT.md + ADRs represent the session's output.
完成标准: Frontier empty; user confirms shared understanding; CONTEXT.md/ADRs committed or staged.
B — Boundaries & Limits
不适用:
- No working directory (use grill-me)
- Pure thinking/writing with no codebase (use grill-me)
- Bug diagnosis (use diagnosing-bugs)
- Code review (use code-review)
- Pure domain modeling without interview (use domain-modeling directly)
局限: Requires git repo. CONTEXT.md/ADRs need team buy-in to maintain. Session can be long—frontier may expand. Large repos may have stale CONTEXT.md needing refresh.
Related Skills
- grilling (primitive), domain-modeling (discipline), grill-me (stateless counterpart), codebase-design (vocabulary for module seams), to-spec/to-tickets (consumes grill-with-docs output), implement (builds from tickets), improve-codebase-architecture (may trigger grill-with-docs), setup-matt-pocock-skills (precondition for ADR dir layout)
Audit
V1✓ V2✓ V3✓ | 2026-08-26 | Source: D:\outcome\self\upstream\mattpocock__skills\skills\engineering\grill-with-docs\SKILL.md