# An Agent Prompt Must Name Its Stopping Point An agent prompt is finished when it names the state the model should reach before it stops. A task with no terminal state fails two ways, both costing tokens: the model ends early and narrates the next step, or keeps finding adjacent work because nothing said the job was done. Theo states the rule at 00:26:58, after three worked examples at 00:26:15: babysit until green; wait till green then merge; file the PR and tell me when it's up. > [!quote] [00:26:58] > Every prompt should have a pretty clear place where it stops when it's done. Both failure modes appear in Anthropic's own Fable 5.1 guide, which Theo reads on screen. At 00:13:31 the guide says that on long asynchronous work you should nudge the model not to end its turn before the work is done, or it describes the next step rather than doing it. At 00:31:58 it gives the scope-creep paragraph, report pre-existing bugs as follow-ups and don't fix, optimize, or extend unless the requested behavior can't work without it, with a stated result: unrequested additions and uncommitted test code drop "with no measurable change in task success." That is the one measured claim in the video, and it is the vendor's. Stopping too soon and not stopping are the same missing instruction seen from two sides. His Lakebed runs show the rule in use. After Fable built the de-risking branch for a 26,000-line runtime rewrite in 60 minutes, it opened no pull request because he hadn't asked, which he names as his own prompt gap (00:22:01). Given an end state, merge it all the way in, it ran 1 hour 34 minutes unattended. Then "file a PR, babysit it, merge once everything is green" produced PR 212 and he never saw the thread again (00:24:08). Where the right end depends on judgment, he uses a two-path form (00:27:41): if unhappy with the result, report back; if happy, proceed. Where the claim breaks. When the correct end state depends on information the model can't get, the two-path form replaces a single terminal state. Exploratory chat, where the human is the loop, needs no stopping point. A named end state is not a permission boundary: his unattended merges run on Lakebed, an unreleased project he calls a sandbox (00:18:28, 00:20:36), not on production. Nor does it bound resource use on the way there: the 94-minute run saturated his home IP with load-test traffic until he told it to use a container (00:22:01). Every number other than Anthropic's is from memory, so the rule rests on the guide plus one developer's month. <!-- atomicity: 1 idea ✓ --> ## Why This Matters Rewrite your three most-used agent prompts so the last sentence names where the model stops: PR filed, CI green, report written. Where the stop depends on a judgment call, give two branches and say which one ends the run. ## Links - [[3. Resources/Permanent Notes/Agent Autonomy Boundaries Should Gate the Terminal Action Not the Whole Task]] — extends: the stopping point is where the gate sits; "file the PR and tell me" stops one step before the irreversible merge, "merge once green" does not. - [[3. Resources/Permanent Notes/A Nondeterministic Check Breaks the Loops Stop Condition]] — constrains: "wait till green" is only a usable terminal state if the green check is deterministic; a flaky CI turns the stopping point into noise. - [[3. Resources/Permanent Notes/A Stated Threshold Gates Clarifying Questions Better Than an Open Invitation]] — extends: the two-path form at 00:27:41 is a stated threshold for when the model reports back instead of proceeding. - [[3. Resources/Permanent Notes/Delegated Authority Recurses Unless a Terminal Marker Stops It]] — extends: the same terminal-marker requirement one level down, for a single agent's task rather than a chain of delegators. - [[3. Resources/MOCs/AI Agent Safety MOC]] — applies-in: an unattended run without a named end state is unbounded by design, and the scope-creep paragraph is the vendor-documented control for it. ## Source - [So I was using Fable wrong...](3.%20Resources/Readwise/Articles/So%20I%20was%20using%20Fable%20wrong....md) - https://www.youtube.com/watch?v=-XWSJM-Ue-o