#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.

  • Crea uno shim tmux nella directory temporanea degli shim della superficie corrente. Il percorso include l’UUID della superficie e cambia per ogni pannello e a ogni avvio, quindi non è possibile indicare un percorso fisso
  • Imposta TMUX e TMUX_PANE per simulare tmux nella sessione di avvio di 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

Lo shim instrada verso cmux solo quando CMUX_CLAUDE_TEAMS_CMUX_BIN è impostato; altrimenti passa in modo trasparente al successivo eseguibile tmux reale. Di conseguenza, which tmux non indica se l’intercettazione di Claude Teams è attiva.

#Environment variables

VariablePurpose
TMUXPercorso sintetico del socket tmux per la sessione che ha eseguito cmux claude-teams
TMUX_PANEIdentificatore sintetico del pannello tmux per la sessione che ha eseguito cmux claude-teams; vuoto nei pannelli agente generati
CMUX_SURFACE_IDL’UUID della superficie corrente; usalo come identificatore della superficie all’interno di un pannello agente creato
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMSEnables Claude Code agent teams feature
CMUX_SOCKET_PATHPath to the cmux control socket for the shim to connect to

I valori sintetici TMUX, TMUX_PANE e i valori correlati di compatibilità tmux descrivono la sessione che ha eseguito cmux claude-teams, non i pannelli creati. Da un pannello agente, usa CMUX_SURFACE_ID ed esegui cmux tree --json; l’oggetto caller nell’output identifica il pannello chiamante.

#Directories

PathPurpose
Directory per superficie nella directory temporanea di sistema (nessun percorso fisso)Contiene lo shim tmux attivo e viene anteposto a PATH per quella superficie
~/.cmuxterm/tmux-compat-store.jsonArchiviazione persistente per buffer e hook di tmux-compat e per lo stato di posizionamento/layout delle suddivisioni

Le chiavi di instradamento delle suddivisioni sono:

  • lastSplitSurfaceMappa ogni UUID del workspace all’UUID della superficie creata dall’ultima suddivisione. Fornisce il valore iniziale all’ancora della colonna degli agenti, che decide dove atterra la prossima suddivisione main-vertical.
  • mainVerticalLayoutsMappa ogni UUID del workspace a mainSurfaceId (la superficie principale o leader) e lastColumnSurfaceId (la superficie più in basso nella colonna degli agenti). Le successive suddivisioni dei membri del team puntano a quella colonna e si impilano verso il basso.

Controlla queste chiavi di instradamento quando il pannello di un membro del team appare come una scheda dietro una superficie esistente invece che come una suddivisione accanto ad essa.

#Supported tmux commands

The shim translates these tmux commands into cmux operations:

  • new-session, new-windowcreates a new cmux workspace
  • split-windowsplits the current cmux pane
  • send-keyssends text to a cmux surface
  • capture-panereads terminal text from a cmux surface
  • select-pane, select-windowfocuses a cmux pane or workspace
  • kill-pane, kill-windowcloses a cmux surface or workspace
  • list-panes, list-windowslists cmux panes or workspaces