Atrium platform docs
Atrium platform documentation
The manifest, CLI, OAuth, deployment, and AgentCase contracts for Atrium agents.
What this is
Atrium hosts independently deployable AI agents. An agent is defined by one
atrium.yaml manifest, one or more services, and a small runtime contract
that lets the marketplace host show active work without owning each agent's
internal UI.
The platform has four boundaries:
- The developer-owned manifest describes desired state.
- The control-plane API validates that manifest and stores resolved state.
- The CLI reads and writes the same control plane that the future dashboard will use.
- Each deployed agent owns its own rich UI and exposes a small
AgentCaseAPI for the host.
Start here
- Quickstart covers the first login, scaffold, validate, dev, and deploy flow.
- Manifest schema is the field reference for
atrium.yaml. - CLI auth documents device-code login and the auth app activation surface.
- AgentCase contract explains how the marketplace renders open work across agents.
- Control-plane API lists the current API endpoints used by the CLI.
Current platform state
The Rust CLI exists in cli/ and currently implements login, logout,
init, validate, dev, deploy, status, env, logs, sync, and
rename.
The backend exposes OAuth device-code endpoints under /v0/oauth/..., with
root /oauth/... aliases kept for compatibility. Platform control-plane
endpoints live under both /v0/... and /v0/platform/.... The route
compatibility is intentional: current CLI defaults can call
https://api.atrium.st/v0/agents/..., while clients that want the explicit
namespace can call https://api.atrium.st/v0/platform/agents/....
The auth app owns the browser login and approval surface for CLI device codes. Production CLI defaults should use:
https://api.atrium.st/v0/oauth/device/code
https://api.atrium.st/v0/oauth/token
The host app proxies agent case reads and writes from /api/agent-cases to
the agent's own subdomain so browsers never need cross-subdomain CORS access
to https://{slug}.atrium.st/api/cases.
The short version
You own names, descriptions, service paths, build commands, allowed build environment values, and scaling requests. Atrium owns platform endpoints, database credentials, Cloud Run service identity, regions, and resolved status.
If a platform-owned field appears in atrium.yaml, validation fails. It is
not silently ignored.