A written plan or numbered task list already exists and the ask is to carry it out: work the tasks in order, verify each, pause at the review checkpoint between phases.
Three or more independent units of work exist (files, packages, endpoints, rival approaches) and none needs another's result. Fans out N agents in ONE batched message, returns one table.
About to write implementation code or a bugfix and no test fails for that behaviour yet: write the failing test first, watch it fail, then write the minimum that passes.
Requirements are settled, nothing is written down about how, and the work is more than one edit: produce the plan document, file map, bite-sized tasks, one verification per task.
Apply when a struct, enum, or type can hold an invalid combination of fields that shouldn't compile. Redesign it so illegal states can't be represented — model the cases as separate variants.
While polishing UI that already renders, when visual quality is the bar: production-grade typography, motion, spacing, and brand-vs-product modes beyond the stock design level.
First, and only when the shape is undecided: explore intent and requirements for new capability before any plan or test. Skip it for a bugfix or a change whose shape is known.
Before writing a UI component in a React/Tailwind repo: pull a vetted accessible primitive from a shadcn-compatible registry (npx shadcn add). Hand-roll only what none has.