
OpenClaw 24h 更新快报(2026-04-14):安全加固、Agent文件权限收紧与Telegram二进制Caption过滤
过去24小时,OpenClaw 仓库共合并了35个PR,安全相关改动尤其密集。Feishu和MCP的安全边界同时得到加固,Agent核心则对workspace文件操作路径做了系统性收紧,同时Telegram渠道修复了一个可能导致token异常消耗的二进制Caption泄漏问题。
安全与边界加固
多个PR从不同角度强化了OpenClaw的安全边界。PR #66707 加固了Feishu Webhook的身份验证与重放保护逻辑,即使上游校验行为发生漂移也能fail-closed,防止加密密钥缺失或畸形回调绕过验证。PR #66665 则在MCP环回请求分发前增加了严格校验,维持现有本地MCP工作流正常运作的同时收紧了面向浏览器的行为。此外,commit 66386 修复了浏览器SSRF策略中的hostname导航问题,在默认严格模式下重新允许了loopback CDP连接。
PR #66664 修复了Anthropic Messages传输层的一个关键问题:非正的 max_tokens 值现在会被拦截,不会继续传递给Anthropic API,同时 maxTokens 额外参数在泄漏进请求前就会被清除。这个改动对使用自定义token计数的用户有直接影响。PR #66651 则解决了网关秘钥轮换后的认证一致性问题——秘钥reload或配置热更新后,HTTP Server和WebSocket升级处理器之前会继续使用过期token,现在改为每次请求重新解析。
Agent核心与会话调度
PR #66636 对Agent workspace文件操作做了系统性的权限收紧:agents.files.get、agents.files.set 以及workspace文件列表查询现在统一经过根作用域的 fs-safe 辅助函数,并移除了此前针对allowlisted路径的独立解析层,降低了路径穿越风险。
PR #66796 修复了reply-run中SecretRef解析的盲区:此前secret解析只请求基础Agent运行时目标,导致 channels.* SecretRef(用于当前活跃reply渠道的凭证)无法正确解析,现在扩展了解析范围。PR #66363 改进了计费冷却场景的兜底摘要分类:当用户配额耗尽时,之前返回的是通用失败文本,现在会给出具体的计费引导。commit 70b67b0 还修复了模型fallback重试时不保留原始prompt的问题,prompt现在会在重试过程中完整保留。
PR #66689 允许workspace根路径下的绝对路径媒体文件参与auto-reply流程:此前Agent在workspace内生成媒体文件(如 <workspaceDir>/exports/images/chart.png)时,auto-reply管道会静默丢弃这些文件,现在已修复。
Telegram与渠道集成
PR #66663 修复了Telegram频道的一个潜在token异常消耗问题:当用户发送二进制文档(.mobi、.epub等)时,原始二进制内容可能泄漏进 msg.caption,而 getTelegramTextParts() 会将其透传给后续处理流程,导致token被意外消耗。该PR在源头过滤了二进制的caption内容。PR #66461 修复了Telegram媒体下载时DNS解析的代理行为:此前即使频道配置了HTTP代理,Telegram媒体下载仍强制使用本地DNS,现在会信任显式配置的代理DNS。
模型与AI能力
PR #66495 新增了Agent轻量本地模型模式(agents.defaults.localModelMode: lean),开启后会在请求组装前丢弃 browser、cron、message 等重量级默认工具,适合纯本地推理场景。PR #66453 为OpenAI Codex增加了 gpt-5.4-pro 前向兼容项,避免更新运行时目录组合时该模型被隐藏或无法使用。PR #66439 为Ollama的OpenAI兼容补全路径启用了streaming usage兼容模式,并增加了传输层断言确保Ollama正确发送 stream 标记。
控制台与开发者体验
PR #66706 修复了渠道设置/onboarding时可能渲染出 undefined: undefined 畸形元数据的问题,同时改善了setup picker标签在渠道配置不完整时的降级显示。PR #66649 防止了setup向导在provider插件元数据不完整(如缺少 id 字段)时因 TypeError 崩溃,原因是比较provider id时使用了 .trim() 但未对缺失情况进行防护。
构建、测试与发布
PR #66812 在公共仓库新增了跨操作系统的安装和升级验证可复用workflow,将workflow定义公开同时让私有调用方保留secrets和手动触发能力。PR #66660 将npm dist-tag操作从公共npm release workflow移至releases-private,公共端只保留安全说明和release策略文档。PR #66723 将Matrix QA从 qa-lab 内部分离为可选插件,解耦了QA host与Matrix特定的运行时、CLI和打包逻辑,为渠道无关的QA host铺路。
本次更新覆盖了安全、Agent核心、渠道集成、模型支持和构建流程等多个维度,是一次高密度的合并。


评论