Lanzar `fleetclaude` estando ya dentro de una flota tmux viva abría una ventana kitty nueva (y creaba un perfil/socket nuevo fleetN+1) en vez de mostrar la flota en el pane actual. Causa: con $TMUX definido el launcher saltaba el `exec tmux attach` y caía a la rama `setsid kitty`. Cambio: cuando se invoca sin --new desde dentro de una flota fleetview viva (el socket actual, derivado de $TMUX, tiene una sesión homónima con window 'console'), se trae la TUI al contexto/pane actual (`fleetview show`, o `tmux select-window` de la window console como fallback sin binario) y se retorna 0 antes de las ramas kitty/wt.exe. Nuevo flag --new para forzar el comportamiento clásico (flota+ventana nueva) aun dentro de tmux; pasar --session con un nombre distinto al perfil actual equivale a --new implícito. Fuera de tmux el comportamiento es intacto (exec tmux attach reutiliza la terminal). Fix incidental: `local left_pane="" right_pane=""` (antes `local left_pane right_pane` reventaba con "unbound variable" bajo `set -u` al reutilizar una sesión existente, p. ej. con --reuse/--session sobre una flota viva). Verificación e2e con sockets aislados fctest* (sin tocar la flota del humano): golden (reuse, exit 0, kitty invariante), --new y --session-distinto (no reuse, ruta ventana-nueva), fuera de tmux (salta reuse, ruta attach). bash -n limpio. Docs: launch_fleetclaude.md (signature, params --new, ejemplo, cuando usarla, gotchas, growth log v1.7.0) + /fleet show en .claude/commands/fleet.md. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
4.1 KiB
description, argument-hint
| description | argument-hint |
|---|---|
| Muestra la flota de Claudes vivos (sessionId + objetivo + estado) y, con argumento, salta con foco a esa conversación dentro de la sesión tmux fleet. `/fleet show` trae la TUI al contexto tmux actual. | [show | texto|sessionId|PID para saltar — vacío = listar la flota] |
/fleet — ver y navegar la flota de Claudes
Inspecciona la flota de procesos Claude Code vivos de este PC y, opcionalmente, salta con foco a cualquiera de ellos dentro de la interfaz tmux (perfil fleetview).
Se apoya en el modo CLI de la app fleetview (fleetview list / fleetview focus), que opera sobre el socket tmux del perfil desde el que se invoca el comando ($FLEET_SOCKET, default fleet). Es decir, lista y enfoca solo los Claudes del mismo perfil en el que corres.
Binario
Ruta: ${FN_REGISTRY_ROOT:-$HOME/fn_registry}/apps/fleetview/fleetview
Si el binario no existe, compílalo antes de usarlo:
cd "${FN_REGISTRY_ROOT:-$HOME/fn_registry}/apps/fleetview" && go build -o fleetview .
Comportamiento según $ARGUMENTS
Sin argumentos → listar la flota
- Ejecuta:
"${FN_REGISTRY_ROOT:-$HOME/fn_registry}/apps/fleetview/fleetview" list --json - Presenta el resultado como una tabla legible para el usuario, una fila por Claude, con: estado (idle/busy/waiting/shell), objetivo (
goal),sessionIdcorto (primeros 8 caracteres), PID y window tmux. - Marca con claridad:
- el Claude activo (
active: true) — el que está embebido en el pane derecho de la windowconsole. - la sesión actual / orquestador si la puedes identificar (su
session_idcoincide con el de quien invoca).
- el Claude activo (
- Si la lista está vacía, indícalo y sugiere que el perfil fleet podría no estar activo (revisar
$FLEET_SOCKETy que la sesión tmux exista).
show → traer la TUI al contexto tmux actual
Si $ARGUMENTS es exactamente show (alias open/attach), el usuario quiere
volver a ver el panel FleetView en el contexto/pane actual sin abrir ninguna
ventana ni arrancar una flota nueva. Ejecuta:
"${FN_REGISTRY_ROOT:-$HOME/fn_registry}/apps/fleetview/fleetview" show
Comportamiento (decidido por la app, no abre terminal externa):
- dentro de tmux con la flota viva →
select-windowde la windowconsoledel socket fleet (trae la TUI al frente; no abre nada). - fuera de tmux →
attacha la sesión fleet en la terminal actual (la reutiliza). - sin flota viva → error claro, exit 1, no abre nada (sugiere arrancarla con
fleetclaude).
Es el equivalente del comportamiento de fleetclaude sin args invocado dentro de
una flota viva (reuse de contexto): úsalo cuando ya tengas una flota corriendo y
solo quieras recuperar la vista del panel. Para abrir una flota NUEVA aparte, usa
fleetclaude --new (no este comando).
Con argumentos → saltar con foco
El usuario quiere que la interfaz tmux salte a una conversación concreta. $ARGUMENTS es el query: texto del objetivo, prefijo de sessionId, o PID (cualquier valor que no sea show).
- Ejecuta:
"${FN_REGISTRY_ROOT:-$HOME/fn_registry}/apps/fleetview/fleetview" focus "$ARGUMENTS" - Interpreta el exit code:
0: salto hecho. Confirma al usuario a qué Claude saltó (usa la línea→ ...de stdout).2: query ambiguo. El binario lista los candidatos por stderr; muéstralos y pide al usuario que afine (porsessionIdo PID).1: sin match o sin window tmux. Ejecutafleetview listy muestra las opciones disponibles para que elija.
Notas
- El salto usa el modelo de la TUI: trae el Claude elegido al pane derecho de la window
console(con el sidebar fleetview siempre visible a la izquierda) y enfoca esa window. No es destructivo — el Claude que estuviera antes se aparca en su propia window, sigue vivo. - El comando opera solo sobre el perfil tmux desde el que se invoca (
$FLEET_SOCKET). Si pides un Claude que vive en otro perfil/socket, no aparecerá en la lista ni se podrá enfocar desde aquí. - Para reabrir sesiones cerradas (
claude --resume) usa la TUI fleetview (teclau); este comando solo lista y enfoca Claudes vivos.