← 返回更新日志

OpenClaw v2026.5.31-beta.1 预发布

2026-05-31 · GitHub 原文
## 2026.5.31 ### 亮点 - 基于代理和 CLI 的运行时现在能更干净地从中断的工具调用、过期的会话绑定、压缩交接以及媒体投递重试中恢复。(#88129, #88136, #88141, #88162, #88182) - 频道和移动端投递在 Telegram、WhatsApp、iMessage、Slack、Discord、Microsoft Teams、Google Chat、Google Meet 以及 iOS 实时语音中更加稳定。(#88096, #88105, #88183, #88231) - 提供商和插件请求现在绑定了更多定时器、重试机制、OAuth/设备码生命周期、媒体下载、本地服务探测以及生成内容轮询路径,防止它们挂起运行。 - 技能、会话元数据、网关运行时状态、插件元数据和存储写入在热路径上减少了重复工作,同时保持了配置和分发行为的稳定性。 - 工作面板、SecretRef 插件清单、托管 iOS 推送中继以及外部 Copilot/Tokenjuice 打包提供了更广泛的编排、集成和插件分发面。(#82326, #87469, #87796, #88107, #88117) - 发布、CI、Docker、E2E 和诊断通道现在限制了更多日志、响应体、就绪探测、工件检查和状态轮询,使得失败报告有界证据而不是停滞。 ### 变更 - 文档:新增专门的技能工坊指南,涵盖受管技能创建、可审核提案、CLI、网关、代理工具行为、审批策略、支持文件和恢复。感谢 @shakkernerd。 - 技能:让 `skill_workshop` 代理工具能够通过受控审核流程应用、拒绝和隔离显式提案。感谢 @shakkernerd。 - 技能:让提案能够在标准技能文件夹下携带已批准的支持文件,并具备扫描器、哈希和回滚保护。感谢 @shakkernerd。 - 技能:让待处理提案在批准前可以进行就地修订,并附带带版本和日期的提案前言。感谢 @shakkernerd。 - 技能:新增技能工坊,支持待处理提案、CLI/网关审核操作、回滚元数据以及 `skill_workshop` 代理工具。感谢 @shakkernerd。 - 插件:将 Tokenjuice 外部化为官方 `@openclaw/tokenjuice` 插件,并包含 npm 和 ClawHub 发布元数据。 - 插件:将 GitHub Copilot 代理运行时外部化为官方 `@openclaw/copilot` 插件,并包含 npm 和 ClawHub 发布元数据。 - iOS:新增托管推送中继默认值、实时语音回放以及受保护的 WebSocket ping 路径,以实现更可靠的移动会话。(#88096, #88105, #88231) - 工作面板:新增编排原语和代理协调工具,用于多代理规划和运行跟踪。(#87469) - 代码模式:新增内部命名空间,用于作用域代理/全局会话以及精确命名空间工具分发。(#88043) - 控制 UI:新增“梦境”标签页的代理选择器,并将所选代理传播到梦境状态、日志和日志操作中。(#78748) 感谢 @stevenepalmer。 - 插件:新增 SecretRef 提供商集成清单契约,并提取共享的 LLM 核心包供提供商/插件重用。(#82326, #88117) - 技能:新增核心技能索引,并集中化技能运行时加载、状态、过滤和提示格式化。 ### 修复 - 代理/媒体:确保异步图像、音乐和视频生成的启动不会终止 Codex 回合,以便混合请求可以在后台渲染媒体时继续执行摘要或其他工作。 - 代理/Codex:确保公共 OpenAI API 密钥配置文件不被视为原生 Codex 应用服务器身份验证,同时保留持久化的 Codex OAuth 会话。 - 控制 UI:确保折叠的工具卡片显示工具名称和操作,而不是通用输出文本。感谢 @shakkernerd。 - 代理/Codex:当 `skill_workshop` 可用时,在 Codex 应用服务器提示中显示技能工坊指南。感谢 @shakkernerd。 - CLI:将 `plugins list --json` 限制在快照路径上,以便插件扫描避免加载完整的运行时状态图。 - 插件:将 PixVerse 外部插件的 ClawHub 元数据显式化,并将其排除在打包的分发版本之外。 - Cron:确保 SQLite cron 迁移与旧版运行日志表、归档作业存储、诊断 cron 名称以及旧版一次性运行后删除行为兼容。(#88285) - 提供商:限制来自 OpenAI、Runway、xAI、MiniMax、BytePlus、DashScope 兼容、FAL、OpenRouter、Google、Vydra 和 Comfy 提供商的生成媒体下载。 - 提供商:在创建中止信号之前,限制 GitHub Copilot OAuth 请求超时。 - Cron:在遇到临时模型速率限制后,重试定期作业,而不是等待下一个预定槽位。 - 代理/Codex:在清理期间保持活动会话锁定,恢复中断的 CLI 工具转录,保留 Codex 身份验证和压缩会话身份,清除孤立的工具状态,限制应用服务器空闲定时器,并确保媒体完成投递可重试。(#88129, #88136, #88141, #88162, #88182) - 聊天/UI:将网关聊天失败显示为控制 UI 中可见的助手消息,而不是仅设置不可见的错误状态。 - 频道:限制 Telegram、Discord、WhatsApp、Signal、飞书、Google Chat、Microsoft Teams、QQBot、Nostr、Zalo、Zalouser 和 Nextcloud 风格请求/重试定时器;保留 SMS 审批回复路由;并在 408 超时时重试 WhatsApp QR 登录。(#88183) - 安全/配置解析:拒绝不安全的 OAuth/令牌生命周期、重试后延迟、入站时间戳、响应体大小、命令超时配置、沙箱观察者令牌 TTL 以及在关闭后的网关 WebSocket 调用。 - 提供商/媒体:限制跨托管和本地提供商的本地服务、模型、使用量、队列、生成媒体、TTS、音乐、工作流轮询以及提供商 OAuth 请求定时器。 - 发布/CI/E2E:限制发布候选版本读取、beta 烟雾 REST 调用、变更日志恢复、全能测试和捆绑插件就绪探测、秘密提供商探测、Vitest 路由以及主线测试不稳定。(#88127, #88137, #88155, #88160) - 发布/CI/E2E:通过仓库 pnpm 运行器运行秘密提供商集成验证,以便原生 macOS 和 Windows 验证使用水合包管理器 shim。 - 发布/CI/E2E:通过仓库 pnpm 运行器运行 Telegram 桌面验证网关,以便原生 macOS 验证使用水合包管理器 shim。 - 文档/CI:通过仓库 pnpm 运行器运行 Mintlify 锚点检查,以便在 pnpm 仅可通过水合包管理器 shim 使用时,文档链接验证正常工作。 - 代理:确保已配置的备用模型元数据具有正确类型,以便提供商参数、上下文令牌上限和媒体输入限制不会破坏切换网关的类型检查。 - 代理:在验证之前接受隐藏的 `sessions_send` 体别名,同时保持面向模型的 `message` 模式为规范格式。(#88229) 感谢 @zhangguiping-xydt。 - CI/Crabbox:将默认运行器容量限制为仅现货且与提供商无关,以便 OpenClaw 远程验证不会静默回退到按需租用或过时的 AWS 区域提示。 - CI/Crabbox:将 Crabbox 包装器和 Testbox 工作流编辑路由到其回归测试,以便更改测试门不会静默运行零个规范。 - CI/工作流:将工作流健康助手编辑路由到其保护测试,并涵盖复合操作输入插值检查。 - CI/工具:将 CI 范围、依赖项、变更日志和文档助手编辑路由到其所有者测试,而不是静默跳过更改测试覆盖。 - CI/工具:将包、发布和安装助手编辑路由到其所有者测试,以便更改测试门涵盖发布和安装器脚本更改。 - CI/工具:将共享脚本库编辑通过其所有者测试,以便锁定、进程、安全和扫描助手不会跳过更改测试覆盖。 - CI/工具:一旦更改的差异已经需要广泛回退,跳过昂贵的导入图扫描,从而保持本地更改测试规划快速,同时仍然收集显式所有者测试。 - CI/工具:当匹配 `test/scripts` 或 `src/scripts` 覆盖已存在时,将脚本编辑路由到常规所有者测试。 - CI/工具:在内存 FD 重现脚本中尊重选项终止符,以便后续参数不会被重新解析。 - 发布/CI/E2E:断言插件生命周期运行时 inspect 输出,而不仅仅是捕获它。 - 发布/CI/E2E:使网关网络能够证明宣传的健康 RPC,并在不消耗完整开放超时的情况下重试早期 WebSocket 关闭。 - 发布/CI/E2E:在发布、Parallels 烟雾、插件行和扩展内存脚本中尊重选项终止符。 - 发布/CI/E2E:当请求的套件摘要缺失或无效时,使插件网关行 QA 块失败。 - 性能:使用生成的插件资产预构建 QA 运行时探测,但不包含 CLI 启动元数据。 - 性能:跳过仅运行时的 CLI 启动和网关 watch 构建配置的声明打包。 - 性能:重用已准备的提供商句柄、严格工具模式、网关运行时元数据、会话维护配置、插件元数据、捆绑技能白名单、包本地插件工件、单条目存储写入以及已验证/序列化的会话提示 blob。