CodeAgent 通过 executor_type 参数选择代码执行环境,不同选项在安全性和适用场景上存在差异:
执行器类型 | 安全级别 | 适用场景 |
|---|---|---|
local(默认) | 受限(基于 AST 的导入白名单) | 本地开发、可信环境 |
e2b | 高(云端 Firecracker 微虚拟机) | 生产环境、不可信代码 |
docker | 高(容器隔离) | 自托管、完全控制 |
modal | 高(无服务器容器) | 大规模自动扩缩容 |
blaxel | 高(托管远程执行) | 边缘原生执行 |
wasm | 高(WebAssembly 沙箱) | 浏览器级隔离、边缘部署 |
默认的 LocalPythonExecutor 并非真正的安全沙箱,它通过以下机制提供基础防护:
os、sys、subprocess)的导入eval、exec、os.system 等危险内置函数官方文档明确指出,本地执行器不能用作安全边界,生产环境中处理不可信输入时必须使用远程沙箱执行器。