Postgres stores durable conversation, run, workflow, job, and schedule state. Redis supports runtime memory, cache, and distributed runtime concerns when configured.Documentation Index
Fetch the complete documentation index at: https://veryfront.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
Durable stores
| Store | Data | Notes |
|---|---|---|
| Postgres | Conversations | Thread metadata, project scope, status, current node |
| Postgres | Messages | Role, parts, branch structure, parent links |
| Postgres | Canonical runs | Public run ID, kind, owner, parent run, root run, status, and waiting reason |
| Postgres | Agent runs | Conversation execution status, user, project, runtime target, parent run, tool-call lineage |
| Postgres | Agent run events | Ordered event payloads and replay cursors |
| Postgres | Workflow runs | Workflow target, input, runtime target, and backing job link |
| Postgres | Jobs | Background execution target, config, status, result, and cron link when scheduled |
| Postgres | Cron jobs | Schedule, timezone, target, config, timeout, retry limit, and concurrency policy |
| Postgres | Input requests | Human or tool input requests tied to runs and tool calls |
| Redis | Runtime memory and cache | Runtime memory, cache, and distributed runtime support where configured |
Lineage fields
| Field | Meaning |
|---|---|
conversationId | Conversation that owns messages and runs |
messageId | Message associated with the run or output |
runId | Public durable run ID used by runtime clients |
canonicalRunId | Canonical UUID binding for durable run detail tables |
kind | Run kind, such as agent, workflow, or job |
owner | Run owner scope. Agent runs are conversation-owned. Workflow and job runs are project-owned. |
rootRunId | Root canonical run for a run tree |
parentConversationId | Parent conversation for project-agent child lineage |
parentRunId | Parent run that spawned a child run |
spawnedFromMessageId | Message that caused a child run |
spawnedFromToolCallId | Tool call that spawned a child run |
inputAnchorMessageId | Message used as the input anchor for a run |
handoffMessageId | Message used for handoff semantics |
latestEventId | Last persisted durable event ID |
latestExternalEventSequence | Last external sequence accepted from a runtime stream |
cronJobId | Schedule that created a job run, when the run came from a cron trigger |
jobId | Job record that executes a workflow or job run |
target | Runtime target, such as a task, workflow, deploy, or agent target |
How to trace a run
- Start with
conversationId. - Read messages for the visible path.
- Read
/conversations/{conversation_id}/runsfor conversation-owned agent run summaries. - Read
/runs/{run_id}for canonical run kind, owner, status, parent, and root IDs. - Use
parentRunId,rootRunId, andspawnedFromToolCallIdto identify child runs. - Read
/conversations/{conversation_id}/runs/{run_id}/eventsfor the durable event stream. - For project-owned runs, read the workflow-run or job-run detail endpoint that matches the canonical run kind.