Single-Agent Execution Loop
What you'll learn
- The six bounded phases that make up the v0.1 single-agent loop.
- The safety boundaries Craik checks before each step.
- How runner output becomes typed run output and (sometimes) memory proposals.
- The recovery contract a resuming agent must honor.
Single-agent execution loop
The v0.1 contract that lets one runner work through a governed task without depending on an untracked chat transcript. The runner does the reasoning; Craik owns the durable boundary — run state, policy checks, receipts, step outputs, memory proposals, and recovery context.
Lifecycle
A run starts as a craik.task_run with status pending and phase plan.
The executor moves through bounded steps:
planactobserveevaluatecontinuestopTerminal statuses are completed, blocked, failed, and
interrupted. Interrupted runs preserve enough local state for
inspection and later recovery.