Definition files
Everything that describes behaviour is YAML under config/agents/. Each kind below has its
fields (generated from the JSON Schema the Rust structs export), the types they use, and the
file this repository ships, in full. For how the files combine and what boot checks, see
Configuration files.
| Kind | Files | What it is |
|---|---|---|
| Workflows | config/agents/workflows/*.yaml | A graph of task-kind nodes and the edges between them, compiled at boot. The agent list, the approval card and the run itself all come from this file. Each task kind's with parameters are listed under Task kinds. |
| Models | config/agents/models.yaml | The model registry: which provider serves each model, its pinned revision and its license, checked against the allow-list in policies.yaml. |
| Prompts | config/agents/prompts/*.yaml | A versioned prompt for llm.extract: the system and user messages, and the limits on the untrusted document text placed in them. The llm.extract node names the model and the extraction schema. |
| Connectors | config/agents/connectors/*.yaml | An external system the platform calls: its kind, credentials, options and the actions that may be invoked, with whether each needs approval and is idempotent. |
| Tools | config/agents/tools/*.yaml | A tool exposed to a model, bound to a connector action. Declared and validated; not yet wired into the model (see Project status). |
| Roles (rbac.yaml) | config/agents/rbac.yaml | Roles, what each can do, and what it inherits. |
| Policies | config/agents/policies.yaml | Platform-wide policy: allowed model licenses, retention, PII handling and rate limits. |
| Tenant overrides | config/agents/tenants/*.yaml | One customer's differences, deep-merged over the shared definitions: thresholds, connectors, auto-approval. |
| Extraction schemas | config/agents/schemas/*.yaml | The JSON Schema llm.extract output must satisfy. |