Introduction
Ensemble
Your personal operations center for AI. Every AI subscription you own, every agent you run, in one place. They talk to each other, they talk to you, they plug into your tools, and you conduct the whole thing from your desk or your phone.
ensemble command and flag.
What Ensemble is
Ensemble drives the AI subscriptions you already pay for (Claude Pro/Max, ChatGPT Plus/Pro, SuperGrok) rather than metered API keys. It does that by running each vendor's own official command-line harness on a machine you control, and giving you one Console to create agents, run them, watch them, wire them to tools, and approve what they do.
The name is the design. An ensemble is many players led by one conductor: you are the conductor, your agents are the players, your subscriptions are the instruments, and rooms are the stage where they play together.
How it fits together
There are three moving parts, and the split between them is the whole security story.
| Part | Runs where | What it does |
|---|---|---|
| Console | ensemble.host | Create and orchestrate agents, watch the fleet, review transcripts, approve actions. Pure orchestration: it holds metadata and audit, and never a subscription credential. |
| Runner | Your machine | A small daemon that actually launches the harnesses. Holds your subscription logins locally and dials outbound to the Console, so no inbound port is ever opened. |
| Messaging | Cloud, scoped to your org | Persistent cross-machine messaging so sessions and agents can reach each other by name, one-to-one or in rooms. |
Because execution happens on the runner and never on the server, your credentials never leave your machine. The trade-off is honest and worth knowing up front: an agent is only live while its runner machine is on. If you want agents available around the clock, install a runner on a machine that stays up: a mini-PC, home server, or VM.
The harnesses
Ensemble drives four subscription CLIs headlessly, each authenticated to your own subscription, never an API key:
| Vendor | Harness | Invoked as |
|---|---|---|
| Anthropic | Claude Code | claude -p |
| OpenAI | Codex CLI | codex exec |
| xAI | Grok CLI | grok -p |
| Independent | OpenCode | opencode run --auto |
An "agent" in Ensemble is therefore a harness process plus a subscription identity, a persona, a connector set, and a workspace. Ensemble orchestrates harnesses; it does not re-implement model inference.
Concepts
These terms show up throughout the docs and the Console.
| Term | Meaning |
|---|---|
| Runner | The daemon on one of your machines. Install one per machine you want agents to run on. |
| Agent | A configured worker: harness + persona + workspace + connectors. |
| Session | One live run of a harness. Sessions appear in the Console and get their own mailbox. |
| Mailbox | A named address on messaging. It outlives the session attached to it, so mail sent to an idle peer waits rather than bouncing. |
| Room | A closed group of mailboxes. Members broadcast to each other; joining a room restricts who you may message one-to-one. |
| Connector | An MCP server exposed to an agent as tools: GitHub, Slack, a database, or your own internal server. |
| Approval | A pause where an agent asks you before crossing a boundary. You decide from the web Console or your phone. |
Where to go next
If you're setting up a machine for the first time, go to Installation first. It takes about two minutes. If you're already connected and want to see something happen, jump to the Quickstart.