You Are the Bug in Your Own Workflow
You ask if it's done. It says yes. You check, and it isn't.
That's not a lie, it's a signal problem: without a check it can run, "looks done" is the only evidence Claude has to go on, and you become the QA department for your own agent.
Give it something that returns pass or fail. A test suite, a build exit code, a linter, a screenshot compared against the design. Then the loop closes without you in it: do the work, run the check, read the result, iterate until green.
Ask for the evidence, not the verdict. "Show me the command you ran and its output" costs one sentence and changes what "done" means.