| name | ask-matt |
| author | mattpocock |
| upstream | mattpocock/skills |
| upstreamPath | skills/engineering/ask-matt |
| upstreamSha | 6654f6b60cd9d5be8b54c6fafe44346dabeb3b76 |
| lastUpdated | 2026-07-02T01:06:55.000Z |
| tags | ["Planning","Productivity","Matt Pocock"] |
| description | Ask which skill or flow fits your situation. A router over the skills in this repo. |
| disable-model-invocation | true |
Ask Matt
You don't remember every skill, so ask.
A flow is a path through the skills. Most paths run along one main flow, and two on-ramps merge onto it. Everything else is standalone, or a vocabulary layer that runs underneath.
The main flow: idea → ship
The route most work travels. You have an idea and want it built.
-
/grill-with-docs sharpens the idea by interview. Start here whenever you are working in a working directory: it's stateful, retaining what it learns in CONTEXT.md and ADRs. (No working directory? Use /grill-me instead, covered under Standalone. Both run the same /grilling primitive; grill-with-docs is the one that leaves a paper trail, which makes it the better of the two whenever a repo is there to leave it in.)
-
Branch: can you settle every question in conversation? If a question needs a runnable answer (state, business logic, a UI you have to see), detour through a prototype, bridged by /handoff in both directions (a prototype lives in its own directory, which is exactly what /handoff is for; see Phase boundaries):
/handoff out, then open a fresh session against that file,
/prototype to answer the question with throwaway code,
/handoff back what you learned, and reference it from the original idea thread.
-
Branch: is this a multi-session build?
- Yes →
/to-spec (turn the thread into a spec), then /to-tickets to split it into tracer-bullet tickets, each declaring its blocking edges. On a local tracker that's one file per ticket under .scratch/<feature>/issues/, worked blockers-first by hand; on a real tracker the edges become native blocking links, so any ticket whose blockers are done can be grabbed: kick off /implement per ticket, /clearing context between each one. Each ticket is self-contained, so the last one's context is disposable.
- No →
/implement right here, in the same context window.