返回首页

OpenClaw 架构:nodes 和 gateway

OpenClaw 以 Gateway 为中心枢纽构建,nodes 用于外围设备,Canvas 用于 UI。本文详解 actors、交互,以及 5 个真实案例:CRM、简报、购物车、编排、3D 打印机。

OpenClaw:nodes、gateway 和 canvas 如何工作
Advertisement 728x90

OpenClaw 架构:核心组件与交互机制

OpenClaw 采用中心辐射式架构,以中央 Gateway 作为控制平面。这种设计让代理能够与外围设备和 I/O 通道交互。理解 节点(Node)会话(Session)通道(Channel)操作员(Operator) 的角色,能帮助中高级开发者快速搭建和使用系统。

节点(Node) 充当伴侣设备,通过 WebSocket 以 role: "node" 连接到 Gateway。它通过 node.invoke 暴露命令接口,包括 canvas.camera.device.notifications.system.*system.run

角色与参与者交互

Gateway 管理节点和操作员的连接,协调通道与会话,并处理设备配对。通道集成微信、Telegram、Discord、Slack 和 Signal 等消息应用,将消息路由至会话 → 代理,反之亦然。

Google AdInline article slot

| 参与者 | 职责 | 交互方式 |

|-------------|---------------------------------|---------------------------------------|

| Gateway | 控制平面 | 节点/操作员连接,会话/通道管理 |

Google AdInline article slot

| 通道 | 消息应用集成 | 消息路由至 Gateway → 会话 → 代理 |

| 节点 | 外围设备 | 以 role: node 连接,node.invoke |

| 操作员 | 管理操作 | 配对、审批、配置 |

Google AdInline article slot

| 会话 | 代理上下文 | 历史记录与状态存储 |

| 代理 | AI 运行时 | 会话内工具/节点调用 |

| 用户 | 终端用户 | 通过通道/操作员 |

| 设备 | 连接设备 | 通过 Gateway 配对 |

流程: 用户 → 通道 → Gateway → 会话 → 代理 → 节点/通道。操作员审批配对与操作。

节点类型:

  • macOS 菜单栏应用
  • iOS/Android 用于相机、GPS、屏幕
  • 无头模式(openclaw node run)用于服务器
  • VS Code 扩展

Canvas 与 A2UI 在生态中的作用

Canvas 是代理控制的可视化工作空间。A2UI 是一种动态生成界面的协议。代理调用 canvas.presentcanvas.a2ui.push 创建 JSON UI 描述,在节点(macOS、iOS、Android、Web)上渲染。

使用场景:

  • 动态仪表盘
  • 交互式表单
  • 数据可视化
  • AI 原生应用(CRM、监控)
  • 游戏、图库

用户操作通过 WebSocket 实时回传至代理。

实际案例:个人 CRM

问题: 数据散落在 Gmail、微信、Calendar、Notion 中。

用户流程: 微信消息:“查看伊万·伊万诺夫的资料。” 代理打开 Canvas,显示标签页、字段和历史记录。

结果: 统一的 AI 驱动 CRM,支持实时更新。

架构: 通道 → Gateway → 会话 → 代理(Canvas 技能 + A2UI)→ 节点(UI)。操作员处理审批;数据存储在会话中。

实际案例:晨间简报

问题: 手动收集日历、邮件、天气信息(10–15 分钟)。

用户流程: “简报” → 后续如“莫斯科天气”。

结果: Canvas 中的图表摘要。

架构: Gateway 定时任务 → 会话 → 代理(技能:日历/邮件/天气)→ 通道/Canvas。无头节点可选。

实际案例:家庭购物清单

问题: 群聊中一片混乱。

用户流程: 微信群消息 → “显示购物车” → Canvas 列表与按钮。

结果: 移动节点上的实时清单。

架构: 通道(群聊)→ Gateway → 会话 → 代理(解析、Canvas)→ 移动节点。WebSocket 处理操作。

实际案例:多代理编排

问题: 单代理易丢失焦点。

用户流程: “点名” → 任务分配。

结果: 代理团队的最终报告。

架构: Gateway(多会话)→ 领头代理(分配)→ 各代理节点 → 通道。

实际案例:3D 打印农场

问题: Bambu Lab 打印机手动监控。

用户流程: “X1C 状态”、“打印 Benchy”、“显示摄像头”。

结果: 带摄像头流的远程控制。

架构: 通道 → Gateway → 会话 → 代理 → 物理节点(Bambu 集成)→ 打印机。

关键要点

  • Gateway 是核心枢纽——没有它一切无法运行。
  • 节点 将代理扩展至设备:无头用于服务器,移动用于传感器。
  • Canvas/A2UI 将聊天转为完整 UI。
  • 会话 隔离上下文并存储记忆。
  • 操作员 确保安全配对与审批。

— Editorial Team

Advertisement 728x90

继续阅读