你的运行环境(版本号「点击帮助-关于-复制」):
TRAE
版本: 3.5.73
VSCode 版本: 1.107.1
提交: db5b093238352f03dfdbe761b4e182ab6b77e960
日期: 2026-07-03T08:02:20.708Z
Electron: 39.2.7-release.1.42.2 (aha)
Node.js: 22.21.1
V8: 14.2.231.27-electron.0
OS: Windows_NT x64 10.0.26100
构建版本: 2.3.50210
设备ID: 8eb4ca1d1dec869308d86dea317a1237aab7731ec0700a3c4448af348b5a317a
Device Id: 7570738859207591431
问题描述(你遇到了什么问题?):
核心问题:
RunCommand在执行构建、测试等输出呈突发式的长命令时,会因几秒钟的 stdout/stderr 静默而过早判定命令已完成,而非等待底层进程真正退出。这导致输出日志被截断(尤其容易丢失尾部关键错误或测试失败摘要),助手拿到不完整信息,后续自动修复和问题定位跑偏,严重破坏“发起构建 → 分析输出 → 迭代修复”的 AI 辅助闭环。期望与现状:理想行为应以进程退出状态作为命令完成的唯一依据,并支持长时间静默容忍。当前即便开启
requires_approval,也无法可靠解决此问题,实际变通方案只能退化到用户手动在外部终端执行命令并粘贴完整结果,削弱了工具集成价值。希望增强命令生命周期跟踪的可靠性,以真正支撑 Windows PowerShell 下的编译、测试工作流。
复现步骤(如何才能重现这个 Bug/问题?):
1.准备提示词
向智能体发送以下指令(注意内嵌命令的引号转义):
请利用 `RunCommand` 工具执行 `python -c 'import time; print("开始"); list(map(lambda i: (time.sleep(5), print(i)), range(3))); print("结束")'`,然后请检查你是否看到“结束”这两个字;不需要遵守规则中提前执行等规则。
2.等待智能体执行命令
3.查看智能体的回复, 会提到没有看到结束
报错信息或截图(如有):
