2026年4月2日 19:30分,来腾讯会议(限30人)了解如何用Openclaw构建企业AI生产力
免费POC, 零成本试错
AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


我要投稿

OpenClaw升级2026.3.31后一定要做这两点

发布日期:2026-04-02 10:51:17 浏览次数: 1755
作者:AI Prime

微信搜一搜,关注“AI Prime”

推荐语

OpenClaw升级2026.3.31后踩坑指南:解决审批配置和版本显示的常见问题。

核心内容:
1. 升级后审批配置的常见误区与正确修改方法
2. 本机exec approvals.json的关键作用与配置步骤
3. 验证配置生效的实用命令与常见问题排查

杨芳贤
53AI创始人/腾讯云(TVP)最具价值专家

最近把 OpenClaw 升到 2026.3.31,本以为只是一次普通升级,结果连续踩了两个坑。

第一个坑最隐蔽:我明明已经把审批相关配置关了,命令却还是卡在 Exec approval
第二个坑最迷惑:后台服务已经是新版本,终端里 openclaw -V 却还是老版本。

后来我才发现,2026.3.31 之后最容易让人误判的地方,不是命令写错了,而是 OpenClaw 把“聊天审批”“本机审批”“CLI 来源”拆成了不同层。

一、为什么明明关了审批,OpenClaw 还是要我手动点允许?

我一开始以为问题在 Telegram,于是去改 channels.telegram.execApprovals
后来才发现,这个开关只决定“Telegram 能不能接收审批消息”,并不决定“这台机器还要不要审批”。

真正拦住命令执行的,是本机的:

~/.openclaw/exec-approvals.json

也就是说,升级到 2026.3.31 后,如果你想把 OpenClaw 改成“彻底自动执行”,不能只改聊天通道,必须把 gateway 默认 exec 策略和本机 exec approvals 一起改掉。

先改 gateway 默认策略:

openclaw config set tools.exec '{"security":"full","ask":"off"}' --strict-json

再直接用 CLI 覆盖本机 exec-approvals.json

Agents": {
"main": {
"security": "full",
"ask": "off",
"askFallback": "full"
}
}
}
EOF
" style="box-sizing: border-box;border: none;margin: 0px;padding: 0px;font-family: inherit;font-feature-settings: normal;font-variation-settings: normal;font-size: inherit;white-space: nowrap;tab-size: 4 !important;overflow-wrap: normal !important;flex: 0 0 auto !important;height: auto !important;min-height: auto !important;max-height: none !important;font-weight: 400 !important;line-height: inherit;display: block;color: inherit;background: none;overflow-x: auto;box-shadow: none;">cat <<'EOF' | openclaw approvals set --stdin
{
"version": 1,
"socket": {
"path""/Users/你的用户名/.openclaw/exec-approvals.sock",
"token""替换成你当前 ~/.openclaw/exec-approvals.json 里的 token"
  },
"defaults": {
"security""full",
"ask""off",
"askFallback""full",
"autoAllowSkills"false
  },
"agents": {
"main": {
"security""full",
"ask""off",
"askFallback""full"
    }
  }
}
EOF

最后重启一下:

openclaw daemon restart

改完以后,建议用这两条确认有没有真的生效:

openclaw config get tools.exec
openclaw approvals get

如果你在“已经打开很久的旧聊天会话”里偶尔还是会看到审批提示,通常不是配置没生效,而是那个会话保存了旧的 /exec 会话级参数。
这种情况,在当前聊天里补一条就行:

/exec security=full ask=off

这次最坑的一点就在这里:
approvals.exec.enabled=false 只是关闭“审批消息转发”,不是关闭“本机执行审批”。
真正决定 OpenClaw 会不会自动执行的,是 tools.exec 和 exec-approvals.json

二、为什么明明已经升级了,终端里的 OpenClaw 还是旧版本?

第二个坑看起来像“升级失败”,其实很多时候只是命中了另一套 OpenClaw。

我这边当时的真实情况是:

  • 后台 LaunchAgent 跑的是 NVM 里的 OpenClaw,版本已经是 2026.3.31
  • 但终端默认命中的却是 /opt/homebrew/bin/openclaw
  • 所以 openclaw -V 看起来一直还是旧版本

先用这三条查清楚:

which -a openclaw
openclaw -V
openclaw daemon status

如果 daemon status 里显示服务实际跑的是 ~/.nvm/.../openclaw,但终端优先命中 /opt/homebrew/bin/openclaw,那就不是没升级,而是 PATH 顺序不对。

如果你不想删掉 Homebrew 那套,也没关系,最稳的办法是让 shell 优先走 NVM 版。把下面这行放进 ~/.zprofile 和 ~/.zshrc

export PATH="$HOME/.nvm/versions/node/v22.22.1/bin:$PATH"

然后重新开终端,或者执行:

exec zsh

以后升级也尽量只升级 NVM 这套:

~/.nvm/versions/node/v22.22.1/bin/npm install -g openclaw@latest
openclaw daemon restart

这次折腾下来,我最大的感受是:
OpenClaw 2026.3.31 最容易让人踩坑的,不是某条命令有多复杂,而是你以为只需要关一个开关,结果真正生效的地方其实在另一层。

一个是本机 exec approvals。
一个是 CLI 和后台服务到底是不是同一套版本。

这两个地方看明白了,升级后的大多数“玄学问题”,其实都能解释通。

53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询