Glossary
The terms this documentation uses, each with the page that explains it in full.
AG-UI
The open protocol between the web app and the backend: a run is one POST /agui/{workflow}
answered by a stream of server-sent events. The platform speaks AG-UI 1.0 and also sends the
legacy event to pre-1.0 clients. See HTTP and AG-UI.
Approval card
The form a person sees when a run pauses for approval. Its title, the fields it shows and the
fields it lets you edit come from ui.approval_card in the workflow file. See
Approvals.
Audit trail
The audit_log table. Every run start, step outcome, decision and flagged reconciliation is
recorded, and each entry stores the SHA-256 of the previous entry for its tenant, so editing or
deleting one breaks the chain. See Concepts.
Auto-approval
A policy on a human.approval node that lets a run continue without a person when its
conditions hold. It is recorded as policy:auto_approve, and always_require_when overrides it.
Checkpoint
The workflow's saved progress, written to PostgreSQL after every step. It is what lets a run waiting for approval survive a restart.
Condition
A test on the run's context (key, op, value), combined with all and any. Used by edges
and by auto-approval. See Writing a workflow.
Connector
An external system the platform calls, such as accounting, declared in
config/agents/connectors/. Each declares the actions that may be invoked. See
Connectors.
Context
The run's working data: the values steps read and write (invoice, match, approval, …).
Only keys in the workflow's state_whitelist are sent to the browser.
Definition files
The YAML under config/agents/ that describes behaviour: workflows, models, prompts, extraction
schemas, connectors, tools, roles, policies and tenants. See the
definition reference.
Edge
A link from one node to the next. A node has at most one; a branch is one edge with when and
else.
Four-eyes
The rule that whoever started a run may not decide its approval, whatever their roles. Set by
four_eyes: true on a human.approval node.
Idempotency key
The key under which a connector call is recorded, so it happens at most once however often it is attempted. It is reserved before the call and holds the response afterwards.
Interrupt
A paused run waiting for a person, with id {thread}:{node} (for example t1:approval). It is
also stored in approvals, with an expiry.
Node
One step of a workflow: an id, a task kind, and that kind's parameters in with.
Reconciliation
What a person does when a connector call was interrupted mid-flight and the platform cannot know
whether it landed. The run's status becomes needs_reconciliation. See
Reconciling an interrupted post.
Role
A named set of permissions in rbac.yaml, which may inherit from other roles (admin inherits
approver, which inherits clerk). See Concepts.
Run
One execution of a workflow. Its id is the AG-UI thread id, chosen by the client. Its status is
running, awaiting_approval, completed, rejected, failed or needs_reconciliation.
Task kind
A small piece of Rust that a node runs, configured by the node's with: document.parse,
llm.extract, rules.validate, records.match, human.approval, connector.invoke and
flow.end. See Writing a workflow.
Tenant
One customer organisation. Every business row carries a tenant_id, row-level security sits
behind the application's own filters, and a tenant file can override the shared definitions for
that tenant alone. See Tenants.
Thread
The AG-UI conversation a run belongs to; its id is the run's id.
Workflow
A YAML graph of nodes and edges in config/agents/workflows/, compiled at boot. See
Writing a workflow.