When to Let It Run vs. Steer Manually
The decision to let an run unattended comes down to three questions — a checklist you run before you walk away.
- Blast radius. If this goes wrong, how much breaks? A formatting pass across the codebase has a small blast radius. A migration or a change to your auth logic has a large one. The bigger the radius, the more you steer by hand.
- Reversibility. Can you undo it cheaply? Work on a fresh with a clean working tree is reversible —
git restore .and it's gone. Work that deletes data, sends emails, charges cards, or pushes to production is not. Never let an agent run unattended over anything you can't take back. - Verifiability. Can you tell whether the result is right? If "done" means a green test suite or a page that visibly works, you can verify it in seconds and an agent is a great fit. If "done" depends on subtle judgment — money math, security rules, race conditions — you can't gate on a quick check, so you stay close.
A simple way to combine them: let it run when the work is reversible and the result is cheap to verify; steer by hand when it isn't. Carry over the rule from the build-features chapter — the bigger the blast radius, the smaller the step — and add its sibling: the bigger the blast radius, the tighter the leash.