Instead of hand-prompting an AI coding agent turn by turn, wrap a code task in a loop that writes, runs, verifies, and retries until it actually passes or the loop decides to stop. Code that is verified, not just generated.
loopsmith keeps a hard wall between the agent that makes the change and the agent that grades it. That independence removes the self-grading bias where an agent rubber-stamps its own work.
The same agent that wrote the change also decides whether it is correct. It has every reason to declare success. "Looks good to me" is not verification, it is a conflict of interest.
A separate checker, with a clean context, runs the real tests, lint, and build, then reviews the diff against the original intent. It grades the work, not its own intentions.
The maker proposes. The checker disposes. Independence is the whole point.
Run the full loop, or pull out just the checker, or price a loop before you spend a token on it.
The full loop. A maker sub-agent writes the change. A separate checker sub-agent with a clean context runs tests, lint, and build, and reviews the diff against intent. Failures feed back and it retries until PASS or a stop condition fires.
maker + checkerThe checker on its own. A one-shot, read-only verdict on a pending diff against its stated intent. Use it for a report-only review, or as the checker step inside verify-loop.
checker, read-onlyEstimate the token and iteration budget of a loop before you run it, so the loop has a ceiling to stop against. Know the bill before you sign it.
budget, pre-flightverify-loop captures intent and detects the project's commands, then runs the maker and the checker on separate contexts until the verdict passes.
Read the task and auto-detect the project's test, lint, and build commands.
The maker sub-agent implements the task and produces a diff. Nothing is trusted yet.
A fresh checker runs the commands and reviews the diff against the original intent.
PASS exits the loop. FAIL feeds the failure back to the maker for another pass.
verify-loop is not just the half that retries. It is also the half that knows when to quit. It stops on any of these:
The checker's verdict passes. The change is verified and the loop exits cleanly.
A hard ceiling on retries, default 3, so it never spins forever.
The same failure twice in a row means retrying again will not help. Stop.
The loop runs against the ceiling from loop-cost and stops when the budget is spent.
It escalates to a human instead of forcing a destructive fix when the path is unclear.
Whatever ends the loop, it ends on purpose. No runaway retries, no surprise bills.
loopsmith installs as three Claude Code skills. No build step, no config. Run it, start a new session, and the skills are ready.
Prefer the native plugin flow? Run /plugin marketplace add FahreddinHepdonduran/loopsmith, then /plugin install loopsmith. Either way, you are one command from a verified loop.