On stop conditions: how to keep your agent from going off the rails
Most agent disasters aren't from the model getting smarter than expected. They're from the operator forgetting to write down where to stop.
A short, opinionated journal about the practice of building agents that survive contact with real work. Postmortems, craft notes, and the occasional case study from someone we shipped with.
"If your agent has been running for a week and you can't say what it did on Tuesday, you don't have an agent."
If your agent has been running for a week and you can't say what it did on Tuesday, you don't have an agent — you have a black box that costs money.
Most agent disasters aren't from the model getting smarter than expected. They're from the operator forgetting to write down where to stop.
A small contractor in Vermont saved 14 hours in a single week using the missed-call template. The full numbers, and the file they actually shipped.
We tried to make it a chat interface. We tried to make it a wizard. The thing that actually worked was a form with a live preview pane.
Three concrete moves: stop using 'I'd be happy to help.' Cut the apology preamble. And — yes — use contractions like a human.
Three new runbooks, a refactored builder, and a smaller, simpler HEARTBEAT.md template. All free if you already own the kit.
A small cultural trick we borrowed from incident response: name the agent, give it a personality, and the team starts treating it like a teammate.