> ## Documentation Index
> Fetch the complete documentation index at: https://docs.relaycloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Orchestrator

> The RelayCloud Orchestrator connects your servers and assistants to RelayCloud.

The RelayCloud Orchestrator is a binary that runs on every server connected to RelayCloud. It is the bridge between your assistants and the control plane.

## How it works

The Orchestrator maintains four kinds of connections:

* **The control WebSocket.** A persistent outbound connection to Relay. The Orchestrator initiates this connection itself, so your server does not need any inbound ports open.
* **Local connections to each Assistant on the server.** The Orchestrator connects to each Assistant locally on loopback.
* **Assistant WebSockets.** When you connect to an assistant, RelayCloud sends the Orchestrator a connection ID and token over the control WebSocket. The Orchestrator opens an assistant WebSocket with them and provides a tunnel directly to the assistant.
* **The ingest service.** The Orchestrator forwards events from your assistants to the control plane so conversations are synced to the web console and remain accessible even when the server or assistant is offline.

Because everything flows outbound from your server, the Orchestrator works on self-managed devices behind firewalls and NATs without extra network configuration.

## Next steps

* Provision a [managed server](/basics/servers) and the Orchestrator is installed for you automatically.
* Setting up a [self-managed server](/basics/servers)? Install the Orchestrator manually by following the [setup guide](/setup/self-managed-server).
* Connect locally to an Assistant through the [Orchestrator Proxy](/setup/connect-local-assistant).
* Learn more about [assistants](/basics/assistants) and [servers](/basics/servers).
