Skip to content

Commit de00fca

Browse files
michelhelsdingenclaudehappy-otter
committed
docs: clarify default team (Claude+Codex) and how to add other agents
Make it idiot-proof: the default is Claude Code + Codex everywhere. Other agents (Gemini, Aider, custom) are clearly secondary with explicit instructions on how to use them (prompt, --agents flag, API). Removes confusing 4-agent listing from opening paragraph. Generated with [Claude Code](https://claude.ai/code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering>
1 parent ccb9676 commit de00fca

4 files changed

Lines changed: 78 additions & 26 deletions

File tree

README.md

Lines changed: 46 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
**Multi-agent collaboration engine** — AI agents that work as one.
44

5-
Ensemble orchestrates multiple AI agents (Claude Code, Codex, Gemini, Aider) into collaborative teams that communicate, share findings, and solve problems together in real time. Built on tmux-based session management for transparent, observable agent interactions.
5+
Ensemble orchestrates AI agents into collaborative teams. Out of the box it pairs **Claude Code + Codex** — they communicate, share findings, and solve problems together in real time. Built on tmux-based session management for transparent, observable agent interactions.
66

77
> **Status:** Experimental developer tool. macOS and Linux only.
88
@@ -22,9 +22,7 @@ Ensemble orchestrates multiple AI agents (Claude Code, Codex, Gemini, Aider) int
2222
### Prerequisites
2323

2424
- Node.js 18+, Python 3.6+, [tmux](https://github.com/tmux/tmux), curl
25-
- At least one AI agent CLI installed (`claude`, `codex`, `gemini`, or `aider`)
26-
27-
> **Agent support:** **Claude Code + Codex** is fully tested and production-ready. **Gemini CLI** is supported but experimental — it can join teams and communicate, but may become unresponsive due to rate limits or internal agent delegation in Gemini's TUI. **Aider** support is untested.
25+
- [Claude Code](https://docs.anthropic.com/en/docs/claude-code) and [Codex](https://github.com/openai/codex) CLIs installed
2826

2927
### Install & Run
3028

@@ -92,6 +90,50 @@ Claude spawns a Codex + Claude team, shows their conversation live in your termi
9290

9391
This installs the skill, configures permissions, and verifies prerequisites. See the [full setup guide](https://michelhelsdingen.github.io/ensemble/configuration#claude-code-integration) for details.
9492

93+
## Supported Agents
94+
95+
The default team is **Claude Code (lead) + Codex (worker)**. This is the tested, production-ready combination.
96+
97+
| Agent | Status | How to use |
98+
|---|---|---|
99+
| **Claude Code + Codex** | Fully tested | Default — just run `/collab` or `collab-launch.sh` |
100+
| **Gemini CLI** | Experimental | Add explicitly (see below) |
101+
| **Aider** | Untested | Add explicitly (see below) |
102+
| **Any CLI tool** | Via `agents.json` | [Add a custom agent](https://michelhelsdingen.github.io/ensemble/configuration#adding-a-custom-agent) |
103+
104+
### Using a different team composition
105+
106+
Three ways to change which agents are on your team:
107+
108+
**1. Name them in your `/collab` prompt:**
109+
```
110+
/collab "Review the auth module with gemini and claude"
111+
```
112+
113+
**2. Use the `--agents` flag with `collab-launch.sh`:**
114+
```bash
115+
# First agent = lead, rest = workers
116+
./scripts/collab-launch.sh "$(pwd)" "Security audit" codex,claude,gemini
117+
```
118+
119+
**3. Specify agents in the API call:**
120+
```bash
121+
curl -X POST http://localhost:23000/api/ensemble/teams \
122+
-H "Content-Type: application/json" \
123+
-d '{
124+
"name": "my-team",
125+
"description": "Security audit",
126+
"agents": [
127+
{ "program": "codex", "role": "lead" },
128+
{ "program": "claude", "role": "worker" },
129+
{ "program": "gemini", "role": "worker" }
130+
],
131+
"workingDirectory": "'$(pwd)'"
132+
}'
133+
```
134+
135+
> **Note on Gemini:** Gemini CLI can join teams and send messages, but is experimental. It may stop responding due to free-tier rate limits or internal agent delegation issues in Gemini's TUI. For best results, configure a paid API key via `gemini /auth`.
136+
95137
## How It Works
96138

97139
1. **Create a team** — Define agents and their task via API or CLI

docs/configuration.md

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -97,12 +97,29 @@ The agent must support `team-say` and `team-read` shell commands in its PATH for
9797

9898
### Supported agents
9999

100-
| Agent | Status | Notes |
101-
|---|---|---|
102-
| **Claude Code** | Fully tested | Reliable, supports `sendKeys` input |
103-
| **Codex** | Fully tested | Requires `pasteFromFile` input and `--full-auto` flag |
104-
| **Gemini CLI** | Experimental | Uses `pasteFromFile` with `--yolo` flag. May become unresponsive due to free-tier rate limits or Gemini's internal agent delegation. If Gemini hits a rate limit, an interactive dialog appears in the TUI that blocks further message processing. Works best with a paid API key configured via `/auth`. |
105-
| **Aider** | Untested | Basic config included in `agents.json` |
100+
The default team is **Claude Code (lead) + Codex (worker)**. This is the fully tested combination.
101+
102+
| Agent | Status | Default? | Notes |
103+
|---|---|---|---|
104+
| **Claude Code** | Fully tested | Yes (worker) | Uses `sendKeys` input |
105+
| **Codex** | Fully tested | Yes (lead) | Uses `pasteFromFile` input, `--full-auto` flag |
106+
| **Gemini CLI** | Experimental | No | Uses `pasteFromFile`, `--yolo` flag. May stop responding due to free-tier rate limits or internal TUI issues. Use a paid API key (`gemini /auth`) for best results. |
107+
| **Aider** | Untested | No | Basic config included in `agents.json` |
108+
| **Any CLI tool** | Custom | No | See [Adding a custom agent](#adding-a-custom-agent) |
109+
110+
#### How to use a non-default agent
111+
112+
You don't need to change any config. Just tell ensemble which agents you want:
113+
114+
```bash
115+
# Via collab-launch.sh (first agent = lead, rest = workers)
116+
./scripts/collab-launch.sh "$(pwd)" "Security audit" codex,claude,gemini
117+
118+
# Via /collab in Claude Code — name the agents in your prompt
119+
/collab "Review auth with gemini and claude"
120+
121+
# Via API — specify the agents array
122+
```
106123

107124
### Input methods
108125

docs/getting-started.md

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ title: Getting Started
1515
| **Python 3.6+** | Used by collab scripts for message parsing |
1616
| **curl** | Used in scripts and examples |
1717
| **macOS or Linux** | tmux and shell scripts require a Unix environment |
18-
| **At least one AI agent CLI** | e.g. `claude`, `codex`, `aider`, `gemini` |
18+
| **Claude Code + Codex CLIs** | The default agent pair ([Claude Code](https://docs.anthropic.com/en/docs/claude-code), [Codex](https://github.com/openai/codex)) |
1919

2020
> **Platform support:** Ensemble runs on macOS and Linux only. Windows (including WSL) is not tested or supported.
2121
@@ -34,32 +34,24 @@ tmux -V
3434

3535
### Install AI agent CLIs
3636

37-
Ensemble supports any CLI-based AI agent. You need at least one installed:
37+
You need **both Claude Code and Codex** installed (the default team):
3838

3939
```bash
40-
# Claude Code (Anthropic) — recommended
40+
# Claude Code (Anthropic)
4141
npm install -g @anthropic-ai/claude-code
4242

4343
# Codex (OpenAI)
4444
npm install -g @openai/codex
45-
46-
# Gemini CLI (Google) — experimental
47-
npm install -g @anthropic-ai/gemini-cli # or follow https://github.com/anthropics/gemini-cli
48-
49-
# Aider (Python-based) — untested
50-
pip install aider-chat
5145
```
5246

53-
> **Tested combinations:** Claude Code + Codex is fully tested and production-ready. Gemini CLI can join teams and communicate, but is experimental — it may become unresponsive due to free-tier rate limits or internal agent delegation issues. Aider support is untested.
47+
> **Want to use other agents?** Ensemble is agent-agnostic — you can add Gemini CLI (experimental), Aider, or any CLI tool via `agents.json`. See [Configuration → Supported Agents](configuration#supported-agents) for details.
5448
5549
Each agent CLI manages its own API keys. Make sure they're configured before running ensemble:
5650

5751
| Agent | Auth setup | Where to get a key |
5852
|---|---|---|
5953
| **Claude Code** | Run `claude auth login` (opens browser) or set `ANTHROPIC_API_KEY` | [console.anthropic.com](https://console.anthropic.com/) |
6054
| **Codex** | Set `OPENAI_API_KEY` in your shell profile | [platform.openai.com/api-keys](https://platform.openai.com/api-keys) |
61-
| **Gemini CLI** | Run `gemini /auth` to configure API key, or use free tier (rate-limited) | [aistudio.google.com/apikey](https://aistudio.google.com/apikey) |
62-
| **Aider** | Set `OPENAI_API_KEY` or `ANTHROPIC_API_KEY` | See links above |
6355

6456
```bash
6557
# Example: add to your ~/.zshrc or ~/.bashrc

docs/index.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,11 @@ title: Home
88

99
**Multi-agent collaboration engine** — AI agents that work as one.
1010

11-
Ensemble orchestrates multiple AI agents (Claude Code, Codex, Aider) into collaborative teams that communicate, share findings, and solve problems together in real time.
11+
Ensemble orchestrates AI agents into collaborative teams. Out of the box it pairs **Claude Code + Codex** — they communicate, share findings, and solve problems together in real time.
1212

1313
> **Status:** Experimental developer tool. Not a production framework (yet).
14+
>
15+
> **Default team:** Claude Code (lead) + Codex (worker). You can [add other agents](configuration#supported-agents) like Gemini (experimental) or any custom CLI tool.
1416
1517
---
1618

@@ -56,11 +58,10 @@ See [Configuration → Claude Code integration](configuration#claude-code-integr
5658

5759
## Key features
5860

59-
- **Team orchestration** — Spawn multi-agent teams with a single API call
61+
- **Team orchestration** — Spawn multi-agent teams with a single command
6062
- **Real-time messaging** — Agents communicate via a structured message bus
6163
- **TUI monitor** — Watch agent collaboration live from your terminal
64+
- **Extensible** — Add any CLI-based AI agent via `agents.json`
6265
- **Multi-host support** — Run agents across local and remote machines
63-
- **Git worktrees** — Each agent works in its own isolated branch
64-
- **Staged workflows** — Multi-phase plan/execute/verify workflows
6566
- **Auto-disband** — Intelligent completion detection ends teams when work is done
6667
- **Telegram notifications** — Get notified when teams finish

0 commit comments

Comments
 (0)