7d100e7f3e
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
6.3 KiB
6.3 KiB
name, kind, lang, domain, version, purity, signature, description, tags, params, output, uses_functions, uses_types, returns, returns_optional, error_type, imports, tested, tests, test_file_path, file_path
| name | kind | lang | domain | version | purity | signature | description | tags | params | output | uses_functions | uses_types | returns | returns_optional | error_type | imports | tested | tests | test_file_path | file_path | |||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| launch_fleetclaude | function | bash | infra | 1.3.2 | impure | launch_fleetclaude [--cwd <dir>] [--bin <path>] [--session <name>] [--cols <n>] | Entrypoint de FleetView: abre una ventana kitty con una sesion tmux (socket aislado -L fleet) de dos panes (TUI fleetview a la izquierda, claude --dangerously-skip-permissions a la derecha) para centralizar la flota de Claudes. Instala atajos alt+flechas/alt+enter/alt+n que controlan la TUI desde cualquier pane, y fija el ancho del sidebar con hooks. |
|
|
Crea/reutiliza una sesion tmux detached con dos panes y lanza una ventana kitty 'FleetView' adjunta a ella, desacoplada del shell padre (setsid). Imprime el estado por stdout. Sin valor de retorno; exit 0 en exito. | false | error_go_core | false | bash/functions/infra/launch_fleetclaude.sh |
Ejemplo
# Via fn run (resuelve por nombre o ID):
fn run launch_fleetclaude
# Directo, con cwd explicito:
launch_fleetclaude --cwd ~/fn_registry
# Sesion y ancho de pane personalizados:
launch_fleetclaude --session fleet --cols 50
Tras invocarlo aparece una ventana kitty titulada FleetView con dos panes
lado a lado: a la izquierda la TUI fleetview, a la derecha una sesion de
claude --dangerously-skip-permissions. Volver a invocarlo NO duplica la
sesion: reusa la existente y solo abre otra kitty adjunta.
Cuando usarla
Usala cuando quieras un unico punto de entrada a la flota de Claudes en vez de
N ventanas kitty sueltas: lanzas fleetclaude y tienes la TUI de control y un
Claude listo para trabajar en la misma ventana. Tipico al empezar la jornada o
al retomar el trabajo en el repo fn_registry.
Gotchas
- Idempotencia tmux: si la sesion
<session>(defaultfleet) ya existe, NO se recrea el layout; solo se abre una kitty nueva adjunta a la misma sesion. Para empezar de cero:tmux kill-session -t fleetantes de invocar. - kitty detached (setsid): la ventana se lanza con
setsid ... ¶ sobrevivir al cierre de la terminal que la invoco. No bloquea al shell padre. execen los panes: tanto la TUI comoclaudese lanzan conexec, asi que al terminar el proceso el pane se cierra en vez de dejar una shell zombie colgando. Excepcion: el fallback cuandofleetviewno esta compilado deja una shell interactiva a proposito (para que veas el mensaje y puedas compilar).- Requiere fleetview compilado: el default
--binapunta a<repo>/apps/fleetview/fleetview. Si ese binario no existe, el pane izquierdo muestracd apps/fleetview && go build -o fleetview .en lugar de fallar en silencio. Compila la TUI antes para el flujo completo. - Socket tmux aislado (
-L fleet): toda la sesion vive en un server tmux propio, separado del tmux por defecto del usuario. Asi los atajosbind -nNO afectan otras sesiones (ej. una sesionmobile-1del movil) y matar el server fleet no toca nada mas:tmux -L fleet kill-server. - Atajos en el socket, NO en kitty.conf: instala
bind -nparaalt+flechas(mover el cursor de la TUI),alt+enter(conmutar al Claude seleccionado) yalt+n(abrir Claude nuevo). Son bindings de tmux que redirigen la tecla al pane de la TUI (send-keys -t console.0), asi funcionan ESTES DONDE ESTES (incluido escribiendo en el pane de Claude). No modifican la configuracion de kitty ni los atajos globales del escritorio. - Ancho del sidebar via hooks:
client-resizedywindow-layout-changedre-fijan el pane 0 (TUI) a--colscolumnas, porque elattachde kitty y el conmutar de Claude redistribuyen el espacio. - tmux siempre, kitty solo sin TTY:
tmuxes obligatorio (aborta != 0 si falta).kittysolo se necesita en la ruta sin-TTY (atajo de escritorio, cron, script), donde abre una ventana nueva. Invocado desde una terminal interactiva (el caso normal del aliasfleetclaude), reutiliza la terminal actual conexec tmux attachy NO necesita kitty — util en WSL u hosts sin kitty.
Capability growth log
- v1.3.2 (2026-06-17) — targeting de panes por pane ID (
%0/%1) en vez de por indice (console.0). Antes fallaba concan't find pane: 0en hosts cuyo~/.tmux.confdefinebase-index 1/pane-base-index 1(el socket-L fleethereda esa config). Los pane ID son inmunes al base-index. Bug latente que el fix de kitty (v1.3.1) destapo al dejar de abortar antes de montar la sesion. - v1.3.1 (2026-06-17) — el guard de
kittyse movio a la rama sin-TTY. La ruta interactiva (exec tmux attach) ya no exige kitty, asi quefleetclaudefunciona en hosts sin kitty (p.ej. WSL) reutilizando la terminal actual. - v1.3.0 (2026-06-17) — renombrada de
launch_kittyclaudealaunch_fleetclaude(comandofleetclaude). Atajos:alt+0(= alt+n, abrir Claude nuevo),alt+k(kill con confirmacion),alt+r(picker de reanudar sesiones cerradas) yalt+flecha-izquierda(volver atras desde el picker). Cierra la window al salir el Claude (remain-on-exit off). - v1.2.0 (2026-06-16) — ancho del sidebar por defecto 47 columnas;
ctrl+0como atajo alterno para abrir Claude nuevo;mouse on(clic/rueda enrutados a la TUI) yextended-keys on(para quectrl+0llegue distinguible por el protocolo de teclado de kitty). - v1.1.0 (2026-06-16) — socket tmux aislado
-L fleet; instala atajosalt+flechas/alt+enter/alt+nque controlan la TUI desde cualquier pane; hooks que mantienen fijo el ancho del sidebar tras attach/conmutar.