# Agents

> Package, deploy, inspect, and operate durable Agent behavior on Constal.

An Agent is an immutable, CRN-addressed deployment of behavior plus its execution contract. Its accepted identity pins a version, Worker deployment, mode, Resource selectors, Tool catalog, Policy attachments, run budget, and turn limit. A Run never floats to a newer Agent revision after acceptance.

## Choose a path {#choose-a-path}

| Goal | Guide |
| --- | --- |
| Publish an Agent package | [Deploy an Agent](/docs/agents/deploy.md) |
| Inspect bindings, Tools, versions, or recent Runs | [Operate Agents](/docs/agents/operate.md) |
| Invoke an Agent with durable input | [Start a Run](/docs/runs/start.md) |
| Route authenticated traffic to an Agent | [Channels](/docs/channels.md) |

## Mental model {#mental-model}

```text
Agent package → immutable deployment → Agent CRN
Agent CRN + accepted event → pinned execution snapshot → Run
Run → Resource binding → governed operation
```

Use the Agent detail page to follow Resource references rather than copying display identifiers between screens. The canonical CRN is the stable authority name; the short Agent id is only a namespace-local label.

## Next steps {#next-steps}

Deploy a package, verify its bindings and Tools, then start a Run through the Console or canonical events API.
