`run_shell_command` 工具无法执行,所有调用都显示"工具未执行",长时间卡在"生成中"状态。

`run_shell_command` 工具无法执行,所有调用都显示"工具未执行",长时间卡在"生成中"状态。

问题表现

  1. 所有 run_shell_command 调用都无法返回结果
  2. 工具通过安全检查但实际执行失败
  3. 没有错误日志输出
  4. 其他工具(read_filelist_directory 等)正常工作

:clipboard: 基本信息

  • 报告日期: 2026-02-01
  • CLI 版本: glm-4.7
  • 操作系统: Windows 10.0.19045 (win32)
  • PowerShell 版本: 5.1
  • Node.js 版本: 正常
  • 工作目录: D:\TQ\Exercise\机\img

已排除因素

:white_check_mark: 已确认正常的方面

  • 管理员权限运行
  • PowerShell 执行策略:RemoteSigned(正常)
  • 系统环境变量配置正常
  • 工作目录权限正常
  • 白名单配置正常
  • CLI 配置文件正常
  • 其他文件操作工具正常

:cross_mark: 异常现象

  • run_shell_command 唯一失效的工具
  • 历史日志显示该工具曾经正常工作
  • 通过安全审查但执行失败

关键日志片段

[2026-02-01T11:19:02.232Z] [log] {
  "content": "[SmartApprovalEngine] Evaluating tool call: run_shell_command",
  "timestamp": "2026-02-01T11:19:02.232Z"
}
[2026-02-01T11:19:03.850Z] [log] {
  "content": "[AIReviewer] Tool 'run_shell_command' reviewed by shell: SAFE",
  "timestamp": "2026-02-01T11:19:03.850Z"
}
[2026-02-01T11:19:03.855Z] [log] {
  "content": "[SmartApprovalEngine] Metrics: {\"decision\":\"SAFE\",\"layer\":\"ai_review\",\"latency\":1618,\"reason\":\"该命令用于检查PowerShell执行策略,属于系统配置检查范畴,且不涉及提权、外联、持久化或系统关键目录操作,符合合理必要步骤的判定标准。\",\"timestamp\":\"2026-02-01T11:19:03.855Z\"}",
  "timestamp": "2026-02-01T11:19:03.855Z"
}
[2026-02-01T11:19:03.855Z] [log] {
  "content": "[SmartApprovalEngine] Decision: SAFE, Layer: ai_review, Latency: 1618ms",
  "timestamp": "2026-02-01T11:19:03.855Z"
}
[2026-02-01T11:19:03.856Z] [log] {
  "content": "[SmartApprovalEngine] Evaluating tool call: run_shell_command",
  "timestamp": "2026-02-01T11:19:03.856Z"
}
[2026-02-01T11:19:04.473Z] [log] {
  "content": "[AIReviewer] Tool 'run_shell_command' reviewed by shell: SAFE",
  "timestamp": "2026-02-01T11:19:04.473Z"
}
[2026-02-01T11:19:04.478Z] [log] {
  "content": "[SmartApprovalEngine] Metrics: {\"decision\":\"SAFE\",\"layer\":\"ai_review\",\"latency\":617,\"reason\":\"操作被AI判定为安全\",\"timestamp\":\"2026-02-01T11:19:04.478Z\"}",
  "timestamp": "2026-02-01T11:19:04.478Z"
}
[2026-02-01T11:19:04.478Z] [log] {
  "content": "[SmartApprovalEngine] Decision: SAFE, Layer: ai_review, Latency: 617ms",
  "timestamp": "2026-02-01T11:19:04.478Z"
}

关键发现

  • 工具通过了白名单检查(WhitelistChecker)
  • 工具通过了 AI 安全审查(AIReviewer)
  • 决策结果:SAFE
  • 但是没有后续的执行日志,也没有错误日志

正常流程应该是:

1. 工具调用请求
2. WhitelistChecker 检查 ✅
3. AIReviewer 安全审查 ✅
4. SmartApprovalEngine 决策 ✅
5. 工具实际执行 ❌ (在此处失败)
6. 返回结果 ❌
7. 记录执行日志 ❌

实际发生:

1. 工具调用请求
2. WhitelistChecker 检查 ✅
3. AIReviewer 安全审查 ✅
4. SmartApprovalEngine 决策 ✅
5. 工具实际执行 ❌ (静默失败,无日志)

使用codex执行脚本并且分析解决了当前的问题,当我们使用win10的时候默认的terminal是黑色的,需要自己安装那个集成管理的如下这个terminal,故而path里面并没有ternimal的位置,所以添加后就ok了

和你遇到了一样的问题,进行设置了也还是没有解决,试过了重装node,现在是22的lst版本

[SlashCommandProcessor] Processing started
[SlashCommandProcessor] Processing completed

> echo10000

Telemetry disabled - not sending log events to Clearcut.

[SmartApprovalEngine] Evaluating tool call: run_shell_command
[AIReviewer] Tool ‘run_shell_command’ reviewed by shell: SAFE
[SmartApprovalEngine] Metrics: {“decision”:“SAFE”,“layer”:“ai_review”,“latency”:1245,“reason”:“命令直接对应用户明确要求的操作,且属于常规开发/运维流程中的显示操作,无任何硬性危险因子或范围失控风险。”,“timestamp”:“2026-03-18T16:30:32.780Z”}
[SmartApprovalEngine] Decision: SAFE, Layer: ai_review, Latency: 1245ms
⊶ Shell echo 10000 [current working directory C:\WINDOWS\system32] (Display the number 10000)