首页 资讯 下载 教程 Skills 社群

WebChat 网页聊天功能

WebChat 是什么

WebChat 是 OpenClaw 提供的网页聊天界面,以 macOS 菜单栏工具的形式将聊天窗口作为原生 SwiftUI 组件呈现。它通过 Gateway WebSocket 连接管理对话会话,让你无需打开任何消息渠道(如 Discord 或 Telegram)就能直接与 AI 助手交互。

两种连接模式

本地模式: 直接连接本机运行的 Gateway WebSocket,零延迟,无需额外配置。

远程模式: 通过 SSH 隧道将 Gateway 控制端口转发到本地,WebSocket 经由隧道连接,无需在远端 Gateway 暴露任何公网端口,安全性极高。

打开 WebChat

通过菜单栏: 点击 OpenClaw 菜单栏图标(龙虾图标),选择「Open Chat」。

通过命令行(自动化测试):

dist/OpenClaw.app/Contents/MacOS/OpenClaw --webchat

会话管理

WebChat 默认连接所选 Agent 的 main 会话。支持在界面中切换会话——例如切换到专用的 onboarding 引导会话,与主对话隔离互不干扰。

核心通信方法(通过 Gateway WebSocket):

方法 用途
chat.history 获取历史消息
chat.send 发送新消息
chat.abort 中止正在进行的对话
chat.inject 向对话注入系统消息

同时订阅以下事件:chat(新消息)、agent(Agent 状态)、presence(在线状态)、tick(心跳)、health(健康检查)。

与远程 Gateway 配合使用

当 macOS 应用处于远程模式时,WebChat 自动通过已建立的 SSH 隧道连接远端 Gateway,无需额外配置。SSH 隧道只转发 Gateway WebSocket 控制端口,不暴露其他服务。

如果使用直连(ws/wss)模式,WebChat 直接连接配置的 Gateway URL,适合通过 Tailscale 已建立私有网络的场景。

调试方法

查看 WebChat 相关日志:

./scripts/clawlog.sh

过滤特定子系统:

log stream \
  --predicate 'subsystem == "ai.openclaw" AND category == "WebChatSwiftUI"' \
  --level debug

功能限制

WebChat 专为聊天会话优化,不是完整的浏览器沙箱,因此:

  • 不支持网页浏览或渲染任意外部网页
  • 不支持文件上传(通过 Canvas 或节点命令实现文件交互)
  • 多媒体能力依赖关联节点(摄像头等由 macOS/iOS/Android 节点提供)

使用场景建议

场景 推荐方式
快速问答、日常对话 WebChat(菜单栏一键打开)
需要群组成员参与 Discord / Telegram 渠道
需要 Canvas 可视化 结合 Canvas 画布使用
自动化触发 AI 任务 深链接 openclaw://agent?message=...

WebChat 是最轻量的 OpenClaw 交互入口,无需配置消息渠道即可上手体验 AI 助手的全部能力。