codecamp

TRAE SOLO 沙箱

沙箱为智能体生成的命令提供受限的执行环境,确保智能体在安全隔离的环境中运行命令,防止未经授权的文件访问。

支持的操作系统

macOS

TRAE SOLO 桌面版:Code 模式

安全策略

云端任务

TRAE SOLO 桌面版 Code 模式中,所有云端任务均运行于独立的安全沙箱容器内。每个云端会话拥有隔离的运行环境(包括磁盘、缓存等资源),以确保会话之间互不干扰。

在云端会话中,智能体执行命令时的文件访问权限默认遵循 “自动运行”(Auto-Run)模式的策略。

启用沙箱后,智能体的文件访问范围将被严格限制在当前会话对应的沙箱容器内,无法访问宿主机或其他会话的数据。这种隔离机制确保了各会话的工作目录、临时文件、缓存及运行环境彼此独立,从而提升整体安全性与稳定性。

文件访问权限如下:

权限类型 目录类型 权限范围
读写 当前会话的工作目录 仅当前项目或当前会话内创建、同步的文件与目录。
读写 沙箱容器内的临时与缓存目录 仅当前会话运行所需的临时文件及依赖缓存路径。
不可访问 宿主机的文件系统 无法访问用户本地设备或平台宿主机上的任何目录。
不可访问 其他会话的数据目录 无法访问其他会话的文件、缓存、磁盘及运行环境资源。

本地任务

💡提示

- 当前安全策略不涉及网络访问。
- 读写权限继承当前用户权限;当读写与只读权限冲突时,以只读权限为准。

对于 TRAE SOLO 桌面版 Code 模式中的本地任务,启用沙箱后,TRAE SOLO 的文件访问权限如下:

权限类型 目录类型 目录列表
只读 项目目录中的受保护目录 .vscode
根目录 /(默认策略:所有未显式声明为可写的目录均为只读)
读写 项目目录 除 .trae.vscode 和 .git 之外的项目文件与目录
临时目录 · macOS:/tmp/var/foldersTMPDIR 环境变量路径 
· Windows:~/AppData/Local/Temp~/AppData/LocalLow/Temp 
· Linux:/tmpTMPDIR 环境变量路径
缓存目录 · macOS:~/Library/Caches~/.cacheXDG_CACHE_HOME 环境变量路径 
· Linux:~/.cacheXDG_CACHE_HOME 环境变量路径
通用工具依赖目录 · macOS & Linux:~/.local/lib~/.local/bin~/.local/share(通常用于 pipuv/uvxnpm/pnpmcmake 等工具的依赖目录) 
· Windows:LOCALAPPDATA 环境变量路径内的常见工具依赖的路径(pipuv/uvxnpm/pnpm 等)
常用语言的工具链及其依赖目录 Go、Java、Python、Node.js、Rust 和 C++ 等常用语言的工具链及其依赖目录。

配置沙箱的运行环境

基于 macOS 的 sandbox-exec 工具,TRAE SOLO会自动为你创建一个受限的命令执行环境。你无需进行任何额外配置。

在 TRAE SOLO 中启用沙箱

在 TRAE SOLO 中启用沙箱后,智能体将自动在沙箱中运行命令。为 TRAE SOLO 启用沙箱的步骤如下:

  1. 在界面左下角,点击 头像 > 设置

    你将进入设置中心。

  2. 在左侧导航栏中,选择 对话流

    你将进入对话流设置面板。

  3. 自动运行 部分,将 命令运行方式 设置为 沙箱运行(支持白名单)
  4. (可选) 在 白名单列表 处,按需将命令前缀加入白名单。

    白名单中的命令将跳过沙箱,直接在沙箱外执行。

TRAE SOLO 桌面版:Work 模式

TRAE SOLO 桌面版的 Work 模式为你提供了一个安全、隔离的虚拟化运行环境,具有以下特点:

  • 完全隔离:AI 生成的所有代码和命令都在沙箱内执行,与你的主机系统完全分离,确保主机安全。
  • 开箱即用:沙箱镜像预装了完整的 Skills 工具链,你无需手动配置环境,即可立即使用。
  • 安全共享:你的项目文件通过受控方式挂载到沙箱中,既方便了文件使用,又有效保障了数据安全。

安全策略:文件访问控制

在 TRAE SOLO 桌面版的 Work 模式中启用沙箱后,TRAE SOLO 仅能读写当前项目的目录。

TRAE SOLO 网页版:Code 和 Work 模式

在 TRAE SOLO 网页版中,所有云端任务均运行于独立的安全沙箱容器内。每个云端会话拥有隔离的运行环境(包括磁盘、缓存等资源),以确保会话之间互不干扰。

安全策略:文件访问控制

在云端会话中,智能体执行命令时的文件访问权限默认遵循 “自动运行”(Auto-Run)模式的策略。

启用沙箱后,智能体的文件访问范围将被严格限制在当前会话对应的沙箱容器内,无法访问宿主机或其他会话的数据。这种隔离机制确保了各会话的工作目录、临时文件、缓存及运行环境彼此独立,从而提升整体安全性与稳定性。

文件访问权限如下:

权限类型 目录类型 权限范围
读写 当前会话的工作目录 仅当前项目或当前会话内创建、同步的文件与目录。
读写 沙箱容器内的临时与缓存目录 仅当前会话运行所需的临时文件及依赖缓存路径。
不可访问 宿主机的文件系统 无法访问用户本地设备或平台宿主机上的任何目录。
不可访问 其他会话的数据目录 无法访问其他会话的文件、缓存、磁盘及运行环境资源。

高风险命令的运行策略

普通命令

启用沙箱后,系统将根据命令是否在白名单内,决定其执行方式:

  • 在白名单内:命令会自动在沙箱外运行。
  • 不在白名单内:命令会自动在沙箱内运行。如果运行失败,系统会询问你是否需要在沙箱外重试。

高风险命令

为了防范系统风险,当智能体生成 rm -rf 等高风险命令时,系统会拦截该操作并向你弹出提示。你可以选择:

  • 跳过:跳过该命令,不运行。
  • 添加 {runningCommandList} 到白名单:将该命令的前缀添加到白名单,之后可在沙箱外运行相关命令。
  • 运行:本次在沙箱内运行该命令。

TRAE SOLO 语音讨论
TRAE SOLO 对话流设置
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

TRAE SOLO 最佳实践

TRAE SOLO 外部应用授权

TRAE SOLO 官方活动

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }