<> AutoAIDev
How it works
How we solved it

The hard part isn't writing code. It's knowing when to move on.

An agent that says "done" when it isn't will quietly wreck a five-task run — which is why people hover, and why nothing is truly automated. So the loop below is deliberately boring: a plain checkbox file as the only source of truth, completion judged on the exact line the agent claimed, and a defined way out of every stall. Boring is what lets you close the laptop. Identical behaviour in the extension, the CLI and the desktop app.

1
Keep a TODO.md with a ## Todo section of - [ ] checkboxes.
2
Start the loop. AutoAIDev picks the first unchecked task and marks it [~] in progress.
3
The task text is dispatched to your provider CLI — Claude, Grok, Copilot or OpenCode.
4
It watches that exact line — by number, not by text — until the agent writes [x] with a date.
5
Next task. When the list empties it polls — add a line and work resumes on its own.
Task status model
[ ]
Pending
Waiting in the queue.
[~]
In progress
Dispatched; the loop is watching that line.
[x]
Done
Agent checked it off with a completion date.
[!]
Timed out / rate-limited
Reset to [ ]; the loop pauses until the parsed reset time, then retries.
providers: claude · grok · copilot · opencode
default timeout: 30 min per task
resume: on by default
TODO.md
## Todo
- [x] 2026-08-01 build login page
- [~] refactor auth module
- [ ] add password reset flow
- [ ] write integration tests

One file — the only source of truth the loop reads and writes.

[ ] pending [~] in progress [x] done [!] retried
Robustness

Completion it cannot fake. Done is keyed to the exact line the loop claimed — not to matching text — so a reworded or reshuffled list never tricks it into moving on early.

A way out of every stall. Anything still thinking after 30 minutes is retried or set aside. One bad task never holds the whole list hostage.

Patience, handled for you. Hit a rate limit and the task returns to [ ] while the loop sleeps until the quota resets — then carries on exactly where it stopped. You find out afterwards, not at 2am.

Next: the loop is the same everywhere — choose where you want to watch it happen.
Products →