API reference¶
The API reference is organized into two tiers:
- Essentials: the recommended path API for most users (
run,trace,scenario) - Advanced: lifecycle, decorators, and lower-level utilities for integrations
Start Here¶
- API Essentials
- API Advanced
- Public API for complete surface-area inventory
Essentials entry points¶
| If you need | Start here | Why |
|---|---|---|
| One cache-aware function call | consist.run |
Smallest API surface; uses active/default tracker |
| Multi-step workflow with shared context | consist.scenario |
Groups steps and lineage under one scenario header |
| Always-execute run-scoped block | consist.trace |
Records provenance but executes block every time |
| Multi-run grouping and pairwise comparison | RunSet / consist.run_set |
Fluent partitioning, recency selection, and alignment |
Minimal first run¶
from pathlib import Path
import consist
from consist import Tracker
tracker = Tracker(run_dir="./runs", db_path="./provenance.duckdb")
def write_answer() -> Path:
out = consist.output_path("answer", ext="txt")
out.write_text("42\n")
return out
with consist.use_tracker(tracker):
result = consist.run(fn=write_answer, outputs=["answer"])
print(result.outputs["answer"].path)