Skip to content

Architecture

The runtime is a headless library: it orchestrates agents and enforces quality gates, with no UI of its own. Design decisions are recorded as ADRs in the repository.

How it fits together

flowchart LR
    WF["Declarative workflow<br/>(WF-0xx)"] --> RT
    subgraph RT["Agentic Runtime (headless)"]
        direction TB
        ORCH["Step orchestrator"] --> GATE{"Eval-gate<br/>(blocking / advisory)"}
        GATE -- pass --> NEXT["Next step"]
        GATE -- fail --> STOP["Run stops"]
    end
    CAT[("Versioned agent catalog<br/>pinned imports, read-only")] -. imports .-> ORCH
    RT --> TRACE["Per-step traces<br/>(JSON live proofs)"]

The runtime is a read-only consumer of the catalog: agents are imported by pinned version, never mutated. Each step must clear its eval-gate before the run advances; a failed blocking gate stops the run and is recorded in the trace.

Key decisions (ADRs)

  • ADR-0001 — Read-only consumer of the catalog.
  • ADR-0002 — Pinned, versioned imports.
  • ADR-0003 — Sidecar ownership belongs to the catalog.
  • ADR-0004 — Guarded propagation of eval-gates.
  • ADR-0005 — Feedback via human pull request.
  • ADR-0006 — Quality referentials.
  • ADR-0007 — Contracts and criteria sourced from the runtime manifest.

Full ADRs in the repository →