OpenClaw 2026.4.14-beta.1 发布
发布者: steipete
更新时间: 2026-04-14T02:43:15Z
链接: GitHub Release
更新内容
变更
- Telegram/论坛话题: 通过学习 Telegram 论坛服务消息中的名称,在 Agent 上下文、提示词元数据和插件钩子元数据中显示人类可读的话题名称。
修复
- UI/聊天: 用 markdown-it 替换 marked.js,防止恶意构造的 Markdown 通过 ReDoS 攻击冻结控制面板 UI。
- 自动回复/发送策略: 保持
sendPolicy: "deny"不阻止入站消息处理,使 Agent 在所有出站投递被抑制的观察者模式下仍能运行。 - BlueBubbles: 在发送时懒刷新私有 API 服务器信息缓存(当回复线程或消息效果被请求但状态未知时),避免 10 分钟缓存过期后消息静默降级为普通消息。
- 心跳/安全: 对不受信任的
hook:wake系统事件强制执行所有者降级。 - 浏览器/安全: 在快照、截图和标签页路由上强制执行 SSRF 策略。
- Microsoft Teams/安全: 在 SSO 登录调用上强制执行发送者白名单检查。
- 配置/安全: 在
redactConfigSnapshot中清除sourceConfig和runtimeConfig别名字段。 - Agent/上下文引擎: 将可选的轮次维护作为空闲感知的后台工作运行,使下一个前台轮次不再等待主动维护。
- 插件/状态: 在
plugins inspect中报告注册的上下文引擎 ID,而非所属插件 ID。 - 上下文引擎: 拒绝报告的
info.id与注册槽位 ID 不匹配的已解析插件引擎。 - WhatsApp: 在 OpenClaw postinstall 期间修补已安装的 Baileys 媒体加密写入。
- Gateway/更新: 统一服务入口点解析围绕规范的捆绑 Gateway 入口点。
- 心跳/Telegram 话题: 当
target=last时,将孤立的心跳回复保持在绑定的论坛话题上。 - 浏览器/CDP: 让托管本地 Chrome 就绪状态、状态探测和托管 loopback CDP 控制绕过浏览器 SSRF 策略。
- Gateway/会话: 阻止心跳、cron-event 和 exec-event 轮次覆盖共享会话路由和来源元数据。
- 浏览器/CDP: 让本地仅附加
manual-cdp配置文件在严格默认策略和远程类探测超时下重用本地 loopback CDP 控制平面。 - 配置/日志: 限制第三方 Sentry 客户端集成的调用者注释垃圾信息。
- 插件/渠道: 在懒加载下保持捆绑渠道 artifact 和 secret-contract 加载稳定。
- 插件/ClawHub: 根据版本元数据 SHA-256 验证下载的插件存档。
- 插件/提供者钩子: 阻止插件初始化期间递归提供者快照加载溢出栈。
- Docker/插件: 停止在运行时镜像中强制捆绑插件发现到
/app/extensions。 - 提供者/Ollama: 在流式传输时遵守所选提供者的
baseUrl。 - 提供者/Ollama: 当发现仅看到空的默认本地存根时,不再警告无法连接 Ollama。
- 提供者/xAI: 再次将
api.grok.x.ai识别为 xAI 原生端点。 - 提供者/Mistral: 为
mistral/mistral-small-latest发送reasoning_effort。 - OpenAI TTS/Groq: 发送
wav到 Groq 兼容的语音端点。 - 工具/web_fetch 和 web_search: 修复 undici 8.0 默认启用 HTTP/2 导致的
TypeError: fetch failed。 - 工具/web search/Exa: 在 onboarding 中显示 Exa Search 并使其可配置。
- 内存/向量召回: 当
sqlite-vec不可用或向量写入降级时显示明确警告。 - 内存/梦境: 使梦境配置读写遵守所选内存槽插件。
- QQ Bot/媒体: 通过受保护的 QQ/Tencent HTTPS 获取路由网关侧附件和回退下载。
- 浏览器/远程 CDP: 远程浏览器重启后重试一次 DevTools websocket。
- UI/浅色模式: 在浅色主题中同时针对根级和嵌套 WebKit 滚动条滑块。
- Agent/子 Agent: 遵守
sessions_spawn(lightContext: true)以保持轻量级引导上下文。 - Cron: 当磁盘存储省略
id时将jobId加载到id。 - Agent/模型回退: 将最小 HTTP 404 API 错误分类为
model_not_found。 - BlueBubbles/网络: 尊重 loopback 和私有
serverUrl值的显式私有网络选择退出。 - Agent/心跳: 保持心跳运行固定在主会话。
- Agent/心跳: 遵守禁用心跳提示指导。
- Agent/压缩: 停止压缩等待中止重新进入提示故障转移。
- 审批/运行时: 将本机审批生命周期组装移至共享核心引导/运行时缝隙。
- 安全/fetch-guard: 停止在 SSRF 保护的获取中针对目标作用域主机名白名单拒绝操作员配置的代理主机名。
- 日志: 使
logging.level和logging.consoleLevel再次遵守文档化的严重性阈值排序。 - Agent/sessions_send: 通过 announce 投递传递
threadId。 - Daemon/systemd: 当机器作用域 systemctl 失败时将 sudo systemctl 调用保持在调用用户范围内。
- 文档/国际化: 在翻译后重新本地化最终本地化页面链接。
- Agent/exec: 将超时的 shell 后台命令保持在失败路径。
