WebChat (application macOS)
L’application de barre de menus macOS intègre l’interface WebChat comme vue SwiftUI native. Elle se connecte à la Gateway et utilise par défaut la session principale pour l’agent sélectionné (avec un sélecteur de session pour les autres sessions).- Mode local : se connecte directement au WebSocket Gateway local.
- Mode distant : transfère le port de contrôle Gateway via SSH et utilise ce tunnel comme plan de données.
Lancement et débogage
- Manuel : menu Lobster → « Open Chat ».
-
Ouverture automatique pour les tests :
-
Journaux :
./scripts/clawlog.sh(sous-systèmeai.openclaw, catégorieWebChatSwiftUI).
Comment c’est câblé
- Plan de données : méthodes Gateway WS
chat.history,chat.send,chat.abort,chat.injectet événementschat,agent,presence,tick,health. chat.historyrenvoie des lignes de transcription normalisées pour l’affichage : les balises de directives inline sont supprimées du texte visible, les charges utiles XML d’appel d’outil en texte brut (y compris<tool_call>...</tool_call>,<function_call>...</function_call>,<tool_calls>...</tool_calls>,<function_calls>...</function_calls>, et les blocs d’appel d’outil tronqués) ainsi que les jetons de contrôle du modèle en ASCII/pleine largeur qui ont fuité sont supprimés, les lignes assistant composées uniquement de jetons silencieux commeNO_REPLY/no_replyexacts sont omises, et les lignes surdimensionnées peuvent être remplacées par des espaces réservés.- Session : utilise par défaut la session primaire (
main, ougloballorsque la portée est globale). L’interface peut basculer entre les sessions. - L’onboarding utilise une session dédiée pour garder la configuration du premier lancement séparée.
Surface de sécurité
- Le mode distant ne transfère via SSH que le port de contrôle WebSocket Gateway.
Limitations connues
- L’interface est optimisée pour les sessions de chat (pas pour un sandbox navigateur complet).