# Glossary

The words these docs use with a meaning of their own, in alphabetical order. Each has one or two sentences and a link to the page that covers it. There are 64 terms.

| Term                | Meaning                                                                                                                                                                                                         |
| ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Abandon             | To end an open run by hand, with `realm run abandon` or the `abandon_run` tool. The run's phase becomes `abandoned`. See [`realm run`: commands that act](https://realmengine.dev/docs/reference/cli/realm-run-acting.md#abandon).                     |
| Adapter             | The code that calls one outside service for a workflow. Realm has 10 built in, and a project can add its own. See [Adapters](https://realmengine.dev/docs/reference/adapters.md).                                                                      |
| Agent profile       | A text file of standing instructions that an agent step is given with its prompt. See [Services, profiles and context](https://realmengine.dev/docs/reference/workflow/services-profiles-and-context.md).                                              |
| Agent step          | A step whose output comes from an AI model. Realm checks the answer against the step's schema before it records it. See [Step kinds](https://realmengine.dev/docs/concepts/step-kinds.md).                                                |
| `agent_action`      | The field of a tool's reply that tells the caller what to do after an error or a block. See [Error codes](https://realmengine.dev/docs/reference/error-codes.md#what-an-error-carries).                                                                |
| Auto step           | A step Realm runs itself, by calling a handler or an adapter. See [Step kinds](https://realmengine.dev/docs/concepts/step-kinds.md).                                                                                                      |
| Batch               | Several runs of one workflow started with one call to `start_run_batch`. See [Idempotency and batches](https://realmengine.dev/docs/guides/idempotency-and-batches.md).                                                                   |
| Choice              | One of the answers a gate offers, such as `approve` or `reject`. See [Gates](https://realmengine.dev/docs/reference/workflow/gates.md).                                                                                                                |
| Claim               | The mark Realm puts on a step when it starts, so that no second caller runs the same step. See [`realm run`: commands that act](https://realmengine.dev/docs/reference/cli/realm-run-acting.md#reclaim).                                               |
| Cleanup step        | Another name for a finalizer.                                                                                                                                                                                   |
| Condition           | A comparison of a value from the run with a fixed value, used by `when`, `preconditions` and `abort_unless`. See [Conditions](https://realmengine.dev/docs/reference/workflow/conditions.md).                                                          |
| Deployment manifest | The file `realm.yaml`, which holds a project's settings. See [Deployment manifest](https://realmengine.dev/docs/reference/deployment-manifest.md).                                                                                                     |
| Drain               | To run the finalizers that a run still owes after it has ended. See [`realm run`: commands that act](https://realmengine.dev/docs/reference/cli/realm-run-acting.md#drain).                                                                            |
| Drift               | A difference between the project's code or settings on disk and what a run recorded when it ran. See [Project extensions](https://realmengine.dev/docs/reference/project-extensions.md#--check-drift).                                                 |
| Drive failure       | A failed request from `realm agent` to a model provider. Realm keeps the last 5 on the run's record. See [`realm agent`](https://realmengine.dev/docs/reference/cli/realm-agent.md#when-it-stops).                                                     |
| Driver              | Whatever calls Realm to move a run forward: an AI assistant over MCP, `realm agent`, `realm listen`, `realm workflow run` or `realm run advance`. See [Who drives a run](https://realmengine.dev/docs/concepts/who-drives-a-run.md).      |
| Engine              | The part of Realm that decides which step can run, checks each answer and writes the record. The `realm` command and the MCP server are built on it. See [Core library](https://realmengine.dev/docs/reference/core-library.md).                       |
| Evidence            | What a run records about each step: what it was given, what it produced, and a hash of the output. See [Evidence](https://realmengine.dev/docs/concepts/evidence.md).                                                                     |
| Evidence entry      | One item of a run's evidence: one attempt of one step, or one gate answer. See [Run record and export bundle format](https://realmengine.dev/docs/reference/run-record-and-export.md#evidence-entries).                                                |
| Export bundle       | The one file that `realm run export` writes, with a run's record and its other files. See [Run record and export bundle format](https://realmengine.dev/docs/reference/run-record-and-export.md#the-export-bundle).                                    |
| Extensions          | The code files of a project that give Realm adapters and handlers. A workflow names them with `extensions`. See [Project extensions](https://realmengine.dev/docs/reference/project-extensions.md).                                                    |
| Finalizer           | A step that runs after the run has ended, for cleanup or for a notice. It names the endings it runs for with `on_outcome`. See [Step kinds](https://realmengine.dev/docs/concepts/step-kinds.md).                                         |
| Fixture             | A file that describes one test of a workflow: the parameters, a stand-in reply for each service call and agent step, and the expected ending. See [Test a workflow](https://realmengine.dev/docs/guides/test-a-workflow.md).              |
| Gate                | A stop at a step, where the run waits until a person picks one of the gate's choices. A step has one when its `trust` is `human_confirmed`. See [Human gates and trust levels](https://realmengine.dev/docs/concepts/gates-and-trust.md). |
| Guard               | A step that checks conditions and stops the whole run if one is false. See [Step kinds](https://realmengine.dev/docs/concepts/step-kinds.md).                                                                                             |
| Handler             | A function from your project that an auto step or a finalizer runs. See [Handlers](https://realmengine.dev/docs/reference/handlers.md).                                                                                                                |
| Hash                | A short fingerprint of a piece of data, which changes if the data changes. Realm records one for each step's output.                                                                                            |
| Health finding      | Something Realm notices is wrong or unusual about a run, such as a step whose caller has gone away. See [Run state and health findings](https://realmengine.dev/docs/reference/mcp/run-state-and-health.md).                                           |
| Idempotency key     | A name given when a run is started, so that starting it twice with the same name gives one run. See [Idempotency and batches](https://realmengine.dev/docs/guides/idempotency-and-batches.md).                                            |
| Input map           | The `input_map` of a step, which says where each of the step's inputs comes from. See [Input map and templates](https://realmengine.dev/docs/reference/workflow/input-map-and-templates.md).                                                           |
| Lease               | A short hold a process takes on a finalizer while it runs it, so that no other process runs it at the same time. See [`realm run`: commands that act](https://realmengine.dev/docs/reference/cli/realm-run-acting.md#drain).                           |
| Loader              | The part of Realm that reads a workflow file and refuses it if something is wrong. See [Loader diagnostics](https://realmengine.dev/docs/reference/workflow/loader-diagnostics.md).                                                                    |
| MCP                 | The Model Context Protocol, the standard way an AI assistant calls outside tools. Realm is an MCP server with 11 tools (10 in version 0.46.0). See [MCP tools](https://realmengine.dev/docs/reference/mcp/tools.md).                                   |
| Operation           | One action of an adapter, such as `read` on the `filesystem` adapter. A step names it with `operation`. See [Adapters](https://realmengine.dev/docs/reference/adapters.md).                                                                            |
| Parameters          | The values a run is started with. A workflow's `params_schema` says which it accepts. See [Workflow file: top-level fields](https://realmengine.dev/docs/reference/workflow/top-level-fields.md).                                                      |
| Phase               | Where a run stands: `running`, `gate_waiting`, `completed`, `failed`, `aborted` or `abandoned`. See [Workflows, steps and runs](https://realmengine.dev/docs/concepts/workflows-steps-and-runs.md).                                       |
| Precondition        | A condition a step states with `preconditions`. If it is false, the step is blocked and the caller is told why. See [Conditions](https://realmengine.dev/docs/reference/workflow/conditions.md).                                                       |
| Processor           | A third kind of thing a project's code can give Realm, beside adapters and handlers. No workflow field uses one. See [Project extensions](https://realmengine.dev/docs/reference/project-extensions.md).                                               |
| Project             | The folder a workflow belongs to: the nearest folder at or above it that holds a `package.json` or a `.git`. See [Deployment manifest](https://realmengine.dev/docs/reference/deployment-manifest.md#where-realm-looks-for-it).                        |
| Provider            | The company whose model `realm agent` calls: OpenAI or Anthropic, or code of your own. See [`realm agent`](https://realmengine.dev/docs/reference/cli/realm-agent.md).                                                                                 |
| Purge               | To delete an ended run's files, with `realm run purge`. See [`realm run`: commands that act](https://realmengine.dev/docs/reference/cli/realm-run-acting.md#purge).                                                                                    |
| Reclaim             | To take a step back from a caller that has gone away, so that it can be run again. See [`realm run`: commands that act](https://realmengine.dev/docs/reference/cli/realm-run-acting.md#reclaim).                                                       |
| Register            | To store a copy of a workflow under its ID in `~/.realm/workflows`, where the MCP server finds it. See [`realm workflow`](https://realmengine.dev/docs/reference/cli/realm-workflow.md#register).                                                      |
| Replay              | A re-check of a run's `preconditions` against the outputs it recorded, with the outputs you choose changed. It runs no step. See [`realm run`: commands that read](https://realmengine.dev/docs/reference/cli/realm-run-reading.md#replay).            |
| Retry               | To try a step again after it fails. A step asks for it with a `retry` block. See [Retry and timeouts](https://realmengine.dev/docs/reference/workflow/retry-and-timeouts.md).                                                                          |
| Run                 | One execution of a workflow. It has an ID, its parameters, and a phase. See [Workflows, steps and runs](https://realmengine.dev/docs/concepts/workflows-steps-and-runs.md).                                                               |
| Run record          | The JSON object that holds everything Realm knows about a run. See [Run record and export bundle format](https://realmengine.dev/docs/reference/run-record-and-export.md).                                                                             |
| Schema              | A JSON Schema, which says what shape a piece of data must have. A workflow uses one for the run's parameters and for each step's answer. See [JSON Schema blocks](https://realmengine.dev/docs/reference/workflow/json-schema-blocks.md).              |
| Secret reference    | `${secret:NAME}` in `realm.yaml`, which stands for a secret's value without writing it there. See [Deployment manifest](https://realmengine.dev/docs/reference/deployment-manifest.md#secret-references).                                              |
| Service             | An outside system a workflow calls, declared under `services` with the adapter that reaches it. See [Services, profiles and context](https://realmengine.dev/docs/reference/workflow/services-profiles-and-context.md).                                |
| Settle              | To record a step's final result. After that the step cannot be started again in this run.                                                                                                                       |
| Skipped step        | A step that will not run, because its `when` was false, or because the steps it depends on ended in a way its `trigger_rule` rules out. See [Order and routing](https://realmengine.dev/docs/concepts/order-and-routing.md).              |
| Stale claim         | A claim whose deadline has passed, which suggests its caller has gone away. The step can then be reclaimed. See [`realm run`: commands that act](https://realmengine.dev/docs/reference/cli/realm-run-acting.md#reclaim).                              |
| Step                | One unit of work in a workflow. Each has a kind: `auto`, `agent`, `guard` or `finalizer`. See [Step kinds](https://realmengine.dev/docs/concepts/step-kinds.md).                                                                          |
| Store               | Where Realm keeps runs and workflows. The `realm` command uses files under `~/.realm`. See [Core library](https://realmengine.dev/docs/reference/core-library.md).                                                                                     |
| Stuck run           | An open run with a health finding, as listed by `realm run list --stuck`. See [`realm run`: commands that read](https://realmengine.dev/docs/reference/cli/realm-run-reading.md#list).                                                                 |
| Tool server         | A separate MCP server whose tools an agent step's model may call under `realm agent`. See [Give an agent step tools](https://realmengine.dev/docs/guides/agent-tools.md).                                                                 |
| Trace               | Notes a caller sends about how it worked on an agent step, recorded with the step. See [MCP tools](https://realmengine.dev/docs/reference/mcp/tools.md#append_trace).                                                                                  |
| Trigger             | The `trigger` block of a workflow, which lets `realm listen` start a run from a webhook request. See [Webhook trigger](https://realmengine.dev/docs/reference/workflow/webhook-trigger.md).                                                            |
| Trigger rule        | A step's `trigger_rule`, which says which results of the steps it depends on let it run. See [Workflow file: step fields](https://realmengine.dev/docs/reference/workflow/step-fields.md#when-the-step-runs).                                          |
| Trust               | A step's `trust` field, which says whether the step has a gate. See [Human gates and trust levels](https://realmengine.dev/docs/concepts/gates-and-trust.md).                                                                             |
| Workflow            | A file that lists the steps of a job and the order they run in. See [Workflows, steps and runs](https://realmengine.dev/docs/concepts/workflows-steps-and-runs.md).                                                                       |
| Workflow context    | Text files a workflow names with `workflow_context`, whose text agent steps can be given. See [Services, profiles and context](https://realmengine.dev/docs/reference/workflow/services-profiles-and-context.md).                                      |
| Writer nonce        | An identifier a caller gives with its trace entries and its answer, so that Realm can tell which entries came from the caller that completed the step. See [MCP tools](https://realmengine.dev/docs/reference/mcp/tools.md#append_trace).              |
