openclaw - 💡(How to fix) Fix [Bug]: exec approval 的命令哈希机制导致 allow-always 无法有效覆盖常用命令 [1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#61647Fetched 2026-04-08 02:56:29
View on GitHub
Comments
0
Participants
1
Timeline
2
Reactions
0
Author
Participants
Timeline (top)
labeled ×2

Bug Report: exec approval 的命令哈希机制导致 allow-always 无法有效覆盖常用命令

版本:OpenClaw 2026.4.1 (da64a97)

问题描述 每次 agent 执行命令时,即使操作类型完全相同(如运行 Python 脚本),只要命令参数有任何细微差异,就会生成新的命令哈希(=command:xxxxxxxx),触发新的 exec 审批弹窗。用户点击「Always allow」只能永久授权该特定哈希,无法覆盖同类命令,导致审批窗口无限循环出现。

复现步骤

  1. 配置 tools.exec.ask = "on-miss"
  2. 让 agent 执行任意 Python 命令,点击「Always allow」
  3. 让 agent 执行参数略有不同的同类 Python 命令
  4. 新的审批弹窗再次出现

期望行为 allow-always 应支持基于可执行文件路径或命令类型的授权,而不仅仅是完整命令哈希。例如:

  • 允许对 python.exe 整体授权
  • 允许对 workspace/** 目录下的所有脚本授权
  • 或提供一个「信任此可执行文件的所有调用」选项

当前影响 用户三天内点击了数百次 allow-always,问题未得到改善。唯一的临时解决方案是让 agent 强制复用固定脚本文件以保持命令哈希不变,但这限制了 agent 的灵活性。

建议方案 在审批 UI 中增加「信任此程序(Trust executable)」按钮,对同一可执行文件的所有调用永久放行,与现有的命令级 allow-always 并存。

Root Cause

Bug Report: exec approval 的命令哈希机制导致 allow-always 无法有效覆盖常用命令

版本:OpenClaw 2026.4.1 (da64a97)

问题描述 每次 agent 执行命令时,即使操作类型完全相同(如运行 Python 脚本),只要命令参数有任何细微差异,就会生成新的命令哈希(=command:xxxxxxxx),触发新的 exec 审批弹窗。用户点击「Always allow」只能永久授权该特定哈希,无法覆盖同类命令,导致审批窗口无限循环出现。

复现步骤

  1. 配置 tools.exec.ask = "on-miss"
  2. 让 agent 执行任意 Python 命令,点击「Always allow」
  3. 让 agent 执行参数略有不同的同类 Python 命令
  4. 新的审批弹窗再次出现

期望行为 allow-always 应支持基于可执行文件路径或命令类型的授权,而不仅仅是完整命令哈希。例如:

  • 允许对 python.exe 整体授权
  • 允许对 workspace/** 目录下的所有脚本授权
  • 或提供一个「信任此可执行文件的所有调用」选项

当前影响 用户三天内点击了数百次 allow-always,问题未得到改善。唯一的临时解决方案是让 agent 强制复用固定脚本文件以保持命令哈希不变,但这限制了 agent 的灵活性。

建议方案 在审批 UI 中增加「信任此程序(Trust executable)」按钮,对同一可执行文件的所有调用永久放行,与现有的命令级 allow-always 并存。

RAW_BUFFERClick to expand / collapse

Bug type

Regression (worked before, now fails)

Beta release blocker

No

Summary

Bug Report: exec approval 的命令哈希机制导致 allow-always 无法有效覆盖常用命令

版本:OpenClaw 2026.4.1 (da64a97)

问题描述 每次 agent 执行命令时,即使操作类型完全相同(如运行 Python 脚本),只要命令参数有任何细微差异,就会生成新的命令哈希(=command:xxxxxxxx),触发新的 exec 审批弹窗。用户点击「Always allow」只能永久授权该特定哈希,无法覆盖同类命令,导致审批窗口无限循环出现。

复现步骤

  1. 配置 tools.exec.ask = "on-miss"
  2. 让 agent 执行任意 Python 命令,点击「Always allow」
  3. 让 agent 执行参数略有不同的同类 Python 命令
  4. 新的审批弹窗再次出现

期望行为 allow-always 应支持基于可执行文件路径或命令类型的授权,而不仅仅是完整命令哈希。例如:

  • 允许对 python.exe 整体授权
  • 允许对 workspace/** 目录下的所有脚本授权
  • 或提供一个「信任此可执行文件的所有调用」选项

当前影响 用户三天内点击了数百次 allow-always,问题未得到改善。唯一的临时解决方案是让 agent 强制复用固定脚本文件以保持命令哈希不变,但这限制了 agent 的灵活性。

建议方案 在审批 UI 中增加「信任此程序(Trust executable)」按钮,对同一可执行文件的所有调用永久放行,与现有的命令级 allow-always 并存。

Steps to reproduce

Bug Report: exec approval 的命令哈希机制导致 allow-always 无法有效覆盖常用命令

版本:OpenClaw 2026.4.1 (da64a97)

问题描述 每次 agent 执行命令时,即使操作类型完全相同(如运行 Python 脚本),只要命令参数有任何细微差异,就会生成新的命令哈希(=command:xxxxxxxx),触发新的 exec 审批弹窗。用户点击「Always allow」只能永久授权该特定哈希,无法覆盖同类命令,导致审批窗口无限循环出现。

复现步骤

  1. 配置 tools.exec.ask = "on-miss"
  2. 让 agent 执行任意 Python 命令,点击「Always allow」
  3. 让 agent 执行参数略有不同的同类 Python 命令
  4. 新的审批弹窗再次出现

期望行为 allow-always 应支持基于可执行文件路径或命令类型的授权,而不仅仅是完整命令哈希。例如:

  • 允许对 python.exe 整体授权
  • 允许对 workspace/** 目录下的所有脚本授权
  • 或提供一个「信任此可执行文件的所有调用」选项

当前影响 用户三天内点击了数百次 allow-always,问题未得到改善。唯一的临时解决方案是让 agent 强制复用固定脚本文件以保持命令哈希不变,但这限制了 agent 的灵活性。

建议方案 在审批 UI 中增加「信任此程序(Trust executable)」按钮,对同一可执行文件的所有调用永久放行,与现有的命令级 allow-always 并存。

Expected behavior

Bug Report: exec approval 的命令哈希机制导致 allow-always 无法有效覆盖常用命令

版本:OpenClaw 2026.4.1 (da64a97)

问题描述 每次 agent 执行命令时,即使操作类型完全相同(如运行 Python 脚本),只要命令参数有任何细微差异,就会生成新的命令哈希(=command:xxxxxxxx),触发新的 exec 审批弹窗。用户点击「Always allow」只能永久授权该特定哈希,无法覆盖同类命令,导致审批窗口无限循环出现。

复现步骤

  1. 配置 tools.exec.ask = "on-miss"
  2. 让 agent 执行任意 Python 命令,点击「Always allow」
  3. 让 agent 执行参数略有不同的同类 Python 命令
  4. 新的审批弹窗再次出现

期望行为 allow-always 应支持基于可执行文件路径或命令类型的授权,而不仅仅是完整命令哈希。例如:

  • 允许对 python.exe 整体授权
  • 允许对 workspace/** 目录下的所有脚本授权
  • 或提供一个「信任此可执行文件的所有调用」选项

当前影响 用户三天内点击了数百次 allow-always,问题未得到改善。唯一的临时解决方案是让 agent 强制复用固定脚本文件以保持命令哈希不变,但这限制了 agent 的灵活性。

建议方案 在审批 UI 中增加「信任此程序(Trust executable)」按钮,对同一可执行文件的所有调用永久放行,与现有的命令级 allow-always 并存。

Actual behavior

Bug Report: exec approval 的命令哈希机制导致 allow-always 无法有效覆盖常用命令

版本:OpenClaw 2026.4.1 (da64a97)

问题描述 每次 agent 执行命令时,即使操作类型完全相同(如运行 Python 脚本),只要命令参数有任何细微差异,就会生成新的命令哈希(=command:xxxxxxxx),触发新的 exec 审批弹窗。用户点击「Always allow」只能永久授权该特定哈希,无法覆盖同类命令,导致审批窗口无限循环出现。

复现步骤

  1. 配置 tools.exec.ask = "on-miss"
  2. 让 agent 执行任意 Python 命令,点击「Always allow」
  3. 让 agent 执行参数略有不同的同类 Python 命令
  4. 新的审批弹窗再次出现

期望行为 allow-always 应支持基于可执行文件路径或命令类型的授权,而不仅仅是完整命令哈希。例如:

  • 允许对 python.exe 整体授权
  • 允许对 workspace/** 目录下的所有脚本授权
  • 或提供一个「信任此可执行文件的所有调用」选项

当前影响 用户三天内点击了数百次 allow-always,问题未得到改善。唯一的临时解决方案是让 agent 强制复用固定脚本文件以保持命令哈希不变,但这限制了 agent 的灵活性。

建议方案 在审批 UI 中增加「信任此程序(Trust executable)」按钮,对同一可执行文件的所有调用永久放行,与现有的命令级 allow-always 并存。

OpenClaw version

OpenClaw 2026.4.1 (da64a97)

Operating system

win11

Install method

No response

Model

qwen3.5-plus

Provider / routing chain

Feishu (飞书) WebSocket → OpenClaw 2026.4.1 local gateway → Alibaba Cloud Bailian (coding.dashscope.aliyuncs.com/v1) → Primary: qwen3.5-plus, Fallbacks: qwen3-max / qwen3-coder-next / MiniMax-M2.5

Additional provider/model setup details

No response

Logs, screenshots, and evidence

Impact and severity

No response

Additional information

No response

extent analysis

TL;DR

Implement a "Trust executable" button in the approval UI to permanently allow all calls to the same executable file, in addition to the existing command-level allow-always feature.

Guidance

  • Identify the root cause of the issue: the current implementation of allow-always only authorizes specific command hashes, not entire executables or command types.
  • Consider implementing a new feature to trust executables, as suggested in the issue report.
  • Evaluate the trade-offs between security and user experience when designing the new feature.
  • Test the new feature thoroughly to ensure it works as expected and does not introduce new security vulnerabilities.

Example

No code example is provided, as the issue report does not include specific code snippets or APIs to modify.

Notes

The issue report suggests that the current implementation of allow-always is not sufficient to cover common use cases, and a new feature is needed to trust executables. However, the report does not provide detailed technical requirements or design specifications for the new feature.

Recommendation

Apply workaround: Implement a "Trust executable" button in the approval UI, as suggested in the issue report, to provide a more flexible and user-friendly authorization mechanism. This workaround can help mitigate the issue until a more permanent solution is developed.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

Bug Report: exec approval 的命令哈希机制导致 allow-always 无法有效覆盖常用命令

版本:OpenClaw 2026.4.1 (da64a97)

问题描述 每次 agent 执行命令时,即使操作类型完全相同(如运行 Python 脚本),只要命令参数有任何细微差异,就会生成新的命令哈希(=command:xxxxxxxx),触发新的 exec 审批弹窗。用户点击「Always allow」只能永久授权该特定哈希,无法覆盖同类命令,导致审批窗口无限循环出现。

复现步骤

  1. 配置 tools.exec.ask = "on-miss"
  2. 让 agent 执行任意 Python 命令,点击「Always allow」
  3. 让 agent 执行参数略有不同的同类 Python 命令
  4. 新的审批弹窗再次出现

期望行为 allow-always 应支持基于可执行文件路径或命令类型的授权,而不仅仅是完整命令哈希。例如:

  • 允许对 python.exe 整体授权
  • 允许对 workspace/** 目录下的所有脚本授权
  • 或提供一个「信任此可执行文件的所有调用」选项

当前影响 用户三天内点击了数百次 allow-always,问题未得到改善。唯一的临时解决方案是让 agent 强制复用固定脚本文件以保持命令哈希不变,但这限制了 agent 的灵活性。

建议方案 在审批 UI 中增加「信任此程序(Trust executable)」按钮,对同一可执行文件的所有调用永久放行,与现有的命令级 allow-always 并存。

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING