WebChat (app macOS)
L’app macOS nella barra dei menu incorpora la UI WebChat come vista SwiftUI nativa. Si connette al Gateway e usa per impostazione predefinita la sessione principale per l’agente selezionato (con un selettore di sessione per le altre sessioni).- Modalità locale: si connette direttamente al WebSocket del Gateway locale.
- Modalità remota: inoltra la porta di controllo del Gateway tramite SSH e usa quel tunnel come data plane.
Avvio e debug
- Manuale: menu Lobster → “Apri chat”.
-
Apertura automatica per i test:
-
Log:
./scripts/clawlog.sh(sottosistemaai.openclaw, categoriaWebChatSwiftUI).
Come è collegata
- Data plane: metodi WS del Gateway
chat.history,chat.send,chat.abort,chat.injected eventichat,agent,presence,tick,health. chat.historyrestituisce righe della trascrizione normalizzate per la visualizzazione: i tag delle direttive inline vengono rimossi dal testo visibile, i payload XML plain-text delle chiamate agli strumenti (inclusi<tool_call>...</tool_call>,<function_call>...</function_call>,<tool_calls>...</tool_calls>,<function_calls>...</function_calls>e i blocchi di chiamata agli strumenti troncati) e i token di controllo del modello ASCII/full-width fuoriusciti vengono rimossi, le righe dell’assistente composte solo da token silenziosi puri comeNO_REPLY/no_replyesatti vengono omesse, e le righe troppo grandi possono essere sostituite con placeholder.- Sessione: per impostazione predefinita usa la sessione primaria (
main, oppureglobalquando l’ambito è globale). La UI può passare da una sessione all’altra. - L’onboarding usa una sessione dedicata per mantenere separata la configurazione della prima esecuzione.
Superficie di sicurezza
- La modalità remota inoltra tramite SSH solo la porta di controllo WebSocket del Gateway.
Limitazioni note
- La UI è ottimizzata per sessioni di chat (non è un sandbox browser completo).