你的运行环境(版本号「点击帮助-关于-复制」):
TRAE CN
版本: 3.3.38
VSCode 版本: 1.107.1
提交: 4de6fa3dee64450584b96e0200bedcdccbb410a8
日期: 2026-03-14T04:18:06.511Z
Electron: 39.2.7-release.1.26.3 (aha)
Node.js: 22.21.1
V8: 14.2.231.23-electron.0
OS: Windows_NT x64 10.0.26200
构建版本: 2.3.13959
问题描述(你遇到了什么问题?):
Win11 系统下,我在 Trae CN 中自己创建了一个 cmd 终端,将其标记为 AI 使用,并要求 Builder 在这个终端中执行 echo 命令。然而,Builder 切换到这个终端以后,执行了一些与 cmd 不兼容的 Linux 命令(如 export),导致一系列报错,未能成功导入 trae-sandbox 所需的环境,从而无法执行 trae-sandbox 命令。
目前只发现 cmd 存在问题,而我自己创建的 PowerShell 终端(pwsh 7.6.0)没有上述问题。Builder 在 PowerShell 中能够正常导入 trae-sandbox 所需的环境,并成功地执行了 trae-sandbox 命令。
另外,我已经在 ide 中设置了默认终端为 cmd,但 Builder 只会新建 PowerShell 终端,即使明确要求它新建 cmd 终端也不管用。请问有办法设置 Builder 新建的终端类型吗?
复现步骤(如何才能重现这个 Bug/问题?):
- 在 Trae CN 中新建一个 cmd 终端,右键将其标记为 AI 使用。
- 对 Builder 说:【你能看到几个终端?在编号最大的终端运行 echo “hello”】。
报错信息或截图:
1. Builder 对话记录(在 cmd 中执行失败)
对话中,“终端5”是我自己创建并标记为 AI 使用的 cmd 终端,“终端4”是 Builder 之前自动创建的 PowerShell 终端。Builder 在“终端5”中执行命令失败,最终切换回了“终端4”。
2. cmd 终端信息
1)截图
Builder 在 cmd 中执行了不兼容的 Linux 命令(如 export),执行失败,未能导入 trae-sandbox 所需的环境。
2)截图对应的文本
注:中间的大量换行也是 Builder 自动加的,不是我加的,换行过多这一点希望也能改进一下。
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>export HISTCONTROL="ignorespace"
'export' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
D:\Users\Lenovo\_Demo\_Projects\Test>export SAFE_RM_ALLOWED_PATH="d:\Users\Lenovo\_Demo\_Projects\Test" SAFE_RM_DENIED_PATH="d:\Users\Lenovo\_Demo\_Projects\Test\.vscode:d:\Users\Lenovo\_Demo\_Projects\Test\.trae:d:\Users\Lenovo\_Demo\_Projects\Test\.git" SAFE_RM_AUTO_ADD_TEMP="1" SAFE_RM_PROTECTION_FLAG="c:\Users\Lenovo\AppData\Local\Temp\safe-rm-protection-flag-76ddf938-7b8e-4cf4-968d-a8059da8e38f" SAFE_RM_SOURCE_FLAG="c:\Users\Lenovo\AppData\Local\Temp\safe-rm-source-flag-b698047c-1fc7-4c49-9def-493953fdbc62" TRAE_SANDBOX_SOURCE_FLAG_PATH="c:\Users\Lenovo\AppData\Local\Temp\sandbox-source-flag-b52dc200-10e8-4667-8bb0-0dda814f022e" TRAE_SANDBOX_CLI_PATH="d:\Users\Lenovo\AppData\Local\Programs\Trae CN\resources\app\modules\sandbox\trae-sandbox.exe" TRAE_SANDBOX_STORAGE_PATH="C:\Users\Lenovo\AppData\Roaming\Trae CN\ModularData\ai-agent\sandbox" TRAE_SANDBOX_CONFIG_NAME="69c49fed122ed0330bfa40bc" TRAE_SANDBOX_LOG_DIR="c:\Users\Lenovo\AppData\Roaming\Trae CN\logs\20260326T105116\Modular" TRAE_SANDBOX_DUMP_DIR="C:\Users\Lenovo\AppData\Roaming\Trae CN\Crashpad\sandbox-pending" TRAE_SANDBOX_TRACE_FILE="c:\Users\Lenovo\AppData\Local\Temp\trae_sandbox_trace_9751fb36-672c-480c-b05b-ec5c7c2700bf.jsonl" ; echo "[Trae CN] TRAE Sandbox and safe rm Env is changed or not enabled, try to fix it now."
'export' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
D:\Users\Lenovo\_Demo\_Projects\Test>. "d:\Users\Lenovo\AppData\Local\Programs\Trae CN\resources\app\out\vs\workbench\contrib\terminal\common\scripts\safe_rm_aliases.sh"; echo "[Trae CN] Safe Rm alias is not enabled, try to fix it now."
'.' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
D:\Users\Lenovo\_Demo\_Projects\Test>trae-sandbox() { local command_line="$*"; local bash_path=$(type -P "bash" 2>/dev/null); if [ -n "$MSYSTEM" ] && command -v cygpath >/dev/null 2>&1; then bash_path=$(cygpath -m "$bash_path"); fi; "$TRAE_SANDBOX_CLI_PATH" exec --storage-path "$TRAE_SANDBOX_STORAGE_PATH" --config-name "$TRAE_SANDBOX_CONFIG_NAME" --shell-path "$bash_path" --command-line "$command_line"; }; touch "$TRAE_SANDBOX_SOURCE_FLAG_PATH"; echo "[Trae CN] want run in sandbox environment, try to fix it now."
系统找不到指定的路径。
D:\Users\Lenovo\_Demo\_Projects\Test>trae-sandbox 'echo "hello"'
'trae-sandbox' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>. "d:\Users\Lenovo\AppData\Local\Programs\Trae CN\resources\app\out\vs\workbench\contrib\terminal\common\scripts\safe_rm_aliases.sh"; echo "[Trae CN] Safe Rm alias is not enabled, try to fix it now."
'.' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
D:\Users\Lenovo\_Demo\_Projects\Test>trae-sandbox() { local command_line="$*"; local bash_path=$(type -P "bash" 2>/dev/null); if [ -n "$MSYSTEM" ] && command -v cygpath >/dev/null 2>&1; then bash_path=$(cygpath -m "$bash_path"); fi; "$TRAE_SANDBOX_CLI_PATH" exec --storage-path "$TRAE_SANDBOX_STORAGE_PATH" --config-name "$TRAE_SANDBOX_CONFIG_NAME" --shell-path "$bash_path" --command-line "$command_line"; }; touch "$TRAE_SANDBOX_SOURCE_FLAG_PATH"; echo "[Trae CN] want run in sandbox environment, try to fix it now."
系统找不到指定的路径。
D:\Users\Lenovo\_Demo\_Projects\Test>trae-sandbox 'echo hello'
'trae-sandbox' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>. "d:\Users\Lenovo\AppData\Local\Programs\Trae CN\resources\app\out\vs\workbench\contrib\terminal\common\scripts\safe_rm_aliases.sh"; echo "[Trae CN] Safe Rm alias is not enabled, try to fix it now."
'.' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
D:\Users\Lenovo\_Demo\_Projects\Test>trae-sandbox() { local command_line="$*"; local bash_path=$(type -P "bash" 2>/dev/null); if [ -n "$MSYSTEM" ] && command -v cygpath >/dev/null 2>&1; then bash_path=$(cygpath -m "$bash_path"); fi; "$TRAE_SANDBOX_CLI_PATH" exec --storage-path "$TRAE_SANDBOX_STORAGE_PATH" --config-name "$TRAE_SANDBOX_CONFIG_NAME" --shell-path "$bash_path" --command-line "$command_line"; }; touch "$TRAE_SANDBOX_SOURCE_FLAG_PATH"; echo "[Trae CN] want run in sandbox environment, try to fix it now."
系统找不到指定的路径。
D:\Users\Lenovo\_Demo\_Projects\Test>trae-sandbox 'echo hello'
'trae-sandbox' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>
D:\Users\Lenovo\_Demo\_Projects\Test>. "d:\Users\Lenovo\AppData\Local\Programs\Trae CN\resources\app\out\vs\workbench\contrib\terminal\common\scripts\safe_rm_aliases.sh"; echo "[Trae CN] Safe Rm alias is not enabled, try to fix it now."
'.' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
D:\Users\Lenovo\_Demo\_Projects\Test>trae-sandbox() { local command_line="$*"; local bash_path=$(type -P "bash" 2>/dev/null); if [ -n "$MSYSTEM" ] && command -v cygpath >/dev/null 2>&1; then bash_path=$(cygpath -m "$bash_path"); fi; "$TRAE_SANDBOX_CLI_PATH" exec --storage-path "$TRAE_SANDBOX_STORAGE_PATH" --config-name "$TRAE_SANDBOX_CONFIG_NAME" --shell-path "$bash_path" --command-line "$command_line"; }; touch "$TRAE_SANDBOX_SOURCE_FLAG_PATH"; echo "[Trae CN] want run in sandbox environment, try to fix it now."
系统找不到指定的路径。
D:\Users\Lenovo\_Demo\_Projects\Test>trae-sandbox 'echo hello'
'trae-sandbox' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
D:\Users\Lenovo\_Demo\_Projects\Test>
3. Builder 对话记录(在 PowerShell 中执行成功)
4. PowerShell 终端信息
1)截图
2)截图对应的文本
(base) PS D:\Users\Lenovo\_Demo\_Projects\Test> try { if ($Global:__VSCodeState.HasPSReadLine) { Set-PSReadLineOption -AddToHistoryHandler { param([string]$line); return $false } } } catch {}
(base) PS D:\Users\Lenovo\_Demo\_Projects\Test> try { $env:SAFE_RM_ALLOWED_PATH='d:\Users\Lenovo\_Demo\_Projects\Test'; $env:SAFE_RM_DENIED_PATH='d:\Users\Lenovo\_Demo\_Projects\Test\.vscode;d:\Users\Lenovo\_Demo\_Projects\Test\.trae;d:\Users\Lenovo\_Demo\_Projects\Test\.git'; $env:SAFE_RM_AUTO_ADD_TEMP='1'; $env:SAFE_RM_PROTECTION_FLAG='c:\Users\Lenovo\AppData\Local\Temp\safe-rm-protection-flag-e3a942b2-24e6-4fcf-906a-287bfb2bb510'; $env:SAFE_RM_SOURCE_FLAG='c:\Users\Lenovo\AppData\Local\Temp\safe-rm-source-flag-838603b3-f080-4899-b9e2-a520c2b8e56d'; $env:TRAE_SANDBOX_SOURCE_FLAG_PATH='c:\Users\Lenovo\AppData\Local\Temp\sandbox-source-flag-7f25b8d4-bc9c-418c-aa11-5d31d70fe44e'; $env:TRAE_SANDBOX_CLI_PATH='d:\Users\Lenovo\AppData\Local\Programs\Trae CN\resources\app\modules\sandbox\trae-sandbox.exe'; $env:TRAE_SANDBOX_STORAGE_PATH='C:\Users\Lenovo\AppData\Roaming\Trae CN\ModularData\ai-agent\sandbox'; $env:TRAE_SANDBOX_CONFIG_NAME='69c49fed122ed0330bfa40bc'; $env:TRAE_SANDBOX_LOG_DIR='c:\Users\Lenovo\AppData\Roaming\Trae CN\logs\20260326T105116\Modular'; $env:TRAE_SANDBOX_DUMP_DIR='C:\Users\Lenovo\AppData\Roaming\Trae CN\Crashpad\sandbox-pending'; $env:TRAE_SANDBOX_TRACE_FILE='c:\Users\Lenovo\AppData\Local\Temp\trae_sandbox_trace_27e6efa8-059d-4164-ae8b-009b0702177b.jsonl' } catch{} ; Write-Output "[Trae CN] TRAE Sandbox and safe rm Env is changed or not enabled, try to fix it now."
[Trae CN] TRAE Sandbox and safe rm Env is changed or not enabled, try to fix it now.
(base) PS D:\Users\Lenovo\_Demo\_Projects\Test> try { . "d:\Users\Lenovo\AppData\Local\Programs\Trae CN\resources\app\out\vs\workbench\contrib\terminal\common\scripts\safe_rm_aliases.ps1" } catch{} ; Write-Output "[Trae CN] Safe Rm alias is not enabled, try to fix it now."
[Trae CN] Safe Rm alias is not enabled, try to fix it now.
(base) PS D:\Users\Lenovo\_Demo\_Projects\Test> try { function Global:trae-sandbox { param([string]$CommandLine); if (-not $CommandLine -and $args.Count -gt 0) { $CommandLine = ($args -join ' ') }; $shellPath = (Get-Process -Id $PID).Path; $env:TRAE_SANDBOX_COMMAND_LINE = $CommandLine; & "$env:TRAE_SANDBOX_CLI_PATH" exec --storage-path "$env:TRAE_SANDBOX_STORAGE_PATH" --config-name "$env:TRAE_SANDBOX_CONFIG_NAME" --shell-path "$shellPath" --command-line "<by-env>" }; if ($env:TRAE_SANDBOX_SOURCE_FLAG_PATH) { try { if (-not (Test-Path $env:TRAE_SANDBOX_SOURCE_FLAG_PATH)) { [System.IO.File]::Create($env:TRAE_SANDBOX_SOURCE_FLAG_PATH).Close() } } catch { } } } catch{} ; Write-Output "[Trae CN] want run in sandbox environment, try to fix it now."
[Trae CN] want run in sandbox environment, try to fix it now.
(base) PS D:\Users\Lenovo\_Demo\_Projects\Test> trae-sandbox 'echo "hello"'
hello
(base) PS D:\Users\Lenovo\_Demo\_Projects\Test>
(base) PS D:\Users\Lenovo\_Demo\_Projects\Test>








