# Choose a Constal interface

> Select the Console, SDK, CLI, or Platform API according to whether you are authoring runtime behavior, operating interactively, or integrating another system.

Constal exposes the same platform model through interfaces with deliberately different jobs. Choosing the correct boundary keeps Agent code portable and administrative automation explicit.

## Interface boundaries {#interface-boundaries}

| Interface | Use it for |
| --- | --- |
| [Console](/docs/interfaces/console.md) | Interactive configuration, inspection, diagnosis, and low-volume control |
| [SDK](/docs/sdk.md) | Authoring Agent, Tool, Channel, Auth Provider, Policy, and Credential Provider code that executes inside Constal |
| [CLI](/docs/cli.md) | Repeatable operator and release workflows from a terminal or automation pipeline |
| [Platform API](/docs/api.md) | Integrating Constal into an application or backend service |

The SDK is not an administrative client. The CLI is not an Agent runtime. The Console does not create a separate control path, and the API does not bypass the Resource, Policy, Credential, or durability model. Each external interface reaches public platform operations; runtime code receives only the accepted `Ctx` and pinned Resources.

Product guides remain task-oriented. A Resources guide explains the Resource workflow and then links to its SDK, CLI, and API interface pages. Use this section when choosing the boundary for a new integration, then return to the product guide for the actual task.
