Self-hosted locations are enabled per account: contact our team if the option isn’t available on yours.
Architecture
Hybrid separates a control plane from a data plane, the same model as AWS EKS or Datadog:
The data plane connects outbound only, on port 443. The control plane never connects into your cluster. MCP calls, external-system calls and agent workspaces all run in your cluster.
What gets deployed
Resource names in the Hybrid guides assume the release namexpander, as in every command there. With another release name, they start with <release>-xpander- instead, or with <release>- when the release name already contains xpander.
How it works
Clients (Slack, the web UI, MCP clients, the API) connect to your cluster directly. Onchat.xpander.ai, the cloud UI signs you in and points the client at your cluster. Inside, the Agent Controller schedules tasks and agent-worker runs them: model calls, messages in PostgreSQL, and skill calls through the Agent Controller’s skill relay.
The only connection to xpander Cloud is the deployment manager sync: the Agent Controller authenticates with organization_id + environment_id + api_key, sends heartbeats (schema not published), and pulls agent and skill configuration, MCP included. See Data that leaves the on-prem installation.
What talks to what
Inbound from xpander cloud: none. Outbound only:
Outbound connectivity options to the control plane:
Data residency
Data at rest stays in PostgreSQL and Redis in your VPC, and credentials are Kubernetes secrets. The sync carries metadata and heartbeats only, never user payloads.
Requirements
Footprint, calculator and executor fleet: Sizing and requirements. The installer checks the same minimums (requirements.json). The release namespace must admit PodSecuritybaseline. Unlabelled is fine, and restricted is refused. The nodes that run the executor fleet need Landlock or fleet.landlock.enabled: false. See Node prerequisites.
Need a cluster? Follow the EKS Cluster Setup guide.
Bedrock needs your own credentials. Agents on a Hybrid install never use xpander’s keys (AI Gateway). To run Claude Code on Bedrock here, add a Bedrock key or role under Platform > AI governance > Models, or give the cluster an AWS identity for Bedrock. See AI vendors.
Next steps
Install Hybrid
The one-liner, the wizard and verification
Review the Hybrid network boundary
Network boundary, PrivateLink, and what leaves your VPC
Run fully air-gapped instead
Every component in your environment, no connection to xpander cloud at run time
Set up identity and access
Identity by deployment, SSO, API keys, audit logs

