OpenClaw 2026.4.2 版本深度解读:配置迁移、任务编排与安全加固全解析
本文核心问题:OpenClaw 2026.4.2 版本到底改了什么,对现有部署和日常使用会产生哪些实质影响?
OpenClaw 2026.4.2 是一个体量较大的版本,涵盖两项破坏性变更、多项核心功能增强以及超过五十项缺陷修复。它的重心可以概括为三条主线:插件配置体系的彻底解耦、后台任务编排能力的重新落地、以及传输层与执行层的安全加固。如果你正在运行旧版本并依赖 xAI 搜索或 Firecrawl 抓取功能,升级后必须执行配置迁移,否则这两个能力会直接失效。对于已经在用 Task Flow 做后台编排的团队,这个版本重新接回了被移除的底层基座,并补齐了子任务取消、状态检查等运维手段。而在安全层面,大量关于 TLS、代理、环境变量注入、路径遍历的修复说明开发团队正在系统性地收紧运行时边界。
下面按功能模块逐一拆解。
一、破坏性变更:插件配置路径迁移
本段核心问题:升级到 2026.4.2 后,xAI 搜索和 Firecrawl 抓取为什么会突然不工作?
这个版本有两项破坏性变更,本质上做的是同一件事——把长期寄生在核心配置里的插件专属参数,搬到插件自己的命名空间下。这不是简单的改名,而是架构层面对”核心与插件边界”的重新划定。
1.1 xAI 插件:x_search 配置迁移
此前,xAI 的搜索功能配置写在核心配置路径 tools.web.x_search.* 下,认证信息也散落在非标准位置。2026.4.2 将其统一迁移到:
- ◉
配置路径: plugins.entries.xai.config.xSearch.* - ◉
认证字段: plugins.entries.xai.config.webSearch.apiKey(环境变量XAI_API_KEY)
场景说明:假设你的团队通过 OpenClaw 调用 xAI 的联网搜索能力来做竞品舆情监控,旧配置中 tools.web.x_search.enabled: true 这类写法在新版本中会被完全忽略。升级后如果忘记迁移,Agent 的搜索工具会静默不可用,但不会报错——这比直接崩溃更危险,因为你可能以为搜索还在正常工作。
迁移命令:
openclaw doctor --fix
这条命令会自动检测旧路径下的配置项,将其搬运到新路径,并清理遗留。建议在执行前备份配置文件。
1.2 Firecrawl 插件:web_fetch 配置迁移
与 xAI 类似,Firecrawl 的 web_fetch 配置从 tools.web.fetch.firecrawl.* 迁移到 plugins.entries.firecrawl.config.webFetch.*。同时,web_fetch 的回退逻辑从原先”硬编码走 Firecrawl 分支”改为经过新的 fetch-provider 边界层,这意味着未来可以有多个抓取后端共存,而不是只绑定 Firecrawl 一条路。
场景说明:你有一个自动化流程,用 Firecrawl 抓取目标网站的结构化内容并喂给 Agent 做摘要。迁移后,如果 Firecrawl 服务暂时不可用,系统会按新的 provider 边界逻辑尝试其他已配置的 fetch 方案,而不是直接失败。
同样使用 openclaw doctor --fix 完成自动迁移。
迁移对照表:
| 功能 | 旧配置路径 | 新配置路径 | 认证方式 |
|---|---|---|---|
| xAI 搜索 | tools.web.x_search.* |
plugins.entries.xai.config.xSearch.* |
XAI_API_KEY 或 plugins.entries.xai.config.webSearch.apiKey |
| Firecrawl 抓取 | tools.web.fetch.firecrawl.* |
plugins.entries.firecrawl.config.webFetch.* |
沿用插件内配置 |
“
作者反思:这种”核心瘦身、插件自治”的迁移方向我认为是正确的。早期很多项目为了快速落地,把插件参数塞进核心配置,短期降低了接入门槛,但随着插件数量增长,核心配置文件会变成一个无人敢动的巨石。现在的代价是升级时需要跑一次迁移脚本,但长远来看,每个插件管好自己的配置,核心只负责路由和生命周期,这是可持续的架构。
二、Task Flow:后台任务编排能力重新落地
本段核心问题:OpenClaw 的 Task Flow 到底解决了什么问题,2026.4.2 带来了哪些关键的运维能力?
Task Flow 是 OpenClaw 中用于后台长时间运行任务编排的基座。此前这个底层基座一度被移除,导致依赖它的上层编排无法持久化。2026.4.2 重新接回了这个基座,并且带来了几个直接影响可运维性的能力。
2.1 托管与镜像同步模式
核心 Task Flow 基座恢复后,支持两种同步模式:
- ◉
托管模式:Flow 的状态由 OpenClaw 自身管理,持久化存储,与插件编写层解耦。 - ◉
镜像模式:Flow 状态从外部源镜像过来,适合需要与外部编排系统对齐的场景。
同时引入了持久化的 flow state 和 revision tracking,意味着即使网关重启,正在运行的 Task Flow 也能恢复到正确的状态节点。
场景说明:你有一个 nightly 数据分析流程,由 Task Flow 编排多个子任务(拉取数据、清洗、生成报告、分发)。在托管模式下,即使凌晨网关因更新重启,流程恢复后不会从头开始,而是根据 revision 记录跳到未完成的步骤继续执行。
检查与恢复命令:
openclaw flows # 查看所有 Task Flow 状态
openclaw flows recover <flow-id> # 恢复异常中断的 Flow
2.2 子任务生成与粘性取消意图
新增 managed child task spawning 能力,允许 Task Flow 动态生成子任务。配合 sticky cancel intent 机制,当外部编排器发出取消信号后,系统会立即停止调度新子任务,但不会暴力杀掉正在执行的子任务——而是等它们自然完成后,再将父 Flow 状态设为 cancelled。
场景说明:假设你的 Task Flow 正在并行处理 5 个网站的抓取任务,已完成了 3 个。此时你发现第 4 个站点的数据有误,决定取消整个 Flow。有了 sticky cancel intent,系统会立刻停止启动第 5 个任务,等第 4 个正在进行的抓取结束后,干净地将整个 Flow 标记为已取消,而不是留下僵尸进程或数据不一致的中间态。
2.3 插件绑定的 Task Flow API
通过 api.runtime.taskFlow 接口,受信任的插件和编写层可以在不显式传递 owner 标识符的情况下创建和驱动托管的 Task Flow。这降低了插件与 Task Flow 交互的复杂度。
场景说明:你写了一个自定义的定时报告插件,需要在每天早上 8 点创建一个 Task Flow 来执行报告生成。通过 api.runtime.taskFlow,插件不需要知道当前用户的 owner ID 就能安全地创建 Flow,因为上下文已经由宿主解析并绑定。
“
作者反思:Task Flow 的”恢复”比”新增”更值得关注。很多系统在长时间运行任务的持久化上做得很差,要么完全不持久化(重启即丢),要么持久化了但恢复逻辑有 bug(恢复后状态错乱)。OpenClaw 这次引入 revision tracking 是对的,但真正考验它的是各种边界情况——比如子任务部分完成时网关崩溃、取消信号在网关重启前发出的时序问题等。这些需要在实际生产中验证。
三、多通道增强:飞书、Matrix、WhatsApp、Slack 与更多
本段核心问题:2026.4.2 在各个消息通道上分别解决了哪些实际的体验问题?
这个版本在通道层面的改动覆盖面很广,几乎每个主流通道都有实质性修复或增强。
3.1 飞书:文档评论区协作流程
新增了专门的 Drive 评论事件流,支持:
- ◉
评论线程上下文解析 - ◉
线程内回复 - ◉
feishu_drive评论动作,用于文档协作工作流
场景说明:团队在飞书文档中协作撰写技术方案,有人在文档某段落留下评论”@OpenClaw 帮我总结这段”。OpenClaw 收到评论事件后,能正确识别评论所在文档的上下文,在线程内直接回复总结内容,而不是跑到聊天窗口里回复一条脱离上下文的消息。
同时修复了全文档评论回退到 add_comment、延迟回复查找重试、以及推理/规划内容泄漏到用户可见回复中的问题。
3.2 Matrix:@提及可靠性与流式预览
Matrix 通道新增了符合规范的 m.mentions 元数据发射,覆盖文本发送、媒体标题、编辑、投票回退文本和动作驱动的编辑。这意味着在 Element 等客户端中,@提及通知能可靠触发。
场景说明:你在 Matrix 房间里 @OpenClaw 提问,以前可能因为缺少 m.mentions 元数据,Element 客户端不会弹出通知,导致你错过回复。现在这个问题被修复了。
流式输出方面,当启用 channels.matrix.blockStreaming 后,当前助手消息块会显示实时预览,而已完成的块保留为独立消息,避免了所有内容挤在一条不断编辑的消息里造成的阅读混乱。
3.3 WhatsApp:推送修复与媒体类型扩展
修复了自聊模式下网关运行时丢失推送通知的问题——原因是连接时未发送 unavailable 状态。现在网关启动后会正确声明自身为不可用状态,手机端不会因此停止推送。
媒体处理方面,新增了 HTML、XML、CSS 的 MIME 映射,遇到未知媒体类型时会优雅降级而非直接丢弃附件。
场景说明:你用个人手机号接入 OpenClaw 做私人数智助手,之前只要网关一跑起来,手机就再也收不到其他 WhatsApp 消息的通知。这个修复解决了这个严重影响日常使用的 bug。
3.4 Slack:格式化与线程上下文
新增了内置的 Slack mrkdwn 格式指引,注入到入站上下文中。此前 OpenClaw 的回复使用通用 Markdown,在 Slack 中渲染效果很差(比如链接语法、加粗方式不兼容)。
场景说明:你在 Slack 频道里问 OpenClaw 一个技术问题,它回复了一段包含代码块和链接的内容。旧版本中链接可能显示为原始 Markdown 语法,现在会正确渲染为 Slack 可点击的链接。
线程上下文修复确保了线程发起消息和历史记录在经过会话白名单过滤时,不会误删有效的大厅、DM 或群组 DM 上下文。
3.5 MS Teams:长回复去重
修复了流式回复超过 4000 字符限制时的内容重复问题。此前,当流式传输被截断并回退到整块发送时,已经流式输出过的文本会被再次发送,导致用户看到重复内容。
场景说明:你在 Teams 中让 OpenClaw 生成一份详细的技术方案,回复内容超过 4000 字符。旧版本中你会先看到流式输出被截断,然后又收到一条包含完整内容(含已显示部分)的消息。现在只会收到补全未显示部分的消息。
3.6 其他通道
| 通道 | 改动要点 |
|---|---|
| Mattermost | 状态探测走 SSRF 防护,尊重 allowPrivateNetwork 配置,自托管部署更安全 |
| Zalo | Webhook 回放去重键增加 chat 和 sender 维度,避免不同聊天的相同消息 ID 冲突 |
| QQ Bot | 限制本地文件路径在 QQ Bot 媒体存储根目录内,阻止路径遍历,减少日志中的路径泄漏 |
| Telegram | 审批回调 payload 从 allow-always 改为 always 以适配 Telegram callback_data 长度限制 |
| Android | 新增助手角色入口和 Google Assistant App Actions 元数据,可通过语音助手触发 OpenClaw |
四、Provider 传输层:集中化与安全加固
本段核心问题:Provider 传输层的集中化重构解决了几类什么性质的问题?
这个版本中,贡献者 vincentkoc 提交了大量关于 Provider 传输层的修复,核心思路是”集中化”——把散落在各个请求路径中的认证、代理、TLS、头部注入逻辑收拢到统一的共享路径中。
4.1 统一传输策略
此前,HTTP 请求、流式传输、WebSocket 连接各自维护一套认证和头部处理逻辑,导致行为不一致。2026.4.2 将以下内容集中到共享路径:
- ◉
请求认证 - ◉
代理配置 - ◉
TLS 设置(包括代理跳 TLS 与目标 mTLS 的分离) - ◉
头部构造
同时,禁止了不安全的 TLS 和运行时传输覆盖,确保代理跳 TLS 和目标 mTLS 互不干扰。
场景说明:你通过企业代理访问 OpenAI API,代理使用自签证书。旧版本中可能在流式路径和非流式路径上对 TLS 的处理不一致,导致一种方式能通、另一种方式报证书错误。集中化后,所有路径使用同一套 TLS 策略,行为可预期。
4.2 各 Provider 路由修复
| Provider | 修复内容 |
|---|---|
| GitHub Copilot | 将原生 Copilot API 主机纳入共享端点解析器,加固 token 派生代理端点解析,畸形提示 fail closed |
| OpenAI 兼容 | 统一原生与代理请求策略,隐藏归因等 OpenAI 家族默认值仅在验证过的原生端点上生效 |
| Anthropic | 集中原生与代理端点分类,service_tier 处理仅在原生端点生效,防止伪造/代理主机继承原生默认值 |
| 流式头部 | 统一 OpenAI WebSocket、嵌入式运行器和代理流路径的默认与归因头部合并逻辑 |
| 媒体 HTTP | 统一 OpenAI 兼容音频、Deepgram 音频、Gemini 媒体/图像、Moonshot 视频的 base URL 归一化和头部注入 |
场景说明:你使用了一个兼容 OpenAI API 的第三方服务(比如某国产大模型),通过自定义 base URL 接入。旧版本中系统可能会错误地给它注入原生 OpenAI 的归因头部,导致对方服务拒绝请求。现在只有验证过的原生 OpenAI 端点才会应用这些特殊头部。
4.3 图像生成 Provider 修复
图像生成请求(OpenAI、MiniMax、fal)现在统一走共享 Provider HTTP 传输路径。同时修复了两个安全问题:
- ◉
不再从配置的 base URL 推断私网访问权限(防止通过配置项绕过 SSRF 防护) - ◉
限制共享 HTTP 错误响应体的读取大小,防止恶意或配置错误端点导致无缓冲读取
“
作者反思:Provider 传输层的”集中化”看起来是不起眼的内部重构,但它解决的是一类非常棘手的问题——行为不一致。当一个系统有 N 种 Provider × M 种传输方式,如果每条路径各自实现,就存在 N×M 种潜在的行为差异。收拢到共享路径后,只需要维护一套逻辑。这类重构虽然用户看不见,但它是系统长期稳定运行的地基。
五、执行安全:从环境变量到路径遍历的全面收紧
本段核心问题:2026.4.2 在执行安全层面堵住了哪些具体的攻击面?
这个版本在 exec(命令执行)安全方面投入了大量修复,涵盖了环境变量注入、路径遍历、审批配置污染等多个维度。
5.1 环境变量注入封锁
两项修复直接针对通过 exec 环境变量进行攻击的场景:
- ◉
Exec 环境覆盖封锁:阻止对包根目录、语言运行时、编译器 include 路径、凭证/配置位置等关键环境变量的覆盖。这意味着请求级别的 exec 无法通过设置 PATH、PYTHONPATH、NODE_PATH等来重定向受信任的工具链或配置查找。 - ◉
Dotenv 工作区覆盖封锁:阻止工作区 .env文件覆盖OPENCLAW_PINNED_PYTHON和OPENCLAW_PINNED_WRITE_PYTHON。这防止了仓库本地的环境注入来重定向受信任的 helper 解释器。
场景说明:假设你开放了 OpenClaw 的 exec 能力给外部用户,攻击者试图通过设置 PYTHONPATH=/tmp/malicious 来让系统加载恶意 Python 模块。在 2026.4.2 中,这类覆盖会被直接拒绝。同样,如果攻击者在工作区放了一个 .env 文件设置 OPENCLAW_PINNED_PYTHON=/tmp/backdoor,也会被忽略。
5.2 路径遍历防护
QQ Bot 插件修复了本地文件路径限制问题:将路径约束在 QQ Bot 媒体存储根目录内,阻止目录遍历攻击,同时减少日志中的路径泄漏,但保持内联图片 data URL 正常工作。
图像工具路径解析修复:相对本地媒体路径现在基于 Agent 的 workspaceDir 解析,而不是 process.cwd()。这让 inbox/receipt.png 这类输入能可靠地通过本地路径白名单。
场景说明:Agent 需要处理用户上传到工作区 inbox 目录的收据图片。旧版本中如果 process.cwd() 和 workspaceDir 不一致,路径白名单校验可能失败,导致合法文件无法访问。现在始终基于 workspaceDir 解析,行为可预期。
5.3 执行审批配置加固
多项修复围绕 exec-approvals 配置的正确性:
- ◉
规范化时剔除 exec-approvals.json中无效的security、ask、askFallback值,防止畸形枚举污染运行时策略 - ◉
doctor 报告从真实的审批文件路径读取主机策略来源,忽略畸形主机覆盖值 - ◉
tools.exec.host=auto现在仅作为路由指示,不会绕过已配置的沙箱或主机目标 - ◉
Windows 恢复了带引号感知的 argPattern匹配白名单执行
场景说明:假设有人在 exec-approvals.json 中手误写了一个无效的 security 值(比如 security: "maybe"),旧版本中这个畸形值可能传播到运行时策略解析中,导致不可预期的行为。现在会被静默替换为文档默认值。
5.4 Webhook 密钥比较与 SSRF
- ◉
六个通道的 Webhook 处理器(BlueBubbles、飞书、Mattermost、Telegram、Twilio、Zalo)统一替换为时间安全比较函数 safeEqualSecret,防止时序攻击 - ◉
BlueBubbles 增加了空认证 token 拒绝 - ◉
Mattermost 状态探测走 SSRF 防护 - ◉
图像生成不再从 base URL 推断私网访问权限
5.5 OpenShell 镜像同步安全
约束 remoteWorkspaceDir 和 remoteAgentWorkspaceDir 到受管理的 /sandbox 和 /agent 根目录下,防止镜像同步覆盖或删除用户手动添加的 shell 根目录。
5.6 网关会话终止权限
对会话终止请求强制执行 HTTP operator scope,在会话查找之前进行授权检查,防止未认证调用者探测会话是否存在。
“
作者反思:这批安全修复给我的感受是——OpenClaw 正在从一个”能跑起来”的系统,转变为一个”能放心给别人用”的系统。环境变量注入、路径遍历、时序攻击、SSRF 绕过,这些都是真实世界中被频繁利用的攻击向量。特别是 dotenv 覆盖锁定和 exec 环境封锁,说明开发团队认真思考了”如果 Agent 被诱导执行恶意代码,系统还能守住哪些底线”这个问题。
六、Agent 与运行时改进
本段核心问题:Agent 层面有哪些影响日常使用体验的改进?
6.1 上下文压缩模型一致性
此前 agents.defaults.compaction.model 配置在手动 /compact 命令和其他上下文引擎压缩路径上解析不一致。现在所有运行时入口点都统一使用配置的覆盖模型进行压缩。
场景说明:你配置了 compaction.model: gpt-4o-mini 以节省压缩成本,但之前手动执行 /compact 时可能仍然使用了默认的主模型(比如 gpt-4o),导致压缩操作比预期昂贵。现在行为一致了。
6.2 压缩通知可选
新增 agents.defaults.compaction.notifyUser 配置项。此前 🧹 Compacting context... 通知始终显示,现在默认关闭,可手动开启。
场景说明:在自动化流程中,每次上下文压缩都弹出通知会干扰日志阅读。设置为 false 后,压缩静默进行,只在你需要时通过 openclaw flows 等命令检查状态。
6.3 输出清洗:防止内部标签泄漏
修复了 Anthropic 风格的 antml:thinking 命名空间块泄漏到用户可见文本中的问题。
场景说明:你使用 Anthropic 模型时,Agent 的内部思考过程(<antml:thinking>...</antml:thinking> 标签内的内容)之前可能直接展示给你,暴露了模型的推理细节和内部提示。现在这些标签会被从输出中剥离。
6.4 新增 before_agent_reply 钩子
插件可以在内联操作后通过 before_agent_reply 钩子用合成回复短路 LLM 调用。
场景说明:你写了一个插件处理特定命令(比如 /status),插件可以直接返回当前状态信息,而不需要把请求发给 LLM 处理。这节省了 token 消耗和响应延迟。
6.5 执行默认值变更
网关/节点主机 exec 默认变为 YOLO 模式:请求 security=full 且 ask=off。这意味着本地执行默认不再弹确认。
场景说明:你在本地开发时频繁让 Agent 执行命令,每次都弹确认很烦。现在默认直接执行。但在生产环境中,你需要显式配置更严格的策略来覆盖这个默认值。
6.6 Kimi Coding 工具载荷兼容
将 Anthropic 工具载荷归一化为 Kimi Coding 期望的 OpenAI 兼容函数格式,解决工具调用丢失必需参数的问题。
场景说明:你使用 Kimi Coding 作为 Provider,同时后端工具定义使用的是 Anthropic 格式。旧版本中工具调用可能因为格式不匹配而缺少参数导致执行失败。现在格式转换自动完成。
七、其他重要修复
本段核心问题:还有哪些可能影响日常运维但容易被忽略的修复?
7.1 网关回环修复
恢复了空配对设备 token 映射的旧角色回退,允许静默本地角色升级。这修复了 2026.3.31 之后本地 exec 和节点客户端因 “pairing required” 错误而失败的问题。
子 Agent 的管理员网关调用固定为 operator.admin,agent 保持最低权限,解决了 sessions_spawn 因回环权限升级配对而以 close(1008) "pairing required" 失败的问题。
7.2 ACP 网关重连
- ◉
在瞬时 WebSocket 断连期间保持 ACP 提示存活 - ◉
在重连宽限期过后拒绝过期的预确认 ACP 提示,避免调用方无限挂起
7.3 插件安装兼容 JSON5
openclaw.plugin.json 现在接受 JSON5 语法(尾逗号、注释、无引号键),安装/验证时自动打包 plugin.json 清单。
场景说明:第三方插件作者在 openclaw.plugin.json 中使用了注释和尾逗号(这是很常见的 JSON 扩展写法),旧版本中直接安装会失败。现在不再有问题。
7.4 插件激活状态追踪
保留了显式启用、自动启用和默认激活的来源及原因元数据,在 CLI、网关引导和状态展示中保持准确。
7.5 Cron 超时可见性
即使在 verbose: off 的情况下,超时的 exec 和 bash 失败也会在隔离 cron 运行中显示,包括自定义会话目标的 cron 任务。
场景说明:你设置了一个 cron 任务每天定时执行脚本,之前如果脚本超时失败了,在 verbose: off 模式下你完全看不到任何反馈。现在超时失败会被记录。
7.6 浏览器检查优化
静态 Chrome 检查辅助函数从激活的浏览器运行时中移除,openclaw doctor browser 不再急切加载捆绑的浏览器插件。
7.7 Diffs 查看器基础 URL
新增插件级别的 viewerBaseUrl 配置,查看器链接可以使用稳定的代理/公共源,无需在每次工具调用时传递 baseUrl。
7.8 Podman 启动清理
移除了 scripts/run-openclaw-podman.sh 中的嘈杂容器输出。
7.9 网关节点状态清理
显式确认和自然过期后修剪空的 node-pending-work 状态条目,防止每节点状态映射无限增长。
场景说明:你的 OpenClaw 部署有大量节点,运行一段时间后网关内存持续增长。原因是 node-pending-work 状态条目只增不减。现在过期和已确认的条目会被自动清理。
7.10 MS Teams 日志格式化
非 Error 类型的失败使用共享的 unknown-error 辅助函数格式化,不再将捕获的 SDK 或 Axios 对象折叠为 [object Object]。
场景说明:Teams 通道出问题时,你去看日志发现只有一行 [object Object],完全无法定位原因。现在会输出有意义的错误信息。
实用摘要与操作清单
升级前必做
- ◉
[ ] 备份当前配置文件(尤其是包含 tools.web.x_search和tools.web.fetch.firecrawl的部分) - ◉
[ ] 确认是否使用了 xAI 搜索或 Firecrawl 抓取功能 - ◉
[ ] 检查 exec-approvals.json中是否有手写的security/ask/askFallback值
升级后必做
- ◉
[ ] 执行 openclaw doctor --fix完成配置迁移 - ◉
[ ] 验证 xAI 搜索功能正常:发送一个搜索请求,确认结果返回 - ◉
[ ] 验证 Firecrawl 抓取功能正常:抓取一个测试 URL - ◉
[ ] 检查 exec 默认行为:确认本地执行是否符合预期(默认 YOLO 模式) - ◉
[ ] 如有 Task Flow 使用,执行 openclaw flows检查状态 - ◉
[ ] 如使用 Telegram 审批,测试”始终允许”按钮是否正常显示 - ◉
[ ] 如使用 cron 任务,检查超时失败是否正确记录
可选优化
- ◉
[ ] 设置 agents.defaults.compaction.notifyUser: true(如需要压缩通知) - ◉
[ ] 配置 agents.defaults.compaction.model为低成本模型(如未设置) - ◉
[ ] 为 Diff 查看器配置插件级 viewerBaseUrl - ◉
[ ] 更新第三方 openclaw.plugin.json以利用 JSON5 支持
一页速览
| 维度 | 关键变化 |
|---|---|
| 破坏性变更 | xAI 搜索配置迁移至 plugins.entries.xai.config.xSearch.*;Firecrawl 配置迁移至 plugins.entries.firecrawl.config.webFetch.*;均可用 openclaw doctor --fix 自动迁移 |
| 任务编排 | Task Flow 基座恢复,支持托管/镜像同步、子任务生成、粘性取消、openclaw flows 检查与恢复 |
| 多通道 | 飞书文档评论协作、Matrix @提及与流式预览、WhatsApp 推送修复、Slack mrkdwn 格式、Teams 长回复去重、Android 助手入口 |
| Provider 传输 | 认证/代理/TLS/头部集中化;Copilot/OpenAI/Anthropic 路由加固;图像生成走共享路径 |
| 执行安全 | 环境变量注入封锁、dotenv 覆盖锁定、路径遍历防护、审批配置清洗、Webhook 时序安全比较、SSRF 加固 |
| Agent 改进 | 压缩模型一致、压缩通知可选、thinking 标签清洗、before_agent_reply 钩子、exec 默认 YOLO |
| 运维修复 | 网关回环恢复、ACP 重连、插件 JSON5 支持、cron 超时可见、节点状态清理、Teams 日志格式化 |
常见问答
Q1:升级后 xAI 搜索不工作了,但没有报错,怎么回事?
旧配置路径已被忽略,搜索工具静默不可用。执行 openclaw doctor --fix 迁移配置,或将 tools.web.x_search.* 下的配置手动移到 plugins.entries.xai.config.xSearch.*,认证字段改为 XAI_API_KEY。
Q2:Task Flow 之前不能用,现在可以直接用了吗?
可以。2026.4.2 恢复了核心 Task Flow 基座,支持持久化状态和 revision 追踪。使用 openclaw flows 查看和管理。
Q3:exec 默认变成 YOLO 模式,生产环境怎么办?
本地开发时这是便利的,但生产环境需要在配置中显式设置更严格的 security 和 ask 策略来覆盖默认值。
Q4:飞书文档评论功能需要额外配置吗?
需要确保飞书插件已启用且具有文档读写权限。评论事件流是插件内置的,不需要额外的配置项,但需要 OpenClaw 有访问飞书 Drive 的权限范围。
Q5:Slack 中回复格式还是乱的怎么办?
确认已升级到 2026.4.2。新版本内置了 Slack mrkdwn 格式指引,会自动注入到入站上下文中。如果仍有问题,检查是否有自定义提示词覆盖了格式指令。
Q6:cron 任务超时失败看不到日志,如何排查?
2026.4.2 已修复此问题,超时失败现在会在 verbose: off 模式下也能看到。如果升级后仍然看不到,检查日志级别配置和 cron 任务的会话目标设置。
Q7:第三方插件安装失败提示 JSON 解析错误,怎么解决?
2026.4.2 支持 JSON5 语法。如果仍失败,可能是 JSON5 之外的语法问题,检查 openclaw.plugin.json 是否有其他格式错误。
Q8:openclaw doctor --fix 会修改哪些文件?
它会读取并修改 OpenClaw 的主配置文件,将 tools.web.x_search.* 和 tools.web.fetch.firecrawl.* 下的配置项迁移到对应插件路径,并清理旧路径。建议执行前备份配置文件。
