Que fait Ouvreur de terminal ?
Utilisez scripts/open-terminal.js pour conserver un exécutable et chaque argument comme entrées de processus distinctes. N'interpolez jamais une chaîne de commande shell. Gardez chaque spawn sur shell: false. Par défaut, utilisez un plan sans lancement. Utilisez --launch uniquement après que l'utilisateur a explicitement demandé une fenêtre réelle et que argv a été révisé. Le processus lancé hérite de l'environnement complet du processus appelant, y compris les variables contenant des secrets. Le lanceur ne filtre pas l'environnement. Exécutez-le depuis un shell dont l'environnement peut être exposé en toute sécurité à la commande cible.
Lancer une commande
Passez les options du lanceur avant --, puis passez exactement un exécutable suivi de son tableau d'arguments :
node skills/terminal-opener/scripts/open-terminal.js \
--launch \
--cwd /absolute/host/path \
-- ssh -t exemple.test commande-avec-arguments
Exécutez d'abord le mode normal. Laissez WezTerm essayer son mux avec une nouvelle fenêtre, puis laissez le lanceur tomber en secours vers un processus wezterm start détaché si le mux n'est pas disponible. Lorsque le secours est utilisé, lisez muxFailure dans la sortie JSON (ou la ligne d'échec lisible par l'humain) pour diagnostiquer pourquoi le chemin mux a échoué.
Récupérer depuis la configuration du terminal
Ajoutez --recover ou --standalone lorsque la configuration utilisateur ou l'état du mux peut interférer avec la commande demandée. Démarrez un processus WezTerm détaché avec :
--skip-config start --always-new-process
Attendez-vous à ce que le mode de récupération ignore intentionnellement toute configuration utilisateur du terminal.
Inspecter avant le lancement
Omettez --launch (ou ajoutez --dry-run) et ajoutez --json pour inspecter l'exécutable exact, argv, le répertoire de travail, l'adaptateur de terminal, le lancement principal et le secours sans ouvrir une fenêtre. Traitez le plan JSON comme la limite de composition pour les appelants.
Exécutez --detect --json sans commande pour sonder la disponibilité du terminal. Suivez l'action retournée lorsque l'adaptateur est manquant ou non supporté. Utilisez WezTerm pour l'adaptateur actuel ; traitez les autres terminaux demandés comme des plans non supportés, et non comme des commandes à exécuter.