macOS 菜单栏应用将 WebChat UI 嵌入为原生 SwiftUI 视图,连接 Gateway 并默认使用所选 Agent 的 main 会话(支持会话切换)。

连接模式

  • 本地模式:直接连接本地 Gateway WebSocket
  • 远程模式:通过 SSH 转发 Gateway 控制端口,使用该隧道作为数据平面

启动与调试

# 手动打开:Lobster 菜单 → "Open Chat"
 
# 自动打开(测试用)
dist/OpenClaw.app/Contents/MacOS/OpenClaw --webchat
 
# 查看日志
./scripts/clawlog.sh  # subsystem: ai.openclaw, category: WebChatSwiftUI

数据平面

WebChat 使用以下 Gateway WS 方法:

  • chat.history、chat.send、chat.abort、chat.inject
  • 事件:chat、agent、presence、tick、health

chat.history 返回展示规范化的转录行:

  • 内联指令标签从可见文本中剥离
  • 纯文本工具调用 XML 载荷被剥离
  • 纯静默 token 助手行(如 NO_REPLY)被省略

会话管理

  • 默认使用主会话(main,或全局范围时为 global)
  • UI 可在会话间切换
  • 入门引导使用专用会话,与首次运行设置分离

安全

远程模式仅通过 SSH 转发 Gateway WebSocket 控制端口。

相关链接