蓝迪哥玩转Ai(5)---openclaw20260324版本+windows框架下的更新使用及分析代码。
蓝迪哥玩转Ai(5)—openclaw20260324版本+windows框架下的更新使用及分析代码。
一.下载最新代码到本地:
https://github.com/openclaw/openclaw
二. 进入到文件夹下运行(参考以前的方法):
openclaw onboard --install-daemon
三. 通过webui界面,让它自己配置飞书,把飞书龙虾机器人的信息告诉它。
四. 折腾2个小时搞定如下:
blog.csdnimg.cn/direct/48930aa0da024d6aaf0271489005e8fe.png#pic_center)


五.知识更新如下:
OpenClaw 代码架构(2026.3.24)与变化分析
OpenClaw 代码架构与变化分析
分析日期:2026年3月28日
基于版本:2026.3.24
项目概况
OpenClaw 是一个多通道 AI 网关,支持可扩展的消息集成。当前版本为 2026.3.24,是一个个人 AI 助手,可以在用户自己的设备上运行,通过 WhatsApp、Telegram、Slack、Discord 等已有渠道与用户交互。
核心架构
- 网关架构 (Gateway Architecture)
• 单网关模型:一个长期运行的 Gateway 控制所有消息表面
• WebSocket 通信:控制平面客户端通过 WebSocket 连接网关(默认 127.0.0.1:18789)
• 节点连接:macOS/iOS/Android/无头设备也通过 WebSocket 连接,声明 role: node
• 画布主机:由网关 HTTP 服务器提供,位于 /openclaw/canvas/ 和 /openclaw/canvas/
- 插件系统架构
这是 OpenClaw 最重要的架构变化,从旧版的核心硬编码集成转向了插件化、能力化的设计:
能力模型 (Capability Model)
OpenClaw 现在使用原生插件模型,每个插件注册一个或多个能力类型:
能力类型 注册方法 示例插件
文本推理 api.registerProvider(…) openai, anthropic
语音 api.registerSpeechProvider(…) elevenlabs, microsoft
媒体理解 api.registerMediaUnderstandingProvider(…) openai, google
图像生成 api.registerImageGenerationProvider(…) openai, google
网络搜索 api.registerWebSearchProvider(…) google
通道/消息 api.registerChannel(…) msteams, matrix
插件所有权模型
• 公司插件:一个插件应该拥有该公司的所有 OpenClaw 表面
• 功能插件:拥有完整功能表面
• 通道应该消费共享核心能力,而不是重新实现提供商行为
架构分层
-
核心能力层:共享编排、策略、回退、配置合并规则、交付语义
-
供应商插件层:供应商特定 API、认证、模型目录、语音合成等
-
通道/功能插件层:消费核心能力并在表面呈现
-
插件加载管道
Plain Text
- 发现候选插件根目录
- 读取原生或兼容包清单
- 拒绝不安全的候选
- 标准化插件配置
- 决定每个候选的启用状态
- 通过 jiti 加载启用的原生模块
- 调用
register(api)钩子并收集注册到插件注册表 - 向命令/运行时表面暴露注册表
最新变化 (2026.3.23-2026.3.24)
重大架构变化
-
插件 SDK 重构
○ 新的公共插件 SDK 表面是 openclaw/plugin-sdk/*
○ openclaw/extension-api 已被移除,没有兼容垫片
○ 捆绑插件必须使用注入的运行时进行主机端操作 -
消息工具发现变更
○ 要求使用 ChannelMessageActionAdapter.describeMessageTool(…) 进行共享 message 工具发现
○ 移除了旧的 listActions, getCapabilities, getToolSchema 适配器方法 -
Matrix 插件重写
○ 添加了基于官方 matrix-js-sdk 的新 Matrix 插件
○ 需要从之前的公共 Matrix 插件迁移
使用上的变化
- CLI 命令变化
• openclaw plugins install 现在优先 ClawHub,然后 npm
• 增加了 openclaw skills search|install|update 流程
• 增加了 openclaw plugins install clawhub: 支持
- 配置变化
• 移除了遗留的 CLAWDBOT_* 和 MOLTBOT_* 环境变量兼容性名称
• 移除了遗留的 .moltbot 状态目录和 moltbot.json 自动检测/迁移回退
- 工具变化
• 图像生成标准化到核心 image_generate 工具
• 移除了捆绑的 nano-banana-pro 技能包装器
• 使用 agents.defaults.imageGenerationModel 进行内置图像生成
- 安全强化
• 执行环境沙箱:阻止构建工具 JVM 注入
• 语音呼叫 webhooks:在读取正文前拒绝缺少的提供商签名头
• 执行批准:将 time 视为透明调度包装器
新增功能
- ClawHub 集成
• 原生 openclaw skills 命令支持 ClawHub
• 网关技能安装/更新支持 ClawHub 支持的请求
• macOS 和 XDG 认证路径支持
- 市场插件支持
• 添加了 Claude 市场注册解析
• plugin@marketplace 安装、市场列表和更新支持
• 捆绑包技能发现/安装支持
- 多代理路由
• 新增 /btw 侧边问题命令,用于快速无工具回答
• 支持配置驱动的多代理路由
• 委托代理架构支持组织部署
- 沙箱运行时
• 添加了可插拔沙箱后端
• 添加了核心 SSH 沙箱后端
• 沙箱列表/重新创建/修剪后端感知
目录结构分析
Plain Text
openclaw/
├── src/ # 主要源代码
│ ├── cli/ # CLI 实现
│ ├── commands/ # 命令处理
│ ├── gateway/ # 网关实现
│ ├── plugins/ # 插件系统核心
│ ├── plugin-sdk/ # 插件 SDK
│ ├── agents/ # 代理逻辑
│ ├── channels/ # 通道实现
│ └── infra/ # 基础设施
├── extensions/ # 扩展插件
├── apps/ # 移动端应用
├── docs/ # 文档
├── skills/ # 技能定义
└── ui/ # 控制界面
技术栈变化
依赖更新
• Node.js 要求:Node 24(推荐)或 Node 22.16+
• 使用 TypeScript 5.9.3
• 使用 pnpm 作为包管理器
• 使用 Vitest 进行测试
构建系统
• 使用 tsdown 进行构建
• 使用 oxlint 和 oxfmt 进行代码检查和格式化
• 支持 Bun 运行 TypeScript 直接执行
使用建议
对于新用户
- 推荐使用 openclaw onboard --install-daemon 进行设置
- 从插件化架构开始,优先使用能力注册而不是旧钩子
- 利用 ClawHub 技能生态系统
对于现有用户迁移
- 运行 openclaw doctor --fix 修复配置
- 更新插件使用新的 SDK 路径
- 迁移到新的图像生成配置
- 更新环境变量为 OPENCLAW_* 前缀
对于开发者
- 使用新的插件能力模型而不是旧钩子
- 优先使用 openclaw/plugin-sdk/* 子路径而不是根导入
- 遵循公司插件所有权模型
- 使用新的消息工具发现 API
总结
OpenClaw 的最新版本(2026.3.24)展示了从硬编码集成向插件化、能力化架构的重大转变。主要特点包括:
架构创新
- 插件能力模型:统一的能力注册系统,支持文本、语音、媒体、图像、搜索等
- 公司插件所有权:一个公司/供应商的所有功能集中在一个插件中
- 核心能力层:共享编排和策略,避免供应商特定代码进入核心
使用体验改进
- ClawHub 集成:统一的技能发现和安装
- 市场插件支持:扩展的生态系统
- 多代理路由:支持组织级部署
- 安全强化:沙箱、执行批准、webhook 安全
开发者体验
- 统一的 SDK:openclaw/plugin-sdk/* 子路径
- 类型安全:TypeScript 全面覆盖
- 测试友好:Vitest 测试框架
- 文档完善:详细的插件开发指南
这个架构变化使 OpenClaw 更加模块化、可扩展,同时保持了向后兼容性,为未来的功能扩展奠定了坚实基础。
让我查看源码的版本信息。
根据 package.json 文件,这个源码的版本是 2026.3.24。
版本详细信息:
- 主版本号:2026.3.24 - 这是一个基于日期的版本号,表示 2026年3月24日发布的版本
- Node.js 要求:>=22.16.0(推荐 Node 24)
- 包管理器:pnpm@10.32.1
- TypeScript 版本:5.9.3
- 主要依赖:
○ @agentclientprotocol/sdk: 0.16.1
○ @modelcontextprotocol/sdk: 1.27.1
○ hono: 4.12.8
○ zod: 4.3.6
○ ws: 8.20.0
版本特点:
这个版本(2026.3.24)是 OpenClaw 的最新稳定版本,包含了:
• 插件 SDK 重构的重大变化
• 新增的 ClawHub 集成支持
• 市场插件支持
• 安全强化功能
• 从旧版 moltbot 迁移的完整支持
这个版本号采用日期格式(YYYY.M.DD),与常见的语义版本号(如 1.0.0)不同,表明这是一个持续交付的项目,版本号反映了发布日期。
让我仔细查看 2026.3.24 版本中的安全强化具体内容。
OpenClaw 2026.3.24 版本安全强化总结
一、执行环境安全强化
-
环境变量沙箱保护
• 阻止构建工具 JVM 注入:屏蔽 MAVEN_OPTS、SBT_OPTS、GRADLE_OPTS、ANT_OPTS 等环境变量
• 防止 glibc 调优利用:阻止 GLIBC_TUNABLES 环境变量
• 阻止 .NET 依赖解析劫持:屏蔽 DOTNET_ADDITIONAL_DEPS 环境变量
• 限制 Gradle 初始化脚本重定向:限制 GRADLE_USER_HOME 为仅覆盖模式 -
执行批准安全
• 透明调度包装器处理:将 time 命令视为透明包装器,在允许列表评估中绑定内部可执行文件而非包装器路径
• shell 包装器位置参数匹配:拒绝单引号的 0/0/0/n 标记,禁止换行分隔的 exec,但仍接受 exec – 载体形式
二、Webhook 安全强化
- 语音呼叫 Webhook 安全
• 签名头验证前置:在读取请求体之前拒绝缺少提供商签名头
• 预认证请求限制:
○ 降低预认证请求体预算至 64 KB / 5秒
○ 限制每个源 IP 的并发预认证请求
○ 防止未认证调用者强制使用旧的 1 MB / 30秒 缓冲路径
三、Windows 平台安全强化
- 媒体加载安全
• 远程文件 URL 阻止:在核心媒体加载和相邻提示/沙箱附件接缝中阻止远程主机 file:// URL 和 UNC/网络路径
• 防止 SMB 凭据握手:防止结构化本地媒体输入在 Windows 上触发出站 SMB 凭据握手
四、网络发现安全
- 服务发现安全
• Bonjour/DNS-SD 失败关闭:在 CLI 发现、设置和 gateway status 中对未解析的服务端点执行失败关闭
• 防止 TXT-only 提示:防止仅 TXT 记录提示误导路由或 SSH 自动目标选择
五、认证与配对安全
-
iOS 配对安全
• 设置代码绑定:将 iOS 设置代码绑定到预期的节点配置文件
• 范围限制:拒绝在首次使用引导中请求更广泛角色或范围的请求 -
网关认证
• 画布路由认证:要求画布路由进行认证
• 管理员范围要求:重置代理会话需要管理员范围
六、技能安全
- 技能元数据验证
• 正则表达式白名单:针对每个包管理器验证技能安装程序元数据
• 终端输出净化:净化技能元数据用于终端输出
• URL 协议白名单:在 markdown 预览和技能主页链接中添加 URL 协议白名单
• 非捆绑技能警告:对非捆绑技能安装源发出警告
• 不安全文件链接移除:移除不安全的 file:// 工作空间链接
七、Nostr 协议安全
- 消息安全
• 解密前策略执行:在解密前强制执行入站 DM 策略
• 标准回复管道:通过标准回复管道路由 Nostr DM
• 预加密防护:添加预加密速率和大小防护,防止未知发送者绕过配对或强制无限制的加密工作
八、内容安全策略(CSP)
- 控制 UI CSP
• SHA-256 哈希计算:为内联
安全强化特点
-
深度防御
• 从环境变量到网络通信的多层次防护
• 执行路径、网络请求、文件访问的全面保护 -
失败关闭原则
• 在不确定的情况下默认拒绝访问
• 防止未认证或未授权操作 -
攻击面减少
• 移除遗留的安全隐患(如 file:// 链接)
• 限制可能被滥用的功能 -
输入验证
• 严格的输入验证和净化
• 协议和格式白名单
这些安全强化措施显示了 OpenClaw 对安全性的高度重视,特别是在处理用户输入、执行环境隔离和网络通信安全方面。通过这些措施,OpenClaw 能够更好地保护用户数据和系统资源,防止潜在的安全威胁。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)