One step at a time
Agents see only the next instruction, not the full plan. No 2,000-line prompts. No "jumping ahead". No skipped invariants.
Define agent workflows as YAML trees. The runtime hands the agent one step at a time, verifies the result, and persists the cursor — so workflows stay reproducible no matter how big they get.
Modern LLMs follow Markdown instructions remarkably well — until workflows grow. Then two things go wrong:
abtree is a CLI that solves both. You describe the workflow once as a YAML behaviour tree — the same formal structure game AI and robotics have used for decades. Your agent then drives the execution through three commands:
abtree next — ask the runtime what to do.abtree eval — answer a precondition (true or false).abtree submit — report the outcome of an instruction.Every call returns JSON, advances the cursor, and persists the execution to disk. The agent only ever sees the next step. The path stays predictable. The state survives.