OpenClaw 24h 更新快报(2026-04-20):Cron 调度、Browser 工具、tasks 生命周期

内容管家 AI领域评论0字数 1263阅读4分12秒阅读模式
OpenClaw 24h 更新快报(2026-04-20):Cron 调度、Browser 工具、tasks 生命周期

OpenClaw 24h 更新快报(2026-04-20):Cron 调度、Browser 工具、tasks 生命周期

过去24小时内,OpenClaw 项目合并了超过40个 PR,涵盖 Cron 调度、浏览器工具、渠道集成、Agent 会话等多个核心模块的修复与改进。其中 Cron 调度相关的修复最为集中,涉及交付配置校验、心跳目标保留、去重键优化等关键问题。

Cron 调度与 Gateway

本次更新中有多个 PR 聚焦于 Cron 调度的稳定性与正确性。

PR #69015 强化了 Gateway 对 Cron 任务的交付配置校验,在网关边界直接拒绝无效或歧义的 announce 交付配置,而不是等到运行时才失败。这解决了配置错误被静默保存、后续执行时却报错的问题。

PR #69040 确保 Cron 交付校验逻辑与实际运行时行为保持一致。禁用的渠道不再产生歧义,交付补丁校验现在使用实时的 Cron 服务默认 Agent。

PR #69021 修复了延迟心跳目标覆盖被丢弃的问题。当一个 wake 被排队或重试时,主会话的 Cron 心跳覆盖不再回退到默认心跳目标,确保了会话上下文的完整性。

PR #69000 修复了重复 Telegram 运行报告已交付却实际未发送的问题。之前 Cron 直接交付使用可复用的会话 ID 进行去重,而不是每次运行的执行 ID,导致 recurring Telegram 运行可能误报交付成功。该 PR 将去重键改为 Cron 执行 ID,并在 Cron 路径间共享该辅助方法。

PR #68829 修复了 Control UI 将运行时哨兵值 "last" 持久化到 jobs.json 的问题。当保存一个空的交付渠道字段时,UI 会写入 "last" 作为字面值,覆盖用户配置的渠道(如 "telegram")。"last" 是运行时专用的哨兵,意味着"使用会话中最后使用的渠道",不应被持久化。

PR #68858 修复了 Cron 工具允许列表解析问题。CLI 可以接收以空格分隔的工具列表(如 "exec read write")而不是逗号分隔的格式,该 PR 在共享解析器中统一处理这两种输入。

Browser 工具与 CDP 连接

PR #68891 移除了浏览器工具对 node 目标上 "existing-session" 配置的硬性阻止。之前远程网关即使连接了浏览器节点,也无法使用 profile="user" 访问节点上的真实登录 Chrome 会话。现在 profile="user" 可以自动通过连接的浏览器节点路由。

PR #68715 修复了当 browser.cdpUrl 设置为裸 ws://host:port(无 /devtools/ 路径)时浏览器连接失败的问题。Chrome 只接受在 /json/version 返回的特定路径上的 WebSocket 升级,之前对裸 ws:// URL 的握手在根路径就失败了,报告"profile 未运行"即使 CDP 端点实际可达。修复引入了 HTTP /json/version 发现机制作为后备。

Tasks 与 Detached 任务运行时

PR #68915 为 detached 任务生命周期添加了插件注册契约。在此之前,外部执行器没有明确的方式注册到 detached 任务生命周期,该 PR 添加了 detached 运行时注册状态、暴露插件注册接口,并将 detached 取消路由到已注册的运行时。

PR #68886 提取了 detached 任务生命周期运行时,将直接调用从 task-executor.ts 解耦出来,形成了可插拔的行为保留生命周期接缝。这为未来探索插件支持或外部管理的 detached 执行奠定了基础。

渠道集成

PR #68953 修复了 Discord 斜杠命令在部分 channel 对象上崩溃的问题。添加了安全的 channel name 读取辅助方法,并在 native command 和 model-picker 路由中复用。

PR #68570 修复了 Matrix 中带 mention 前缀的斜杠命令无法识别的问题。之前当用户发送 "@bot:server /new" 时,命令未被识别,因为 mention 前缀未被剥离。

PR #68546 实现了 Matrix dm.allowFrom 和 groupAllowFrom 的热重载。每次入站消息时从实时配置读取,而不是在启动时冻结这些数组,新添加的条目无需重启网关即可生效。

PR #69070 修复了 BlueBubbles 消息发送可靠性的两个问题:始终在 /api/v1/message/text 请求中显式设置 method 字段,以及在 macOS 26 上强制使用 Private API 以避免 AppleScript 自动化失效。

Agent 与模型

PR #68907 将 Kimi 模型的 thinking 默认设置为关闭状态,强制 Kimi Anthropic 兼容 payload 发送 thinking: disabled。

PR #68746 修复了 openai-completions 传输中 stream_options.include_usage 未始终发送的问题,这导致上下文 token 追踪为 0%。

PR #68726 增强了 subagent 错误上下文,错误 payload 现在包含 role(请求的 agentId)、session key 和执行耗时信息,便于父 agent 进行重试或清晰报告失败。

本次更新以稳定性改进为主,Cron 调度、浏览器工具和任务生命周期的多项修复将提升生产环境的可靠性。

常用链接

 
内容管家

发表评论