惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

爱范儿
爱范儿
MyScale Blog
MyScale Blog
Recent Announcements
Recent Announcements
N
Netflix TechBlog - Medium
GbyAI
GbyAI
Vercel News
Vercel News
The GitHub Blog
The GitHub Blog
阮一峰的网络日志
阮一峰的网络日志
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
V
Visual Studio Blog
Martin Fowler
Martin Fowler
腾讯CDC
大猫的无限游戏
大猫的无限游戏
aimingoo的专栏
aimingoo的专栏
云风的 BLOG
云风的 BLOG
J
Java Code Geeks
WordPress大学
WordPress大学
P
Proofpoint News Feed
雷峰网
雷峰网
酷 壳 – CoolShell
酷 壳 – CoolShell
有赞技术团队
有赞技术团队
人人都是产品经理
人人都是产品经理
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Y
Y Combinator Blog

博客园 - 我才是银古

第16章:常见问题、排错与最佳实践 第15章:扩展生态、MCAD 与外部集成 第12章:实战案例:机械结构与 3D 打印零件 第14章:构建、测试、调试与贡献流程 第13章:OpenSCAD 源码架构与核心执行流程 第11章:预览、渲染、网格精度与性能优化 第09章:列表推导、递归与算法建模 第08章:参数化零件库与复用设计 第10章:导入导出、命令行与自动化 第06章:CSG 布尔建模方法 第07章:二维图形、拉伸、旋转与投影 第05章:基础几何、坐标系与变换 第04章:参数、变量、函数、模块与作用域 OpenSCAD 教程目录 第03章:OpenSCAD 语言基础 第02章:安装、环境配置与开发工作流 第01章:OpenSCAD 项目全景与学习路线 第02章:源码获取、编译与开发环境配置 第01章:OCCT项目全景与学习路线 第18章:二次开发实战与综合案例 第17章:与 Qt VTK Python pythonOCC 生态集成 第18章:综合实战案例 第17章:数据交换与协同 第16章:源码架构与二次开发 第15章:插件与自定义工作台开发 第14章:Python脚本宏与自动化 第13章:FEM仿真分析 第12章:CAM数控加工 第11章:SurfaceMesh与逆向工程 第10章:Draft二维绘图与BIM建筑
第三章:Gateway 架构、协议与运行机制
我才是银古 · 2026-05-04 · via 博客园 - 我才是银古

第三章:Gateway 架构、协议与运行机制

OpenClaw 的核心是 Gateway。它是长生命周期控制平面,负责连接通道、客户端、节点、Agent、工具和配置。

3.1 Gateway 职责

Gateway 维护聊天通道连接,暴露默认 127.0.0.1:18789 的 HTTP/WebSocket 服务,处理入站消息、DM pairing、allowlist、群聊 mention、Agent 路由、模型调用、工具策略、节点配对、配置热加载、健康检查和事件分发。

3.2 高层流程

聊天平台 / WebChat / CLI / Control UI / 节点
              │
              ▼
        OpenClaw Gateway
              │
      ┌───────┼────────┐
      ▼       ▼        ▼
    通道层   Agent层   工具/插件/节点层
              │
              ▼
          模型与本地能力

一次消息通常经过:通道适配、触发授权、会话选择、Agent 路由、模型推理、工具执行、回复分发。

3.3 WebSocket 协议

客户端连接 Gateway 后第一帧必须是 connect。握手后使用请求/响应和事件模型:

{"type":"req","id":"1","method":"health","params":{}}

返回:

{"type":"res","id":"1","ok":true,"payload":{}}

事件示例:agentchatpresencehealthheartbeatcron。副作用方法如 send、agent 应使用幂等键,避免重试造成重复动作。

3.4 客户端与节点

普通客户端包括 CLI、Control UI、桌面应用、自动化脚本。节点以 role: node 连接,声明设备身份、能力和命令,例如 Canvas、摄像头、屏幕、位置、语音等。节点配对后属于同一操作员信任域,应谨慎开放给共享通道 Agent。

3.5 Canvas 与 A2UI

Gateway 还承载 Canvas:/__openclaw__/canvas//__openclaw__/a2ui/。Canvas 允许 Agent 生成和驱动可视化界面,适合展示图表、任务状态、演示和移动端 UI。由于涉及可执行 UI 能力,远程暴露时必须配合 Gateway auth 和工具策略。

3.6 配置热加载

Gateway 读取 ~/.openclaw/openclaw.json 并严格校验 schema。配置错误会导致启动失败或热加载被拒。排查顺序:openclaw doctoropenclaw config schema、Control UI Config 页面、日志。

3.7 关键不变量

  • 一个 Gateway 是一个信任边界,不是强多租户隔离。
  • sessionKey 是路由选择,不是认证令牌。
  • Gateway auth、device pairing、DM allowlist、tool policy、sandbox 是不同层级控制。
  • 同一平台会话通常应由一个 Gateway 控制,避免状态冲突。
  • 本地 loopback 便利不代表可以直接公网暴露。

3.8 小结

理解 Gateway 后,OpenClaw 的其他功能都更清晰:通道是入口,Agent 是执行者,工具是行动力,技能是方法,插件是扩展,安全策略则由 Gateway 统一协调。