macOS companion app
Вебчат (macOS)
Застосунок рядка меню macOS вбудовує інтерфейс WebChat як нативне подання SwiftUI. Він підключається до Gateway і за замовчуванням використовує основний сеанс для вибраного агента (із перемикачем сеансів для інших сеансів).
- Локальний режим: підключається напряму до локального WebSocket Gateway.
- Віддалений режим: перенаправляє контрольний порт Gateway через SSH і використовує цей тунель як площину даних.
Запуск і налагодження
-
Вручну: меню Lobster → "Open Chat".
-
Автоматичне відкриття для тестування:
dist/OpenClaw.app/Contents/MacOS/OpenClaw --webchat -
Журнали:
./scripts/clawlog.sh(підсистемаai.openclaw, категоріяWebChatSwiftUI).
Як це підключено
- Площина даних: методи Gateway WS
chat.history,chat.send,chat.abort,chat.injectі подіїchat,agent,presence,tick,health. chat.historyповертає нормалізовані для відображення рядки транскрипту: вбудовані теги директив вилучаються з видимого тексту, XML-навантаження викликів інструментів у звичайному тексті (зокрема<tool_call>...</tool_call>,<function_call>...</function_call>,<tool_calls>...</tool_calls>,<function_calls>...</function_calls>і обрізані блоки викликів інструментів) і просочені ASCII/повноширинні керівні токени моделі вилучаються, суто рядки асистента з тихими токенами, як-от точніNO_REPLY/no_reply, пропускаються, а надмірно великі рядки можуть замінюватися заповнювачами.- Сеанс: за замовчуванням використовується основний сеанс (
mainабоglobal, коли область дії є глобальною). Інтерфейс може перемикатися між сеансами. - Онбординг використовує окремий сеанс, щоб відокремити первинне налаштування.
Поверхня безпеки
- Віддалений режим перенаправляє через SSH лише контрольний порт WebSocket Gateway.
Відомі обмеження
- Інтерфейс оптимізовано для чат-сеансів (не для повноцінної пісочниці браузера).