---
title: "v2026.8.2"
summary: "除了工作之外,还有 Linux 桌面伴侣、后台会话、无需运行网关的浏览器控制、四种新的 Control UI 外观以及集中回复、语音、更新和恢复修复。"
description: "详细的 OpenClaw v2026.8.2 发行说明,涵盖对话、Control UI、代理工作、语音和媒体、通道、浏览器和云工作、设置、模型、插件、更新、恢复和网关操作。"
keywords:
- "OpenClaw"
- "v2026.8.2"
- "发行说明"
---
v2026.8.2 在 Control UI 上添加了一个“主页”按钮,可在您正在处理的任何内容旁边打开您的个人主页代理,而不是让您离开它以开始另一个对话。它还带来了 Linux 桌面伴侣、无需切换页面即可启动的后台会话、无需运行网关即可保持可用的浏览器控制、Control UI 的四种新外观,以及针对回复、语音、更新和恢复的长尾修复。
**发布规模:** 784 个拉取请求、10 个直接提交和 134 个贡献者。
## 安装和入门
安装和首次运行设置现在可以更好地保留人们已经做出的系统和模型选择。 Linux 和 macOS 恢复路径故障更加清晰,引导式设置通过重新连接保留选定的代理和模型,并且无需将人员发送到终端即可查看、安装和验证所需的运行时插件。
现在安装将遵循每个系统实际开始的路径。 Fedora 和其他受影响的基于 RPM- 的 Linux 系统可以保留其发行版拥有的 Node 软件包,而 OpenClaw 选择满足其 SQLite 要求的托管运行时,并且 shell 安装程序再次暴露需要从中恢复的 npm 错误支持过时的启动器和安装目录。在 macOS 上,安装和重新启动在重定位一次失败后停止,并指向应用程序副本而不是循环。 Linux 网关安装在写入 root 拥有的配置或凭据之前还会拒绝不安全的 sudo 到 root 设置,而无需更改真正的 root 安装或普通 sudo 生命周期命令。
更新使更多的工作安装保持完整。 pnpm-owned 安装在更新程序交接期间保留在 pnpm 中,中断的软件包生命周期工作可以在新软件包启动之前完成,并且强化的 npm 主机可以在不启用不相关软件包脚本的情况下进行更新。 Doctor 现在会在考虑旧的最后一次正确的副本之前迁移可读的活动配置,从而在仍然需要回退恢复时保留被拒绝的字节。 ClawDock 帮助程序已停用,因此现有用户需要自行删除帮助程序源代码行,并移至记录的 Docker Compose 和 OpenClaw CLI 命令,并保留其部署状态。
来源和完整变更列表
**改进**
- Made Windows 工作线程和调度检查可以容忍缓慢的 PowerShell 启动,同时保留有界身份检查 ([#124293](https://github.com/openclaw/openclaw/pull/124293))。感谢 @Chinmayrawat15 和 @obviyus.
- 发布了用于安装验证和捆绑插件清理的可读包清单元数据([#133549](https://github.com/openclaw/openclaw/pull/133549))。感谢 @RomneyDa.
- 防止安装程序试运行下载或准备可选的 Gum 接口 ([#134388](https://github.com/openclaw/openclaw/pull/134388))。感谢 @ly85206559.
**错误修复**
- Windows Canvas 中保留的引用和转义参数通过 pnpm 命令垫片 ([#133395](https://github.com/openclaw/openclaw/pull/133395)) 构建。感谢 @ly85206559.
- Docker 中的自定义发布主机端口撰写仪表板和经过身份验证的运行状况命令 ([#133504](https://github.com/openclaw/openclaw/pull/133504))
- 阐明了已安装的 CLI 和可选后台网关服务 ([#133530](https://github.com/openclaw/openclaw/pull/133530)) 之间的区别。感谢 @romneyda.
- 已退役的 ClawDock 帮助程序,转而支持维护的 Docker Compose 和 CLI 工作流程,并为现有用户提供手动迁移 ([#133594](https://github.com/openclaw/openclaw/pull/133594))
- 安装 Windows 补全 ([#133729](https://github.com/openclaw/openclaw/pull/133729)) 时保留 PowerShell 配置文件编码。感谢 @ly85206559.
- 保留了 Unix npm 全局路径并显示安装程序完成失败 ([#133869](https://github.com/openclaw/openclaw/pull/133869))。感谢 @steipete.
- 在打包启动之前完成了中断的 pnpm 11 包生命周期工作 ([#133908](https://github.com/openclaw/openclaw/pull/133908))。感谢 @obviyus.
- 在更改根文件会话存储所有权时保留有效的旧代理名册 ([#133920](https://github.com/openclaw/openclaw/pull/133920))
- 在考虑最后一次已知良好恢复之前迁移可读活动配置([#134025](https://github.com/openclaw/openclaw/pull/134025))。感谢 @obviyus 和 @stuart-minion-ai.
- 已停止 macOS 一次重定位失败后安装并重新启动 ([#134074](https://github.com/openclaw/openclaw/pull/134074))。感谢 @VACInc 和 @Sedrak-Hovhannisyan.
- 通过更新程序重生保留了 pnpm 所有权,并在突变之前拒绝不明确的包所有权 ([#134075](https://github.com/openclaw/openclaw/pull/134075))。感谢 @obviyus 和 @YogevKr.
- 在受影响的 RPM Linux 系统上保留发行版拥有的 Node 软件包,同时选择 SQLite-safe 运行时 ([#134166](https://github.com/openclaw/openclaw/pull/134166))。感谢 @sallyom 和 @beedell-roke.
- 在启用生命周期检查的情况下,在 Docker 源和 cleanup-smoke 构建中完成依赖项安装 ([#134231](https://github.com/openclaw/openclaw/pull/134231))。感谢 @steipete.
- 恢复了可操作的 npm 错误并支持 shell 安装程序中的过时文件恢复 ([#134236](https://github.com/openclaw/openclaw/pull/134236))。感谢 @SunnyShu0925 和 @mohamedelrefaiy.
- 已识别的分阶段无元数据全局 npm 以更新状态安装 ([#134475](https://github.com/openclaw/openclaw/pull/134475))。感谢 @Patrick-Erichsen 和 @vyctorbrzezowski.
- 仅从经过验证的传统 OpenClaw- 管理的 Linux 服务单元 ([#134482](https://github.com/openclaw/openclaw/pull/134482)) 中删除了过时版本标记。感谢 @Patrick-Erichsen 和 @vyctorbrzezowski.
**安全与信任边界**
- 删除或处理显式私有 macOS 诊断值,同时保持公共和未注释字段不变 ([#133739](https://github.com/openclaw/openclaw/pull/133739))。感谢 @steipete.
- 在写入 root 拥有的状态之前拒绝不安全的 Linux sudo 到 root 用户管理器安装 ([#134084](https://github.com/openclaw/openclaw/pull/134084))。感谢 @obviyus 和 @itanyplus.
- 允许在强化的 npm 主机上执行确切已知的 OpenClaw 生命周期防护,同时继续拒绝不相关的包脚本和意外内容 ([#134193](https://github.com/openclaw/openclaw/pull/134193))。感谢@obviyus和记者@botatdovly.
**文档**
- 解释了 Android 源和分支构建的签名身份,而不更改构建行为 ([#124286](https://github.com/openclaw/openclaw/pull/124286))。感谢 @santhiprakash 和 @minoosara5426-prog.
- 指示 Docker 部署挂载整个状态目录,以便替换保存到达正在运行的容器 ([#124688](https://github.com/openclaw/openclaw/pull/124688))。感谢 @ericcaiwx-star.
- 区别 OpenClaw 配置替换文字 dotenv 值 ([#127524](https://github.com/openclaw/openclaw/pull/127524))。感谢 @dkling-it.
- 记录了现有的 Node 服务 `--no-tls` 安装选项 ([#130258](https://github.com/openclaw/openclaw/pull/130258))。感谢 @qingminglong.
- 记录了 macOS 安装应用程序共享的启用和禁用标志 ([#131684](https://github.com/openclaw/openclaw/pull/131684))。感谢 @qingminglong.
首次运行设置现在等待刚刚配置的内容变为现实。模型设置通过重新连接保留所选模型,保持挂起状态直到保存的设置处于活动状态,并在正在运行的网关尚未准备就绪时显示实际恢复原因。引导式 CLI 设置仅在步骤实际属于一个步骤时才请求代理,并在流程的其余部分中保留该选择,并且允许人们在不需要时添加代理而无需复制凭据。
当模型需要运行时插件时,macOS 入门和 Control UI 可以显示插件来自何处以及它请求哪些功能,请求明确批准,安装它,并在同一流程中验证模型。拒绝或取消会使配置的模型保持不变并停止尝试。当原始回调被证明未发送时,Mac 用户还可以在同路由重新连接后完成 ChatGPT 登录、取消停滞的提供商登录或退出登录,而没有后期结果接管替换尝试。
来源和完整变更列表
**改进**
- 通过指导设置保留了一项明确的代理选择,并使凭证复制成为可选([#133983](https://github.com/openclaw/openclaw/pull/133983))。感谢 @msipes 和 @JunfXiao.
**错误修复**
- 在创建默认代理名册 ([#130370](https://github.com/openclaw/openclaw/pull/130370)) 后,避免拒绝有效的首次运行推理路由。感谢 @RomneyDa.
- 使首次运行的模型设置保持挂起状态,直到保存的设置处于活动状态 ([#133434](https://github.com/openclaw/openclaw/pull/133434))
- 停止缺少可选的 SecretRef 环境变量而产生误导性修复警告 ([#133582](https://github.com/openclaw/openclaw/pull/133582))。感谢 @pengzh1、@vincentkoc 和 @jodok.
- 识别已配置的文件支持和托管 SecretRef API 密钥,无需解析或公开它们 ([#133596](https://github.com/openclaw/openclaw/pull/133596))。感谢 @mateu 和 @Patrick-Erichsen.
- 在设置就绪检查期间需要真实网关协议证据 ([#133989](https://github.com/openclaw/openclaw/pull/133989))
- 已完成 macOS ChatGPT 经过验证的未发送回调和同路由网关重新连接后登录 ([#134268](https://github.com/openclaw/openclaw/pull/134268))。感谢 @obviyus 和 @Sedrak-Hovhannisyan.
- 允许取消停止的 macOS 提供商登录,而不会用较晚的结果替换新的尝试 ([#134380](https://github.com/openclaw/openclaw/pull/134380))。感谢 @VACInc 和 @Sedrak-Hovhannisyan.
- 跨配置的本机区域设置恢复了两条 macOS 入门消息 ([#134492](https://github.com/openclaw/openclaw/pull/134492))
**安全与信任边界**
- 在安装所需的运行时插件之前恢复了显式应用内功能审查([#134101](https://github.com/openclaw/openclaw/pull/134101))。感谢 @VACInc、@coygeek、@hannesrudolph 和 @Sedrak-Hovhannisyan.
**文档**
- 将不支持的自定义主会话密钥指南替换为实际主会话选择 ([#133804](https://github.com/openclaw/openclaw/pull/133804))。感谢 @senorsen.
## 新网UI
当同时进行多个对话时,[Control UI](/web/control-ui) 更易于使用。新会话可以在后台启动,主页可以保留在屏幕上已有的工作旁边,消息和草稿更可靠地保持其位置,较长的历史记录可以减少重复的工作,四个可选主题使工作区更容易创建您自己的工作区。
现在,当您停留在设置页面并准备其他内容时,新会话可以在后台开始,然后在准备就绪时从其完成通知中打开。普通文件夹和新存储库仍然可用,而无需假装它们支持工作树,项目和签出选择可以在临时发现失败中幸存下来,并且启动进度不断前进,而不是隐藏更新的工具或批准活动。从“新会话”的非焦点部分键入也会将第一个可打印字符发送给作曲家。
在 iPhone 上,当连接的网关和操作员访问支持时,模型、工作量、权限、上下文、附件、技能、连接器和工具控件现在位于 Composer 中。排队的消息与发送前检查的设置保持绑定,旧的或陈旧的队列条目停止检查,Control UI 提示通过准备、完成和重新加载保持一个可见的标识。选择文本可以打开可编辑的旁聊草稿,而无需将旁白问题添加到主要历史记录中。
来源和完整变更列表
**限制和兼容性说明**
- 后台启动适用于新会话,而不是已经处于活动状态的聊天会话。
- 按下已选择模型的号码仍然可以捕获为消息文本。
- iPhone 编写器控件需要连接的网关和运营商的访问范围报告的支持,而陈旧或较旧的排队消息需要在重试之前进行审查。
- A 单独的硬刷新图像水合观察仍未解决,并且非常短的 Home Dock 提示的标题可能仍受其跟踪工作上下文的影响。
**改进**
- 在后台启动新会话草稿 [#128050](https://github.com/openclaw/openclaw/pull/128050) — 感谢 [@Takhoffman](https://github.com/Takhoffman)
- 将模型、权限、上下文、附件、技能、连接器和工具控件引入 iOS 编辑器 [#132683](https://github.com/openclaw/openclaw/pull/132683) — 作者:[@Solvely-Colin](https://github.com/Solvely-Colin)
- 在一个作曲家界面中创建和编辑目标 [#132787](https://github.com/openclaw/openclaw/pull/132787) — 作者:[@vyctorbrzezowski](https://github.com/vyctorbrzezowski)
- 统一浅色主题任务、队列、目标和作曲家界面 [#132799](https://github.com/openclaw/openclaw/pull/132799) — 作者:[@vyctorbrzezowski](https://github.com/vyctorbrzezowski)
- 区分会话启动和确认并发等待 [#133470](https://github.com/openclaw/openclaw/pull/133470) — by [@steipete](https://github.com/steipete)
- 标准化只读和完全访问权限标签[#133657](https://github.com/openclaw/openclaw/pull/133657) — 作者:[@steipete](https://github.com/steipete)
- 在本机 Apple 对象负载中保留数字和布尔值 [#133707](https://github.com/openclaw/openclaw/pull/133707) — by [@steipete](https://github.com/steipete)
- 通过临时发现失败重新使用编辑的新会话工作区选择 [#133744](https://github.com/openclaw/openclaw/pull/133744) — 作者:[@steipete](https://github.com/steipete)
- 让选定的聊天文本作为可编辑的旁聊问题打开 [#134596](https://github.com/openclaw/openclaw/pull/134596) — 作者:[@Patrick-Erichsen](https://github.com/Patrick-Erichsen)
**错误修复**
- 保留在未聚焦的新会话页面中输入的第一个可打印字符 [#132773](https://github.com/openclaw/openclaw/pull/132773) — 作者:[@vyctorbrzezowski](https://github.com/vyctorbrzezowski)
- 在 Control UI 长对话中保持打字响应 [#133465](https://github.com/openclaw/openclaw/pull/133465) — 感谢 [@VACInc](https://github.com/VACInc)
- 通过工作树重试保留生成的标题和单调进度 [#133489](https://github.com/openclaw/openclaw/pull/133489) — 作者:[@steipete](https://github.com/steipete)
- 通过完成并重新加载 [#133542](https://github.com/openclaw/openclaw/pull/133542) 将排队的提示保持为一个气泡 — by [@steipete](https://github.com/steipete)
- 保持普通文件夹和新存储库在新会话中可用 [#133664](https://github.com/openclaw/openclaw/pull/133664) — 作者:[@steipete](https://github.com/steipete)
- 在存储库发现后恢复有效的新会话放置首选项 [#133705](https://github.com/openclaw/openclaw/pull/133705) — 作者:[@steipete](https://github.com/steipete)
- Control UI 登录解决 [#133817](https://github.com/openclaw/openclaw/pull/133817) 后恢复注册项目 — by [@steipete](https://github.com/steipete)
- 在工作区准备完成时保持第一个图像提示可见 [#133861](https://github.com/openclaw/openclaw/pull/133861) — 作者:[@steipete](https://github.com/steipete)
- 在命名对话时,将用户的 Home Dock 请求放在生成的上下文之前 [#134591](https://github.com/openclaw/openclaw/pull/134591) — by [@steipete](https://github.com/steipete)
- 将加载模型选择器与作曲家控件 [#134594](https://github.com/openclaw/openclaw/pull/134594) 分组 — by [@Patrick-Erichsen](https://github.com/Patrick-Erichsen)
**文档和本地化**
- 本地化会话权限指导和更改反馈 [#133708](https://github.com/openclaw/openclaw/pull/133708)
- 在支持的 Control UI 区域设置中本地化助手侧边栏控件 [#134301](https://github.com/openclaw/openclaw/pull/134301)
- 在支持的 Control UI 语言环境中刷新待处理消息和导航措辞 [#134567](https://github.com/openclaw/openclaw/pull/134567)
排队、中断和取消的输入现在返回到被接受的点,而不是下降到较新的回复以下,并提示 Control UI 已经通过刷新、分页和重新安装完成了停留。跨会话消息显示它们来自哪个对话并链接回该对话,而长时间对话耗尽空间后的恢复可以在被取代的工作之前保留最新的活动文本请求。
围绕这些切换的命令界面也更简单。如果没有兼容性别名,手动对接和焦点命令将消失,并且 `/session unbind` 现在是分离绑定对话而不结束其代理会话的受支持方法。
来源和完整变更列表
**限制和兼容性说明**
- 恢复修复涵盖了带有文本的活动请求,而较新的仅图像请求仍然可以让步给较旧的文本任务。
- 退役提示显示修复不会建立重复模型执行、额外成本或永久转录损坏。
- H隐藏的导出记录在“全部”下以及原始 HTML 和 JSONL 存档中仍然可用,并且单独的通道持久性和跨通道绑定 - ID 问题仍然在这些修复之外。
- 同代理转发消息头像行为属于不同部分,此处不声明。
**改进**
- 将跨会话消息显示为链接的归因对话气泡 [#132054](https://github.com/openclaw/openclaw/pull/132054) — 作者:[@steipete](https://github.com/steipete)
**错误修复**
- 在上下文溢出恢复期间,在被取代的工作之前保留最新的活动文本请求 [#123737](https://github.com/openclaw/openclaw/pull/123737) — 感谢 [@wangyan2026](https://github.com/wangyan2026)、[@obviyus](https://github.com/obviyus) 和[@andersonjeccel](https://github.com/andersonjeccel)
- 停止过大的保留转录本每次重复无效的字节压缩 [#127110](https://github.com/openclaw/openclaw/pull/127110) — 感谢 [@yu-xin-c](https://github.com/yu-xin-c)、[@obviyus](https://github.com/obviyus) 和[@fede-kamel](https://github.com/fede-kamel)
- 保留插件拥有的绑定和有效的子代理任务控制 [#127147](https://github.com/openclaw/openclaw/pull/127147) — 作者:[@steipete](https://github.com/steipete)
- 用 `/session unbind` [#133153](https://github.com/openclaw/openclaw/pull/133153) 替换手动对接和聚焦命令 — by [@steipete](https://github.com/steipete)
- 在任一转录本更改之前拒绝冲突的压缩身份 [#133678](https://github.com/openclaw/openclaw/pull/133678) — 作者:[@steipete](https://github.com/steipete)
- 在历史记录刷新后保持已接受和停用的提示不再出现 [#134059](https://github.com/openclaw/openclaw/pull/134059) — 作者:[@steipete](https://github.com/steipete)
- 将排队、中断和取消的输入恢复到其接受的时间线位置 [#134261](https://github.com/openclaw/openclaw/pull/134261) — 感谢 [@VACInc](https://github.com/VACInc)
- 保留普通用户 HTML 导出视图 [#134561](https://github.com/openclaw/openclaw/pull/134561) 的隐藏连续输入 — 作者:[@steipete](https://github.com/steipete)
会话菜单现在将日常组织、外观、复制、导航和破坏性操作保留在更清晰的组中,图标和颜色编辑在一处,并且无需在界面中搜索即可使用支持的目标。空组标题可以在本地隐藏,而不会丢失其成员资格或移动目标,嵌套菜单使其父行保持突出显示,并且可以选择并再次复制普通操作文本。
Beam 转录共享现在使用较短的可读链接,同时保持现有目录链接和正常授权不变。更新或突然重启后返回到现有的 Control UI 选项卡也会重新连接,而无需您打开另一个选项卡,从而保留您已打开的路线和未发送的草稿。
来源和完整变更列表
**限制和兼容性说明**
- 复制的会话链接和Beam共享保持正常授权,不是公共链接;现有的 Beam 目录链接仍然受支持。
- Hide 空组是默认关闭的浏览器本地首选项。
- 挂起的选项卡恢复已通过 Chromium 和 Playwright WebKit 而不是物理 Safari 进行验证。
**改进**
- 添加可读的光束转录共享链接 [#125755](https://github.com/openclaw/openclaw/pull/125755) — 作者:[@steipete](https://github.com/steipete)
- 组织会话操作并结合图标和颜色编辑 [#133490](https://github.com/openclaw/openclaw/pull/133490) — 作者:[@steipete](https://github.com/steipete)
- 在会话 chrome 中显示每个可见参与者或查看者一次 [#133519](https://github.com/openclaw/openclaw/pull/133519) — 作者:[@steipete](https://github.com/steipete)
- 使操作文本可选择,并向 GitHub 设备设置添加复制代码操作 [#133536](https://github.com/openclaw/openclaw/pull/133536) — 感谢 [@RomneyDa](https://github.com/RomneyDa) 和[@Grynn](https://github.com/Grynn)
- 解释按钮旁边的对话分支和编辑器控件 [#133556](https://github.com/openclaw/openclaw/pull/133556) — 作者:[@steipete](https://github.com/steipete)
- 让用户在本地隐藏空会话组标题 [#133638](https://github.com/openclaw/openclaw/pull/133638) — 作者:[@steipete](https://github.com/steipete)
- 在嵌套菜单打开时保持父会话行突出显示 [#133718](https://github.com/openclaw/openclaw/pull/133718) — 作者:[@steipete](https://github.com/steipete)
**错误修复**
- 在网关更新 [#134189](https://github.com/openclaw/openclaw/pull/134189) 后恢复暂停的 Control UI 选项卡 — 感谢 [@Takhoffman](https://github.com/Takhoffman)
长 Control UI 对话现在打开时最多包含 800 条最近消息,并将较旧的页面限制为 1,000 条,因此当前对话的更多内容在加载另一个历史记录之前已准备就绪。初始渲染和旧页面前置路径重复较少的工作,同时保持可见内容和滚动行为相同。
导入或返回大量保留的历史记录还需要在受影响的路径中进行较少的本地工作,而对话及其搜索结果保持不变。
来源和完整变更列表
**限制和兼容性说明**
- 现有的字节和条目上限可以减少 800 条消息的初始页面窗口和 1,000 条消息的旧页面窗口。
- 测量涵盖特定的 Control UI、SQLite、Linux、清理程序、标题缓存和合成工作负载,而不是每个浏览器、网络、提供商、网关或滚动延迟。
- 较小的导入案例存在噪音,重放时间大致不变,并且混合启动测量无法建立通用加速。
- 长会话正确性单元并未因更广泛的历史结果而获得唯一的荣誉。
**改进**
- 减少 Markdown-heavy 消息 [#133483](https://github.com/openclaw/openclaw/pull/133483) 的本地格式化工作 — 作者:[@steipete](https://github.com/steipete)
- 在较大的历史窗口中加载长聊天 [#133565](https://github.com/openclaw/openclaw/pull/133565) — 作者:[@steipete](https://github.com/steipete)
- 在准备长聊天历史记录时减少重复工作 [#133635](https://github.com/openclaw/openclaw/pull/133635) — 作者:[@steipete](https://github.com/steipete)
- 打开包含最多 800 条最近消息的长对话,并推迟关闭工具提示布局工作 [#133734](https://github.com/openclaw/openclaw/pull/133734) — 作者:[@steipete](https://github.com/steipete)
- 减少大型会话导入期间的 CPU 和分配工作 [#133742](https://github.com/openclaw/openclaw/pull/133742) — 作者:[@steipete](https://github.com/steipete)
- 加载和滚动长聊天历史记录,减少重复工作 [#133798](https://github.com/openclaw/openclaw/pull/133798) — 作者:[@steipete](https://github.com/steipete)
- 减少大型会话导入和重建期间的投影工作 [#133802](https://github.com/openclaw/openclaw/pull/133802) — 作者:[@steipete](https://github.com/steipete)
- 加载并添加较长的 Control UI 历史记录,浏览器阻塞较少 [#133870](https://github.com/openclaw/openclaw/pull/133870) — 作者:[@steipete](https://github.com/steipete)
- 减少大量外部内容的本地准备工作 [#134064](https://github.com/openclaw/openclaw/pull/134064) — by [@steipete](https://github.com/steipete)
- 减少 Control UI 启动和历史处理工作 [#134209](https://github.com/openclaw/openclaw/pull/134209) — by [@steipete](https://github.com/steipete)
- 减少大型历史记录中重复的工具卡、标题、镶边和设置工作 [#134369](https://github.com/openclaw/openclaw/pull/134369) — 作者:[@steipete](https://github.com/steipete)
**错误修复**
- 在加载 [#132445](https://github.com/openclaw/openclaw/pull/132445) 时保持早期历史动作稳定 — 感谢 [@RomneyDa](https://github.com/RomneyDa)
- 更有效地读取大量保留历史记录,而不更改返回的消息 [#133680](https://github.com/openclaw/openclaw/pull/133680) — 作者:[@steipete](https://github.com/steipete)
- 从缓存的会话标题预览中释放未使用的支持数据 [#133988](https://github.com/openclaw/openclaw/pull/133988) — 作者:[@steipete](https://github.com/steipete)
- Bound 长会话历史记录复制并保留 Codex 分叉来源 [#134238](https://github.com/openclaw/openclaw/pull/134238) — 作者:[@steipete](https://github.com/steipete)
使用情况和状态视图现在通过工具调用、重试、批准、重新连接和最终回顾来携带累积输出令牌总数,而选定的模型则报告其准备好的上下文窗口,而不是回退到通用数字。成本估算将不同提供商的模型区分开来,保留明确的定制价格和零价格,并避免将托管费率应用于专用端点。
当两个 OpenClaw 进程同时进行首次保存时,设置还会保留单独的更改,并且 Control UI 将设置簿记移出日常外观设置,同时保留同意选项可编辑。
来源和完整变更列表
**限制和兼容性说明**
- 提供商计费总计仍然具有权威性,并且准备的定价证据不是发票对账。
- Persisted Codex 工具循环计费低估和更广泛的网关 CPU 报告仍然是分开的。
- 历史包裹号更正尚未根据准备好的证据中的注册表或标签状态进行最新验证。
**改进**
- 简化外观设置并阐明机器拥有的历史记录 [#133643](https://github.com/openclaw/openclaw/pull/133643) — 作者:[@steipete](https://github.com/steipete)
- 保留有意提供者前缀、零和私有端点使用率 [#133699](https://github.com/openclaw/openclaw/pull/133699) — 作者:[@steipete](https://github.com/steipete)
**错误修复**
- 正确的缓存长上下文和多次调用成本估算 [#133349](https://github.com/openclaw/openclaw/pull/133349) — 作者:[@steipete](https://github.com/steipete)
- 在状态视图中使用准备好的模型的实际上下文窗口 [#133452](https://github.com/openclaw/openclaw/pull/133452) — 感谢 [@vincentkoc](https://github.com/vincentkoc)、[@Finn763](https://github.com/Finn763) 和[@ahmedsaed](https://github.com/ahmedsaed)
- 通过工具调用、重试、批准和重新连接保持累积输出代币总数 [#133605](https://github.com/openclaw/openclaw/pull/133605) — by [@steipete](https://github.com/steipete)
- 刷新本地提供商价格而不覆盖自定义价格 [#133695](https://github.com/openclaw/openclaw/pull/133695) — 感谢 [@samson1357924](https://github.com/samson1357924)
- 保留来自单独 OpenClaw 进程的并发首次保存更改 [#134072](https://github.com/openclaw/openclaw/pull/134072) — 得益于 [@MrSwagatRathod](https://github.com/MrSwagatRathod) 和 [@obviyus](https://github.com/obviyus)
**文档和本地化**
- 将配置、备份、恢复、验证和计划备份命令添加到 CLI 映射 [#122632](https://github.com/openclaw/openclaw/pull/122632) — 作者:[@Adkid-Zephyr](https://github.com/Adkid-Zephyr)
- 重定向已退休的实施计划以维持产品指导 [#133404](https://github.com/openclaw/openclaw/pull/133404) — 作者:[@steipete](https://github.com/steipete)
- 澄清单独的网关传输和节点调用超时 [#133766](https://github.com/openclaw/openclaw/pull/133766) — 作者:[@qingminglong](https://github.com/qingminglong)
- 将 Fleet 及其主要子命令添加到 CLI 索引 [#133940](https://github.com/openclaw/openclaw/pull/133940) — 作者:[@qingminglong](https://github.com/qingminglong)
- 恢复结构化v2026.8.1文档发布页面[#134195](https://github.com/openclaw/openclaw/pull/134195) — 作者:[@hannesrudolph](https://github.com/hannesrudolph)
- 错误编号的 2026.9.1-beta.1 封装 [#134512](https://github.com/openclaw/openclaw/pull/134512) 的正确指导 — 作者:[@hannesrudolph](https://github.com/hannesrudolph)
每个新的外观选择都可以在浅色或深色模式下工作,并遵循您的个人资料,而Manuscript添加了第一个内置的浅色优先设计,而Claw仍然是默认值。当网关重新连接时,显式选择的外观也会保持不变,而不是短暂屈服于浏览器的系统主题。
来源和完整变更列表
**限制和兼容性说明**
- CRT 是选择加入的,并且在基于本地系统主题的第一次绘制后,远程深色配置文件首选项仍然可以到达。
- 已发布的差异或确定性浏览器覆盖范围支持一些视觉变化,无需物理设备屏幕截图。
- Locale 工件建立生成的目录覆盖范围,无需对每个翻译进行独立的母语人士审查。
**改进**
- 保持收件箱标题和类别选项卡在空视图和填充视图中对齐 [#132798](https://github.com/openclaw/openclaw/pull/132798) — 作者:[@vyctorbrzezowski](https://github.com/vyctorbrzezowski)
- 对 GitHub 链接使用预览形状的加载状态,包括减少运动行为 [#133363](https://github.com/openclaw/openclaw/pull/133363) — 作者:[@steipete](https://github.com/steipete)
- 通过网关重新连接保持所选外观设置稳定 [#133417](https://github.com/openclaw/openclaw/pull/133417) — 作者:[@vyctorbrzezowski](https://github.com/vyctorbrzezowski)
- 简化麦克风和摄像头设备设置 [#133437](https://github.com/openclaw/openclaw/pull/133437) — 作者:[@steipete](https://github.com/steipete)
- 添加选择加入 CRT 控制台主题 [#133495](https://github.com/openclaw/openclaw/pull/133495) — 作者:[@steipete](https://github.com/steipete)
- 添加手稿、玫瑰色和迈阿密外观主题 [#133593](https://github.com/openclaw/openclaw/pull/133593) — 作者:[@steipete](https://github.com/steipete)
- 将工作指示器与经过时间和令牌状态对齐 [#133682](https://github.com/openclaw/openclaw/pull/133682) — by [@Patrick-Erichsen](https://github.com/Patrick-Erichsen)
- 保持聊天快退确认控件可在消息菜单上方使用 [#133791](https://github.com/openclaw/openclaw/pull/133791) — 作者:[@steipete](https://github.com/steipete)
- 保持 CRT 单色,同时保留荧光粉的绿色调色板 [#133857](https://github.com/openclaw/openclaw/pull/133857) — by [@steipete](https://github.com/steipete)
**错误修复**
- Paint light 模式立即在新的 Control UI 加载 [#132789](https://github.com/openclaw/openclaw/pull/132789) — by [@vyctorbrzezowski](https://github.com/vyctorbrzezowski)
- 防止紧凑型 GitHub 链接显示重叠预览 [#133402](https://github.com/openclaw/openclaw/pull/133402) — 作者:[@steipete](https://github.com/steipete)
- 将侧边栏帐户行居中并保持其分隔线稳定 [#134432](https://github.com/openclaw/openclaw/pull/134432) — by [@steipete](https://github.com/steipete)
**文档和本地化**
- 在支持的 Control UI 区域设置中本地化 CRT 主题标签和描述 [#133544](https://github.com/openclaw/openclaw/pull/133544)
- 刷新对话、权限、设置、外观和日志翻译 [#133672](https://github.com/openclaw/openclaw/pull/133672)
- 本地化 Manuscript、Rosé 和 Miami 主题名称和描述 [#133761](https://github.com/openclaw/openclaw/pull/133761)
Home 代理现在可以停靠在当前的 Control UI 工作旁边,并使用其正常的对话历史记录、工具、批准、队列、附件和保留草稿的移交到整个页面,因此寻求帮助不再意味着离开您正在处理的事情。
来源和完整变更列表
已显示所选主页对话的一条仪表板路线仍然存在显示页面和码头编辑器的未解决的风险。在准备好的证据中,现场开发网关演练仍然很出色。
**改进**
- 让家庭代理保持活跃状态 Control UI 工作 [#133676](https://github.com/openclaw/openclaw/pull/133676) by @steipete
[Control UI](/web/control-ui) 中转发的消息现在显示哪个代理通过该代理的头像或稳定的姓名首字母发送了这些消息,包括在身份曾经消失的直接对话中。
来源和完整变更列表
**改进**
- 在支持的 Control UI 区域设置中本地化转发消息标签 [#133326](https://github.com/openclaw/openclaw/pull/133326)
- 识别转发消息的发送代理 [#133439](https://github.com/openclaw/openclaw/pull/133439) — 感谢 @steipete
**范围说明**
- 同代理转发使用当前的助理头像,尽管附带的文档仍然描述了转发图标并需要更正。
- 区域设置刷新证明生成的目录内容,而不是每个区域设置的渲染外观或语言质量。
## 更新和维护
现在,更新会保留更多的工作安装,并在出现问题时留下更清晰的恢复路径。医生可以与托管网关协调支持的离线修复,繁忙的系统提供状态,Control UI 请求更多运行空间,恢复消息保留有用的编辑细节,而不会将不确定的工作变成错误的成功。
自动更新现在可以在重新连接、重新加载、禁用检查、一次性安装和托管服务切换时保留其选择的通道和最终结果。无人值守安装仍然仅限于托管网关服务,而前台网关将保持运行状态,直到您自己遵循停止、更新和启动路径。
当无法检查服务所有权时,启用重新启动的更新也会拒绝替换文件,当可以恢复失败的更新时保留回滚信息,并且如果会话迁移不完整,则在声明成功之前停止。安装较新的软件包不再在该版本实际运行之前迁移共享状态,尽管已被受影响的软件包更改的数据库仍然需要兼容的备份还原,并且这些路径都没有将整个更新转变为一个可逆事务。现在可以在选定的网关停止后预览和删除经过验证的旧版迁移原始文件,但该清理是明确且不可逆的,因为它会永久删除旧安装可能用于回滚的文件。
来源和完整变更列表
**改进**
- 使更新帮助和只读计划更快开始 [#133698](https://github.com/openclaw/openclaw/pull/133698) — 感谢 @steipete
- 减少更新预检工作和无人值守提示 [#133801](https://github.com/openclaw/openclaw/pull/133801) — 感谢 @steipete
- 添加了对已验证的遗留迁移恢复文件的显式清理 [#133864](https://github.com/openclaw/openclaw/pull/133864)
**错误修复**
- 在安全可恢复的 CLI 更新失败后恢复了托管网关 [#119516](https://github.com/openclaw/openclaw/pull/119516) — 感谢 @zyw02
- 在首次运行 [#129475](https://github.com/openclaw/openclaw/pull/129475) 之前保持软件包安装不迁移共享操作符状态 — 感谢 @BryanTegomoh、@obviyus 和 @BillVerhelle
- 当网关服务状态未知时,在突变之前停止了启用重新启动的更新 [#132853](https://github.com/openclaw/openclaw/pull/132853) — 感谢 @jason-allen-oneal 和 @obviyus
- 允许较旧的 CLI 在较新的状态迁移后停止受管网关 [#133595](https://github.com/openclaw/openclaw/pull/133595) — 感谢 @RomneyDa
- 使更新进度、计时、诊断和最终结果持久 [#133622](https://github.com/openclaw/openclaw/pull/133622)
- 保持打印和持久更新完成持续时间一致 [#133809](https://github.com/openclaw/openclaw/pull/133809) — 感谢 @steipete
- 保留了已发布的 v2026.8.1 修复,同时超越了该版本 [#134045](https://github.com/openclaw/openclaw/pull/134045) — 感谢 @shakkernerd
- 当旧会话迁移仍未完成时,在成功之前更新失败 [#134228](https://github.com/openclaw/openclaw/pull/134228) — 感谢 @shakkernerd
- 阻止`update --no-restart`将重启所有权转移给Doctor [#134470](https://github.com/openclaw/openclaw/pull/134470)
- 通过托管服务切换保留自动更新策略和结果 [#134566](https://github.com/openclaw/openclaw/pull/134566)
**文档**
- 向历史 v2026.8.1 发布页面添加了备份和 SQLite 降级限制 [#133591](https://github.com/openclaw/openclaw/pull/133591) — 感谢 @hannesrudolph
- 扩展历史失败更新恢复指南 [#133896](https://github.com/openclaw/openclaw/pull/133896) — 感谢 @steipete
Doctor 现在可以通过停止匹配的托管网关、完成支持的修复、检查结果并重新启动同一服务来明确拥有更多离线修复工作的所有权。它可以恢复受支持的旧审批和数据库,在迁移过程中保留有效的计划作业和当前语音呼叫设置,并解释在修复无法完成时哪些原始材料仍然可用。
这种所有权故意仍然狭窄。普通诊断保持在线状态,已停止的服务保持停止状态,模糊或外部服务所有权、不可读的配置、不相关的数据库漂移、活动写入器和不完整的工作区迁移保持故障关闭。这是一个更清晰的修复路径,而不是承诺每个平台或损坏的状态都可以自动修复。
来源和完整变更列表
Linux 之外的本机服务管理器路径是模拟的,而不是在实时安装中验证的。
**改进**
- 减少了旧会话导入、压缩和 Control UI 启动开销 [#133446](https://github.com/openclaw/openclaw/pull/133446) — 感谢 @steipete
- 加速旧会话记录导入 [#133496](https://github.com/openclaw/openclaw/pull/133496)
- 重复使用数据库操作进行旧导入和转录替换 [#133546](https://github.com/openclaw/openclaw/pull/133546) — 感谢 @steipete
- 减少了传统转录本扫描开销 [#133611](https://github.com/openclaw/openclaw/pull/133611) — 感谢 @steipete
- 加快了目标旧会话记录导入 [#133641](https://github.com/openclaw/openclaw/pull/133641) — 感谢 @steipete
- 减少了深度和旧会话导入期间的重复检测工作 [#133689](https://github.com/openclaw/openclaw/pull/133689) — 感谢 @steipete
- 重用为大型 SQLite 历史记录准备的成绩单批量编写器 [#134252](https://github.com/openclaw/openclaw/pull/134252)
**错误修复**
- 通过Doctor [#118282](https://github.com/openclaw/openclaw/pull/118282)恢复了具有空使用元数据的历史执行批准 - 感谢@obviyus和@sercada
- 隔离失败的通道迁移计划,同时保留重试状态 [#119201](https://github.com/openclaw/openclaw/pull/119201) — 感谢 @ruel225
- 在Doctor迁移期间保留禁用的共享心跳所有权[#133444](https://github.com/openclaw/openclaw/pull/133444) - 感谢@PollyBot13和@obviyus
- 在可再生停止编写者权限后面受保护的自动每代理数据库迁移 [#133563](https://github.com/openclaw/openclaw/pull/133563) — 感谢 @omarshahine
- 将失败的会话删除排除在成功的清理记帐之外 [#133668](https://github.com/openclaw/openclaw/pull/133668) — 感谢 @steipete
- 在清理摘要中统计了成功的零字节工件删除 [#133697](https://github.com/openclaw/openclaw/pull/133697) — 感谢 @steipete
- 允许医生导入支持的遗留执行批准,同时运行时访问保持故障关闭状态 [#133773](https://github.com/openclaw/openclaw/pull/133773) — 感谢 @dailytrap 和 @obviyus
- 通过 SQLite 迁移保留了有效的计划作业并添加了显式医生恢复 [#133858](https://github.com/openclaw/openclaw/pull/133858) — 感谢 @fuller-stack-dev、@ejc3、@LiuwqGit 和@zhangguiping-xydt
- Doctor 恢复存档会话时独立创建的保留文件 [#133921](https://github.com/openclaw/openclaw/pull/133921) — 感谢 @steipete
- 批量会话清理后刷新了 SQLite 规划器统计数据 [#133925](https://github.com/openclaw/openclaw/pull/133925) — 感谢 @VACInc
- 命名格式错误的遗留审批字段,但未公开其值 [#133952](https://github.com/openclaw/openclaw/pull/133952) — 感谢 @obviyus、@sercada 和 @steipete
- 删除了嵌套或符号链接代理工作区 [#133964](https://github.com/openclaw/openclaw/pull/133964) 的误导性 Git 备份警告 - 感谢 @obviyus 和 @jeffsteinbok-openclaw
- 拒绝准备,而不完整的工作区迁移状态可能会阻止代理 [#133982](https://github.com/openclaw/openclaw/pull/133982)
- 报告中断的身份验证归档恢复结果 [#134009](https://github.com/openclaw/openclaw/pull/134009) — 感谢 @angeliti999 和 @shakkernerd
- 在旧版迁移过程中保留当前语音通话设置 [#134018](https://github.com/openclaw/openclaw/pull/134018) — 感谢 @steipete
- 让显式Doctor修复与匹配的托管网关[#134031](https://github.com/openclaw/openclaw/pull/134031)安全协调
- Doctor数据库迁移后刷新的有界SQLite规划器统计数据[#134062](https://github.com/openclaw/openclaw/pull/134062) — 感谢@VACInc
- 报告的修复被无效配置写入阻止并保留其源[#134078](https://github.com/openclaw/openclaw/pull/134078) - 感谢@obviyus和@YogevKr
- 针对已验证的规范数据库链接停止了错误的遗留内存警告 [#134087](https://github.com/openclaw/openclaw/pull/134087) — 感谢 @obviyus 和 @02-dino
- 通过 Doctor [#134208](https://github.com/openclaw/openclaw/pull/134208) 修复了受支持的旧版 v17 代理数据库 — 感谢 @EthDing、@obviyus 和 @abacha
- 迁移期间保留 Hermes 模型所有权、提供程序设置和激活策略 [#134426](https://github.com/openclaw/openclaw/pull/134426)
- 在重新启动托管网关之前释放了 Doctor 数据库所有权 [#134429](https://github.com/openclaw/openclaw/pull/134429)
- 通过避免未使用的插件运行时图来减少 Doctor 内存压力 [#134541](https://github.com/openclaw/openclaw/pull/134541)
- 在声明或规范写入之前拒绝格式错误的遗留迁移 JSON [#134577](https://github.com/openclaw/openclaw/pull/134577) — 感谢 @vincentkoc
**文档**
- 更正了医生拥有的会话迁移和发现指南 [#133818](https://github.com/openclaw/openclaw/pull/133818)
- 更正了 SQLite 降级恢复指南 [#133831](https://github.com/openclaw/openclaw/pull/133831) — 感谢 @steipete
- 将托管服务更换指南与 Doctor 维护所有权保持一致 [#134358](https://github.com/openclaw/openclaw/pull/134358)
现在,在重命名会话、打开历史记录、列出任务页面、检查计划工作或同时运行多个代理轮次时,繁忙网关花费更少的时间重复工作。大型会话列表保留更少的内存,异常分支的历史不再重复相同的祖先工作,并且有界运算符请求在返回可重试的重载结果之前有更公平的机会启动。
关闭还会停止接受尚未开始的出站重试,使它们排队等待下一个进程,而已经启动的提供程序尝试可以完成。这些改进仅限于这些网关路径,并不能消除持续负载下的所有延迟。
来源和完整变更列表
性能证据的范围包括记录的 SQLite、Control UI、历史记录、cron、会话列表和网关工作负载。更广泛的同步数据库瓶颈、持续的 CPU 压力、登录的 Chrome 降级以及长尾延迟仍然不在索赔范围内。
**改进**
- 跨网关控制平面重复使用准备好的事实读取[#133477](https://github.com/openclaw/openclaw/pull/133477) - 感谢@steipete
- 减少并发网关转向前的重复准备 [#133782](https://github.com/openclaw/openclaw/pull/133782)
- 网关聊天和启动请求重用拥有的历史快照 [#133903](https://github.com/openclaw/openclaw/pull/133903)
- 减少大型会话列表和清理扫描中的保留内存 [#134395](https://github.com/openclaw/openclaw/pull/134395) — 感谢 @steipete
**错误修复**
- 保持大型分支会话历史记录不阻塞网关事件循环 [#123541](https://github.com/openclaw/openclaw/pull/123541) — 感谢 @njuboy11 和 @obviyus
- 针对大量历史记录的有界任务页面选择 [#132903](https://github.com/openclaw/openclaw/pull/132903) — 感谢 @jason-allen-oneal 和 @obviyus
- Reduced Gateway 和 Control UI 在并发会话更新期间停止 [#133061](https://github.com/openclaw/openclaw/pull/133061)
- 在延迟关机诊断中命名为活动根工作持有者 [#133154](https://github.com/openclaw/openclaw/pull/133154) — 感谢 @VACInc
- 减少了控制平面失速并清除了并发转弯期间的早期超时 [#133429](https://github.com/openclaw/openclaw/pull/133429) — 感谢 @steipete
- 抑制重复的状态数据库警告,直到错误更改或恢复 [#133502](https://github.com/openclaw/openclaw/pull/133502) — 感谢 @RomneyDa
- Kept cron 读取和空闲唤醒,避免反复阻塞网关 [#133552](https://github.com/openclaw/openclaw/pull/133552) — 感谢 @vincentkoc 和 @josephbergvinson
- 做好准备,Control UI在转弯爆发期间请求更多的机会运行[#133683](https://github.com/openclaw/openclaw/pull/133683) - 感谢@steipete
- 在负载下更迅速地启动有界操作员请求 [#133873](https://github.com/openclaw/openclaw/pull/133873)
- 避免了真正原始的 CLI 启动 [#134090](https://github.com/openclaw/openclaw/pull/134090) 的迁移工作 — 感谢 @steipete
- 在网关关闭期间停止承认未启动的出站重试 [#134381](https://github.com/openclaw/openclaw/pull/134381) — 感谢 @VACInc
**文档**
- 为外部网关监控器定义启动、拒绝和更换接受规则 [#130961](https://github.com/openclaw/openclaw/pull/130961) — 感谢 @1052326311 和 @josephbergvinson
当恢复需要一个人时,OpenClaw 现在可以更好地讲述发生的事情,而不会暴露它试图保护的东西。离线分类仍然可以生成经过净化的存档,嵌入式分类仍然与正在诊断的安装和路径绑定,状态和日志命令保留实际的编辑故障,并且短 Control UI 错误不再在空的详细信息面板中重复出现。
Control UI内部的恢复也更加清晰。过时的、未经确认的浏览器消息可以被丢弃,以便以后的排队输入可以继续,脱机拆分窗格草稿仍然可以恢复,并且在重新连接后取消排队消息编辑可以恢复原始队列,而无需替换作曲家草稿。丢弃浏览器副本不能证明或逆转网关可能已经接受的工作,因此接口将其视为本地恢复而不是回滚。
来源和完整变更列表
**错误修复**
- 拒绝了矛盾的全代理和单代理使用查询 [#125269](https://github.com/openclaw/openclaw/pull/125269) — 感谢 @zyw02 和 @obviyus
- 在保留清理期间保留新编写的网关诊断包 [#132626](https://github.com/openclaw/openclaw/pull/132626) — 感谢 @Alix-007
- 连接前拒绝的空白节点 RPC 超时值 [#132641](https://github.com/openclaw/openclaw/pull/132641) — 感谢 @xydt-juyaohui
- 制成`sessions tail --follow`当其轨迹存储变得不可读时失败[#132660](https://github.com/openclaw/openclaw/pull/132660)- 谢谢@Alix-007
- 在精确解决失败工具批次后恢复代理转向 [#133300](https://github.com/openclaw/openclaw/pull/133300) — 感谢 @VACInc
- 从 Control UI 错误警报 [#133342](https://github.com/openclaw/openclaw/pull/133342) 中删除了重复的装饰表情符号 — 感谢 @vyctorbrzezowski
- 在联系网关之前拒绝了格式错误的批准授予限制 [#133361](https://github.com/openclaw/openclaw/pull/133361) — 感谢 @qingminglong
- Hid 冗余 Control UI 错误详细信息,同时保留有用的诊断 [#133369](https://github.com/openclaw/openclaw/pull/133369) — 感谢 @vyctorbrzezowski
- Kept `sessions tail` 列与 Unicode 会话密钥对齐 [#133422](https://github.com/openclaw/openclaw/pull/133422)
- 让Control UI用户丢弃一条阻塞队列的未经确认的本地消息 [#133440](https://github.com/openclaw/openclaw/pull/133440)
- 更新了 Control UI [#133458](https://github.com/openclaw/openclaw/pull/133458) 中的本地化队列恢复指南
- 阐明了内存命令帮助中的所有代理默认值 [#133560](https://github.com/openclaw/openclaw/pull/133560) — 感谢 @steipete
- Undici 调试捕获中保留有用的编辑标头 [#133586](https://github.com/openclaw/openclaw/pull/133586)
- 保留脱机拆分窗格草稿并安全地恢复取消的队列编辑 [#133628](https://github.com/openclaw/openclaw/pull/133628)
- 从权威无效的仅控制CLI恢复一次[#133684](https://github.com/openclaw/openclaw/pull/133684) - 感谢@vincentkoc和@jakestenger
- 保持 Unicode 附加会话选择和任务表对齐 [#133758](https://github.com/openclaw/openclaw/pull/133758)
- 超大转义代码模式输出中保留的可读前缀 [#133777](https://github.com/openclaw/openclaw/pull/133777)
- 拒绝空白通道能力超时值 [#133781](https://github.com/openclaw/openclaw/pull/133781) — 感谢 @marmar9615-cloud 和 @SunnyShu0925
- 保留工具进度摘要,避免将 shell 目标视为搜索目标 [#133783](https://github.com/openclaw/openclaw/pull/133783) — 感谢 @darioandyoshi-tech
- 网关离线时保留已清理的分类诊断 [#133842](https://github.com/openclaw/openclaw/pull/133842)
- 发现之前拒绝空白网关探测超时值 [#134040](https://github.com/openclaw/openclaw/pull/134040) — 感谢 @SunnyShu0925
- 来自内存向量工作器 [#134106](https://github.com/openclaw/openclaw/pull/134106) 的保留有界本机或 SQLite 错误详细信息 — 感谢 @klabir 和 @steipete
- 停止广告惰性消息读取线程选项,同时保留解析兼容性 [#134212](https://github.com/openclaw/openclaw/pull/134212) — 感谢 @marmar9615-cloud
- 保持离线状态 TLS 诊断创建或修复网关证书 [#134223](https://github.com/openclaw/openclaw/pull/134223)
- 在正在诊断的安装上保留嵌入式分类命令 [#134244](https://github.com/openclaw/openclaw/pull/134244) — 感谢 @obviyus
- 从生成的 shell 补全中省略了隐藏命令和选项 [#134247](https://github.com/openclaw/openclaw/pull/134247) — 感谢 @marmar9615-cloud
- 完整状态报告中的荣誉使用和代理范围选项 [#134269](https://github.com/openclaw/openclaw/pull/134269)
- 在分类存档中准确报告声明的代理、插件、通道和 Tailscale 模式 [#134416](https://github.com/openclaw/openclaw/pull/134416) — 感谢 @steipete
- 从失败的托管工作树设置中保留安全混合流诊断 [#134428](https://github.com/openclaw/openclaw/pull/134428) — 感谢 @vincentkoc
- 删除了令人困惑的保留消息库存横幅 [#134456](https://github.com/openclaw/openclaw/pull/134456) — 感谢 @RomneyDa
- 将实际编辑的失败原因放入 JSON 日志错误 [#134534](https://github.com/openclaw/openclaw/pull/134534)
**文档**
- 退役的冗余指南和更正的稳定网关包指南 [#133722](https://github.com/openclaw/openclaw/pull/133722) — 感谢 @steipete
## 消息传递
语音、媒体和频道对话现在可以更好地达成清晰的结局,并与发起对话的人和聊天者保持联系。口头回复可以在更多的传递交接中幸存下来,呼叫和浏览器对话保持有序,附件和纯文本保持其预期的形状,并且特定于帐户的故障不再需要使每个健康的渠道都瘫痪。
现在,Browser Talk 在打开连接之前会等待麦克风许可,并解释它正在等待什么,而不是显得卡住。一旦对话开始,当转录迟到时,口头问题和答案将保持有序,可以在不关闭通话的情况下显示转录失败,并且中断 Google Live 响应不再错误地结束下一个回合。
默认会话还将配置的代理、文字记录和咨询保留在一起,生成的咨询指令不再显示为来自用户的第二条消息,并且以后的口头请求可以在第一次交换后继续。
来源和完整变更列表
**改进**
- 刷新 20 个 Control UI 区域设置中的语音和麦克风指导 [#133352](https://github.com/openclaw/openclaw/pull/133352)
**错误修复**
- 解释浏览器谈话和听写中待处理的麦克风访问 [#133353](https://github.com/openclaw/openclaw/pull/133353)
- 保持 Google 中断后实时转动对齐 [#133365](https://github.com/openclaw/openclaw/pull/133365)
- 创建 Browser Talk 提供程序会话之前等待麦克风访问 [#133384](https://github.com/openclaw/openclaw/pull/133384)
- 离开失败的 Browser Talk 在连贯停止或错误状态下重新启动 [#133410](https://github.com/openclaw/openclaw/pull/133410)
- Show Browser Talk 输入转录失败,但未结束通话 [#133473](https://github.com/openclaw/openclaw/pull/133473) — 感谢 @steipete
- 在 Browser Talk 中保留 OpenAI WebRTC 对话顺序 [#133493](https://github.com/openclaw/openclaw/pull/133493) — 感谢 @vmbbz
- 将生成的 Browser Talk 咨询文本保留在可见的用户历史记录中 [#133947](https://github.com/openclaw/openclaw/pull/133947) — 感谢 @chelsealong、@lsr911、@obviyus、@ZengWen-DT、 @SebTardif 和 @Conan-Scott
- H荣誉为默认浏览器对话会话 [#133958](https://github.com/openclaw/openclaw/pull/133958) 配置的所有者 — 感谢 @astra-openclaw
- 将生成的 Browser Talk 咨询问题视为文字输入 [#134093](https://github.com/openclaw/openclaw/pull/134093) — 感谢 @lsr911
- 稍后保持浏览器对话在呼叫设置后转为允许 [#134138](https://github.com/openclaw/openclaw/pull/134138) — 感谢 @mastertyko
**范围和验证**
转录顺序修复特定于 OpenAI WebRTC,而 Google Live 有单独的中断修复。默认会话所有权和当前连接控制不会建立更广泛的完成、历史、取消或为以后工作确定的移动边缘。浏览器和提供商覆盖范围使用合成装置,而不是物理麦克风或经过身份验证的语音会话。
现在,口头答复可以通过更多以前成功综合可能消失或被误认为未完成答案的地方。私人 Discord 和 Telegram 回复可以传递一个允许的内置 TTS 语音注释,同时隐藏私人最终文本,长回复将内部推理和已知的工具状态文本保留在音频之外,并且所传递的语音可以完成回合,而不会出现误导性警告或不必要的第二个请求。
在代码模式、工具搜索或 Codex 工作期间创建的语音也有更清晰的路径进入最终答复,而仅在请求超时后完成的音频将保持保留。
来源和完整变更列表
**错误修复**
- 在私人Discord和Telegram回复中提供内置TTS音频[#133324](https://github.com/openclaw/openclaw/pull/133324) - 感谢@obviyus,@TurboTheTurtle, @clawSean 和 @Conan-Scott
- 将标记的推理和已知工具支架排除在口头摘要中 [#133615](https://github.com/openclaw/openclaw/pull/133615) — 感谢 @camball-strategies
- 口头回复后完成干净利落 [#133968](https://github.com/openclaw/openclaw/pull/133968)
- 通过嵌套工具保留语音传递和流程输出 [#134056](https://github.com/openclaw/openclaw/pull/134056)
- 通过媒体传送保留已接受的 Codex 语音 [#134170](https://github.com/openclaw/openclaw/pull/134170)
**范围和验证**
现有的发送政策和陈旧的运行权限保持不变。交付证明使用合成语音服务和协议数据,而不是经过身份验证的合成或可听的外部播放,并且稍后失败的排队媒体发送仍然在干净的最终确定修复之外。
现在,当呼叫者再次开始讲话时,语音呼叫会丢弃过时的自动应答,并且旧的呼叫流无法再中断当前的回复。最新的提供程序更新与其记录、持续时间和代理保持附加到原始呼叫,而失败的首次保存不再拨打或消耗唯一的呼叫槽,因此恢复存储访问足以重试。
来源和完整变更列表
**错误修复**
- 在初始存储故障后保留语音通话容量 [#129847](https://github.com/openclaw/openclaw/pull/129847) — 感谢 @aniruddhaadak80
- 停止通过恢复语音通话进行过时的语音呼叫回复 [#133484](https://github.com/openclaw/openclaw/pull/133484) — 感谢 @DonShelly
- 将后期提供商回调附加到原始语音呼叫 [#133811](https://github.com/openclaw/openclaw/pull/133811) — 感谢 @ruel225 和 @jackatagenticforce
**范围和验证**
已经发出的运营商播放和后来的拨号后存储故障仍然不在这些修复范围内。所涵盖的故障路径使用了已发货的模拟运营商和合成运营商操作,而不是经过身份验证的电话呼叫或音频播放。
Control UI 对话中已经可见的图像现在通过硬刷新保留在原处,而不是在历史记录重新加载时闪烁并移动线程,而删除或无法访问的图像仍然会消失。空的本地文本文件表明,如果不隐藏后面的附件说明,则没有要提取的文本,并且带有引号或转义字符集标签的文本文件将解码为其预期文本而不是替换字符。
受影响的 AVI 视频和 ASF 或 WMA 音频也会返回到其现有的播放转换路径,而不是因为不受支持而回退。
来源和完整变更列表
**错误修复**
- 恢复 AVI 文件名和现有播放转换 [#133329](https://github.com/openclaw/openclaw/pull/133329)
- 在字节检测后保留 Matroska 文件名 [#133383](https://github.com/openclaw/openclaw/pull/133383) — 感谢 @ly85206559
- 恢复现有的 ASF 和 WMA 音频转换 [#133386](https://github.com/openclaw/openclaw/pull/133386) — 感谢 @ly85206559
- 保留空文本附件,以免隐藏以后的附件说明 [#133424](https://github.com/openclaw/openclaw/pull/133424)
- 正确解码引用和转义的文本附件字符集 [#133610](https://github.com/openclaw/openclaw/pull/133610)
- 荣誉为Slack下载[#134242](https://github.com/openclaw/openclaw/pull/134242)配置图像尺寸 - 感谢@marmar9615-cloud
- 在硬刷新期间保持对话图像可见 [#134310](https://github.com/openclaw/openclaw/pull/134310)
**文档**
- 澄清图像、音乐和视频生成的配置后备选择 [#134574](https://github.com/openclaw/openclaw/pull/134574)
**范围和验证**
AVI 和 ASF 或 WMA 处理会恢复现有的有界转换路径,并且不会重新接纳每种格式或打开默认白名单。 Matroska 更改仅保留检测到的文件名。硬刷新覆盖范围仅限于具有合成媒体的 Chromium,并且 Slack 下载覆盖范围不会建立经过身份验证的 Slack 往返。
现在,当周围格式包含隐藏的类似代码的文本时,纯文本回复会将可见代码保留在正确的位置,并且段落或部分格式会保留其预期的中断,而不是将相邻文本放在一起。这使得受影响的默认 Telegram 和直接文本或媒体回复更易于阅读,而无需更改其丰富消息路径。
来源和完整变更列表
**错误修复**
- 当 HTML 转换为纯文本 [#125184](https://github.com/openclaw/openclaw/pull/125184) 时保持可见代码 - 感谢 @wanyongstar
- 保持较长的 IMAP 电子邮件提示在 Unicode 边界有效 [#132170](https://github.com/openclaw/openclaw/pull/132170) — 感谢 @harjothkhara
- 保持有界运行时消息在 Unicode 边界有效 [#132366](https://github.com/openclaw/openclaw/pull/132366) — 感谢 @ly85206559
- 在纯文本出站消息中保留段落边界 [#132998](https://github.com/openclaw/openclaw/pull/132998) — 感谢 @pengzh1 和 @yifanxiong272
- 在 Node 26 [#134357](https://github.com/openclaw/openclaw/pull/134357) 上的模型令牌清理期间保持星体 Unicode 字母分开
- 在终端内联代码中保留有意的尾随空格 [#134451](https://github.com/openclaw/openclaw/pull/134451)
**范围和验证**
丰富的 Telegram 渲染和属性换行处理仍然在共享纯文本修复之外。 IMAP、有界运行时、Node 26 和终端内联代码条目是窄文本边界修复,不会在每个通道上建立通用格式行为。
当一轮已经完成其工具工作时,OpenClaw 现在会再次尝试产生最终答案,如果模型仍然没有提供任何可用的信息,则留下一个明显的后备,而无需重新运行已完成的操作。在回答之前失败的已接受频道轮流也会以一个紧凑的错误结束,而不是一个进度标记,然后是沉默。
在 [Discord](/channels/discord) 和 [Slack](/channels/slack) 中,长轮也更加平静,有一个稳定的确认、有用的里程碑以及提示的批准或失败,而不是每个工具操作的运行列表。
来源和完整变更列表
**改进**
- Quiet Discord 和 Slack 进度更新 [#133516](https://github.com/openclaw/openclaw/pull/133516) — 感谢 @steipete
**错误修复**
- 在解决工具工作后始终返回最终答复 [#133520](https://github.com/openclaw/openclaw/pull/133520) — 感谢 @fuller-stack-dev
- 识别传送给父会话的可见子座席答案 [#133543](https://github.com/openclaw/openclaw/pull/133543)
- 在接受的通道转向失败后返回一个可见错误 [#133979](https://github.com/openclaw/openclaw/pull/133979)
**范围说明**
- 已完成的操作不会重新运行,并且取消或有意保持沉默的帮助程序行为保持不变。
- 内部和嵌套的家长会话答案可以通过其可见的记录来解决,而外部目标仍然需要交付证据。
- 最终的 Telegram 提供商交付以及 Discord 和 Slack 演示未在经过身份验证的实时客户端中执行。
[iMessage](/channels/imessage) 现在,当取消设置服务设置时,直接回复和民意调查等操作将保留在请求它们的对话中,而不再重试编辑的显示值,就好像它是真正的目标一样。在多机器人 [Discord](/channels/discord) 房间中,选择加入其他提及过滤器还会阻止 OpenClaw 针对另一个机器人的回复,除非有人明确提及。
[Telegram](/channels/telegram) 在回复上下文中保留丰富的按钮标签,并在配置重新加载后保持其模型选择器可用,而长 [WhatsApp](/channels/whatsapp) 回复则在分割消息中保留其格式和引用上下文。 Slack Enterprise Grid 插件批准现在通过直接消息通过批准单击保留在预期工作区中。
来源和完整变更列表
**错误修复**
- 让 Discord 机器人远离其他机器人 [#130327](https://github.com/openclaw/openclaw/pull/130327) — 感谢 @PollyBot13 和 @obviyus
- 配置重新加载后恢复Telegram模型浏览[#133221](https://github.com/openclaw/openclaw/pull/133221) — 感谢@chelsealong、@vincentkoc和@r3n3x
- 在回复上下文中保留 Telegram 丰富按钮标签 [#133307](https://github.com/openclaw/openclaw/pull/133307) — 感谢 @obviyus
- 跨拆分保持格式设置和回复上下文 WhatsApp 回复 [#133407](https://github.com/openclaw/openclaw/pull/133407)
- 在请求对话中保留 iMessage 回复和无目标操作 [#133499](https://github.com/openclaw/openclaw/pull/133499) — 感谢 @omarshahine
- 在其精确边界处过期 iMessage 投票回声抑制 [#133996](https://github.com/openclaw/openclaw/pull/133996) — 感谢 @qingminglong
- 在预期工作区中保留 Slack Enterprise 插件批准 [#134251](https://github.com/openclaw/openclaw/pull/134251) — 感谢 @obviyus 和 @marmar9615-cloud
**范围说明**
- Discord 的其他提及过滤器是选择加入的,并且如果 Discord 无法识别被回复的作者,则保持允许状态。
- Telegram 丰富消息仍可选择加入,WhatsApp 媒体、语音字幕、重试、帐户限制和截止时间行为保持不变。
- iMessage 路由已被接受用于协调 beta 验证,无需安装后修复发送,并且 Slack 边界无需实时两个工作空间批准点击即可验证。
现在,当另一个连接的服务控制聊天时,[LINE](/channels/line) 会保持安静,并且加入群组或房间的机器人仅在允许其服务的地方做出响应。共享组规则也适用于命名组和房间,除非该对话有自己的设置。
对话本身携带更多的人发送的内容和操作员配置的内容。内联表情符号不再折叠成裸括号,多部分回复遵循所选代理的节奏,并且在选择发送消息的位置时可以使用配置的用户、组和房间。
来源和完整变更列表
**错误修复**
- 在代理上下文中保留可读的 LINE 内联表情符号 [#132083](https://github.com/openclaw/openclaw/pull/132083) — 感谢 @edenfunf
- 让 LINE 机器人在他们可能不服务的房间中保持安静 [#132628](https://github.com/openclaw/openclaw/pull/132628) — 感谢 @edenfunf
- 仅在支持的情况下提供 LINE 卡命令 [#132895](https://github.com/openclaw/openclaw/pull/132895) — 感谢 @edenfunf
- 将 LINE 通配符默认应用于命名组和房间 [#132918](https://github.com/openclaw/openclaw/pull/132918) — 感谢 @edenfunf
- H尊重路由代理在 LINE 块回复中的人为延迟 [#133443](https://github.com/openclaw/openclaw/pull/133443) — 感谢 @edenfunf
- 在 LINE 待机事件开始竞争工作之前忽略它们 [#133577](https://github.com/openclaw/openclaw/pull/133577) — 感谢 @edenfunf
- 列出目录 [#133599](https://github.com/openclaw/openclaw/pull/133599) 中配置的 LINE 用户、组和房间 — 感谢 @edenfunf
- Honor 在 LINE 组中禁用仅报价激活 [#133619](https://github.com/openclaw/openclaw/pull/133619) — 感谢 @edenfunf
- 在直接 LINE 聊天中显示网关驱动回复的加载反馈 [#133679](https://github.com/openclaw/openclaw/pull/133679) — 感谢 @edenfunf
**文档**
- 正确的LINE组和房间的加载动画指导[#132151](https://github.com/openclaw/openclaw/pull/132151) - 感谢@edenfunf
**范围说明**
- 升级时,请查看通配符 `enabled` 和 `allowFrom` 限制,因为它们可以开始应用于以前未继承它们的命名组和房间。
- 目录结果来自 OpenClaw 的配置,而不是 LINE 的实时联系人名册或配对批准。
- 回复节奏仅针对 LINE 进行了修复,并且加载反馈仍然仅限于一对一聊天。
一个不可用或已禁用的通道帐户不再需要隐藏所有其他通道的运行状况和状态,并且恢复现在可以解释帐户启动是否被移交、保持忙碌或跳过。当重复的启动失败使 OpenClaw 进入安全模式时,操作员可以手动重新启动配置的帐户,而无需首先运行未记录的修复步骤。
这种分离贯穿了频道的其余工作。 [Matrix](/channels/matrix) 可以在帐户停止或重新启动时完成房间活动,Doctor 保留支持的 QQBot 多帐户布局,SMS 在凭证消失或替换时停止工作。来自已安装频道插件的消息和操作也会保留在操作员选择的插件中。
来源和完整变更列表
**错误修复**
- 在通道特定日志中包含嵌套通道诊断 [#133601](https://github.com/openclaw/openclaw/pull/133601)
- 保存的同步历史记录返回后保持Matrix验证已解决 [#133616](https://github.com/openclaw/openclaw/pull/133616)
- 在Doctor修复期间保留有效的QQBot多帐户配置[#133948](https://github.com/openclaw/openclaw/pull/133948) — 感谢@obviyus和@yubingjiaocn
- 解释跳过、繁忙和切换的通道恢复启动 [#133973](https://github.com/openclaw/openclaw/pull/133973) — 感谢 @steipete
- Drain Matrix 在退休账户客户 [#134033](https://github.com/openclaw/openclaw/pull/134033) 之前进行室内工作 — 感谢 @lsr911、@obviyus、@chelsealong、@ZengWen-DT 和@SebTardif
- 从网关诊断中隔离不可用的通道帐户 [#134044](https://github.com/openclaw/openclaw/pull/134044)
- 当帐户凭据不可用时停止 SMS 工作 [#134145](https://github.com/openclaw/openclaw/pull/134145) — 感谢 @shakkernerd
- 在崩溃循环安全模式下恢复手动通道恢复 [#134165](https://github.com/openclaw/openclaw/pull/134165) — 感谢 @shakkernerd
- 在经过验证的安装上保持通道切换切换 [#134397](https://github.com/openclaw/openclaw/pull/134397)
- 在凭证解析之前跳过禁用的通道帐户 [#134418](https://github.com/openclaw/openclaw/pull/134418)
- 保留所选插件上的通道发送和操作 [#134564](https://github.com/openclaw/openclaw/pull/134564) — 感谢 @steipete
**文档**
- 记录帐户范围的通道恢复和 WhatsApp 自聊天行为 [#128151](https://github.com/openclaw/openclaw/pull/128151) — 感谢 @LiuwqGit 和 @markswitch83
**范围说明**
- 安全模式仍然会抑制自动通道启动,并且已启用或未知的帐户仍然需要有效的凭据。
- 所选插件和 Twilio 路径未通过外部提供商交付进行验证。
- 通道切换源仅涵盖此处到已验证安装的切换,将更广泛的更新和回滚行为留给其所属的发布部分。
## 内存
内存和大量保留的历史记录现在可以避免更多不必要的工作,而无需更改可用于需要它的路径的信息。 Memory Wiki 在更改页面之前拒绝无效操作,本地扫描停止导入其自己的保管库内容的生成副本,并且多个长会话路径在准备上下文或检查历史记录时保存较少的瞬态数据。
Memory Wiki 现在会在更改或同步页面之前拒绝未知操作,并且本地扫描会再次停止导入其自己的保管库页面的生成副本。取消的内存请求返回原始取消错误,而可选的数据库支持的内存插件以更少的内存启动并保留相同的三个工具。
长的原生 Codex 对话和独立的技能研讨会评论也准备了他们所需的上下文,而无需加载模型永远不会看到的那么多历史记录。恢复、列出、清理和检查大型会话存储可以减少不必要的工作,同时保持完整的历史记录可供需要的路径使用。
来源和完整变更列表
LanceDB 结果来自贡献者在一台主机上提供的测量结果,而长期历史减少来自特定的固定装置和工作负载。他们没有建立通用的稳态网关内存节省、浏览器内存节省、更广泛的 CPU 调查的解决方案,或对每个长会话故障的修复。全保真重放、导出和诊断读取器保持不变。
**改进**
- 通过 @jason-allen-oneal 减少可选 LanceDB 内存插件 [#132830](https://github.com/openclaw/openclaw/pull/132830) 的启动内存
**错误修复**
- 在同步或更改页面之前拒绝无效的内存Wiki操作[#123448](https://github.com/openclaw/openclaw/pull/123448) by @wanyongstar
- Stop Memory Wiki 通过重新导入生成的保管库页面 [#125160](https://github.com/openclaw/openclaw/pull/125160) 进行不安全本地扫描,作者为 @rajmp999、@obviyus 和 @YouBeerMe
- 减少长时间本机Codex和技能研讨会会话[#133753](https://github.com/openclaw/openclaw/pull/133753)的可避免的上下文准备内存增长,作者:@steipete
- 释放已驱逐的已保存聊天负载并避免时间戳检查的完整历史记录读取 [#133965](https://github.com/openclaw/openclaw/pull/133965) by @steipete
- Bound 会话负载读取以进行运行状况和状态检查,同时保留 [#134488](https://github.com/openclaw/openclaw/pull/134488)(按 @steipete 和 @elikampf)的准确总数
- 在会话查找、清理和长转录本检查期间减少瞬态网关内存 [#134554](https://github.com/openclaw/openclaw/pull/134554) by @steipete
- 保留原始取消错误以进行待处理的内存响应读取和上传 [#134562](https://github.com/openclaw/openclaw/pull/134562) by @steipete
## 技能
OpenClaw 启动后添加的技能在下一轮更容易学习,包括不再需要重新启动网关的新项目和工作区技能目录。技能元数据仍然严格,但更具可读性,并且可以拒绝或隔离格式错误的技能研讨会提案,而不信任或应用它们。
OpenClaw开始后添加的技能更容易带入下一个回合。无需重新启动网关即可检测到新项目或工作区 `.agents/skills` 目录,Windows 路径大小写不再更改技能所属的源,并且已批准的 `description`、`read_when` 和 `summary` 字段中的冒号丰富的纯文本仍然可读,无需放松结构化元数据。
技能研讨会还可以拒绝或隔离格式错误的提案,而不信任其草稿,而修改、评估或应用该内容的操作仍然无法关闭。当提案丢失、被更改、过大或链接到不安全的地方而没有将恢复路径转变为使用它的权限时,这使得处置成为可能。
来源和完整变更列表
**改进**
- 在以后的回合中检测到新的项目和工作区技能目录,无需重新启动([#134136](https://github.com/openclaw/openclaw/pull/134136))。感谢 @shakkernerd.
**错误修复**
- 保持冒号丰富的批准技能元数据可读,同时保留严格的结构化元数据([#122884](https://github.com/openclaw/openclaw/pull/122884))。感谢 @xydt-tanshanshan 和 @obviyus.
- Kept Windows 路径大小写与更改提示、技能和会话资源的源范围 ([#134052](https://github.com/openclaw/openclaw/pull/134052)) 存在差异。感谢 @vincentkoc.
**安全与信任边界**
- 拒绝或隔离格式错误的技能研讨会提案,同时保持类似应用的操作失败关闭 ([#124488](https://github.com/openclaw/openclaw/pull/124488))。感谢 @woodym-dotcom 和 @obviyus.
## 本机应用程序
Linux 用户现在拥有适用于 x86-64 系统的桌面伴侣,可用作 `.deb` 或 AppImage,它连接到本地或远程网关,并将快速聊天放在系统托盘中或 X11 键盘快捷键后面。本机 Codex 会话还可以通过更少的不相关发现工作来继续、打开、查看或存档,并且兼容的对话可以更可靠地在应用程序服务器重新启动后继续存在。
现在可以继续、在终端中打开、查看或存档大型家庭中的已知本地 Codex 会话,而无需先扫描不相关的推出历史记录,并且在应用程序服务器重新启动后,兼容的对话可以返回到同一线程。新的 Codex 线程还转发仅在已保存的压缩或分支摘要中保留的事实,而令牌计数和有效上下文窗口在 `/new` 之后恢复,而不是看起来像新的零。
来源和完整变更列表
**限制和兼容性说明**
- 初始完整目录发现仍然可能很慢,并且远程、无路径和本机 Swift 验证保持不变。
- 现有的上下文限制仍然适用,并且无法重建现有本机线程中已省略的上下文。
- 链接的OAuth刷新TypeError仍未解决;重新启动证明使用综合身份验证和环回服务。
**错误修复**
- 在 `/new` [#133441](https://github.com/openclaw/openclaw/pull/133441) 之后刷新本机 Codex 令牌计数和上下文窗口 — by [@steipete](https://github.com/steipete)
- 改进 Linux [#133485](https://github.com/openclaw/openclaw/pull/133485) 上的本机 Codex 启动和重新连接准备情况 — 作者:[@steipete](https://github.com/steipete)
- 在大型家庭中打开已知的本机 Codex 会话时避免导入超时 [#134073](https://github.com/openclaw/openclaw/pull/134073) — 作者:[@steipete](https://github.com/steipete)
- 在应用程序服务器重新启动时保留兼容的 Codex 对话 [#134098](https://github.com/openclaw/openclaw/pull/134098) — 感谢 [@climbingNight](https://github.com/climbingNight)
- 将对话切换到新的 Codex 线程时保留保存的摘要 [#134259](https://github.com/openclaw/openclaw/pull/134259) — 作者:[@steipete](https://github.com/steipete)
## 模型和提供商
模型和语音提供者设置现在与实际拥有请求的提供者、登录、语音和传输保持更紧密的一致。目录故障保留最后的健康信息,固定模型使用其预期的重试预算,配置的专用语音端点保持其来源范围,并且在未选择语言时自动语言检测不再插入英语指令。
语音和转录设置现在可以更一致地提供其应有的服务。 OpenRouter 和 DeepInfra 语音遵循配置的语音,Voice Call 和 Talk 可以找到符合条件的配置提供商,Talk 客户端可以使用广告的转录模型,TTS 角色可以使用通过 SecretRefs 存储的凭据,而无需借用其他提供商的密钥。
对于多语言语音笔记,如果不设置语言,现在可以使用自动语言检测,而无需在文字记录中插入英语指令。 xAI 转录可以接受静音作为空结果,并继续配置后备,而私有或自托管 xAI 设置可以使用其配置的地址进行语音发现和缓冲语音。
来源和完整变更列表
**错误修复**
- 尊重 OpenRouter 和 DeepInfra 语音的规范语音 [#117527](https://github.com/openclaw/openclaw/pull/117527)
- 清楚地报告格式错误的 MiniMax 语音响应 [#123245](https://github.com/openclaw/openclaw/pull/123245) — 感谢 @coaiMax
- 发现符合条件的配置语音和转录提供商 [#133507](https://github.com/openclaw/openclaw/pull/133507) — 感谢 @itkdm
- Honor 广告 Talk 转录模型选择 [#133613](https://github.com/openclaw/openclaw/pull/133613) — 感谢 @lsr911
- 在音频语言检测过程中避免隐式英语提示 [#133674](https://github.com/openclaw/openclaw/pull/133674) — 感谢 @synthalorian 和 @aleps001
- Scope 专用 xAI TTS 访问配置的源 [#134214](https://github.com/openclaw/openclaw/pull/134214) — 感谢 @marmar9615-cloud
- 接受静默 xAI 成绩单,以便配置后备可以继续 [#134377](https://github.com/openclaw/openclaw/pull/134377) — 感谢 @lordstryfe
- 解析 TTS 角色 [#89636](https://github.com/openclaw/openclaw/pull/89636) 的 SecretRef 凭证 — 感谢 @SebTardif 和 @pablonunoutande-source
**范围和验证**
这里的私有 xAI 端点支持涵盖发现和缓冲合成,而不是本机 WebSocket 流。这些维修的本地和综合覆盖范围并未确定提供者的可用性、认可质量、权利和广泛的认证操作。
模型列表及其启动的请求现在更频繁地就哪个提供者和登录拥有该作品达成一致。在完整目录中找到的经过验证的 Claude CLI 模型可以在第一轮之前选择,当存储不相关的 Anthropic 凭证时,本机 Claude 登录仍然负责,并且简单的完成保留在准备期间选择的提供者传输,而不是在调度时借用不同的连接。
当提供程序发生故障时,OpenClaw 会保留更多恢复所需的有用上下文。聊天、终端 UI 和网关历史记录可以使用实际处理运行的提供商的指导,格式错误的目录响应不再替换最后一个正常的 OpenRouter 功能数据,并且固定模型使用其完整的相同模型重试和配置文件轮换预算,而无需悄悄切换模型。 Chutes 和 Cerebras 目录估算可以刷新,而不会覆盖操作员设置的费率,但目录条目和估算价格不是帐户权利、付费推理或提供商发票的证明。
来源和完整变更列表
**改进**
- 从准备好的模型事实开始精确模型工作,无需等待提供商范围内的发现([#123432](https://github.com/openclaw/openclaw/pull/123432))。感谢 @xialonglee 和 @obviyus.
- 刷新了 Chutes 和 Cerebras 目录估计值,而不覆盖操作员设置的费率 ([#134311](https://github.com/openclaw/openclaw/pull/134311))。感谢 @steipete.
- 经过认证的Claude CLI目录模型在第一轮之前可选择([#134463](https://github.com/openclaw/openclaw/pull/134463))。感谢 @fuller-stack-dev 和 @goslingmanagment.
**错误修复**
- 迁移符合条件的已停用 xAI 图像模型条目,而不触及不相关的媒体设置 ([#126495](https://github.com/openclaw/openclaw/pull/126495))。感谢 @Schimuneck、@obviyus 和 @tiniecookie.
- 区分空 Gemini 从格式错误的响应中搜索答案,同时保留自动回退 ([#130583](https://github.com/openclaw/openclaw/pull/130583))。感谢 @Darren2030 和 @jailbirt.
- 为 Codex 网桥用户提供针对不可用的选定身份验证配置文件 ([#133355](https://github.com/openclaw/openclaw/pull/133355)) 的准确恢复指导。感谢 @vincentkoc 和 @Jeehut.
- 拒绝了格式错误的 OpenRouter 目录响应,而不替换最后一个正常的功能缓存 ([#133399](https://github.com/openclaw/openclaw/pull/133399))。感谢 @vincentkoc.
- 从格式错误的 JSON ([#133667](https://github.com/openclaw/openclaw/pull/133667)) 中区分出有效的空 xAI 搜索和代码执行结果
- 保留工具提示关闭其下方的Control UI控件,并保留特定的提供程序指南([#133772](https://github.com/openclaw/openclaw/pull/133772))。感谢 @steipete.
- 在报告故障和决定回退时重用准备好的或加载的提供程序挂钩([#133970](https://github.com/openclaw/openclaw/pull/133970))
- 在显示故障指导时使用拥有运行的提供程序 ([#134029](https://github.com/openclaw/openclaw/pull/134029))
- 保持健康的本机 Claude 登录路由不被无关的 Anthropic 凭证 ([#134030](https://github.com/openclaw/openclaw/pull/134030)) 取代。感谢 @obviyus 和 @rayseling.
- 在聊天失败指导中保留安全提供者和模型事实,而不暴露原始响应([#134103](https://github.com/openclaw/openclaw/pull/134103))。感谢 @obviyus.
- 对固定模型使用完整的同模型重试预算,而不更改其回退策略 ([#134111](https://github.com/openclaw/openclaw/pull/134111))。感谢 @obviyus.
- 通过简单完成调度保留了准备好的提供者传输和身份验证([#134521](https://github.com/openclaw/openclaw/pull/134521))
**文档**
- 解释了合格的模型未找到后备行为以及用于诊断该行为的字段 ([#130663](https://github.com/openclaw/openclaw/pull/130663))。感谢 @MonkeyLeeT 和 @geekforlife.
## 自动化和调度
运行时间较长的工作更容易掌控,而不会忘记谁拥有它。支持的活动任务可以接受权限更改,人工批准和更正领先于代理到代理的流量,Stop 捕获更多选定的子工作,计划的作业报告实际解决的结果,而不是单独将调度视为成功。
支持本机和Codex工作现在可以从Control UI当它处于活动状态时。该界面显示正在应用更改,关闭旧的批准,并将对话保持在适当的位置,而不是让您手动停止并继续任务。
在繁忙的会话中,人工批准和更正也会优先于代理到代理的流量,而“停止”会捕获您选择的任务下选定的正在运行和等待的帮助代理工作。无法交付结果的已完成帮助程序工作会留下一个可恢复的后续警报,会话之间发送的消息会说明它们是已排队还是已添加到已正在进行的工作中。
来源和完整变更列表
权限更改不会重播原始请求或撤消已完成的效果。仍需要首先停止活动的 CLI- 支持和全代理工作线程运行。群体取消确认并不保证立即清理,排队或引导准入并不能证明目标任务已完成。
**错误修复**
- 通过 @steipete 和 @jalehman 将支持的权限更改应用于活动本机和 Codex 工作 [#132407](https://github.com/openclaw/openclaw/pull/132407)
- 在繁忙会话中,将人工消息优先于座席到座席流量 [#132738](https://github.com/openclaw/openclaw/pull/132738)(按 @sylvesterkaczmarek、@obviyus 和 @ewrurwteurwU)
- 停止选定的正在运行和排队的 Swarm 收集器及其确切的父级 [#133076](https://github.com/openclaw/openclaw/pull/133076) by @steipete
- 当分离的子代理完成交付耗尽时,保留一个可恢复警报 [#133192](https://github.com/openclaw/openclaw/pull/133192)(按 @shojikumaru、@vincentkoc 和 @potterdigital)
- 区分排队会话发送与活动会话转向和稍后的公告状态 [#133926](https://github.com/openclaw/openclaw/pull/133926),其中包括 @VACInc 和 @RichChen01 的贡献
**文档**
- 通过 @steipete 阐明 Swarm 进度如何在 Control UI 和本机客户端 [#133916](https://github.com/openclaw/openclaw/pull/133916) 上显示和清除
当多个代理共享一个 OpenClaw 安装时,回复、命令、任务、插件、媒体和连接的对话现在更一致地保留在拥有它们的代理中。相同的所有权遵循缩短的对话、独立的评论和编码工具的工作,因此一个代理不太可能回答另一代理的上下文或权限。
无人值守的工作现在可以找到并组织同一代理拥有的其他会话,而无需进行额外的设置,并且当不同的代理恢复、控制、取消或清理它时,连接的编码会话可以将同名的工作保持独立。
来源和完整变更列表
非沙盒会话工具现在默认为跨同一代理的可见性。在共享代理上,这可能会暴露其他用户的对话,因此需要隔离的操作员应选择 `tree` 或 `self`,或使用单独的代理。当单独的运行共享无范围策略密钥时,策略所有权不会添加执行级别隔离。较旧的裸 ACPX 历史要求网关在 `openclaw doctor --fix` 之前停止,并且不明确的记录保持不变。
**改进**
- 默认情况下让非沙盒自动化在同一代理拥有的会话之间工作 [#133469](https://github.com/openclaw/openclaw/pull/133469) by @steipete
**错误修复**
- Keep 与其预期所有者 [#133461](https://github.com/openclaw/openclaw/pull/133461) by @steipete 解除对话绑定、插件路由和编号子代理命令
- 将反弹对话移动到新会话,并将全局子代理视图范围移动到选定代理 [#133578](https://github.com/openclaw/openclaw/pull/133578)(按 @steipete)
- 在全局会话、任务交付、插件、媒体和通道绑定中保留代理所有权 [#133715](https://github.com/openclaw/openclaw/pull/133715) by @steipete
- 通过审查和压缩保留原始代理的沙箱和工具策略所有者 [#133912](https://github.com/openclaw/openclaw/pull/133912) by @steipete
- 通过 @steipete 保留与所选代理 [#134314](https://github.com/openclaw/openclaw/pull/134314) 的 ACP 操作和同名会话
自动化结果现在与实际完成的工作更加一致。等待计划运行的脚本在命令退出之前接收完整的机器可读结果,唤醒代理的作业记录工作结果,而不是将唤醒本身视为成功,屏幕阅读器和工具提示在每行操作后面命名计划作业。
来源和完整变更列表
普通系统事件 cron 仍然仅调度。等待确定的结果适用于心跳支持的工作,并且不会更改其他地方的调度、运行历史记录或退出代码语义。
**错误修复**
- Flush 在保留命令成功或失败退出之前完成等待 cron JSON [#133661](https://github.com/openclaw/openclaw/pull/133661) by @steipete
- 在 Cron 行操作标签和工具提示中包含计划作业名称 [#134225](https://github.com/openclaw/openclaw/pull/134225) by @SunnyShu0925
- 根据 @fuller-stack-dev 和 @goslingmanagment 确定的心跳结果 [#134464](https://github.com/openclaw/openclaw/pull/134464) 记录心跳支持的计划作业
- 在支持的 Control UI 语言环境中本地化指定的计划自动化操作 [#134600](https://github.com/openclaw/openclaw/pull/134600)
## 浏览器和计算机使用
即使网关未运行,浏览器控制也可以通过受支持的 macOS 和 Linux 版本上的配对本地中继保持可用,而托管页面会更快地公开有用的控件。云和远程工作可以重用准备好的项目,更有意地停止和清理,重新启动后恢复编辑,并更清楚地报告失败的沙箱或工作阶段。
当代理编辑或搜索工作区时,磁盘上实际存在的更多内容现在会在旅途中幸存下来。补丁保留未触及的内容和行结尾,仅格式化编辑不再被默默丢弃,搜索结果保留以前看起来乱码的文件和不寻常文件名的可读上下文,并且当该文件或目录存在时,以 `@` 开头的本地名称保持原义。
正常回复还尊重每个代理设置显示的工具进度,并且普通请求不太可能被转移到与当前模型无关的答案。
来源和完整变更列表
文字替换行缩进保留在补丁修复之外,并且 grep 工作并不要求对极大上下文请求的一般保护。当不存在文字本地目标时,`@` 简写仍然适用,而远程和沙箱后端保留其先前的路径行为。原始 shell 命令文本仍然是单独的显示控件,并且集中的 MiniMax 证据并不能消除提供程序的可变性。
**错误修复**
- 在代理修补 [#124418](https://github.com/openclaw/openclaw/pull/124418) 期间保留未触及的字节、行结尾和最终换行状态(通过 @synthalorian、@obviyus 和 @yetval)
- 重用未更改的代理工具描述摘要,同时保持代码模式描述最新 [#129145](https://github.com/openclaw/openclaw/pull/129145) by @quangtran88
- 在代理 grep 结果中保留解码的 UTF-16 上下文和准确路径 [#131621](https://github.com/openclaw/openclaw/pull/131621) by @xialonglee
- 应用和预览仅格式化编辑,同时保留真正的无操作检测 [#133320](https://github.com/openclaw/openclaw/pull/133320) by @steipete
- 从代理工具合同 [#133336](https://github.com/openclaw/openclaw/pull/133336) 中删除忽略的权限和存档选项(作者:@steipete)
- 在代理运行开始后拒绝捆绑语言服务器请求,关闭 [#133340](https://github.com/openclaw/openclaw/pull/133340) by @qingminglong
- 保留以字节形式报告的文件名的 grep 匹配 [#133358](https://github.com/openclaw/openclaw/pull/133358) by @ly85206559
- 在正常回复期间尊重每个代理的工具进度详细设置 [#133788](https://github.com/openclaw/openclaw/pull/133788) by @marmar9615-cloud
- 保留以 `@` [#133815](https://github.com/openclaw/openclaw/pull/133815) 开头的文字本地会话路径(按 @qingminglong)
- 保持模型身份指导,避免转移普通代理请求 [#134504](https://github.com/openclaw/openclaw/pull/134504) by @steipete
在受支持的 macOS 和 Linux 扩展版本上,即使网关未运行,配对的 Chrome 扩展也可以唤醒经过身份验证的本地中继,并且网关可以稍后加入该中继,而无需从其他经过身份验证的客户端夺走浏览器会话。 Chrome Web Store v2.2.0 尚未建立,Windows 仍需要手动中继设置,并且通过浏览器 CLI 的命令仍需要正在运行的网关。
连接后,托管 Chromium 可以返回可操作的页面控件,而无需等待整个请求,并且浏览器自动化可以在页面运行时保留更多嵌套的工作人员和框架。
来源和完整变更列表
**改进**
- Let 支持的 Chrome 扩展构建唤醒本地中继,无需运行网关 [#128379](https://github.com/openclaw/openclaw/pull/128379) by [@steipete](https://github.com/steipete)
**错误修复**
- 保留嵌套浏览器工作线程和 iframe 会话 [#133571](https://github.com/openclaw/openclaw/pull/133571) by [@steipete](https://github.com/steipete)
- 从 [@vincentkoc](https://github.com/vincentkoc) 的合格托管 Chromium 角色快照 [#133614](https://github.com/openclaw/openclaw/pull/133614) 返回可操作的控件,以及来自 [@josephbergvinson](https://github.com/josephbergvinson) 的问题报告
- 分区浏览器按连接源中继登录能力 [#134241](https://github.com/openclaw/openclaw/pull/134241) by [@mmaps](https://github.com/mmaps)
**证据限度**
托管快照快捷方式仅适用于符合条件的主机请求,缺失上下文浏览器的情况是通过故障注入重现的,并且共享一个源的异常大的合法连接突发可能仍然需要交错。
云会话可以准备一次 Git 项目和运行时,然后让以后的会话重用经过验证的片段,同时仍然接收当前的编辑、附件和新注册。第一个会话仍然执行准备和捕获工作,因此改进是减少后续会话的重复设置,而不是承诺的启动时间。
Crabbox 项目快照现在等待准备好的映像在工作人员注册之前稳定下来,在恢复中保留失败或不确定的捕获,而不是让工作继续针对可能尚未准备好的映像。
来源和完整变更列表
**改进**
- 重复使用为以后的会话准备的云项目 [#133447](https://github.com/openclaw/openclaw/pull/133447) by [@steipete](https://github.com/steipete)
- 通过 [@steipete](https://github.com/steipete) 减少第一个云运行时存档 [#133725](https://github.com/openclaw/openclaw/pull/133725) 的冗余准备
- 缩小云引导存档和峰值内存使用 [#133822](https://github.com/openclaw/openclaw/pull/133822) by [@steipete](https://github.com/steipete)
- 在准备好的工作区激活期间重复使用经过验证的哈希值 [#134026](https://github.com/openclaw/openclaw/pull/134026) by [@steipete](https://github.com/steipete)
- 重用来自热项目快照 [#134326](https://github.com/openclaw/openclaw/pull/134326) 的经过验证的工作人员存档,作者:[@steipete](https://github.com/steipete)
**错误修复**
- 简化准备工作人员启动并保留引导程序存档权限 [#134043](https://github.com/openclaw/openclaw/pull/134043) by [@steipete](https://github.com/steipete)
- Worker 注册前的 Settle Crabbox 项目快照 [#134181](https://github.com/openclaw/openclaw/pull/134181) by [@steipete](https://github.com/steipete)
**证据限度**
云计时证据要么使用综合项目,要么将本地准备工作与提供商工作相结合,因此它不会建立特定的端到端启动减少。协调器保留的 `checkpoint_pending` 响应仍然依赖于单独的 Crabbox CLI 修复,该修复未按此处发布的方式建立。
现在停止会提前关闭排队的工作和新工作,中断支持的配置,等待其拥有的资源在报告成功之前完成清理,并且可以在网关重新启动后恢复接受的清理。
从未到达工作线程的初始消息仍标记为未发送以进行有意重试,而重复的停止请求共享相同的清理工作,而不是开始竞争的拆卸工作。
来源和完整变更列表
**错误修复**
- 停止排队的云工作并保留重新启动时取消的轮次 [#133241](https://github.com/openclaw/openclaw/pull/133241) by [@steipete](https://github.com/steipete)
- 释放闲置云桌面并等待清理后再重新使用 [#133451](https://github.com/openclaw/openclaw/pull/133451) by [@steipete](https://github.com/steipete)
- 在停止期间等待 SSH 工作区清理 [#133472](https://github.com/openclaw/openclaw/pull/133472) by [@steipete](https://github.com/steipete)
- 在无关的提供商检查完成之前停止云工作 [#133476](https://github.com/openclaw/openclaw/pull/133476) by [@steipete](https://github.com/steipete)
- 当工作线程停止时取消支持的云配置 [#133735](https://github.com/openclaw/openclaw/pull/133735) by [@steipete](https://github.com/steipete)
- Fence 取消了工作包安装和发布 [#133976](https://github.com/openclaw/openclaw/pull/133976) by [@steipete](https://github.com/steipete)
- 在保留窗口 [#134088](https://github.com/openclaw/openclaw/pull/134088) 后使未使用的标准目录 Crabbox 快照过期(按 [@steipete](https://github.com/steipete))
**证据限度**
提供程序拆卸仍然是异步的,因此无法立即中断的提供程序将保持拥有状态,直到其回调解决并且最终发布可能需要一些时间。 Stop 并不承诺每个提供商或机器立即消失。
云会话可以在网关重新启动后恢复合法的工作区编辑,并且过时的结果现在会变成可恢复的结果或明显的故障,而不是让会话陷入等待完成的状态。归档、删除和恢复操作也可以完成,而不会陷入早期工作人员移动的困境。
接受的浏览器后续操作在重新启动或重新加载后仍然有效,并且交付收据可以确认网关已消耗的输入。交付仍不确定的输入将被保留以进行显式重新发送,而不是自动重播,而云执行错误则使原始故障保持可见,并在远程编辑可能未返回时单独报告工作区恢复问题。
来源和完整变更列表
**错误修复**
- Honor 云工作线程会话操作中的网关会话策略 [#131669](https://github.com/openclaw/openclaw/pull/131669) by [@anyech](https://github.com/anyech) 和 [@sallyom](https://github.com/sallyom)
- 在过时的云工作人员拆卸过程中解决可恢复的结果 [#132128](https://github.com/openclaw/openclaw/pull/132128) by [@jalehman](https://github.com/jalehman)
- 在网关重新启动时保留已接受的浏览器后续操作 [#133457](https://github.com/openclaw/openclaw/pull/133457) by [@steipete](https://github.com/steipete)
- 防止云会话生命周期操作在工作人员移动后挂起 [#133551](https://github.com/openclaw/openclaw/pull/133551) by [@steipete](https://github.com/steipete)
- 通过网关重新启动恢复云会话并撤销父权限 [#133728](https://github.com/openclaw/openclaw/pull/133728) 的贡献来自 [@shakkernerd](https://github.com/shakkernerd)
- 保留云执行故障并报告其他恢复故障 [#134200](https://github.com/openclaw/openclaw/pull/134200),来自 [@Takhoffman](https://github.com/Takhoffman) 的贡献
- Scope 将失败工作线程恢复到请求的云工作线程 [#134448](https://github.com/openclaw/openclaw/pull/134448)(作者:[@steipete](https://github.com/steipete))
**证据限度**
一些恢复路径具有集中、环回或综合提供商覆盖范围,而不是新鲜的实时云提供商证明。证据支持上述会话托管和恢复行为,而不是广泛的提供商可靠性。
在受支持的 Python 3.9 环境上运行的远程沙箱现在保留完整的文件和附件字节,而来自 Codex 沙箱请求的受保护的 HTTP 308 重定向则保留其请求正文和现有目标检查。
当可选的容器托管或 Crabbox 引导程序失败时,操作员还会收到一条经过编辑的错误,该错误标识了失败的阶段,而不是看起来准备就绪的工作程序或通用中止消息。
来源和完整变更列表
**错误修复**
- 通过 [@steipete](https://github.com/steipete) 保留远程沙箱文件并在 Python 3.9 [#133580](https://github.com/openclaw/openclaw/pull/133580) 上受保护的 HTTP 308 重定向
- 报告由 [@steipete](https://github.com/steipete) 从本机 macOS 工作线程 [#133655](https://github.com/openclaw/openclaw/pull/133655) 编辑的容器托管启动失败
- 通过 [@steipete](https://github.com/steipete) 识别 Crabbox 工作引导程序 [#133663](https://github.com/openclaw/openclaw/pull/133663) 的失败阶段
**证据限度**
这些修复的范围仅限于受支持的 Python 3.9 远程沙箱和可选的 macOS 或 Crabbox 托管路径,而不是扩大受支持的沙箱或提供商矩阵。容器托管诊断是通过受控故障而不是本机应用程序和实时容器守护程序运行来验证的。
## 插件和集成
插件现在可以在常见的封装布局中更可靠地加载和更新,同时保留明确的引脚和功能审查。医生和注册表提供更有用的修复指导,无需猜测,Beam 转录共享使对话顺序、发布者身份和接收者更改更加清晰。
打包的 TypeScript 插件现在可以在常见的构建布局中更一致地选择可运行的编译条目,并且文件 URL 入口点可以通过本机加载器加载和刷新,包括之前失败的 Windows 路径。精确的测试版更新使符合条件的官方插件与实际安装的测试版核心保持一致,而显式选择器和第三方引脚保持不变,丢失的匹配工件仍然是可见的警告,而不是对齐的证明。
等待功能审查的托管更新会保留以前的插件并在重新启动之前停止,而不产生输出的 npm 故障现在可以识别结束命令的超时、信号或退出。已发布的插件 SDK 导入和较旧的命令类别在升级过程中也保持兼容,而不会恢复已停用的对接功能。
来源和完整变更列表
**改进**
- 网关目录中标准化的旧插件命令类别 ([59512b4](https://github.com/openclaw/openclaw/commit/59512b43d41845fb34b02e445384b4c13af90004))
- 保留的已发布插件 SDK 跨升级导入和旧命令类别 ([d405013](https://github.com/openclaw/openclaw/commit/d405013f4fadbe00374b61f116b2ec6bb3e1ac14))
- 允许在修复不相关的主机配置时运行插件包创作命令 ([#133304](https://github.com/openclaw/openclaw/pull/133304))。感谢 @ruel225.
- 在网关运行期间重复使用准备好的插件元数据,同时保留环境感知刷新([#133651](https://github.com/openclaw/openclaw/pull/133651))
- 为配置的加载路径插件导入声明的提供程序和通道环境密钥([#134437](https://github.com/openclaw/openclaw/pull/134437))
**错误修复**
- 跨常见编译布局加载了打包的TypeScript插件,并解释了缺少的运行时条目([#117199](https://github.com/openclaw/openclaw/pull/117199))。感谢 @steipete.
- 在更新期间保持合格的官方插件与确切的测试版核心版本保持一致([#124415](https://github.com/openclaw/openclaw/pull/124415))。感谢 @synthalorian 和 @chac4l.
- 保留显式的npm引脚,同时Doctor修复过时的运行时插件记录([#128250](https://github.com/openclaw/openclaw/pull/128250))。感谢 @SunnyShu0925、@obviyus 和 @sblindt.
- 已加载文件-URL通过本机加载器的插件入口点,包括缓存刷新行为([#133337](https://github.com/openclaw/openclaw/pull/133337))。感谢 @sunlit-deng 和 @easyteacher.
- 解决了 MCP 结构化输出模式 ([#133572](https://github.com/openclaw/openclaw/pull/133572)) 中的国际化、相对、转义和嵌套引用。感谢 @steipete.
- 报告了静默 npm 插件失败后的超时、信号或退出 ([#133845](https://github.com/openclaw/openclaw/pull/133845))。感谢 @aniruddhaadak80.
**安全与信任边界**
- 已停止托管更新且网关重新启动,而插件功能同意仍未解决 ([#134183](https://github.com/openclaw/openclaw/pull/134183))。感谢 @obviyus 和 @BrunoCerberus.
**文档**
- 澄清了哪个插件提供商表面拥有模型身份、传输、规范化和后备资格([#133401](https://github.com/openclaw/openclaw/pull/133401))
插件修复在拒绝猜测时更有用。 Doctor 和注册表 CLI 现在显示哪些持久插件记录不同,在报告成功之前验证手动刷新,并且仅建议存在的确切 npm 修复目标。在确认健康的配置路径替换后,也可以删除经过验证的陈旧链接插件记录,而不会削弱卸载所有权检查。
两个信任边界仍然很重要。迁移的兼容性许可名单保留了捆绑的提供商和明确的拒绝,但落地修复保留了围绕混合资格和范围环境传播的自动审查问题。通过配置的路径选择的捆绑插件也会在构建和未构建状态下保持其捆绑行为,但忽略捆绑树下的 `dist` 或 `node_modules` 后代可能仍会继承捆绑信任,因此此版本不会将该嵌套路径边界建立为安全的。
来源和完整变更列表
**改进**
- Made 插件运行状况检查在人类和 JSON 模式下返回可靠的 shell 退出状态 ([#133431](https://github.com/openclaw/openclaw/pull/133431))。感谢 @PollyBot13 和 @obviyus.
**错误修复**
- 将插件修复命令限制为注册表确认的确切目标([#133617](https://github.com/openclaw/openclaw/pull/133617))。感谢 @vladimirkrdzic 和 @anaman.
- 报告插件注册表持久性差异并在声明恢复之前验证刷新([#133963](https://github.com/openclaw/openclaw/pull/133963))。感谢 @obviyus 和 @yubingjiaocn.
- 在确认健康的配置路径替换后删除了已验证的过时链接插件记录 ([#133991](https://github.com/openclaw/openclaw/pull/133991))。感谢 @ZengWen-DT 和 @obviyus.
**安全与信任边界**
- 恢复了迁移后的允许列表的捆绑提供商兼容性,同时保留显式拒绝,并保留了围绕资格和范围环境传播的自动审核问题 ([#123416](https://github.com/openclaw/openclaw/pull/123416))。感谢 @lonexreb、@obviyus 和 @bradenmcleish.
- 跨构建状态的配置路径的保留捆绑插件行为,对于捆绑树下被忽略的 `dist` 或 `node_modules` 后代存在未解决的信任问题 ([#133584](https://github.com/openclaw/openclaw/pull/133584))
共享的 [Beam](/plugins/beam) 成绩单现在将问题保留在答案之前,并显示发布快照的经过验证的人员,而不是借用查看者的身份。
自动共享可保持对话的可读性,同时省略推理和工具详细信息、隐藏已知凭据,并显示何时遗漏了部分记录。更改接收器会开始将新的内容传送到新的目标,而不会携带未完成的更新,并且可读链接可以使用会话标题,而旧链接仍然打开相同的记录。
来源和完整变更列表
**改进**
- 跨受支持的 Control UI 区域设置本地化共享会话链接错误 [#133433](https://github.com/openclaw/openclaw/pull/133433)
- 在 Beam 共享链接中使用可读会话名称 [#133463](https://github.com/openclaw/openclaw/pull/133463)
**错误修复**
- 跨 Beam、Pi 和 OpenCode 目录保留对话顺序 [#133382](https://github.com/openclaw/openclaw/pull/133382)
- 在共享 Beam 成绩单上保留经过验证的发布者 [#133425](https://github.com/openclaw/openclaw/pull/133425)
- 省略自动Beam共享中的Claude推理和工具内容[#133460](https://github.com/openclaw/openclaw/pull/133460)
- 当接收器发生变化时重新启动波束共享 [#133533](https://github.com/openclaw/openclaw/pull/133533) — 感谢 @steipete
**范围说明**
- Publisher 归属无法识别每条消息的作者,较旧的匿名快照需要经过身份验证的重新上传才能获得归属。
- 自动掩蔽比 Beam 的手动出版物清理器更窄,较旧的配对节点需要更新混合 Claude 转录本。
- 接收器更改行为已通过综合存储和授权进行验证,并且较新的链接行为并未确定团队服务器已随其部署。
## 安全与隐私
现在,一些较低级别的保护措施失效得更早,泄露的信息也更少。超大的 MCP 响应和事件在解析之前受到限制,例行诊断将 ClawDock 凭据保留在外,长期秘密编辑在其支持的大小内保持安全,可选图像组件移动到修补的依赖项版本而不强制执行。
网关集成现在在解析超大 MCP HTTP 响应或单个 SSE 事件之前拒绝它,而健康的长期流可以继续超过该总量。 ClawDock 检查将凭证值和前缀排除在普通诊断之外,并且编辑处理接受的长秘密而不会崩溃。
可选的图像解码现在使用修补的 Sharp 0.35.4 和 libheif 1.23.2 组件,而不强制使用 Sharp。独立的 `@openclaw/memory-lancedb` 安装仍然可以通过其可选的 Transformers 路径解析较旧的 Sharp,因此依赖性修复不应被解读为普遍覆盖。 Bun 1.4 网关连接还使用已安装的 npm WebSocket 接收器。
来源和完整变更列表
Bun 本机包证明与准备好的候选版本绑定,并且括号中的 IPv6 路线是通过 URL 构造和合成往返而不是完整的经过身份验证的浏览器流程来证明的。
**错误修复**
- Kept 插件托管的表面可通过括号内的 IPv6 主机 [#134050](https://github.com/openclaw/openclaw/pull/134050) — 感谢 @yangxiansheng
- 使用已安装的 npm WebSocket 接收器进行 Bun 1.4 [#134282](https://github.com/openclaw/openclaw/pull/134282) 下的网关连接 — 感谢 @steipete
**安全和依赖项更新**
- 在解析 [#123194](https://github.com/openclaw/openclaw/pull/123194) 之前限制单个 MCP HTTP 响应和 SSE 事件 — 感谢 @SebTardif、@obviyus 和@aniruddhaadak80
- 将 ClawDock 凭证保留在常规配置诊断之外 [#133547](https://github.com/openclaw/openclaw/pull/133547)
- 在其支持的大小内使长期秘密诊断编辑安全 [#134168](https://github.com/openclaw/openclaw/pull/134168)
- 修补了可选图像组件,同时保留独立内存插件夏普边界 [`b3c92c4`](https://github.com/openclaw/openclaw/commit/b3c92c465943fed97be26969200190560165e78f)
## 维护者和内部变更
v2026.8.2 中的另外 382 个更改主要影响构建、测试、记录和发布 OpenClaw 的人员,而不是日常产品体验。它们涵盖了 CI 和测试维护、内部重构、发布和包验证、生成的元数据、文档维护和其他幕后工作,因此它们不参与上述发布故事,同时保留完整记录的一部分。
这就完成了 v2026.8.2. 中所有 794 个分析 PR 和提交的统计。下面的折叠列表包含 382 个维护者专用的更改,这些更改不属于面向用户的产品部分。
来源和完整变更列表
**维护者和内部变更**
- 插件和客户端开发人员获得了外部验证选择的有界表示合同,但尚不存在完整的用户流程。 [#113517](https://github.com/openclaw/openclaw/pull/113517) — 感谢 [@Guardiola31337](https://github.com/Guardiola31337)
- 生成的文档地图停止将较长嵌套代码围栏内的标题视为页面部分。 [#130207](https://github.com/openclaw/openclaw/pull/130207) — 感谢 [@qingminglong](https://github.com/qingminglong)
- 维护者有一个由未处理错误和重试路径共享的行为保留错误原因读取器。 [#130280](https://github.com/openclaw/openclaw/pull/130280) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- 有限源测试运行每次调用编译一个私有子进程生成,同时保留操作员运行时行为。 [#132716](https://github.com/openclaw/openclaw/pull/132716) — 感谢 [@steipete](https://github.com/steipete)
- Plugin 挂钩调度共享一个内部绑定器,而不更改插件注册或运行时行为。 [#133293](https://github.com/openclaw/openclaw/pull/133293) — 感谢 [@steipete](https://github.com/steipete)
- 支持的多进程 Vitest 运行保留并合并完整的报告证据,而不是覆盖除最终子报告之外的所有内容。 [#133309](https://github.com/openclaw/openclaw/pull/133309) — 感谢 [@steipete](https://github.com/steipete)
- H 大量历史读取可重用准备好的事实并减少重复工作,同时保留结果。 [#133316](https://github.com/openclaw/openclaw/pull/133316) — 感谢 [@steipete](https://github.com/steipete)
- 2026.8.1 发布工作流程可以将所有者批准的 Telegram 豁免记录为已放弃而不是通过。 [#133321](https://github.com/openclaw/openclaw/pull/133321) — 感谢 [@steipete](https://github.com/steipete)
- 目录过滤的 Vitest 运行保留项目所有权并隔离非隔离文件之间的共享状态。 [#133322](https://github.com/openclaw/openclaw/pull/133322) — 感谢 [@steipete](https://github.com/steipete)
- Planner 测试可靠地恢复范围环境标志,而无需更改规划器行为。 [#133325](https://github.com/openclaw/openclaw/pull/133325) — 感谢 [@steipete](https://github.com/steipete)
- 文本命令处理程序现在具有一种权威的内部排序,并且命令行为没有变化。 [#133332](https://github.com/openclaw/openclaw/pull/133332) — 感谢 [@steipete](https://github.com/steipete)
- Doctor 转录本导入避免对接受的事件进行两次哈希处理,同时保留存储的数据和重复的语义。 [#133350](https://github.com/openclaw/openclaw/pull/133350) — 感谢 [@steipete](https://github.com/steipete)
- 性能工作流程测试重用存储库并保留取消信号,而不改变产品行为。 [#133356](https://github.com/openclaw/openclaw/pull/133356) — 感谢 [@steipete](https://github.com/steipete)
- 已完成的 Telegram 发布测试是建议性的,而其实际结果仍然可见,并且非 Telegram 门仍然严格。 [#133357](https://github.com/openclaw/openclaw/pull/133357) — 感谢 [@steipete](https://github.com/steipete)
- 提示和插件元数据准备重用可用的工作,而不更改提示字节或目录。 [#133362](https://github.com/openclaw/openclaw/pull/133362) — 感谢 [@steipete](https://github.com/steipete)
- Plugin 注册生命周期策略更简单,同时保留相同的支持调用和兼容性路径。 [#133364](https://github.com/openclaw/openclaw/pull/133364) — 感谢 [@steipete](https://github.com/steipete)
- Plugin 发布等待 Git 子进程树耗尽,然后再进行信任检查和包读回。 [#133368](https://github.com/openclaw/openclaw/pull/133368) — 感谢 [@steipete](https://github.com/steipete)
- Testbox 在租赁或远程结账工作开始之前拒绝误导性的非同步运行。 [#133373](https://github.com/openclaw/openclaw/pull/133373) — 感谢 [@steipete](https://github.com/steipete)
- Crabbox 指南具有一个可移植源以及特定于存储库的设置,并且任务拥有的工作树不再需要额外的确认。 [#133375](https://github.com/openclaw/openclaw/pull/133375) — 感谢 [@steipete](https://github.com/steipete)
- Transcript 以更少的数据库工作导入更新初始化的会话窗口,同时保留存储的数据语义。 [#133378](https://github.com/openclaw/openclaw/pull/133378) — 感谢 [@steipete](https://github.com/steipete)
- 大型转录本导入可减少水印数据库开销,同时保留历史记录、身份、搜索和迁移结果。 [#133403](https://github.com/openclaw/openclaw/pull/133403) — 感谢 [@steipete](https://github.com/steipete)
- Control UI 发件箱保管和草稿持久性共享更简单的内部所有权,同时保留现有的离线、重新加载和多选项卡行为。 [#133409](https://github.com/openclaw/openclaw/pull/133409) — 感谢 [@steipete](https://github.com/steipete)
- 当重写的贡献者历史记录可能会暴露贡献者电子邮件地址时,维护器压缩会失败关闭。 [#133411](https://github.com/openclaw/openclaw/pull/133411) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- Settings 对支持的产品工作流程使用一个锁定的存储加载路径。 [#133413](https://github.com/openclaw/openclaw/pull/133413) — 感谢 [@obviyus](https://github.com/obviyus)
- Plugin 注册表快照测试重复使用一种规范装置,而不改变生产行为。 [#133420](https://github.com/openclaw/openclaw/pull/133420) — 感谢 [@steipete](https://github.com/steipete)
- Release 检查列表可以将经过验证的受保护标签 npm 预检源携带到发布命令生成中,而无需切换到主程序。 [#133423](https://github.com/openclaw/openclaw/pull/133423) — 感谢 [@steipete](https://github.com/steipete)
- 完整版本验证从文件中写入大量完整的证据清单,而不是超出操作系统参数限制。 [#133426](https://github.com/openclaw/openclaw/pull/133426) — 感谢 [@steipete](https://github.com/steipete)
- Git 工作流程夹具测试运行速度更快,并在不改变产品行为的情况下公开更好的故障文本。 [#133427](https://github.com/openclaw/openclaw/pull/133427) — 感谢 [@steipete](https://github.com/steipete)
- Publish-工作流测试重用隔离的存储库快照以加快设置速度,而无需更改工作流行为。 [#133438](https://github.com/openclaw/openclaw/pull/133438) — 感谢 [@steipete](https://github.com/steipete)
- Skill Workshop 操作重复使用一个内部文本结果信封,而不更改可见或结构化结果。 [#133453](https://github.com/openclaw/openclaw/pull/133453) — 感谢 [@steipete](https://github.com/steipete)
- Large npm 版本可以打包所有编辑注释,同时将超大贡献记录链接到确切的标签并逐字节恢复源变更日志。 [#133454](https://github.com/openclaw/openclaw/pull/133454) — 感谢 [@steipete](https://github.com/steipete)
- 诊断生命周期簿记在保留行为的同时执行更少的重复扫描。 [#133466](https://github.com/openclaw/openclaw/pull/133466) — 感谢 [@steipete](https://github.com/steipete)
- 扩展稳定性能验证使用修复后的 Kova 评估器合约。 [#133467](https://github.com/openclaw/openclaw/pull/133467) — 感谢 [@RomneyDa](https://github.com/RomneyDa)
- 核心发布发布可以独立于单独批准的Android发布完成。 [#133471](https://github.com/openclaw/openclaw/pull/133471) — 感谢 [@steipete](https://github.com/steipete)
- Chat 渲染和不确定发送恢复共享较少的重复内部路径,且预期行为不变。 [#133474](https://github.com/openclaw/openclaw/pull/133474) — 感谢 [@steipete](https://github.com/steipete)
- 分组命令队列选择重用容量事实并保留调度行为。 [#133491](https://github.com/openclaw/openclaw/pull/133491) — 感谢 [@steipete](https://github.com/steipete)
- 性能文档正确区分跳过的凭证不合格候选者与丢失密钥故障和并发源探测。 [#133492](https://github.com/openclaw/openclaw/pull/133492) — 感谢 [@steipete](https://github.com/steipete)
- Failed Control UI 构建保留其原始的可操作错误,而不是使用缺失资产输出来掩盖它。 [#133494](https://github.com/openclaw/openclaw/pull/133494) — 感谢 [@steipete](https://github.com/steipete)
- Release 操作员可以对已发布的常规稳定版本使用受保护的 Docker-only 恢复。 [#133498](https://github.com/openclaw/openclaw/pull/133498) — 感谢 [@steipete](https://github.com/steipete)
- Failed Docker 自升级验证保留编辑阶段和 RPC 证据,而不掩盖原始故障。 [#133505](https://github.com/openclaw/openclaw/pull/133505) — 感谢 [@steipete](https://github.com/steipete)
- 扩展稳定插件预发布检查在两个验证阶段都保留冻结的分支上下文。 [#133506](https://github.com/openclaw/openclaw/pull/133506) — 感谢 [@RomneyDa](https://github.com/RomneyDa)
- Control UI 聊天渲染的重叠内部实现较少,预期行为不变。 [#133508](https://github.com/openclaw/openclaw/pull/133508) — 感谢 [@steipete](https://github.com/steipete)
- Claw 更新回滚失败共享有序收集逻辑,而不更改回滚策略或报告。 [#133509](https://github.com/openclaw/openclaw/pull/133509) — 感谢 [@steipete](https://github.com/steipete)
- Agent 运行避免准备未使用的工具文本并解析未使用的技能路径,同时保留可见行为。 [#133512](https://github.com/openclaw/openclaw/pull/133512) — 感谢 [@steipete](https://github.com/steipete)
- Loaded 插件注册表读取避免了集中提供程序和只读工作流程中的急切加载程序导入。 [#133518](https://github.com/openclaw/openclaw/pull/133518) — 感谢 [@steipete](https://github.com/steipete)
- 压缩计算更简单,同时编写器防护、用法和上下文语义保持不变。 [#133521](https://github.com/openclaw/openclaw/pull/133521) — 感谢 [@steipete](https://github.com/steipete)
- 可信版本检查选择入口点并构建由较旧的冻结候选者提供的配置文件。 [#133523](https://github.com/openclaw/openclaw/pull/133523) — 感谢 [@RomneyDa](https://github.com/RomneyDa)
- Installer-smoke 验证从密封的冻结候选档案中获取包标识和大小。 [#133524](https://github.com/openclaw/openclaw/pull/133524) — 感谢 [@RomneyDa](https://github.com/RomneyDa)
- Release 验证会检测较旧的冻结目标是否提供代理插件网关 E2E 脚本,并且会失败关闭,除非明确允许省略。 [#133525](https://github.com/openclaw/openclaw/pull/133525) — 感谢 [@RomneyDa](https://github.com/RomneyDa)
- 共享工作区删除 E2E 夹具通过省略不相关的较新心跳字段来保持与冻结目标兼容。 [#133526](https://github.com/openclaw/openclaw/pull/133526) — 感谢 [@RomneyDa](https://github.com/RomneyDa)
- 终端助手执行更少的重复控制扫描,同时保留清理和可见输出。 [#133527](https://github.com/openclaw/openclaw/pull/133527) — 感谢 [@steipete](https://github.com/steipete)
- 内存刷新测试预先接收模型功能,并避免夹具停顿而无需运行时更改。 [#133532](https://github.com/openclaw/openclaw/pull/133532) — 感谢 [@steipete](https://github.com/steipete)
- Control UI 头像列表避免了冗余的存在工作,同时保留了可见的呈现。 [#133548](https://github.com/openclaw/openclaw/pull/133548) — 感谢 [@steipete](https://github.com/steipete)
- 多项目 Vitest 缓存重用和新鲜度现在具有行为回归覆盖。 [#133554](https://github.com/openclaw/openclaw/pull/133554) — 感谢 [@steipete](https://github.com/steipete)
- 添加了 A 草稿历史 v2026.8.1 文档页面和导航以供编辑审核。 [#133557](https://github.com/openclaw/openclaw/pull/133557) — 感谢 [@hannesrudolph](https://github.com/hannesrudolph)
- 四个成熟度策略固定案例的清理速度加快了大约 70 秒,且产品行为保持不变。 [#133566](https://github.com/openclaw/openclaw/pull/133566) — 感谢 [@steipete](https://github.com/steipete)
- Control UI 聊天渲染和生命周期所有权得到简化,无需进行预期的视觉或行为更改。 [#133567](https://github.com/openclaw/openclaw/pull/133567) — 感谢 [@steipete](https://github.com/steipete)
- Runner 和网关运行状况测试使用隔离的临时会话存储,而不是通过机器范围的状态进行干扰。 [#133568](https://github.com/openclaw/openclaw/pull/133568) — 感谢 [@steipete](https://github.com/steipete)
- 模型标准化和插件元数据测试共享合并的装置,运行时行为不变。 [#133570](https://github.com/openclaw/openclaw/pull/133570) — 感谢 [@steipete](https://github.com/steipete)
- 发布验证等待恢复和清除的草稿状态,避免慢速运行程序错误失败。 [#133575](https://github.com/openclaw/openclaw/pull/133575) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- 静态提供程序目录注册可避免急切加载实时发现代码,同时保留提供程序行为。 [#133579](https://github.com/openclaw/openclaw/pull/133579) — 感谢 [@steipete](https://github.com/steipete)
- 文档同步测试涵盖了跨英语和本地化导航的现有 v2026.8.1 路线。 [#133581](https://github.com/openclaw/openclaw/pull/133581) — 感谢 [@fuller-stack-dev](https://github.com/fuller-stack-dev)
- 历史v2026.8.1页面获得了一个封闭的维护者库存,完成了其发布记录。 [#133585](https://github.com/openclaw/openclaw/pull/133585) — 感谢 [@hannesrudolph](https://github.com/hannesrudolph)
- One 工作流程健全夹具可将合成流程清理速度加快大约十秒,同时保留故障和回退断言。 [#133588](https://github.com/openclaw/openclaw/pull/133588) — 感谢 [@steipete](https://github.com/steipete)
- Release 操作员可以重复使用已批准的放弃验证证据,而不会出现错误的决策块。 [#133589](https://github.com/openclaw/openclaw/pull/133589) — 感谢 [@steipete](https://github.com/steipete)
- 浏览器快照准备重用内部工作,同时保留定位和屏幕截图输出。 [#133598](https://github.com/openclaw/openclaw/pull/133598) — 感谢 [@steipete](https://github.com/steipete)
- Source 配置导入避免评估仅类型模块。 [#133604](https://github.com/openclaw/openclaw/pull/133604) — 感谢 [@steipete](https://github.com/steipete)
- 终端表渲染执行较少重复的内部格式化,同时产生相同的输出。 [#133607](https://github.com/openclaw/openclaw/pull/133607) — 感谢 [@steipete](https://github.com/steipete)
- Release 维护人员可以获得更快的源网关实时分片和更具确定性的清理检查。 [#133609](https://github.com/openclaw/openclaw/pull/133609) — 感谢 [@steipete](https://github.com/steipete)
- 先前版本页面的读者可以获得其配套版本故事的链接。 [#133620](https://github.com/openclaw/openclaw/pull/133620) — 感谢 [@hannesrudolph](https://github.com/hannesrudolph)
- 之前的发布页面不再带有过时的草稿警告。 [#133623](https://github.com/openclaw/openclaw/pull/133623) — 感谢 [@hannesrudolph](https://github.com/hannesrudolph)
- Maintainer PR 和发布工作流程保留选定的受保护 GitHub CLI 路由并重新验证特权证据。 [#133624](https://github.com/openclaw/openclaw/pull/133624) — 感谢 [@steipete](https://github.com/steipete)
- Autoreview 在分派前不再需要本地凭据扫描。 [#133626](https://github.com/openclaw/openclaw/pull/133626) — 感谢 [@Patrick-Erichsen](https://github.com/Patrick-Erichsen)
- SQLite 模式比较执行较少重复的内部工作,而无需更改模式或迁移。 [#133627](https://github.com/openclaw/openclaw/pull/133627) — 感谢 [@steipete](https://github.com/steipete)
- 共享工作人员存储库测试在拆卸后停用已完成文件的仅测试 API。 [#133631](https://github.com/openclaw/openclaw/pull/133631) — 感谢 [@steipete](https://github.com/steipete)
- A 重点关注的托管进程回归可以更快地完成,同时保留其清理检查。 [#133634](https://github.com/openclaw/openclaw/pull/133634) — 感谢 [@steipete](https://github.com/steipete)
- 生成的翻译记忆库跟踪修订后的输出标记术语。 [#133639](https://github.com/openclaw/openclaw/pull/133639) — 感谢 [@openclaw-mantis](https://github.com/openclaw-mantis)
- 存储库代理将例行网关更新路由到拥有它们的特定于安装的工作流程。 [#133640](https://github.com/openclaw/openclaw/pull/133640) — 感谢 [@steipete](https://github.com/steipete)
- 并行提供程序测试消除了重复的标准化接缝,同时保留提供程序边界覆盖范围。 [#133644](https://github.com/openclaw/openclaw/pull/133644) — 感谢 [@RomneyDa](https://github.com/RomneyDa)
- 文档拼写检查测试不再反映无害的包装源格式。 [#133645](https://github.com/openclaw/openclaw/pull/133645) — 感谢 [@RomneyDa](https://github.com/RomneyDa)
- Cron测试保留了一个权威的上海年回滚回归,而不是重复的断言。 [#133646](https://github.com/openclaw/openclaw/pull/133646) — 感谢 [@RomneyDa](https://github.com/RomneyDa)
- 发布导航测试接受新版本页面,而不会丢失路线形状检查。 [#133652](https://github.com/openclaw/openclaw/pull/133652) — 感谢 [@steipete](https://github.com/steipete)
- Plugin 注册表重用测试锻炼了真正的主动注册表接缝。 [#133656](https://github.com/openclaw/openclaw/pull/133656) — 感谢 [@steipete](https://github.com/steipete)
- 诊断状态准备避免重复内部扫描,同时保留标签和生命周期跟踪。 [#133659](https://github.com/openclaw/openclaw/pull/133659) — 感谢 [@steipete](https://github.com/steipete)
- 先前版本页面将其功能摘要链接到维护的指南。 [#133665](https://github.com/openclaw/openclaw/pull/133665) — 感谢 [@hannesrudolph](https://github.com/hannesrudolph)
- 例行发布验证测试从当前稳定包升级,同时保留明确的历史重播。 [#133666](https://github.com/openclaw/openclaw/pull/133666) — 感谢 [@steipete](https://github.com/steipete)
- 转发消息呈现使用统一的内部显示和头像规则。 [#133669](https://github.com/openclaw/openclaw/pull/133669) — 感谢 [@steipete](https://github.com/steipete)
- 编译器和托管进程测试装置以更少的开销启动和停止。 [#133670](https://github.com/openclaw/openclaw/pull/133670) — 感谢 [@steipete](https://github.com/steipete)
- 生成的配置文档基线与已合并的设置匹配,同时保留偏差检查。 [#133671](https://github.com/openclaw/openclaw/pull/133671) — 感谢 [@steipete](https://github.com/steipete)
- 升级后Doctor测试和生产使用相同的SQLite-支持的已安装插件索引。 [#133673](https://github.com/openclaw/openclaw/pull/133673) — 感谢 [@steipete](https://github.com/steipete)
- Release 发布可以在可信工具更改后使用经过严格验证的历史验证和 npm 预检证据。 [#133675](https://github.com/openclaw/openclaw/pull/133675) — 感谢 [@steipete](https://github.com/steipete)
- Release 依赖性审计可以检测 npm 忽略的匹配公共上游建议,同时保留部分覆盖证据。 [#133688](https://github.com/openclaw/openclaw/pull/133688) — 感谢 [@steipete](https://github.com/steipete)
- Opaque 会话密钥规范化和有界映射修剪执行更少的内部工作,而不改变结果。 [#133691](https://github.com/openclaw/openclaw/pull/133691) — 感谢 [@steipete](https://github.com/steipete)
- 非隔离的跑步装置更容易检查和覆盖飞行中的模拟注册。 [#133696](https://github.com/openclaw/openclaw/pull/133696) — 感谢 [@steipete](https://github.com/steipete)
- CJK 估算器测试在一位权威所有者处进行,没有重复覆盖。 [#133701](https://github.com/openclaw/openclaw/pull/133701) — 感谢 [@steipete](https://github.com/steipete)
- Browser 中继生命周期助手和入口测试具有更清晰的内部所有权和保留的行为。 [#133706](https://github.com/openclaw/openclaw/pull/133706) — 感谢 [@steipete](https://github.com/steipete)
- 共享规范化重用模式和 JSON 遍历准备,同时保留精确的输出和 API。 [#133710](https://github.com/openclaw/openclaw/pull/133710) — 感谢 [@steipete](https://github.com/steipete)
- 无运行时变化;冗余的 LINE 适配器和 Webhook 测试已被删除,同时保留了更强的行为覆盖范围。 [#133712](https://github.com/openclaw/openclaw/pull/133712) — 感谢 [@steipete](https://github.com/steipete)
- Control UI 无可见变化;工作状态渲染现在有一个内部呈现路径。 [#133713](https://github.com/openclaw/openclaw/pull/133713) — 感谢 [@steipete](https://github.com/steipete)
- Discord 和 Slack 安静进度行为未更改,同时合并了重复的渲染路径。 [#133714](https://github.com/openclaw/openclaw/pull/133714)
- 维护人员获得更严格的证据,证明非隔离运行器清理测试正常完成。 [#133717](https://github.com/openclaw/openclaw/pull/133717)
- 托管工作树测试装置运行速度更快,且产品行为没有变化。 [#133726](https://github.com/openclaw/openclaw/pull/133726) — 感谢 [@steipete](https://github.com/steipete)
- 内部存储库防护完成更可靠,重复工作更少。 [#133732](https://github.com/openclaw/openclaw/pull/133732) — 感谢 [@steipete](https://github.com/steipete)
- Token 格式化测试现在有一个规范所有者,无需运行时格式更改。 [#133737](https://github.com/openclaw/openclaw/pull/133737)
- 开发人员可以使用自定义 SwiftPM 暂存路径构建 macOS 应用程序,而不会出现冻结依赖项解析失败。 [#133740](https://github.com/openclaw/openclaw/pull/133740) — 感谢 [@steipete](https://github.com/steipete)
- QA 实验室摘要测试保留了较少重复文件读取器案例的覆盖范围。 [#133741](https://github.com/openclaw/openclaw/pull/133741) — 感谢 [@steipete](https://github.com/steipete)
- Copilot 和 Teams 测试套件在删除多余的烟雾检查后保留了更强的行为覆盖范围。 [#133745](https://github.com/openclaw/openclaw/pull/133745) — 感谢 [@steipete](https://github.com/steipete)
- 冲突标记回归测试现在使用与工作流程检查相同的 Git 支持的扫描仪。 [#133746](https://github.com/openclaw/openclaw/pull/133746) — 感谢 [@steipete](https://github.com/steipete)
- Apply-patch 字节保存测试有一个权威的主页,无需运行时更改。 [#133748](https://github.com/openclaw/openclaw/pull/133748) — 感谢 [@steipete](https://github.com/steipete)
- Control UI 聊天内部被分成更小的所有者模块,而可见行为保持不变。 [#133751](https://github.com/openclaw/openclaw/pull/133751) — 感谢 [@steipete](https://github.com/steipete)
- Meeting-音频命令分割在内部共享,并保留启动和失败行为。 [#133754](https://github.com/openclaw/openclaw/pull/133754)
- 重复的 macOS 入门测试已删除,但保留了精确的页面顺序覆盖范围。 [#133756](https://github.com/openclaw/openclaw/pull/133756)
- 删除了四个重复的核心测试装置,但没有更改运行时覆盖范围。 [#133759](https://github.com/openclaw/openclaw/pull/133759) — 感谢 [@steipete](https://github.com/steipete)
- 文件系统安全默认模式测试不再失败或删除开发人员和 CI 启动器继承的模式设置。 [#133760](https://github.com/openclaw/openclaw/pull/133760)
- Control UI 标题和工作短语测试运行更少的重复渲染,而无需更改界面。 [#133762](https://github.com/openclaw/openclaw/pull/133762)
- Gateway 启动执行较少的过时插件发现和重复策略准备。 [#133763](https://github.com/openclaw/openclaw/pull/133763) — 感谢 [@steipete](https://github.com/steipete)
- 变更日志获得了已发布的 2026.8.1 发行说明的链接。 [#133764](https://github.com/openclaw/openclaw/pull/133764)
- 无法访问的 xAI Web 搜索凭证接缝已被删除,同时保留了身份验证行为。 [#133765](https://github.com/openclaw/openclaw/pull/133765) — 感谢 [@steipete](https://github.com/steipete)
- 本地化和插件验证程序测试现在练习拥有工作流程而不是私有导出。 [#133768](https://github.com/openclaw/openclaw/pull/133768) — 感谢 [@steipete](https://github.com/steipete)
- 文件系统安全边界测试避免重复的存储库扫描,同时保留覆盖范围和顺序。 [#133769](https://github.com/openclaw/openclaw/pull/133769) — 感谢 [@steipete](https://github.com/steipete)
- 重复的代理传输、模型、重试和恢复装置已被删除,而没有运行时更改。 [#133770](https://github.com/openclaw/openclaw/pull/133770) — 感谢 [@steipete](https://github.com/steipete)
- CLI 解析器测试现在仅证明其独立可验证的合同,而不是自比较格式化程序输出。 [#133771](https://github.com/openclaw/openclaw/pull/133771) — 感谢 [@steipete](https://github.com/steipete)
- Release 向导渲染测试确定性地清理进度句柄和终端侦听器。 [#133774](https://github.com/openclaw/openclaw/pull/133774)
- Audio 合约测试更小、更清晰,同时保留转码和语音格式覆盖范围。 [#133779](https://github.com/openclaw/openclaw/pull/133779) — 感谢 [@steipete](https://github.com/steipete)
- Control UI 构建在合并重复的骨架样式后适合其现有的样式表预算。 [#133787](https://github.com/openclaw/openclaw/pull/133787)
- 已经发布的2026.8.1笔记和经过验证的Mac ZIP已在文档和Sparkle中最终确定。 [#133790](https://github.com/openclaw/openclaw/pull/133790)
- WhatsApp 格式化测试使用更简单的预言机,同时保留所有 41 种预期格式化结果。 [#133794](https://github.com/openclaw/openclaw/pull/133794) — 感谢 [@steipete](https://github.com/steipete)
- Control UI 构建通过了现有样式表预算,而附件卡外观保持不变。 [#133796](https://github.com/openclaw/openclaw/pull/133796) — 感谢 [@steipete](https://github.com/steipete)
- 2026.8.1 发布页面已更新,包含经过验证的 Mac ZIP 和 DMG 链接。 [#133807](https://github.com/openclaw/openclaw/pull/133807) — 感谢 [@steipete](https://github.com/steipete)
- 最慢的嵌入式代理 CI 组被分为三个平衡的条带,以实现更快的贡献者反馈。 [#133812](https://github.com/openclaw/openclaw/pull/133812) — 感谢 [@steipete](https://github.com/steipete)
- QA 实验室截止日期展开测试直接协调清理,而不是依赖固定睡眠。 [#133816](https://github.com/openclaw/openclaw/pull/133816) — 感谢 [@steipete](https://github.com/steipete)
- QA 发布验证装置可保留主要故障并在删除资源之前完成所有者关闭。 [#133821](https://github.com/openclaw/openclaw/pull/133821)
- 冗余辅助探针被删除,而消费者级网关、提供商、文件和 Telegram 覆盖范围仍然存在。 [#133824](https://github.com/openclaw/openclaw/pull/133824)
- 重复的 Control UI 模型标签测试已被删除,而规范的选择器状态覆盖范围仍然存在。 [#133826](https://github.com/openclaw/openclaw/pull/133826)
- 通过直接导入包所有者,重点环境关键测试可以更快地启动。 [#133830](https://github.com/openclaw/openclaw/pull/133830) — 感谢 [@steipete](https://github.com/steipete)
- Native scripts/pr 审核操作会立即完成,而不是等待分离的 Git 维护耗尽。 [#133832](https://github.com/openclaw/openclaw/pull/133832) — 感谢 [@steipete](https://github.com/steipete)
- Docker-pull 重试测试使用更少的夹具和子流程,同时保留生产助手行为。 [#133833](https://github.com/openclaw/openclaw/pull/133833) — 感谢 [@steipete](https://github.com/steipete)
- 冲突标记测试夹具进行批量处理,以便在保留扫描仪覆盖范围的情况下实现更快的反馈。 [#133834](https://github.com/openclaw/openclaw/pull/133834) — 感谢 [@steipete](https://github.com/steipete)
- Docs-list CLI 测试使用更少的夹具设置和流程启动,同时保留受支持的前题和标题覆盖范围。 [#133835](https://github.com/openclaw/openclaw/pull/133835) — 感谢 [@steipete](https://github.com/steipete)
- Session 读写渲染器共享尾随空行修剪,并保留可见输出。 [#133837](https://github.com/openclaw/openclaw/pull/133837)
- 格式化程序超时测试检查一次模拟故障,而不是运行两次。 [#133838](https://github.com/openclaw/openclaw/pull/133838) — 感谢 [@steipete](https://github.com/steipete)
- Retry-After 规则具有一个调度程序拥有的测试套件,而生产重试行为保持不变。 [#133839](https://github.com/openclaw/openclaw/pull/133839) — 感谢 [@steipete](https://github.com/steipete)
- Queue 诊断减少重复工作,同时有界会话跟踪保持正确。 [#133840](https://github.com/openclaw/openclaw/pull/133840) — 感谢 [@steipete](https://github.com/steipete)
- CLI 帮助缓存有一个内部所有者,其输出和后备行为未更改。 [#133841](https://github.com/openclaw/openclaw/pull/133841) — 感谢 [@steipete](https://github.com/steipete)
- QR 包装测试使用更小、更快的装载机边界夹具,无需更改产品。 [#133846](https://github.com/openclaw/openclaw/pull/133846) — 感谢 [@steipete](https://github.com/steipete)
- 先前的发行说明链接标有其确切版本。 [#133851](https://github.com/openclaw/openclaw/pull/133851) — 感谢 [@hannesrudolph](https://github.com/hannesrudolph)
- Plugin 生命周期租用争用测试根据虚拟时间确定性地运行。 [#133853](https://github.com/openclaw/openclaw/pull/133853) — 感谢 [@steipete](https://github.com/steipete)
- 流程繁重的刀具检查在 CI 中分布更均匀。 [#133854](https://github.com/openclaw/openclaw/pull/133854) — 感谢 [@steipete](https://github.com/steipete)
- Gateway 执行通知抑制测试现在执行真正的授权生命周期。 [#133859](https://github.com/openclaw/openclaw/pull/133859) — 感谢 [@steipete](https://github.com/steipete)
- 浏览器扩展 Chromium 证明避免了不必要的完整声明构建,同时保留其运行时断言。 [#133863](https://github.com/openclaw/openclaw/pull/133863) — 感谢 [@steipete](https://github.com/steipete)
- Release 验证更有效地使用现有运行程序,并在凭证预检失败后保留更多诊断信息。 [#133865](https://github.com/openclaw/openclaw/pull/133865) — 感谢 [@steipete](https://github.com/steipete)
- Signal 控制通道测试运行速度更快、更确定,无需挂钟等待。 [#133866](https://github.com/openclaw/openclaw/pull/133866) — 感谢 [@steipete](https://github.com/steipete)
- 测量的慢速分割测试组收到准确的 CI 规划权重。 [#133867](https://github.com/openclaw/openclaw/pull/133867) — 感谢 [@steipete](https://github.com/steipete)
- Feishu 并发发送测试证明了独立行为,没有实时延迟。 [#133872](https://github.com/openclaw/openclaw/pull/133872) — 感谢 [@steipete](https://github.com/steipete)
- Redundant Control UI 清理程序、缓存和 Toast 测试已合并。 [#133874](https://github.com/openclaw/openclaw/pull/133874) — 感谢 [@steipete](https://github.com/steipete)
- IRC 套接字装置共享生命周期清理,并且在拒绝设置后不再泄漏侦听器。 [#133875](https://github.com/openclaw/openclaw/pull/133875) — 感谢 [@steipete](https://github.com/steipete)
- Plugin 插槽选择测试通过更清晰的本地断言直接调用规范所有者。 [#133876](https://github.com/openclaw/openclaw/pull/133876) — 感谢 [@steipete](https://github.com/steipete)
- Logging 测试恢复继承的环境值,并且不再将更改的设置泄漏到以后的测试中。 [#133877](https://github.com/openclaw/openclaw/pull/133877) — 感谢 [@steipete](https://github.com/steipete)
- Slack 线程根谓词测试使用较小的等效决策矩阵。 [#133878](https://github.com/openclaw/openclaw/pull/133878) — 感谢 [@steipete](https://github.com/steipete)
- Logging 子系统测试在删除临时文件之前等待排队写入。 [#133879](https://github.com/openclaw/openclaw/pull/133879) — 感谢 [@steipete](https://github.com/steipete)
- Gradium 语音测试使用较小的等效环境和 URL- 拒绝夹具。 [#133880](https://github.com/openclaw/openclaw/pull/133880) — 感谢 [@steipete](https://github.com/steipete)
- 重新启动验证和安装归因共享相同的Git commit-prefix规则。 [#133887](https://github.com/openclaw/openclaw/pull/133887) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- Logging 测试涵盖真正的波形符路径扩展,同时删除冗余检查。 [#133890](https://github.com/openclaw/openclaw/pull/133890) — 感谢 [@steipete](https://github.com/steipete)
- 并行扩展测试验证请求边界处的完整出站用户代理。 [#133891](https://github.com/openclaw/openclaw/pull/133891) — 感谢 [@steipete](https://github.com/steipete)
- 删除了两个仅重播本机 Promise 行为的测试。 [#133892](https://github.com/openclaw/openclaw/pull/133892) — 感谢 [@steipete](https://github.com/steipete)
- Discord 代理请求信号覆盖范围不再重复成功的请求装置。 [#133893](https://github.com/openclaw/openclaw/pull/133893) — 感谢 [@steipete](https://github.com/steipete)
- Task 注册表基准测试在实际启动边界断言工作线程参数。 [#133894](https://github.com/openclaw/openclaw/pull/133894) — 感谢 [@steipete](https://github.com/steipete)
- 批准文本准备重用密文视图和有界检查,同时保留决策和提示字节。 [#133904](https://github.com/openclaw/openclaw/pull/133904) — 感谢 [@steipete](https://github.com/steipete)
- 当工作树包装器版本不同时,PR 登陆包装器可以实现经过验证的 origin/main 信任锚。 [#133913](https://github.com/openclaw/openclaw/pull/133913) — 感谢 [@steipete](https://github.com/steipete)
- Brave Search 直接测试导入共享标准化所有者。 [#133914](https://github.com/openclaw/openclaw/pull/133914) — 感谢 [@steipete](https://github.com/steipete)
- Image 帮助程序测试使用更清晰的直接断言和输入名称。 [#133915](https://github.com/openclaw/openclaw/pull/133915) — 感谢 [@steipete](https://github.com/steipete)
- Bound-account 路由装置消除了重复的信封设置,同时保留了情况。 [#133917](https://github.com/openclaw/openclaw/pull/133917) — 感谢 [@steipete](https://github.com/steipete)
- Mocked Control UI 浏览器校样重新运行将每次尝试的屏幕截图、录音、报告和诊断保留在单独的目录中。 [#133918](https://github.com/openclaw/openclaw/pull/133918) — 感谢 [@steipete](https://github.com/steipete)
- 长混合格式 iMessage 回复使用较少的格式化程序工作,同时保留文本和样式范围。 [#133919](https://github.com/openclaw/openclaw/pull/133919) — 感谢 [@steipete](https://github.com/steipete)
- Direct 和隔离插件运行时共享一个私有 LLM 完成错误构造函数。 [#133927](https://github.com/openclaw/openclaw/pull/133927) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- 工作空间图标测试失败现在可以识别安全请求类别,而不仅仅是多余的获取计数。 [#133942](https://github.com/openclaw/openclaw/pull/133942) — 感谢 [@steipete](https://github.com/steipete)
- Feishu 重试测试通过虚拟时间和更少的重复来执行生产退避计划。 [#133943](https://github.com/openclaw/openclaw/pull/133943) — 感谢 [@steipete](https://github.com/steipete)
- Cron 交付计划测试使用集中的布线输入而不是超大的作业夹具。 [#133944](https://github.com/openclaw/openclaw/pull/133944) — 感谢 [@steipete](https://github.com/steipete)
- 自动文档翻译修复重新运行检查器提供的最初失败的验证。 [#133945](https://github.com/openclaw/openclaw/pull/133945) — 感谢 [@steipete](https://github.com/steipete)
- Control UI 在截图之前等待渲染内容、固定动画和桌面布局。 [#133949](https://github.com/openclaw/openclaw/pull/133949) — 感谢 [@steipete](https://github.com/steipete)
- Daemon 检查测试共享临时目录清理,同时保留 Linux 和 macOS 覆盖范围。 [#133961](https://github.com/openclaw/openclaw/pull/133961) — 感谢 [@steipete](https://github.com/steipete)
- Microsoft 语音测试共享合成设置和表驱动等效语音案例。 [#133966](https://github.com/openclaw/openclaw/pull/133966) — 感谢 [@steipete](https://github.com/steipete)
- 工具管理器测试在 Windows- 特定情况后恢复本机 OS 模块。 [#133967](https://github.com/openclaw/openclaw/pull/133967) — 感谢 [@steipete](https://github.com/steipete)
- Link-理解运行器测试整合了受保护的获取和超时情况,而不会丢失覆盖范围。 [#133969](https://github.com/openclaw/openclaw/pull/133969) — 感谢 [@steipete](https://github.com/steipete)
- 目录和 glob 输入的广泛工具路由断言共享一个测试表。 [#133971](https://github.com/openclaw/openclaw/pull/133971) — 感谢 [@steipete](https://github.com/steipete)
- Build-stamp 测试直接导入共享编写器,并在 build-stamp 脚本更改时选择。 [#133974](https://github.com/openclaw/openclaw/pull/133974) — 感谢 [@steipete](https://github.com/steipete)
- 未使用的 SearXNG 私有测试挂钩已被删除,而搜索行为保持不变。 [#133975](https://github.com/openclaw/openclaw/pull/133975) — 感谢 [@steipete](https://github.com/steipete)
- 包清单过滤和子树修剪共享一个外部化插件排除策略。 [#133980](https://github.com/openclaw/openclaw/pull/133980) — 感谢 [@steipete](https://github.com/steipete)
- 无发货行为变化;三个相同的 UTF-16-safe 截断路径现在共享一个私有实现。 [#133986](https://github.com/openclaw/openclaw/pull/133986) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- 封装贴片防护测试共享一个夹具,同时保留其生产策略覆盖范围。 [#133993](https://github.com/openclaw/openclaw/pull/133993) — 感谢 [@steipete](https://github.com/steipete)
- 稳定升级验证可以运行较旧的安装,而不会出现错误的固定、就绪或生命周期故障。 [#134002](https://github.com/openclaw/openclaw/pull/134002) — 感谢 [@steipete](https://github.com/steipete)
- 具体插件状态存储在编译时公开其始终存在的原子更新和条件删除功能。 [#134005](https://github.com/openclaw/openclaw/pull/134005) — 感谢 [@steipete](https://github.com/steipete)
- Heartbeat 队列选择和诊断快照收集执行更少的重复扫描,而不会更改调度结果。 [#134007](https://github.com/openclaw/openclaw/pull/134007) — 感谢 [@steipete](https://github.com/steipete)
- Failure呈现避免了当只需要错误代码或无法回滚模型补丁时不必要的提供者分类。 [#134008](https://github.com/openclaw/openclaw/pull/134008) — 感谢 [@steipete](https://github.com/steipete)
- Session 和轨迹导出共享相同的允许进入规则,无需更改存储或导出的数据。 [#134011](https://github.com/openclaw/openclaw/pull/134011) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- 有界并发测试等待直接任务启动信号而不是轮询。 [#134013](https://github.com/openclaw/openclaw/pull/134013) — 感谢 [@steipete](https://github.com/steipete)
- Maintainer PR 刷新和 CI 准备避免共享引用冲突并保留所需的历史记录,而 Anthropic 注册则推迟未使用的设置工作。 [#134014](https://github.com/openclaw/openclaw/pull/134014) — 感谢 [@shakkernerd](https://github.com/shakkernerd)
- SDK 导出注册测试避免重复的稳定性周期,同时保留写入和检查模式验证。 [#134017](https://github.com/openclaw/openclaw/pull/134017) — 感谢 [@steipete](https://github.com/steipete)
- WhatsApp 出站策略测试现在可以通过较少的模拟设置来执行真正的目标规范化。 [#134019](https://github.com/openclaw/openclaw/pull/134019) — 感谢 [@steipete](https://github.com/steipete)
- Package 自升级验证接受当前结构化设置繁忙响应,不会将成功升级误认为失败。 [#134023](https://github.com/openclaw/openclaw/pull/134023) — 感谢 [@steipete](https://github.com/steipete)
- macOS 发行版包装避免了固定的 DMG 大小调整,找到当前的 dSYM,并更有效地呈现大型发行说明。 [#134027](https://github.com/openclaw/openclaw/pull/134027) — 感谢 [@steipete](https://github.com/steipete)
- 浏览器可访问性快照准备避免了冗余分配,同时保留了准确的快照和CDP合同。 [#134028](https://github.com/openclaw/openclaw/pull/134028) — 感谢 [@steipete](https://github.com/steipete)
- Hosted macOS Swift 测试使用有限并发来避免串行超时和无限的资源压力。 [#134035](https://github.com/openclaw/openclaw/pull/134035) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- CI 共享安全的准备工作,并使用测量的成本平衡完整的测试工作负载,减少重复设置,同时保留库存和信任边界。 [#134038](https://github.com/openclaw/openclaw/pull/134038) — 感谢 [@steipete](https://github.com/steipete)
- 包分发导入测试批量等效夹具,同时保留每个诊断和允许的探测案例。 [#134039](https://github.com/openclaw/openclaw/pull/134039) — 感谢 [@steipete](https://github.com/steipete)
- Release 操作员可以暂存 ClawHub 包,并在父版本成功后验证父授权、包来源和公共注册表字节。 [#134053](https://github.com/openclaw/openclaw/pull/134053) — 感谢 [@shakkernerd](https://github.com/shakkernerd)
- OpenGrep 解析一个实际的拉取请求差异库,并将其一致地用于历史记录准备和扫描。 [#134054](https://github.com/openclaw/openclaw/pull/134054) — 感谢 [@lsr911](https://github.com/lsr911)、[@obviyus](https://github.com/obviyus)、[@chelsealong](https://github.com/chelsealong)、 [@ZengWen-DT](https://github.com/ZengWen-DT) 和 [@SebTardif](https://github.com/SebTardif)
- JSON 解析器测试与其实现并存,并避免初始化不相关的运行时基础设施。 [#134080](https://github.com/openclaw/openclaw/pull/134080) — 感谢 [@steipete](https://github.com/steipete)
- 共享文本测试使用更直接的断言,同时保留不同的行为覆盖范围。 [#134082](https://github.com/openclaw/openclaw/pull/134082) — 感谢 [@steipete](https://github.com/steipete)
- Model 实用程序测试现在遵循 AI 包实现,并避免加载不相关的提供程序和传输运行时代码。 [#134086](https://github.com/openclaw/openclaw/pull/134086) — 感谢 [@steipete](https://github.com/steipete)
- Gateway 范围升级取消测试等待显式信号并完全验证两个取消的操作。 [#134091](https://github.com/openclaw/openclaw/pull/134091) — 感谢 [@steipete](https://github.com/steipete)
- iOS 签名测试使用真正的开发团队选择器,而不是复制的实现。 [#134092](https://github.com/openclaw/openclaw/pull/134092) — 感谢 [@steipete](https://github.com/steipete)
- A 沙箱策略提示测试从一个准备好的固定装置中派生提供者和模型身份,避免发现不相关的提供者。 [#134094](https://github.com/openclaw/openclaw/pull/134094) — 感谢 [@steipete](https://github.com/steipete)
- Exa、MiniMax 和 Moonshot 提供商测试使用其并置测试绑定,并减少重复的夹具管道。 [#134095](https://github.com/openclaw/openclaw/pull/134095) — 感谢 [@steipete](https://github.com/steipete)
- Hosted CI 将三个昂贵的生命周期套件分布在不同的工具条带上,同时保留完整的库存。 [#134100](https://github.com/openclaw/openclaw/pull/134100) — 感谢 [@steipete](https://github.com/steipete)
- 有界并发测试通过特定于任务的启动诊断快速失败,而不是等待总体截止日期。 [#134102](https://github.com/openclaw/openclaw/pull/134102) — 感谢 [@steipete](https://github.com/steipete)
- Environment-option 日志记录测试直接等待记录器回调,并具有有限的故障和更干净的模拟隔离。 [#134104](https://github.com/openclaw/openclaw/pull/134104) — 感谢 [@steipete](https://github.com/steipete)
- 终端会话渲染器重用一种共享文本组件实现,而不更改其输出。 [#134105](https://github.com/openclaw/openclaw/pull/134105) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- Changed-files 验证类型仅检查经过编译器验证的隔离测试更改的消耗测试图,否则会保守地回退。 [#134107](https://github.com/openclaw/openclaw/pull/134107) — 感谢 [@steipete](https://github.com/steipete)
- APN 竞赛测试使用显式有界生命周期信号来实现更快、更清晰的取消和会话错误覆盖。 [#134108](https://github.com/openclaw/openclaw/pull/134108) — 感谢 [@steipete](https://github.com/steipete)
- HTTP 响应读取器测试使用直接断言,同时保留成功、错误和超时行为覆盖范围。 [#134112](https://github.com/openclaw/openclaw/pull/134112) — 感谢 [@steipete](https://github.com/steipete)
- Ratchet 测试装置在每次调用时设置 Git 身份,并避免重复的存储库设置。 [#134117](https://github.com/openclaw/openclaw/pull/134117) — 感谢 [@steipete](https://github.com/steipete)
- Package 兼容性测试直接针对仅解析器的情况调用功能同意解析器,同时保留 CLI 集成覆盖范围。 [#134118](https://github.com/openclaw/openclaw/pull/134118) — 感谢 [@steipete](https://github.com/steipete)
- Android 本地化测试共享一个目录,现在因任何意外的 UI-literal 扫描结果而失败。 [#134121](https://github.com/openclaw/openclaw/pull/134121) — 感谢 [@steipete](https://github.com/steipete)
- Dated-TODO 扫描仪测试独立验证每个受保护的排除项,而不是允许一个泄漏的文件隐藏在其他文件后面。 [#134122](https://github.com/openclaw/openclaw/pull/134122) — 感谢 [@steipete](https://github.com/steipete)
- macOS 本机测试套件删除了一项允许的重复 shell 冒烟测试,同时保留了更强的执行覆盖率。 [#134123](https://github.com/openclaw/openclaw/pull/134123) — 感谢 [@steipete](https://github.com/steipete)
- CI 重试命令测试共享夹具计数器并避免冗余外部读取,同时保留所有重试情况。 [#134128](https://github.com/openclaw/openclaw/pull/134128) — 感谢 [@steipete](https://github.com/steipete)
- Docker 资源上限测试批量接受的统计格式,同时保留精确的峰值、拒绝案例和流保护措施。 [#134133](https://github.com/openclaw/openclaw/pull/134133) — 感谢 [@steipete](https://github.com/steipete)
- Grep 截断测试现在可以准确保护所公布的 500 个字符边界。 [#134135](https://github.com/openclaw/openclaw/pull/134135) — 感谢 [@steipete](https://github.com/steipete)
- Nostr 游标恢复测试使用虚拟时间和生产重试节奏,而不更改 Nostr 运行时行为。 [#134139](https://github.com/openclaw/openclaw/pull/134139) — 感谢 [@steipete](https://github.com/steipete)
- Release 验证删除了一个冗余的运行程序队列跃点,同时保留故障关闭的候选获取。 [#134140](https://github.com/openclaw/openclaw/pull/134140) — 感谢 [@steipete](https://github.com/steipete)
- Teams 会议先决条件测试重用模块导入,同时保留场景隔离和运行时行为。 [#134146](https://github.com/openclaw/openclaw/pull/134146) — 感谢 [@steipete](https://github.com/steipete)
- Control UI 测试消除重复覆盖并加强计时器清理验证,而不改变生产行为。 [#134147](https://github.com/openclaw/openclaw/pull/134147) — 感谢 [@steipete](https://github.com/steipete)
- iMessage RPC 客户端测试避免了重复的模块加载,同时保留了每个案例的新客户端和流程固定装置。 [#134149](https://github.com/openclaw/openclaw/pull/134149) — 感谢 [@steipete](https://github.com/steipete)
- Browser 垃圾测试将通用文件系统行为整合到共享 SDK 所有者下,而无需更改垃圾权限。 [#134151](https://github.com/openclaw/openclaw/pull/134151) — 感谢 [@steipete](https://github.com/steipete)
- Mistral 实时转录终端测试观察实际的 WebSocket 闭合,以进行更具确定性的完成检查。 [#134157](https://github.com/openclaw/openclaw/pull/134157) — 感谢 [@steipete](https://github.com/steipete)
- IMAP 协议测试等待提交的游标状态,而不是间接轮询(其中游标完成拥有信号)。 [#134162](https://github.com/openclaw/openclaw/pull/134162)
- Telegram 网络测试将模块重新加载隔离到 WSL 缓存案例并直接保护缓存的检测行为。 [#134164](https://github.com/openclaw/openclaw/pull/134164) — 感谢 [@steipete](https://github.com/steipete)
- Telegram 缓冲媒体测试等待实际排队任务完成而不是固定睡眠。 [#134171](https://github.com/openclaw/openclaw/pull/134171) — 感谢 [@steipete](https://github.com/steipete)
- DeepInfra 和 xAI 视频传输测试共享提供商导入,同时保留新鲜操作和真实传输检查。 [#134174](https://github.com/openclaw/openclaw/pull/134174) — 感谢 [@steipete](https://github.com/steipete)
- Plugin 命令使用者从一个规范的活动注册表中读取数据,而无需更改列表、匹配、执行或频道菜单。 [#134175](https://github.com/openclaw/openclaw/pull/134175)
- Gateway 会话快照组件执行较少的重复复制,同时返回相同的客户端可见字段。 [#134176](https://github.com/openclaw/openclaw/pull/134176) — 感谢 [@steipete](https://github.com/steipete)
- Chat 文本内部删除了不支持的合成回调恢复和重复的信封元数据,而不更改有效的聊天。 [#134184](https://github.com/openclaw/openclaw/pull/134184)
- Model-catalog 测试从其所属模块导入定价 URL,而不是从未使用的发布者转发层。 [#134205](https://github.com/openclaw/openclaw/pull/134205)
- 通道恢复测试装置重新获得干净的棉绒和类型验证,而不改变恢复行为。 [#134207](https://github.com/openclaw/openclaw/pull/134207) — 感谢 [@steipete](https://github.com/steipete)
- Plugin lint 使用有界扩展拥有的 TypeScript 项目,同时保留类型感知诊断。 [#134216](https://github.com/openclaw/openclaw/pull/134216)
- 发布验证删除了两个冗余的图像准备工作,而图像生产者仍然阻止消费者的先决条件。 [#134232](https://github.com/openclaw/openclaw/pull/134232) — 感谢 [@steipete](https://github.com/steipete)
- 自动回复媒体测试通过提供准备好的图像功能元数据来避免真正的提供商目录发现。 [#134245](https://github.com/openclaw/openclaw/pull/134245)
- Warm 代理轮流执行较少重复的策略、工具、模型和会话准备,同时保留现有行为。 [#134246](https://github.com/openclaw/openclaw/pull/134246)
- Tavily 响应解析会删除未使用的包装器,同时保持相同的边界、错误、取消和结果。 [#134255](https://github.com/openclaw/openclaw/pull/134255)
- 插件状态发布验证需要现有的结构化过时注册表诊断,而不会削弱严格的平等性。 [#134260](https://github.com/openclaw/openclaw/pull/134260) — 感谢 [@steipete](https://github.com/steipete)
- Signal 传输就绪测试采用真正的共享退避行为,而不是仅测试等待实现。 [#134263](https://github.com/openclaw/openclaw/pull/134263) — 感谢 [@steipete](https://github.com/steipete)
- Abort-relay 覆盖范围移至获取超时所有者,同时保留默认原因和侦听器删除检查。 [#134266](https://github.com/openclaw/openclaw/pull/134266) — 感谢 [@steipete](https://github.com/steipete)
- LLM 核心事件流测试批量精确序列断言,同时使用和检查每个有序结果。 [#134270](https://github.com/openclaw/openclaw/pull/134270)
- Package-root discovery 在单根查找的第一个有效根后停止扫描,而 Doctor 保留完整清单回退。 [#134271](https://github.com/openclaw/openclaw/pull/134271) — 感谢 [@steipete](https://github.com/steipete)
- GitHub 活动辅助测试消除了人为响应延迟,同时保留了输出顺序回归证明。 [#134273](https://github.com/openclaw/openclaw/pull/134273) — 感谢 [@steipete](https://github.com/steipete)
- Apple 发布源代码检查装置直接在提交命令上设置 Git 身份,从而在不更改来源防护的情况下减少子流程。 [#134277](https://github.com/openclaw/openclaw/pull/134277) — 感谢 [@steipete](https://github.com/steipete)
- Duration 格式测试移至其格式化程序所有者,而会话警告行为覆盖范围保持不变。 [#134280](https://github.com/openclaw/openclaw/pull/134280) — 感谢 [@steipete](https://github.com/steipete)
- 成功的 UI E2E 运行记录完整的、包含钩子的每个文件计时,用于未来的分片规划。 [#134283](https://github.com/openclaw/openclaw/pull/134283) — 感谢 [@steipete](https://github.com/steipete)
- Approval 关闭竞争测试在回调条目上同步,而不是在调度程序计时上同步。 [#134284](https://github.com/openclaw/openclaw/pull/134284) — 感谢 [@steipete](https://github.com/steipete)
- iOS 手表批准测试消除了广泛的实施镜像,同时保留了重点身份、重试和快照不变式。 [#134285](https://github.com/openclaw/openclaw/pull/134285)
- iOS 本地化测试删除了重复的呼叫站点清单,同时保留独立的本地化防护。 [#134286](https://github.com/openclaw/openclaw/pull/134286)
- 模型目录和插件运行状况摘要共享一个私有的第一记录获胜重复数据删除助手,而无需更改输出。 [#134287](https://github.com/openclaw/openclaw/pull/134287)
- macOS 配置文件测试消除了脆弱的源布局不变性,同时保留了可执行隔离和就绪覆盖范围。 [#134288](https://github.com/openclaw/openclaw/pull/134288)
- Feishu 退避分类器覆盖范围转移到明确拥有的表驱动套件。 [#134289](https://github.com/openclaw/openclaw/pull/134289)
- Concurrent Gateway 转而重用稳定的准备好的插件元数据,同时继续评估当前的信任和激活。 [#134290](https://github.com/openclaw/openclaw/pull/134290)
- Windows 运行时导入测试将重复的绝对路径覆盖合并到一个权威案例中。 [#134291](https://github.com/openclaw/openclaw/pull/134291) — 感谢 [@steipete](https://github.com/steipete)
- Android 和 iOS 版本渲染器测试使用内存中值固定装置,同时保留单独的文件支持和 CLI 覆盖范围。 [#134293](https://github.com/openclaw/openclaw/pull/134293) — 感谢 [@steipete](https://github.com/steipete)
- Node 测试分片使用仅运行时的先决条件构建,而完整的 UI 和 SDK 工件验证仍然单独拥有。 [#134294](https://github.com/openclaw/openclaw/pull/134294)
- CLI 启动基准状态案例在一次有序驱动程序调用中运行,并具有更强的 HOME 隔离检查。 [#134296](https://github.com/openclaw/openclaw/pull/134296) — 感谢 [@steipete](https://github.com/steipete)
- Changed 文件验证在花费时间进行广泛的存储库审核之前报告类型失败,而成功的门仍然运行每次审核。 [#134298](https://github.com/openclaw/openclaw/pull/134298)
- Maintainer PR 操作将存储库状态查询连接到其锁并拒绝失败的读取,而编译工作测试使用较少的脚手架。 [#134300](https://github.com/openclaw/openclaw/pull/134300)
- Bun 释放烟雾可以验证早于捆绑 @openclaw/ai 的历史冻结包裹,而无需重写它们或削弱畸形包裹检查。 [#134309](https://github.com/openclaw/openclaw/pull/134309)
- xAI OAuth 测试现在证明运行时导入在身份验证工作开始之前保持惰性。 [#134315](https://github.com/openclaw/openclaw/pull/134315)
- Usage 过滤在每次过滤器调用时准备一次查询谓词,同时保留结果。 [#134318](https://github.com/openclaw/openclaw/pull/134318)
- 执行策略测试避免重复实际模块加载而不改变策略行为。 [#134319](https://github.com/openclaw/openclaw/pull/134319)
- LM Studio 超大响应测试重用不可变的源块并保留相同的大小限制行为。 [#134322](https://github.com/openclaw/openclaw/pull/134322)
- Browser 配置文件分配覆盖范围在删除重复演示后保留在服务边界。 [#134324](https://github.com/openclaw/openclaw/pull/134324)
- Release 验证通过包安装后生命周期检查保留 Git 更新装置身份。 [#134328](https://github.com/openclaw/openclaw/pull/134328)
- 对话截止日期测试现在证明已收到回复并等待现有所有者解决。 [#134335](https://github.com/openclaw/openclaw/pull/134335)
- Plugin blob 和密钥商店共享期权策略实施,同时保留独立合同。 [#134339](https://github.com/openclaw/openclaw/pull/134339)
- Profiler 参数变体在解析器上进行了测试,启动的子进程较少。 [#134345](https://github.com/openclaw/openclaw/pull/134345)
- Periphery 工作流程测试重用不可变的解析和编译装置,同时保持可变状态隔离。 [#134350](https://github.com/openclaw/openclaw/pull/134350)
- 容量组测试直接观察准入情况,而不是轮询计时器轮流。 [#134355](https://github.com/openclaw/openclaw/pull/134355)
- Media Core 测试直接将现有期望置于每种情况下,以实现更清晰的维护。 [#134356](https://github.com/openclaw/openclaw/pull/134356)
- 在验证不可变标签 SHA 后,可以从规范稳定版本分支发布 Linux 配套捆绑包。 [#134359](https://github.com/openclaw/openclaw/pull/134359)
- Frozen 扩展稳定检查从同一版本系列中选择较早发布的基线。 [#134363](https://github.com/openclaw/openclaw/pull/134363)
- CLI 策略测试范围模块重置和清理安装模拟的情况。 [#134364](https://github.com/openclaw/openclaw/pull/134364)
- Materialized 可信 PR 锚点包括审核和登陆工作流程所需的辅助闭合。 [#134366](https://github.com/openclaw/openclaw/pull/134366)
- Mobile 发布参考测试共享清理跟踪的存储库生命周期并保留现有验证。 [#134367](https://github.com/openclaw/openclaw/pull/134367)
- Native-link 路由测试现在会暴露修改后的点击和处置后侦听器故障。 [#134370](https://github.com/openclaw/openclaw/pull/134370)
- 压缩回退测试确定性地驱动重试时钟,同时保留取消和耗尽覆盖范围。 [#134371](https://github.com/openclaw/openclaw/pull/134371)
- 非秘密工具搜索计数器范围使用小写十六进制,因此编辑无法更改持久重播数据。 [#134372](https://github.com/openclaw/openclaw/pull/134372)
- Tool 搜索仅对术语发布中出现的文档进行排名,同时保留分数和顺序。 [#134374](https://github.com/openclaw/openclaw/pull/134374)
- Nostr 指标覆盖范围现在与其所有者一起存在,并且删除了冗余复制的中继演示。 [#134378](https://github.com/openclaw/openclaw/pull/134378)
- WhatsApp 配置文件目录测试共享一个受控导入生命周期,同时保留三个现有合同。 [#134382](https://github.com/openclaw/openclaw/pull/134382)
- Deepgram 实时转录测试等待最终提供者回调并在失败时清除会话。 [#134383](https://github.com/openclaw/openclaw/pull/134383)
- ElevenLabs 实时转录测试从提供商事件完成并可靠地关闭会话。 [#134384](https://github.com/openclaw/openclaw/pull/134384)
- 终端回归装置保留了堆叠限制和破损管道覆盖范围,减少了重复工作。 [#134387](https://github.com/openclaw/openclaw/pull/134387)
- Tlon 授权测试现在针对默认值、白名单、开放策略和优先级执行真正的解析器。 [#134393](https://github.com/openclaw/openclaw/pull/134393)
- OpenGrep 测试重用一个不可变的合成源历史记录,同时保留每个场景的隔离浅克隆。 [#134399](https://github.com/openclaw/openclaw/pull/134399)
- OpenAI 实时转录边界测试重用一个终端历史生命周期,而不更改保留的限制。 [#134401](https://github.com/openclaw/openclaw/pull/134401)
- 选择加入Control UI代理文件截图和视频与其他真实网关CI证据一起保留。 [#134402](https://github.com/openclaw/openclaw/pull/134402)
- Workboard 避免了对不使用它们的过滤器的生命周期查找,并更安全地保留失败的复制记录。 [#134405](https://github.com/openclaw/openclaw/pull/134405)
- Realtime Talk 冒烟测试可确定性地推进模拟节奏并关闭时钟。 [#134408](https://github.com/openclaw/openclaw/pull/134408)
- 打包升级验证在添加候选迁移装置之前初始化并验证已发布的基线。 [#134410](https://github.com/openclaw/openclaw/pull/134410)
- 等效的完整、包和CI构建可以重用经过验证的插件SDK声明。 [#134414](https://github.com/openclaw/openclaw/pull/134414)
- 升级恢复决策在其既定的入门引导、回复、准备和医生所有者下进行整合。 [#134415](https://github.com/openclaw/openclaw/pull/134415)
- Package 派生的 Git 发布装置在瞬态生命周期标记退役后保持干净。 [#134417](https://github.com/openclaw/openclaw/pull/134417)
- Gateway 请求重用准备好的插件模型策略,同时保留模型和提供者行为。 [#134419](https://github.com/openclaw/openclaw/pull/134419)
- 发布验证器可以验证规范技能的新鲜度,并将私有工具失败与候选结果分开。 [#134420](https://github.com/openclaw/openclaw/pull/134420)
- Release 检查现在期望 Doctor 的退休成绩单存档和插件 SDK 清理仅在其拥有的临时根中进行。 [#134422](https://github.com/openclaw/openclaw/pull/134422)
- 完成隔离CLI和冷入口点QA运行,及时取消未使用的截止定时器。 [#134424](https://github.com/openclaw/openclaw/pull/134424)
- 系统事件处理避免了只需要状态、收据或文本的呼叫者的快照。 [#134433](https://github.com/openclaw/openclaw/pull/134433)
- 共享的“主页”和“询问”OpenClaw 助理坞使用一种更清晰的实现方式,同时保留已保存的布局兼容性。 [#134435](https://github.com/openclaw/openclaw/pull/134435)
- CI 观察器夹具测试将模拟轮询时间与实际子进程启动时间分开。 [#134436](https://github.com/openclaw/openclaw/pull/134436)
- Upgrade 验证仅在基线配置之后播种旧式 cron 作业,以便达到候选迁移。 [#134441](https://github.com/openclaw/openclaw/pull/134441)
- 升级幸存者 E2E 证明使旧设备保持离线状态,直到候选者所有权并验证托管网关更换为止。 [#134442](https://github.com/openclaw/openclaw/pull/134442)
- 当后代在正常清理期间退出时,成功的 Oxlint 分片保持绿色,而强制终止仍然会导致作业失败。 [#134449](https://github.com/openclaw/openclaw/pull/134449)
- 文本模式 Web 获取会跳过将被丢弃的可读性 HTML 序列化。 [#134452](https://github.com/openclaw/openclaw/pull/134452)
- 选定的 macOS CI 固定装置在所有权边界内重叠,并且 UI 分片发出更好的时序和资源证据。 [#134459](https://github.com/openclaw/openclaw/pull/134459)
- Transcript 投影重建每次访问时重用一个准备好的选定路径查询,同时保留结果。 [#134465](https://github.com/openclaw/openclaw/pull/134465)
- macOS Codex 队列截止时间测试使其阻止程序保持活动状态,并在证明排队到期后将其清除。 [#134469](https://github.com/openclaw/openclaw/pull/134469)
- CI 恢复指南优先考虑在完全重新分派之前在原始附加运行上重试失败的作业。 [#134474](https://github.com/openclaw/openclaw/pull/134474)
- macOS CI 可以预热依赖项缓存并运行具有有限重叠的隔离签名装置。 [#134476](https://github.com/openclaw/openclaw/pull/134476)
- 维护者 PR 包装器使用精确固定锚点的依赖项清单进行提取和验证。 [#134481](https://github.com/openclaw/openclaw/pull/134481)
- Linked-worktree 脚本类型检查解决了根工具的类型化 pako 依赖性。 [#134484](https://github.com/openclaw/openclaw/pull/134484) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- 共享帮助程序测试现在执行其名称所描述的远程平台和无效 Tailscale 路径。 [#134485](https://github.com/openclaw/openclaw/pull/134485) — 感谢 [@steipete](https://github.com/steipete)
- 普通 SQLite 表架构检查可避免不必要的规范化过程。 [#134486](https://github.com/openclaw/openclaw/pull/134486) — 感谢 [@steipete](https://github.com/steipete)
- 借用的代理数据库读取执行较少的重复准入工作,同时保留兼容性检查。 [#134489](https://github.com/openclaw/openclaw/pull/134489) — 感谢 [@steipete](https://github.com/steipete)
- Codex 扩展启动清理测试接受启动器预期的基于信号的终止。 [#134491](https://github.com/openclaw/openclaw/pull/134491) — 感谢 [@steipete](https://github.com/steipete)
- CI 重用有效的 Swift 构建产品,平衡缓慢的 Node 组,并更好地利用 Mac 夹具容量。 [#134493](https://github.com/openclaw/openclaw/pull/134493) — 感谢 [@steipete](https://github.com/steipete)
- Declaration 不再构建库存同级管理工作树或通过函数参数分散大量库存。 [#134501](https://github.com/openclaw/openclaw/pull/134501) — 感谢 [@steipete](https://github.com/steipete)
- Setup 迁移暂存和升级共享一项故障关闭目标路径检查。 [#134503](https://github.com/openclaw/openclaw/pull/134503) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- Local Docker 发布包准备跳过一项冗余结构验证,同时保留身份检查。 [#134505](https://github.com/openclaw/openclaw/pull/134505) — 感谢 [@steipete](https://github.com/steipete)
- 文件系统案例检测和安全箱信任重用一种经过测试的低级身份实现。 [#134511](https://github.com/openclaw/openclaw/pull/134511) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- 如果提供商识别或规范化退化,媒体别名测试现在会失败。 [#134513](https://github.com/openclaw/openclaw/pull/134513) — 感谢 [@steipete](https://github.com/steipete)
- 扩展稳定验证可识别冻结候选人的旧子代理实时测试选择加入路径。 [#134518](https://github.com/openclaw/openclaw/pull/134518) — 感谢 [@RomneyDa](https://github.com/RomneyDa)
- iOS CI 重复使用 Watch 构建产品并更准确地识别成品流程组。 [#134523](https://github.com/openclaw/openclaw/pull/134523) — 感谢 [@steipete](https://github.com/steipete)
- Frozen Docker 候选人创建自己的代理名册,以便删除跨配置代的冒烟测试。 [#134526](https://github.com/openclaw/openclaw/pull/134526) — 感谢 [@RomneyDa](https://github.com/RomneyDa)
- Control UI 检查有界工作线程之间的分片,并且未更改的 SDK 编译器输入可以重用经过验证的声明。 [#134528](https://github.com/openclaw/openclaw/pull/134528) — 感谢 [@steipete](https://github.com/steipete)
- Declaration 缓存会在选定的捆绑插件图更改时重建。 [#134529](https://github.com/openclaw/openclaw/pull/134529) — 感谢 [@steipete](https://github.com/steipete)
- Gateway-本地身份验证和状态回退共享一个环回 URL 策略。 [#134535](https://github.com/openclaw/openclaw/pull/134535) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- 本机边界缓存会忽略不相关的根托管工作树改动,同时保留相关的嵌套和别名输入。 [#134538](https://github.com/openclaw/openclaw/pull/134538) — 感谢 [@steipete](https://github.com/steipete)
- 出站目标规范化测试重用与生产相关的注册表生成生命周期。 [#134539](https://github.com/openclaw/openclaw/pull/134539) — 感谢 [@steipete](https://github.com/steipete)
- Plugin 预发布取消测试保留所选代理身份。 [#134540](https://github.com/openclaw/openclaw/pull/134540) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- Swift 缓存时间戳装置将同时更新批处理到更少的进程中。 [#134543](https://github.com/openclaw/openclaw/pull/134543) — 感谢 [@steipete](https://github.com/steipete)
- 命令队列发布测试观察通道准入和任务输入,而无需不精确的计时器刷新。 [#134545](https://github.com/openclaw/openclaw/pull/134545) — 感谢 [@steipete](https://github.com/steipete)
- Nostr 密钥验证案例合并到当前所有者下,没有重复的覆盖范围。 [#134546](https://github.com/openclaw/openclaw/pull/134546) — 感谢 [@steipete](https://github.com/steipete)
- Nostr 通道测试练习插件合约 OpenClaw 实际注册。 [#134551](https://github.com/openclaw/openclaw/pull/134551) — 感谢 [@steipete](https://github.com/steipete)
- Fireworks Kimi 测试现在证明解析器应用了所需的推理覆盖。 [#134553](https://github.com/openclaw/openclaw/pull/134553) — 感谢 [@steipete](https://github.com/steipete)
- CI 分片运行程序测试现在证明恰好有两个工作线程重叠,而没有计时器睡眠。 [#134556](https://github.com/openclaw/openclaw/pull/134556) — 感谢 [@steipete](https://github.com/steipete)
- CI 计时测试通过架构所有者验证格式错误的字段,同时保留加载程序行为覆盖范围。 [#134563](https://github.com/openclaw/openclaw/pull/134563) — 感谢 [@steipete](https://github.com/steipete)
- Changed-基准解析器错误直接测试,无需五次冷 CLI 启动。 [#134565](https://github.com/openclaw/openclaw/pull/134565) — 感谢 [@steipete](https://github.com/steipete)
- MiniMax OAuth 在结算后测试明确的授权和代币轮询观察期限。 [#134569](https://github.com/openclaw/openclaw/pull/134569) — 感谢 [@steipete](https://github.com/steipete)
- 独立的 Firecrawl 回归测试检查完整记录的 1 到 100 计数诊断。 [#134571](https://github.com/openclaw/openclaw/pull/134571) — 感谢 [@steipete](https://github.com/steipete)
- Provider 流测试每个隔离套件初始化一次无状态所有者。 [#134578](https://github.com/openclaw/openclaw/pull/134578) — 感谢 [@steipete](https://github.com/steipete)
- Live 测试为 Codex 自动压缩和 OpenAI 响应检查点重放提供了更有力的证据。 [#134580](https://github.com/openclaw/openclaw/pull/134580) — 感谢 [@steipete](https://github.com/steipete)
- Claw 引导程序和工作区文件操作共享一个严格的路径包含策略。 [#134582](https://github.com/openclaw/openclaw/pull/134582) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- Process-supervisor 测试重用工厂,同时保留每个案例的新鲜状态和清理。 [#134583](https://github.com/openclaw/openclaw/pull/134583) — 感谢 [@steipete](https://github.com/steipete)
- Frozen npm 包验证使用捆绑的 Telegram 和可信工具,而不是缺少的外部 Matrix 插件。 [#134592](https://github.com/openclaw/openclaw/pull/134592) — 感谢 [@steipete](https://github.com/steipete)
- 执行身份审核准入和持久性共享一个规范的排序策略。 [#134597](https://github.com/openclaw/openclaw/pull/134597) — 感谢 [@vincentkoc](https://github.com/vincentkoc)
- Plugin SDK API-diff 取消测试清除了其已完成的观察期限。 [#134599](https://github.com/openclaw/openclaw/pull/134599) — 感谢 [@steipete](https://github.com/steipete)
- Azure Speech 畸形响应测试在结算后清除了其套接字关闭观察期限。 [#134602](https://github.com/openclaw/openclaw/pull/134602) — 感谢 [@steipete](https://github.com/steipete)
- Microsoft Teams 父上下文测试结合了顺序缓存和重复数据删除生命周期阶段,而不会丢失断言。 [#134606](https://github.com/openclaw/openclaw/pull/134606) — 感谢 [@steipete](https://github.com/steipete)
- 媒体提供商注册表测试重用其无状态图,同时保留每个案例的模拟隔离。 [#134609](https://github.com/openclaw/openclaw/pull/134609) — 感谢 [@steipete](https://github.com/steipete)
- Changelog 归因装置避免了冗余的持久 Git 配置过程。 [#134611](https://github.com/openclaw/openclaw/pull/134611) — 感谢 [@steipete](https://github.com/steipete)
- 内存测试不再使用已退休的复制散列和完成帮助程序。 [#134618](https://github.com/openclaw/openclaw/pull/134618) — 感谢 [@steipete](https://github.com/steipete)
- Release ZIP 装置使用本机校验和并直接证明损坏的有效负载字节被拒绝。 [#134620](https://github.com/openclaw/openclaw/pull/134620) — 感谢 [@steipete](https://github.com/steipete)
- 本机构建缓存突变测试可恢复经过验证的原始一代,而不是重新编译相同的设置。 [#134623](https://github.com/openclaw/openclaw/pull/134623) — 感谢 [@steipete](https://github.com/steipete)
- 内存主机 SDK 测试保留更强的嵌套批处理错误情况并删除重复项。 [#134624](https://github.com/openclaw/openclaw/pull/134624) — 感谢 [@steipete](https://github.com/steipete)
- Docker 工件夹具预先计算固定图像身份,同时保留存档和加载后漂移检查。 [#134628](https://github.com/openclaw/openclaw/pull/134628) — 感谢 [@steipete](https://github.com/steipete)
- Frozen npm 检查从可信稀疏工具获取静态资产和公共 SDK 夹具,同时验证冻结目标。 [#134629](https://github.com/openclaw/openclaw/pull/134629) — 感谢 [@steipete](https://github.com/steipete)
- OpenAI 实时转录测试观察假套接字构造和案例之间自己的重新连接清理。 [#134635](https://github.com/openclaw/openclaw/pull/134635) — 感谢 [@steipete](https://github.com/steipete)
- Hermes 迁移重用共享提供程序发现和配置冲突管道。 [#134640](https://github.com/openclaw/openclaw/pull/134640) — 感谢 [@steipete](https://github.com/steipete)
- Compact CI 时序暗示可以更好地平衡之前被低估的六个测试组。 [2f18e20](https://github.com/openclaw/openclaw/commit/2f18e202d39bbfa882161d884eb4ecccc8733ca9)
- 在打包作业时,测量的紧凑型 CI 重量现在超过了过时的固定提示。 [1197203](https://github.com/openclaw/openclaw/commit/119720344a871a667f973d5e4eb2ead8935466ed) — 感谢 [@steipete](https://github.com/steipete)
- 应用程序、包、扩展、兼容性和生成的目录元数据一致地标识 2026.8.2 候选者。 [47c295c](https://github.com/openclaw/openclaw/commit/47c295c89cf1459019d5bbf19397efd76c424554) — 感谢 [@steipete](https://github.com/steipete)
- Android 版本和存储元数据以及生成的 Apple 和 Control UI 语言环境目录与冻结的 2026.8.2 剪切保持一致。 [5a40f47](https://github.com/openclaw/openclaw/commit/5a40f4756e6170914a28402a6845335ed2bcd09d)
- 草稿变更日志通过完整注释链接提升到注明日期的 2026.8.2 发布记录中。 [71901c9](https://github.com/openclaw/openclaw/commit/71901c92802baf52e4913f76107f3e2d75af2ec4)
- Vercel CLI 发布实现接受经过审查的 js-yaml 4.3.2 锁定,同时保留完整性防护。 [e01f53c](https://github.com/openclaw/openclaw/commit/e01f53cfa01302f03fed4797b0715d11945ddd41)
- 最终变更日志元数据记录映像依赖性安全说明、剩余警告、端点和 784-PR 记帐。 [0965053](https://github.com/openclaw/openclaw/commit/0965053fe6b9341776df147a6934b7485c60b5ca)