Definition of done
The list that must be true before anything counts as finished, on every task: say the code type-checks, the tests pass and the docs are updated. You write it once, and it applies to all the work.
An agent stops when the work looks done to it. A written definition gives it something to run in place of that feeling. It only rejects what it names, though. The bench below shows how far a general list gets you when nobody asked for the behaviour that was missing.
Say it to your agent
“Add to AGENTS.md: "Done means bun run typecheck, bun run lint and bun test all exit 0, with the output pasted in your reply. If one could not run, say inconclusive, not done."”