OpenClaw 4.9 升级注意事项
升级时间:2026-04-09 | 版本跨度:4.5 → 4.9
状态总览
| 项目 | 状态 |
|---|---|
| 当前版本 | 2026.4.9 ✅ 已升级 |
| .env 文件 | 不存在,无需处理 ✅ |
| exec 双层配置 | full/off 全放开,兼容 ✅ |
| IPC fallback 方案 | 继续有效 ✅ |
| Provider 配置 | custom-proxy + maoleio 稳定 ✅ |
| Cron 替代方案 | WorkBuddy automation 继续为主力 ✅ |
需要关注的三项变更
1. .env 覆盖限制(4.9 Breaking Change)
从 4.9 开始,工作区 .env 文件不能再覆盖运行时控制变量和安全相关配置。默认 fail-closed(静默失效不报错)。
当前状态:~/.openclaw/ 下无 .env 文件,零影响。
如果将来遇到:新增 .env 文件时注意不要写入 EXEC_*、SECURITY_*、SSRF_*、GATEWAY_TOKEN 等变量。这类配置应直接写在 openclaw.json 中。
2. exec 审批收紧(4.7)
三个变化点:
- allowlist 操作必须 owner 权限 — 我们用的是 full/off 全放开模式,不走 allowlist,不影响
- Windows cmd.exe /c 绕过已修复 — 之前 Windows 下可以通过
cmd.exe /c 绕过 exec 审批,4.7 堵上了
- strictInlineEval 新开关 — 控制是否允许 agent 在对话内执行内联代码片段
当前状态:双层配置(openclaw.json + exec-approvals.json)均为 security: full, ask: off,影响极低。
需要留意:升级后第一次跑完整任务时观察是否有 exec 权限报错。如果遇到内联代码执行被拒,在 openclaw.json 的 tools.exec 中添加:
"strictInlineEval": false
验证命令:openclaw approvals get(确认审批状态未变)
3. SSRF 防护加强(4.7 + 4.9)
- 跨域重定向自动丢弃请求 body
- Teams/QQ 渠道附件强制域名白名单
- 浏览器点击导航后重新执行安全检查
当前状态:纯本地使用(仅 WebSocket 直连 127.0.0.1:18789),零影响。
未来接新渠道时注意:如果接入 Teams、QQ、飞书、钉钉等渠道,附件域名需确保在白名单内。
不需要动的部分
- RPC API:config.get / config.patch / sessions.send / models.list 等全部稳定,Desktop UI 零适配成本
- openclaw.json 结构:无新增必填字段,models.providers 格式不变
- allowlist 机制:agents.defaults.models 格式不变
- Node 版本要求:未变
- Cron isolated 模式 bug:4.9 修的是空闲误杀问题,token 认证 bug 未修复,WorkBuddy automation 替代方案继续有效
快速排查清单(升级后必做)
- [x] 确认 ~/.openclaw/.env 不存在
- [ ] 跑一次完整任务(写文件 + 终端命令),验证 exec 正常
- [ ] 如有异常:检查
openclaw approvals get 输出
- [ ] 如遇 strictInlineEval 报错:tools.exec 加
"strictInlineEval": false
回滚方案
如果升级后出现严重问题:
npm install -g openclaw@2026.4.5