Terminal Opener
Use scripts/open-terminal.js para preservar um executável e cada argumento como
entradas de processo separadas. Nunca interpole uma string de comando do shell. Mantenha cada
spawn em shell: false. Use por padrão um plano sem lançamento. Use --launch apenas
após o usuário solicitar explicitamente uma janela real e o argv ter sido revisado.
O processo lançado herda o ambiente completo do processo de chamada,
incluindo variáveis que contêm segredos. O lançador não filtra o
ambiente. Execute-o a partir de um shell cujo ambiente seja seguro para expor ao
comando de destino.
Lançar um comando
Passe as opções do lançador antes de --, depois passe exatamente um executável seguido por
sua matriz de argumentos:
node skills/terminal-opener/scripts/open-terminal.js \
--launch \
--cwd /absolute/host/path \
-- ssh -t example.test command-with-arguments
Execute o modo normal primeiro. Deixe o WezTerm tentar seu mux com uma nova janela, depois deixe o
lançador cair em um processo wezterm start destacado se o mux não estiver
disponível. Quando o fallback for usado, leia muxFailure da saída JSON (ou a
linha de falha legível) para diagnosticar por que o caminho do mux falhou.
Recuperar da configuração do terminal
Adicione --recover ou --standalone quando a configuração do usuário ou o estado do mux puderem
interferir no comando solicitado. Inicie um processo WezTerm destacado com:
--skip-config start --always-new-process
Espere que o modo de recuperação ignore intencionalmente toda a configuração do terminal do usuário.
Inspecionar antes de lançar
Omita --launch (ou adicione --dry-run) e adicione --json para inspecionar o exato
executável, argv, diretório de trabalho, adaptador de terminal, lançamento primário e
fallback sem abrir uma janela. Trate o plano JSON como o limite de composição
para os chamadores.
Execute --detect --json sem um comando para sondar a disponibilidade do terminal. Siga
a action retornada quando o adaptador estiver ausente ou não for suportado. Use WezTerm
para o adaptador atual; trate outros terminais solicitados como planos não suportados,
não como comandos a serem executados.