Abridor de Terminal
Usa scripts/open-terminal.js para preservar un ejecutable y cada argumento como
entradas separadas del proceso. Nunca interpoles una cadena de comando shell. Mantén cada spawn con shell: false. Por defecto, genera un plan sin lanzamiento. Usa --launch solo
después de que el usuario solicite explícitamente una ventana real y el argv haya sido revisado.
El proceso lanzado hereda todo el entorno del proceso llamante,
incluyendo variables que contienen secretos. El lanzador no filtra el
entorno. Ejecútalo desde un shell cuyo entorno sea seguro para exponer al
comando destino.
Lanzar un comando
Pasa las opciones del lanzador antes de --, luego pasa exactamente un ejecutable seguido de
su arreglo de argumentos:
node skills/terminal-opener/scripts/open-terminal.js \
--launch \
--cwd /ruta/absoluta/del/host \
-- ssh -t ejemplo.test comando-con-argumentos
Ejecuta primero el modo normal. Permite que WezTerm intente su mux con una nueva ventana, luego deja que el
lanzador caiga en un proceso wezterm start desconectado si el mux no está
disponible. Cuando se use la caída, lee muxFailure desde la salida JSON (o la
línea de fallo legible por humanos) para diagnosticar por qué falló la ruta del mux.
Recuperarse de la configuración de terminal
Agrega --recover o --standalone cuando la configuración del usuario o el estado del mux puedan
interferir con el comando solicitado. Inicia un proceso WezTerm desconectado con:
--skip-config start --always-new-process
Espera que el modo de recuperación omita intencionalmente toda la configuración de terminal del usuario.
Inspeccionar antes de lanzar
Omite --launch (o agrega --dry-run) y agrega --json para inspeccionar el ejecutable exacto,
argv, directorio de trabajo, adaptador de terminal, lanzamiento principal y caída
sin abrir una ventana. Trata el plan JSON como el límite de composición para
los llamantes.
Ejecuta --detect --json sin un comando para sondear la disponibilidad de terminal. Sigue
la action devuelta cuando el adaptador falta o no es compatible. Usa WezTerm
para el adaptador actual; trata otras terminales solicitadas como planes no compatibles,
no como comandos para ejecutar.