Skip to content
广告 · 本站推荐广告

WebChat(Gateway WebSocket UI)

当前状态:macOS/iOS SwiftUI 聊天 UI 直接与 Gateway WebSocket 通信。

什么是 WebChat

  • 一个用于 gateway 的原生聊天 UI(无嵌入式浏览器,无本地静态服务器)。
  • 使用与其他频道相同的会话和路由规则。
  • 确定性路由:回复始终返回到 WebChat。

快速开始

  1. 启动 gateway。
  2. 打开 WebChat UI(macOS/iOS 应用)或 Control UI 聊天标签。
  3. 确保 gateway 认证已配置(默认必须,即使在回环地址上也是如此)。

工作原理(行为)

  • UI 连接到 Gateway WebSocket 并使用 chat.historychat.sendchat.inject
  • chat.history 为稳定性做了大小限制:Gateway 可能会截断长文本字段、省略重型元数据,并用 [chat.history omitted: message too large] 替换过大的条目。
  • chat.inject 将助手备注直接附加到对话记录中,并广播到 UI(不触发 agent 运行)。
  • 被中止的运行可以保持部分助手输出在 UI 中可见。
  • 当存在缓冲输出时,Gateway 将中止的部分助手文本持久化到对话历史中,并标记这些条目带有中止元数据。
  • 历史记录始终从 gateway 获取(不监视本地文件)。
  • 如果 gateway 不可达,WebChat 为只读模式。

Control UI agents tools 面板

  • Control UI 的 /agents Tools 面板通过 tools.catalog 获取运行时目录,并将每个工具标记为 coreplugin:<名称>(可选插件工具标记为 optional)。
  • 如果 tools.catalog 不可用,面板回退到内置静态列表。
  • 面板编辑 profile 和 override 配置,但有效的运行时访问仍遵循策略优先级(allow/deny、每 agent 和 provider/channel 覆盖)。

远程使用

  • 远程模式通过 SSH/Tailscale 隧道连接 gateway WebSocket。
  • 不需要运行单独的 WebChat 服务器。

配置参考

完整配置:配置

频道选项

WebChat 没有专用的 webchat.** 配置块。WebChat 使用下面的 gateway 端点 + 认证设置。

相关全局选项

配置项说明
gateway.portgateway.bindWebSocket 主机/端口
gateway.auth.modegateway.auth.tokengateway.auth.passwordWebSocket 认证(token/password)
gateway.auth.mode: "trusted-proxy"为浏览器客户端提供反向代理认证(参阅 受信代理认证
gateway.remote.urlgateway.remote.tokengateway.remote.password远程 gateway 目标
session.**会话存储和主键默认值

基于MIT协议开源 | 内容翻译自 官方文档,同步更新