OpenClaw 24h 更新快报(2026-06-15):工具链安全、Agent 稳定性、Telegram 与 WebUI

内容管家 新闻 AI领域评论21字数 1333阅读4分26秒阅读模式
OpenClaw 24h 更新快报(2026-06-15):工具链安全、Agent 稳定性、Telegram 与 WebUI

OpenClaw 24h 更新快报(2026-06-14):工具链安全、Agent 稳定性、Telegram 与 WebUI

过去 24 小时,OpenClaw 仓库共计合并 30 个 PR,涵盖多个层面。值得关注的是,OpenAI 工具链连续迎来两道防护补丁,Agent 核心运行时修复了此前可能导致工具调用重复执行的隐患,Telegram 集成终于有了遇错退避机制,WebUI 侧边栏则迎来了会话级工作区的大幅重设计。

OpenAI 工具链安全两道补丁

维护者 peter steinberger 主导了连续三个 OpenAI 相关修复。首先是 PR #92921,对无法通过 JSON Schema 校验的工具定义在上报 OpenAI 之前就地隔离,保留其余正常工具不受影响。此前若自定义工具的 schema 存在格式问题,整批工具会被拒绝导致调用失败,如今系统会在本地提前拦截并给出诊断,而非等 OpenAI 返回错误。其次,PR #92928 在 OpenAI 传输层的后置钩子中加入了防护读取逻辑——当模型输出异常或工具载荷不可读时,不会再触发崩溃,而是干净地丢弃问题字段并保留有效的 exec / wait 工具。这两个补丁组合在一起,从 schema 验证层到响应解析层形成了纵深防御。

另一个值得关注的是 PR #92941,修复了 OpenAI Responses 接口中 reasoning 签名无效时的恢复逻辑:当遇到 `thinking_signature_invalid` 错误时,系统现在会复用已有的单次重试机制,仅丢弃加密内容本身而保留 reasoning / message / function-call 等标识符和顺序。这解决了 OpenAI Responses API 在处理流式 reasoning 输出时偶发的签名校验失败问题。

Agent 核心稳定性:工具钩子去重与归因修复

PR #93009 修复了 `wrapToolWithBeforeToolCallHook` 的幂等性问题。在工具 schema 归一化过程中,钩子封装器曾被重复嵌套,导致同一个 `before_tool_call` 钩子在单次工具调用时执行两次——这会直接破坏那些依赖调用计数状态的工具逻辑。修复后,封装器会保留自身的来源信息并正确替换已有钩子,同时维持住归一化后的 schema 不回退。

与此同时,PR #92991 处理了 Agent 归因模块对 `baseUrl` 字段的强依赖:Bedrock 形态的模型在运行时没有 `baseUrl`,此前会导致 `getAttributionHeaders()` 中 `.includes()` 调用直接抛出空指针。现在归因逻辑在读取前会先检查字段是否存在,OpenRouter 和 Cloudflare 的归因头行为则保持不变。

来自 @mmyzwl 的 PR #92916 解决了嵌入式运行器中 thinking 签名回放失败的问题:当 Anthropic 流式输出中的 thinking 签名在回放时无效,恢复封装器本应触发但因错误文本被泛化而从未被激活。修复后,错误遍历逻辑会检查 cause、SDK error、failover rawError、stream errorMessage 等多个命名字符串字段,以找到真正的签名失效原因并正确触发恢复流程。

Telegram 通知稳定性改进

PR #93020 为 Telegram 的 sendChatAction 添加了遇错退避机制。当出现网络瞬时错误、429 限速响应或临时的 5xx 错误时,系统不再持续重试,而是进入冷却期并逐步延长间隔;同时 Typing 开始的拒绝逻辑与共享 Typing 断路器打通,避免冷却期间仍然持续打计数器导致断路器误判。这解决了 Telegram 机器人在网络不稳定环境中容易触发 Telegram 端限流的问题。

WebUI 工作区侧边栏大幅重设计

由 @Solvely-Colin 提交的 PR #92856 以会话维度重建了右侧工作区侧边栏:旧的方案只是展示 agent 文件列表,新的工作区轨道(session workspace rail)则会显示当前会话内改动的文件、读取过的文件、Artifacts 和项目浏览器入口。背后新增了 `sessions.files.list` 和 `sessions.files.get` 两个 Gateway RPC 及对应协议 schema,使得 UI 可以按会话加载被操作过的文件并提供有界预览。该功能保留了侧边栏折叠、文件预览内嵌聊天工作区以及分屏调整等交互细节。

工具链与内存子系统小幅改进

PR #92913 为 opencode-go 插件注册了 providerCatalogEntry,使系统可将 `opencode-go/deepseek-v4-pro` 识别为 1,000,000 token 上下文模型,从而在同步内存压缩检查前正确评估上下文窗口。维护者 @sallyom 的 PR #93005 则补充了 OpenRouter Fusion 集成文档,包括面板/judge extraBody 配置、OAuth 与 API-key 兼容性说明以及延迟问题的设计说明,同时在 provider prompt 中加入了 Fusion 分析模型和 judge 模型的上下文信息,便于 Agent 在对话中回答相关问题。内存层面,PR #92891 在启动时增加了对孤儿 reindex 临时 SQLite 文件的清理逻辑,防止硬重启后遗留的 `.tmp-` 文件占用磁盘空间。

整体来看,本次更新的基调是"防御性加固":从 OpenAI 工具链的 schema 层到响应解析层、从 Agent 钩子幂等性到 Telegram 网络容错,多处改动都在堵住此前暴露的边界条件漏洞,而非引入新功能。

常用链接

 
内容管家

发表评论