grill-with-docs
Skill78 starsChanged 6 days agoApache-2.0View on GitHub
Repo-native grilling session for beep-effect2 architecture work. Use when stress-testing a plan against the binding architecture standard, glossary, decision log, shared-kernel promotion records, and package topology before updating docs or implementation.
195 other projects use a version of this.
Adopted by
Most recently taken up by
- xiaoxiaosrm/dsh-mattpocock-skillstheir own version, first seen Nov 8, 2026
- ishandutta2007/Awesome-Claude-Skillstheir own version, first seen Nov 8, 2026
- domengabrovsek/agent-configtheir own version, first seen Nov 8, 2026
- domengabrovsek/claudetheir own version, first seen Nov 8, 2026
- The-Vibe-Company/quivrtheir own version, first seen Nov 8, 2026
- Hoerire/Azurtheir own version, first seen Nov 8, 2026
Used with
Projects with it also use setup-matt-pocock-skills, decision-mapping 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.
GoogleSkillsetup-matt-pocock-skills
Configure this repo for the engineering skills — set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.
Also in 185 projects that use this
FabienDehopreSkilldecision-mapping
Turn a loose idea into a sequenced map of investigation tickets, then drive them to resolution one at a time.
Also in 9 projects that use this
LesaniSkillwriting-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 65 projects that use this
liufeng1976Skillsetup-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
simo97Skillmigrate-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 67 projects that use this
LesaniSkillwriting-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 63 projects that use this
- +1 more from Lesani
Other versions195 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 195
- mattpocock/skills★ 309ksame name
- QuivrHQ/quivr★ 40ksame name
- The-Vibe-Company/quivr★ 40ksame name
- GreyDGL/PentestGPT★ 16ksame name
- formbricks/formbricks★ 13ksame name
- ArcReel/ArcReel★ 6.3ksame name
- vinvcn/mattpocock-skills-zh-CN★ 5.5ksame name
- withcoral/coral★ 4.9ksame name
- bestofjs/bestofjs★ 3.1ksame name
- bholmesdev/hubble.md★ 1.5ksame name
185 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository38 other files it gives its agents.
- AGENTS.mdAGENTS.md
- explorations/AGENTS.mdAGENTS.md
- adhdSkill
- atom-reactivity-specialistSkill
- browser-qa-loopSkill
- closeoutSkill
- codex-findingsSkill
- crispenSkill
- effect-first-developmentSkill
- exploreSkill
- grillingSkill
- grill-meSkill
- jsdoc-annotation-specialistSkill
- motion-evidence-reviewSkill
- onepassword-secret-refsSkill
- ontology-architectSkill
- ontology-conceptualizerSkill
- ontology-curatorSkill
- ontology-foundational-auditorSkill
- ontology-mapperSkill
- ontology-requirementsSkill
- ontology-scoutSkill
- ontology-validatorSkill
- operator-handoffSkill
- orchestrateSkill
- plasma-sensitive-entrySkill
- portlessSkill
- qa-session-opsSkill
- quality-review-fix-loopSkill
- reflectSkill
- remote-development-agentsSkill
- schema-first-developmentSkill
- shadcnSkill
- sparql-expertSkill
- teachSkill
- turborepoSkill
- unslopSkill
- yeetSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
20 rules. 0 are common, 13 are distinctive, and 7 are very specific to this project.
0
Common
Most of the 181 edited versions we read keep these.
13
Distinctive
This author's own choices. Worth a look.
7
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 8
Run a /grilling session (frontier rounds, recommended answers, sub-agent fact-finding) over the plan, using the repo doctrine surfaces …
- Distinctive: line 10
If a question can be answered by exploring the codebase or architecture docs, explore first instead of asking.
- Distinctive: line 12
Treat this repo's architecture docs as target doctrine.
- Distinctive: line 34
Use these surfaces instead:
- Distinctive: line 45
When a plan touches a specific doctrine area, read the matching numbered doc before asking the next question:
- Distinctive: line 62
Start by classifying the proposal:
- Distinctive: line 82
Do public action errors, server-only port errors, driver/internal errors, and protocol failures die at the right boundaries?
- Very specific: line 89
If the user says shared, ask whether they mean shared-kernel product semantics or domain-agnostic foundation substrate.
- Very specific: line 90
If the user says provider, ask whether the target architecture calls it a repo-level driver.
- Very specific: line 91
If the user says env, ask whether this should be a typed config contract and whether direct environment reads are being avoided.
- Very specific: line 92
If the user says runtime layer, ask whether it is app-local composition or a God Layer smell.
- Very specific: line 93
If the user says application error, ask whether it is a public action error, server-only port error, domain failure, internal driver …
- Very specific: line 94
If the user says common, core, utils, or lib, route it through the specific-home-first table before accepting the home.
- Distinctive: line 96
When the user proposes a boundary, test it against concrete repo scenarios:
- Distinctive: line 107
When the user states how something works, check the repo before accepting it.
- Distinctive: line 109
Prefer targeted reads and searches:
- Distinctive: line 117
If code contradicts doctrine, say so plainly and classify the contradiction:
- Distinctive: line 127
Update canonical docs as decisions crystallize, but only the surface that actually owns the decision:
- Distinctive: line 135
Do not create generic context files or ADR directories for this repo.
- Distinctive: line 139
Only propose a DECISIONS entry when all are true:
“Common” is measured: kept by at least 6 in 10 of the 181 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.
Files
<what-to-do>Run a /grilling session (frontier rounds, recommended answers, sub-agent fact-finding) over the plan, using the repo doctrine surfaces below as this repo's domain model — challenge terms, cross-reference code, and update the owning doc as each decision crystallizes.
If a question can be answered by exploring the codebase or architecture docs, explore first instead of asking.
Treat this repo's architecture docs as target doctrine. If current code disagrees with the docs, surface the disagreement as possible drift unless the docs explicitly mark the rule as transitional compatibility or cleanup-on-touch.
Escalation path from /explore
This skill is where an /explore session goes when an exploration packet
needs the operator (align questions, direction calls, shape reviews,
definition-of-ready gaps); the explore session never stops there (ruling
2026-10-14). In that mode the packet's own DECISIONS.md is the decision
surface: log each settled round there (Question / Answer / Rationale) and sync
manifest openQuestions. Touch the architecture docs below only when a round
changes architecture-wide doctrine. Keep running rounds and advancing the
packet stages until it is graduated, parked, or killed; the guided closeout
prompt comes after that.
</what-to-do><supporting-info>Canonical docs
This repo does not use the generic CONTEXT.md plus ADR directory model for architecture grilling.
Use these surfaces instead:
standards/ARCHITECTURE.md- binding architecture constitution and default rule source.standards/architecture/README.md- rationale packet index, transition notes, known unknowns.standards/architecture/GLOSSARY.md- canonical architecture vocabulary.standards/architecture/DECISIONS.md- dated architecture-wide decision log.standards/architecture/02-shared-kernel.md- shared-kernel promotion record rules.standards/architecture/13-onboarding-the-minimum-viable-slice.md- smallest legal slice and first cross-slice promotion.- Package README files - promotion records and package-local ownership policy.
packages/architecture-lab/*withapps/architecture-lab-proof- executable proof target for package shape, boundary subpaths, and strict port-to-action error translation.
When a plan touches a specific doctrine area, read the matching numbered doc before asking the next question:
- slice topology and cross-slice imports:
01-hexagonal-vertical-slices.md - shared-kernel placement:
02-shared-kernel.md - external wrappers and repository implementations:
03-driver-boundaries.md - schema-first rich domain behavior:
04-rich-domain-model.md - Effect Layer ownership:
05-layer-composition.md - config/public/server/secrets/layer/test boundaries:
06-configuration-boundaries.md - foundation, drivers, tooling, and capability routing:
07-non-slice-families.md - testing boundaries:
08-testing.md - action, port, driver, and protocol error translation:
09-errors-across-boundaries.md - workflows, events, and cross-slice processes:
10-cross-slice-coordination.md - deprecation, versioning, and feature-flag retirement:
11-evolution-and-deprecation.md - tracing, logging, span names, and attributes:
12-observability.md
Grilling posture
Start by classifying the proposal:
- Product behavior or product language -> owning slice first.
- Product language deliberately shared by multiple slices ->
shared/*, after the promotion gate. - External engines, SDKs, services, frameworks, or browser platform wrappers ->
drivers/*. - Repo-owned domain-agnostic reusable substrate ->
foundation/*, after the specific-home-first routing test. - Typed runtime/application settings -> slice or shared
configpackage. - Product-agnostic UI primitives ->
foundation/ui-system. - Browser/client product behavior -> slice
clientorui. - App runtime wiring -> app entrypoint or app-local
src/runtime/Layer.ts.
Then work the frontier in rounds per /grilling. Every question should materially change the plan, lock an assumption, or choose between meaningful tradeoffs. Provide your recommended answer.
Good first questions usually decide:
- Which slice, shared-kernel package, driver, foundation family, or tooling package owns the meaning?
- Is this target doctrine, transitional compatibility, cleanup-on-touch, forbidden in new work, or pending automation?
- Does this need a new package, or can it fit the smallest legal slice/package set?
- Is a shared export really deliberate cross-slice product language, or just reusable shape?
- Is live Layer composition staying in
server,client, or app-local runtime code rather thanuse-cases? - Do public action errors, server-only port errors, driver/internal errors, and protocol failures die at the right boundaries?
- Can the slice be tested with only its own Layers plus shared test-kit and driver test Layers?
Challenge against doctrine
Challenge vague or conflicting language immediately:
- If the user says
shared, ask whether they mean shared-kernel product semantics or domain-agnostic foundation substrate. - If the user says
provider, ask whether the target architecture calls it a repo-level driver. - If the user says
env, ask whether this should be a typed config contract and whether direct environment reads are being avoided. - If the user says
runtime layer, ask whether it is app-local composition or a God Layer smell. - If the user says
application error, ask whether it is a public action error, server-only port error, domain failure, internal driver failure, or protocol failure. - If the user says
common,core,utils, orlib, route it through the specific-home-first table before accepting the home.
When the user proposes a boundary, test it against concrete repo scenarios:
- Can another slice import this without a direct cross-slice package dependency?
- Can browser code import this without pulling server config, secrets, driver roots, or live Layers?
- Can the owning slice be removed or rewritten without editing unrelated slices?
- Would a trace tree mirror the architecture boundaries?
- Would a test have to boot another slice or an app runtime Layer?
- Would a future reader know the module's role from package path and role suffix?
Cross-reference with code
When the user states how something works, check the repo before accepting it.
Prefer targeted reads and searches:
- root package, workspace, and export maps when package boundaries are involved
- package README and package manifests when shared/foundation/driver/tooling placement is involved
- role files and imports when topology or subpath safety is involved
packages/architecture-lab/*when strict architecture proof is relevant- existing tests when acceptance criteria or slice-isolation claims are involved
If code contradicts doctrine, say so plainly and classify the contradiction:
- current drift from target doctrine
- transitional compatibility allowed by the docs
- cleanup-on-touch candidate
- missing doc decision or glossary term
- genuine doctrine gap that needs a decision-log update
Update docs inline
Update canonical docs as decisions crystallize, but only the surface that actually owns the decision:
- New or changed architecture term ->
standards/architecture/GLOSSARY.md; followCONTEXT-FORMAT.md. - Architecture-wide doctrine change ->
standards/architecture/DECISIONS.md; followADR-FORMAT.md. - Rule text or examples changing -> the relevant numbered architecture doc and, if binding,
standards/ARCHITECTURE.md. - High-bar
shared/*export -> package README promotion record; use the schema in02-shared-kernel.md. - Package-local ownership, consumers, or routing policy -> the affected package README or agent guidance.
Do not create generic context files or ADR directories for this repo. If a proposed doc update does not fit one of the surfaces above, ask whether it is package-local guidance, architecture doctrine, or implementation notes.
Offer durable records sparingly
Only propose a DECISIONS entry when all are true:
- The decision changes architecture-wide doctrine or supersedes prior doctrine.
- It is hard enough to reverse that future maintainers need the rationale.
- It resolves a real tradeoff or a known-unknown from the architecture packet.
For high-bar shared exports, do not use DECISIONS as a substitute for promotion records. The package README record is the durable proof of deliberate shared coupling.
</supporting-info>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
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.

