# Claude Code Teams

cmux claude-teams launches Claude Code with agent teams enabled. When Claude spawns teammate agents, they appear as native cmux splits instead of tmux panes, with full sidebar metadata and notifications.

## Usage

```
cmux claude-teams
cmux claude-teams --continue
cmux claude-teams --model sonnet
```

All arguments after claude-teams are forwarded to Claude Code. The command defaults teammate mode to auto and sets the environment so Claude uses cmux splits.

## How it works

cmux claude-teams creates a tmux shim script and configures the environment so Claude Code thinks it's running inside tmux. When Claude issues tmux commands to manage teammate panes, the shim translates them into cmux socket API calls.

-   Kreira tmux shim u privremenom shim direktoriju trenutne površine. Putanja sadrži UUID površine i mijenja se za svaki panel i pri svakom pokretanju sistema, pa se ne može navesti fiksna putanja
-   Postavlja TMUX i TMUX\_PANE radi simuliranja tmuxa za sesiju pokretanja Claude Teams
-   Prepends the shim directory to PATH so Claude finds the shim before real tmux
-   Enables CLAUDE\_CODE\_EXPERIMENTAL\_AGENT\_TEAMS=1 and sets teammate mode to auto

Shim usmjerava na cmux samo kada je postavljen `CMUX_CLAUDE_TEAMS_CMUX_BIN`; u suprotnom transparentno prosljeđuje poziv sljedećoj stvarnoj tmux izvršnoj datoteci. Zato `which tmux` ne pokazuje da li je Claude Teams presretanje aktivno.

## Environment variables

| Variable | Purpose |
| --- | --- |
| `TMUX` | Sintetička putanja tmux socketa za sesiju koja je pokrenula cmux claude-teams |
| `TMUX_PANE` | Sintetički identifikator tmux panela za sesiju koja je pokrenula cmux claude-teams; prazan je u novostvorenim agentskim panelima |
| `CMUX_SURFACE_ID` | UUID trenutne površine; koristite ga kao identifikator površine unutar kreiranog agentskog panela |
| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Enables Claude Code agent teams feature |
| `CMUX_SOCKET_PATH` | Path to the cmux control socket for the shim to connect to |

Sintetičke vrijednosti `TMUX`, `TMUX_PANE` i povezane tmux-kompatibilne vrijednosti opisuju sesiju u kojoj je pokrenut `cmux claude-teams`, a ne kreirane panele. Iz agentskog panela koristite `CMUX_SURFACE_ID` i pokrenite `cmux tree --json`; objekt `caller` u izlazu identificira panel koji je pozvao komandu.

## Directories

| Path | Purpose |
| --- | --- |
| Direktorij za svaku površinu unutar sistemskog privremenog direktorija (nema fiksne putanje) | Sadrži aktivni tmux shim i dodaje se na početak PATH-a za tu površinu |
| `~/.cmuxterm/tmux-compat-store.json` | Trajna pohrana za tmux-compat buffere, hookove i stanje položaja/rasporeda podjela |

Ključevi za rutiranje podjela su:

-   `lastSplitSurface` — Mapira UUID svakog radnog prostora na UUID površine kreirane posljednjom podjelom. Postavlja početno sidro kolone agenata koje određuje gdje će završiti sljedeća main-vertical podjela.
-   `mainVerticalLayouts` — Mapira UUID svakog radnog prostora na `mainSurfaceId` (glavnu ili vodeću površinu) i `lastColumnSurfaceId` (najnižu površinu u koloni agenata). Naredne teammate podjele ciljaju tu kolonu i slažu se prema dolje.

Provjerite ove ključeve rutiranja kada se teammate panel pojavi kao kartica iza postojeće površine umjesto kao podjela pored nje.

## Supported tmux commands

The shim translates these tmux commands into cmux operations:

-   `new-session`, `new-window` → creates a new cmux workspace
-   `split-window` → splits the current cmux pane
-   `send-keys` → sends text to a cmux surface
-   `capture-pane` → reads terminal text from a cmux surface
-   `select-pane`, `select-window` → focuses a cmux pane or workspace
-   `kill-pane`, `kill-window` → closes a cmux surface or workspace
-   `list-panes`, `list-windows` → lists cmux panes or workspaces

Canonical: https://cmux.com/bs/docs/agent-integrations/claude-code-teams

Documentation index: https://cmux.com/llms.txt
