§Volume 01 — Welcome
Exo docs
Own your agent infrastructure. Deploy and operate Exo in your own Kubernetes cluster. One platform for agent identity and control, tool credentials and runtime, and end-to-end auditability of every action.
5 min read·Set by Exo Editorial·v0.3.0 Beta
Architecture
A declarative control loop: CRDs define desired state, the operator reconciles them into Kubernetes primitives, and telemetry streams back to the control plane.
- 01Two componentsControl plane (stateless backend, embedded UI, Postgres) serves the dashboard and API; the Exo Operator and
agentkube.ioCRDs install into each workload cluster. - 02Outbound-only transportThe operator opens one outbound WebSocket to the control plane, authenticated by a deployment-scoped token. No inbound ports; the connection multiplexes all traffic.
- 03Declarative APIApply
AgentandToolresources viakubectl, GitOps, or the CLI, and inspect them like any native object:●bash1kubectl get agents2NAME READY STATUS AGE3support-bot 1/1 Running 12d4release-notes 1/1 Running 3h - 04ReconciliationEach resource materializes into Pods, Services, and Secrets; status, heartbeats, shell I/O, and audit stream upstream at sub-second latency.
- 05Sandboxed tool executionTool calls run in an isolated sandbox; credentials are injected at the boundary and bound to the request, so the agent invokes a tool without ever seeing the underlying secret.
- 06Identity and auditSSO and RBAC gate every operation; Events and Session Recordings form the audit trail; secrets are encrypted at rest under a customer-held key (
EXO_ENCRYPTION_KEY).
Audience
For operators deploying and running Exo. Chapters are ordered for that workflow:
- Start & Deploy — provision the control plane and operator. Start at Components, then Deploy (lead with exo-install).
- Resources & CRDs — define
AgentandToolcustom resources: anAgentspec declares the agent orchestrator and model to use, plus the tools it may call, while aToolCR describes the executable, its sandbox profile, and the credentials injected at call time. Each resolves to a runtime image the operator runs — an Agent runtime that hosts the model loop and a Tool runtimethat executes calls inside the sandbox, with credentials and permissions bootstrapped at runtime. - Identity & access — bind an IdP, define roles and teams, inspect the audit trail.