OpenClaw v2026.5.22 发布摘要

OpenClaw v2026.5.22 发布摘要

关键变更

OpenClaw v2026.5.22 引入了一系列深层的技术优化和稳定性改进,旨在降低延迟、改进内存管理,并增强不同操作系统下的系统安全性。

网关性能与延迟

其中最显著的更新之一是 /models 列表查询延迟的大幅降低。通过在启动时预热提供商身份验证状态映射(provider auth-state map),模型列表的单次调用成本已从约 20 秒降至 5 毫秒——实现了 4,100 倍的加速。这确保了 Discord 和 Telegram 中的模型选择器能够保持响应,不再触发交互超时。

进一步的性能提升包括:

  • 插件注册表复用:网关现在在分发期间复用兼容的启动插件注册表,避免了冗余加载并降低了首次分发延迟。
  • 延迟加载:启动期间空闲的插件工作、核心网关方法处理程序以及嵌入式 ACPX 运行时现在采用延迟加载,允许网关健康状态和就绪信号在无需等待未使用的处理程序树的情况下发出。
  • 资源缓存:系统现在缓存插件 SDK 公共表面别名映射(plugin SDK public-surface alias maps),并复用不可变的插件元数据快照,以避免在热路径上重复进行文件系统统计。

智能体与子智能体协作

父智能体与委派工作者之间的协作已得到优化,以实现更好的 Token 效率和可靠性:

  • 引导程序优化:用户现在可以为子智能体配置特定的引导文件列表(例如,使用 SUBAGENTS.md 而不是完整的 SOUL.mdUSER.md 堆栈),从而降低委派任务的 Token 开销。
  • 完成交付:Codex 原生的 spawn_agent 完成结果现在会主动交付回父会话,确保后台工作者结果在 Discord 中可见,而无需用户手动干预。
  • 子智能体移交:原生的子智能体完成移交已得到简化;子智能体现在直接向请求者报告其最新的可见助手结果。

内存与会话管理

为了支持高负载部署,会话存储已重新设计,以降低内存占用:

  • 不可变读取 API:新的快照和条目级读取 API 取代了可变的完整存储克隆,防止了在多会话环境中因重复大型 skillsSnapshot.prompt 字符串而导致的 OOM 错误。
  • 锁定机制强化:会话写入锁现在在获取期间独立执行 maxHoldMs 策略,防止网关在大型会话文件(>300KB)导致写入缓慢时发生冻结。
  • 上下文预算管理/status 命令现在在无法获取最新的提供商使用情况时,会展示估计的上下文预算快照,从而为提示词压力提供更好的可见性。

操作系统特定强化

  • macOS (launchd)reload 移交脚本现在会轮询以检查卸载完成情况,以防止引导过程中出现 Input/output error 竞态条件。此外,通过在报告失败前探测服务状态,现在可以优雅地处理并发引导竞态条件。
  • Windows:Codex 应用服务器现在会验证命令覆盖(command overrides)以防止格式错误的字符串(例如,将可执行文件与参数组合在一起)被视为单个模块路径。Windows 安装程序也已得到强化,以处理 Git 检出失败并能在原始主机上引导便携式 Node.js。

影响

已修复的问题

  • 稳定性:修复了由于工作区引导条目中未定义的文件名导致的引导上下文构建中的严重崩溃问题 (#85523)。
  • 可靠性:解决了 openclaw agent 在 cron 任务下忽略 SIGTERM 导致进程链挂起和内存耗尽的问题 (#71710)。
  • 连接性:修复了一个回环 CDP 问题,其中托管代理阻止了浏览器的 WebSocket 握手,导致代理后的用户无法使用 openclaw browser start (#83255)。
  • 准确性:Anthropic 传输层中存在一个精度损失 bug,即大型整数 ID(例如 Discord snowflakes)在 JSON 解析期间被四舍五入 (#47229)。
  • 用户体验:修复了一个 /verbose on 在普通群组会话中被忽略的 bug,导致工具和进度摘要被隐藏 (#85488)。

集成改进

  • xAI/Grok:增加了对 Grok web_search 的 xAI OAuth 配置文件的支持,并引入了新的 Grok 模型别名。
  • Telegram:通过允许将本地附件路径作为实际媒体发送,改进了媒体交付。
  • Discord:为组件注册表生命周期增加了可配置的 agentComponents.ttlMs,以支持更长时间运行的异步工作流。

升级指南

重大变更与迁移

  • 工作区提供商插件:出于安全强化,除非被显式信任,否则在设置模式下不再自动发现工作区来源的提供商插件。用户必须将这些插件 ID 添加到 config.plugins.allow 列表中以维持现有行为。
  • Codex App-Server (Windows):手动 appServer.command 覆盖设置现在会拒绝组合了可执行文件和参数的单个字符串。用户应移除这些覆盖设置,并改为依赖托管的启动路径或提供有效的可执行文件路径。

Sources