返回首页

修复 OpenClaw 的审批重放缺陷

定位并修复了 Gateway 中"用户已批准的命令在重放时被拒绝"的缺陷——OpenClaw 是 GitHub 上 Star 数最多的开源 AI 智能体之一。

39 万+
项目 Star 数
#161980
已合并的 PR
2026.10
合并进主仓库

为 OpenClaw(“The AI that really does things”)贡献了缺陷修复。OpenClaw 是 GitHub 上 Star 数最多的开源 AI 智能体项目之一(39 万+ ⭐)。

问题

智能体在节点上执行命令前,OpenClaw 会先记录用户的审批,之后再重放该审批来执行命令。节点预先准备的命令计划可能缺少 Gateway 会话标识:创建审批时,这一标识被补全到了审批绑定中,却没有写入存储的计划。重放时两边的身份不再一致,导致用户已经批准的命令被拒绝执行 (issue #151622)。

修复

在记录审批时,用与审批绑定相同的请求回退逻辑,把缺失的工作目录、智能体与会话元数据补全到计划本身,同时保证显式准备的值优先。重放时使用的是同一份一致的计划,审批一致性与权限校验逻辑均保持不变。

  • 精准的最小改动(生产代码 +9 / −4 行),并补充了回归测试
  • 不涉及任何协议、权限或存储结构变更
  • 项目维护者在 PR 中致谢了问题定位与最初的修复方案
  • 已于 2026 年 10 月 11 日合并进主仓库
  1. 查看 Pull Request

    github.com/openclaw/openclaw/pull/161980

  2. 项目仓库

    github.com/openclaw/openclaw