AI创想

标题: OpenClaw 架构分析文档 [打印本页]

作者: 创想小编    时间: 昨天 22:04
标题: OpenClaw 架构分析文档
作者:CSDN博客

关键技术点

1. WebSocket 协议

Gateway 使用单一 WebSocket 连接处理所有通信:
2. 插件架构

OpenClaw 采用模块化插件架构:
3. 工具系统

基于 Pi Agent 的工具调用框架:
4. 模型选择与认证

5. 安全机制


扩展系统

扩展目录结构
  1. extensions/
  2. ├── whatsapp/         # WhatsApp 扩展
  3. ├── telegram/         # Telegram 扩展
  4. ├── discord/          # Discord 扩展
  5. ├── slack/            # Slack 扩展
  6. ├── msteams/          # MS Teams 扩展
  7. ├── bluebubbles/      # BlueBubbles (iMessage) 扩展
  8. ├── matrix/           # Matrix 扩展
  9. ├── zalo/             # Zalo 扩展
  10. ├── signal/           # Signal 扩展
  11. └── ...
复制代码
插件开发
  1. // 插件清单示例 (extension.json){"id":"my-plugin","name":"My Plugin","version":"1.0.0","slots":["channel","tool"],"hooks":["onMessage","onSend"]}
复制代码
技能 (Skills)
  1. skills/
  2. ├── coding-agent/    # 编码技能
  3. ├── canvas/          # Canvas 技能
  4. ├── github/          # GitHub 技能
  5. ├── discord/         # Discord 技能
  6. └── ...
复制代码

安全模型

默认安全策略

配置示例
  1. {
  2.   agents: {
  3.     defaults: {
  4.       sandbox: {
  5.         mode: "non-main",  // 非主会话使用沙箱
  6.         allowlist: ["bash", "read", "write", "sessions_*"],
  7.         denylist: ["browser", "canvas", "nodes"]
  8.       }
  9.     }
  10.   }
  11. }
复制代码
远程访问安全


文件结构概览
  1. openclaw/
  2. ├── src/
  3. │   ├── gateway/          # Gateway 服务器核心
  4. │   ├── agents/           # Agent 运行时
  5. │   ├── channels/         # 消息通道
  6. │   ├── cli/              # CLI 实现
  7. │   ├── config/           # 配置管理
  8. │   ├── plugins/          # 插件系统
  9. │   ├── infra/           # 基础设施
  10. │   └── ...
  11. ├── extensions/          # 扩展模块
  12. ├── skills/              # 技能包
  13. ├── docs/                # 文档
  14. ├── apps/                # 应用程序 (macOS/iOS/Android)
  15. └── openclaw.mjs         # CLI 入口
复制代码

关键文件说明

文件路径功能描述
src/entry.tsNode.js 入口,处理警告过滤和进程重载
src/index.tsCLI 主入口,配置加载和程序初始化
src/gateway/server.impl.tsGateway 服务器核心实现 (~1500+ 行)
src/gateway/client.tsWebSocket 客户端管理
src/gateway/server-chat.ts聊天会话处理
src/channels/dock.ts通道注册表
src/agents/pi-embedded-runner/Pi Agent 嵌入运行时
src/plugins/loader.ts插件加载器
src/plugins/registry.ts插件注册表
openclaw.mjsnpm 包入口脚本

建议关注点

1. Gateway 性能

2. 插件兼容性

3. 安全边界

4. 扩展开发

5. 调试技巧


原文地址:https://blog.csdn.net/caicongyang/article/details/158073760




欢迎光临 AI创想 (https://llms-ai.com/) Powered by Discuz! X3.4