Skip to main content

How Loom works in practice

This guide is for people already past the landing page and quickstart. It explains the operator loop behind Loom so you know which command to run, which artifact to inspect, and where to go next when a run fails.

Command to artifact map

CommandWhat it gives youNext file or page to inspect
loom checkSchema validation result plus a receiptFix schema issues, or continue to loom compile
loom compile --workflow .loom/workflow.ymlResolved Graph IRConfirm the plan before you execute
loom run --local --workflow .loom/workflow.ymlRuntime receipt plus logs directoryOpen the receipt, then the pipeline manifest
Failing run triagePointer-driven diagnosis pathDiagnostics ladder

The four-step loop

StepWhat you doWhat Loom does
1. AuthorWrite .loom/workflow.yml
2. ValidateRun loom checkValidates against schema v1, resolves includes, emits a receipt
3. RunRun loom run --local --workflow .loom/workflow.ymlExecutes jobs (host or Docker), writes receipts + manifests + event streams
4. DiagnoseFollow receipt → manifests → eventsPointers lead to the exact failing unit

Common failure branches

Use these as your first branch instead of reading everything top to bottom.

Schema or authoring failure

Symptom: loom check fails before execution starts.

What to inspect next: the validator error output and Syntax v1.

Runtime failure in a user step

Symptom: loom run --local starts, but a pipeline or job ends in failure.

What to inspect next: Diagnostics ladder, starting from the receipt or pipeline manifest.

Provider or environment failure

Symptom: missing tools, Docker startup issues, permissions problems, or host/container drift.

What to inspect next: Providers overview, Common failures, then the matching system section events.

What the workflow loop produces

ArtifactLocationWhy it matters
Receipt.loom/.runtime/receipts/loom-run-local-*.jsonEntry point for diagnosis and the run handle you can share
Pipeline summary.loom/.runtime/logs/<run_id>/pipeline/summary.jsonConfirms overall run status and exit code
Pipeline manifest.loom/.runtime/logs/<run_id>/pipeline/manifest.jsonPoints to the failing job
Job manifest.loom/.runtime/logs/<run_id>/jobs/<job_id>/manifest.jsonPoints to the failing step or system section
User step events.loom/.runtime/logs/<run_id>/jobs/<job_id>/user/execution/script/<NN>/events.jsonlShows the exact failing unit
System section events.loom/.runtime/logs/<run_id>/jobs/<job_id>/system/<section>/events.jsonlExplains provider, cache, or artifact failures

Reference: Receipts contract · Runtime logs contract · loom run

The diagnosis path in practice

  1. Open the receipt or logs directory for the run.
  2. Read pipeline/manifest.json to identify the failing job.
  3. Open jobs/<job_id>/manifest.json to find the failing step or system section.
  4. Read the pointed events.jsonl file for the exact error evidence.

If you need the full scan pattern with examples, switch to the Diagnostics ladder.

Next steps

GoalLink
Run your first workflow end to endHello Loom
Practice pointer-chain diagnosisDiagnostics ladder
Learn the full workflow syntaxSyntax v1
Explore the CLI surfaceCLI overview