Core concepts

Workflows

Declarative graphs with checkpoints, pauses, and rewind.

Workflows are JSON state graphs interpreted by the engine — stateful graph orchestration, made fully declarative so packs can ship workflows safely. Steps are fixed, safe primitives; transitions are conditions over run data.

Step kindsConditions
ask_user · classify · extract · retrieve · knowledge_answer · summarise · tool_call · confirm · set_data · checkpoint · progress · endalways · field_equals · field_exists · field_missing · approved · rejected · tool_ok · tool_failed · confidence_below
  • Durable: auto-checkpoint after every state; paused runs survive app restarts (attach_workflow_run).
  • Interruptible: ask_user and confirm park the run; the next submitInput/resolveApproval resumes it.
  • Time travel: rewind a run to any checkpoint, or fork a new run from one.
  • Bounded: max_steps is enforced by the engine; runaway loops fail safely.
Rewind / fork
const runs = await lybo.listWorkflowRuns();
const ckpts = await lybo.listCheckpoints(runs[0]);
await lybo.forkWorkflow(runs[0], (ckpts[0] as any).checkpoint_id);