WebChat (macOS-App)
Die macOS-Menüleisten-App bettet die WebChat-Benutzeroberfläche als native SwiftUI-Ansicht ein. Sie verbindet sich mit dem Gateway und verwendet standardmäßig die Hauptsitzung für den ausgewählten Agenten (mit einem Sitzungsumschalter für andere Sitzungen).- Lokaler Modus: Verbindet sich direkt mit dem lokalen Gateway-WebSocket.
- Remote-Modus: Leitet den Gateway-Kontrollport über SSH weiter und verwendet diesen Tunnel als Datenebene.
Starten und Debuggen
- Manuell: Lobster-Menü → „Chat öffnen“.
-
Automatisches Öffnen für Tests:
-
Protokolle:
./scripts/clawlog.sh(Subsystemai.openclaw, KategorieWebChatSwiftUI).
Wie es verdrahtet ist
- Datenebene: Gateway-WS-Methoden
chat.history,chat.send,chat.abort,chat.injectund Ereignissechat,agent,presence,tick,health. chat.historygibt für die Anzeige normalisierte Transkriptzeilen zurück: Inline-Direktiv- Tags werden aus sichtbarem Text entfernt, XML-Nutzlasten von Tool-Aufrufen im Klartext (einschließlich<tool_call>...</tool_call>,<function_call>...</function_call>,<tool_calls>...</tool_calls>,<function_calls>...</function_calls>und abgeschnittener Tool-Call-Blöcke) sowie durchgesickerte ASCII-/vollbreite Modell-Kontroll-Token werden entfernt, reine stille-Token-Assistentenzeilen wie exaktesNO_REPLY/no_replywerden ausgelassen, und übergroße Zeilen können durch Platzhalter ersetzt werden.- Sitzung: Standardmäßig wird die primäre Sitzung verwendet (
mainoderglobal, wenn der Geltungsbereich global ist). Die Benutzeroberfläche kann zwischen Sitzungen wechseln. - Das Onboarding verwendet eine dedizierte Sitzung, damit die Ersteinrichtung getrennt bleibt.
Sicherheitsoberfläche
- Der Remote-Modus leitet nur den Gateway-WebSocket-Kontrollport über SSH weiter.
Bekannte Einschränkungen
- Die Benutzeroberfläche ist für Chat-Sitzungen optimiert (kein vollständiger Browser-Sandbox).