Find where you are still the runtime
Record every manual start, next-step choice, verification and retry decision.
Aha: tool use is not autonomy.
Keep: manual-intervention map
Stop being the person who repeatedly types “continue.” Engineer when the work starts, how it knows progress is real, when it retries, when it stops and when it asks for help.
Turn one reliable delegated AI responsibility into a controlled loop with explicit triggers, persistent state, verification, stop rules, recovery and budgets.
One workflow that already works reasonably well as a single run. Harness Engineering is strongly recommended first.
Map where you are still manually prompting the next step, then remove only the human repetition that can be encoded safely.
A loop contract, work queue, maker-checker flow, recovery policy, isolation plan, budget and an autonomous capstone you can stop and explain.
Use the shared Field Guide Lab Method. Loop autonomy should be measured by evidence, human intervention and safe stopping—not by how long it runs.
You may be thinking: “My agent is already autonomous because it can call tools and complete a multi-step task.”
Now watch what happens after it finishes. If you read the result, decide what comes next and type the next instruction, you are still the loop.
Loop Engineering is not “make the agent run forever.” It is moving repeated orchestration decisions out of your head and into an explicit runtime contract: trigger → state → act → verify → continue / stop / escalate.
Take one current workflow and mark every place where a human starts, selects, verifies, retries, stops or escalates the work. Your loop design is not ready until you can say which of those decisions remains human intentionally and which becomes an explicit system rule.
| Type | Use it when | Common mistake |
|---|---|---|
| Finite goal | There is a finish line and progress accumulates. | Running it on a timer and restarting from scratch. |
| Scheduled | A bounded check/action repeats independently. | Letting state leak between runs accidentally. |
| Event-driven | An external event should start bounded work. | Accepting every event without dedupe or authority checks. |
| Work queue | The system should discover and consume durable tasks. | No claim/lease, priority or blocked state. |
“Repeats” does not tell you what kind of loop you have. The time model and state model do.
| Usually inside the loop | Usually outside the loop |
|---|---|
| Choose an eligible queue item | Change the goal |
| Take a bounded action already authorised | Increase its own authority |
| Retry within an explicit policy | Redefine what counts as success |
| Stop on verified completion | Increase retry/time/cost budgets |
| Escalate with evidence | Approve high-impact or irreversible actions |
Autonomy means the loop controls execution inside a contract. It does not get to rewrite the contract.
Do not automate the whole workflow in one jump. Encode one repeated human decision, observe it, then earn the next layer.
Record every manual start, next-step choice, verification and retry decision.
Aha: tool use is not autonomy.
Keep: manual-intervention map
Define end state, proof, blocker, budget and escalation before letting the system continue itself.
Trap: “until done.”
Keep: loop contract
Finite goal, schedule, event or queue. Match the trigger to the work’s time and state model.
Trap: timer abuse.
Keep: trigger decision table
Use durable queue/state so the next run discovers work without chat history.
Look out: duplicate claims.
Keep: loop work queue
Connect maker → verifier → accept / repair / escalate with actual checker authority.
Trap: reviewer gives advice but cannot reject.
Keep: maker-checker state machine
Require new evidence, changed state/strategy and a retry budget.
Aha: retry is not recovery.
Keep: retry/recovery policy
Use worktrees, branches, sandboxes, leases or separate records when workers can collide.
Look out: shared writes.
Keep: isolation policy
Only add a capability when it has a distinct responsibility, context or external-system boundary.
Trap: agent multiplication.
Keep: loop capability map
Watch verification debt, comprehension rot, cognitive surrender, token/tool-cost blowout, review bandwidth and low-value retries.
Aha: automation often moves the bottleneck from generation into judgment.
Keep: loop budget + review thresholds
This is a progression of coordination complexity, not a badge system. Do not jump upward to hide a broken lower layer.
If one delegated run is unreliable, more autonomous workers usually multiply the failure rather than fix it.
Run success, missing-information, repeated-failure and budget-exhaustion cases without manually steering each iteration.
Prove: every stop or escalation is explainable.
Keep: loop starter pack
Trigger:
new eligible item appears in queue
Goal:
produce one verified response draft
Continue only if:
required context is present
authority remains within contract
retry budget remains
Verify:
schema valid
source facts present
policy checks pass
Stop:
verified output produced
Escalate:
missing authority
conflicting source
repeated verification failure
budget exhausted
You can now run one responsibility without manually prompting every step. The next problem is not “how do I add more agents?” It is what happens when several loops share state, compete for goals, need to veto each other or must be operated as one system. That is where Run AI and Graph Engineering begin.