Release history
sandbox releases
All-in-One Sandbox for AI Agents that combines Browser, Shell, File, MCP and VSCode Server in a single Docker container.
All releases
18 shown
v1.0.0.152
New feature
Notable features
- AIO Sandbox evaluation framework with reports
- Service disable capability via DISABLE_JUPYTER and DISABLE_CODE_SERVER
- X-Forwarded-Prefix header support in /v1/browser/info
v1.0.0.151
Mixed
Notable features
- Stateless /mcp requests eliminate the need for session initialization
- AIO_SKILLS_PATH environment variable for mounting and registering Skills at startup with automatic dependency parsing
Full changelog
- Fixed the issue where the homepage showed a 404 error after deploying AIO via a subpath.
- Added the
AIO_SKILLS_PATHenvironment variable to support mounting/registering Skills during service startup, while also parsing the installation commands for Skill dependencies. /mcpnow supports stateless requests, eliminating the need to callinitializefirst to establish a session.
- 修复通过子路径部署 AIO 后,首页 404 无法展示问题
- 新增
AIO_SKILLS_PATH环境变量,支持服务启动时挂载/注册 Skills,同时解析出 Skill 依赖安装命令。 /mcp支持无状态请求,无须先调用initialize来建立 Session
v1.0.0.150
Mixed
⚠ Upgrade required
- Chrome DevTools MCP tools now hidden by default; accessible via /mcp?search=chrome_devtools parameter
Notable features
- Claude Skills API: registration, mounting, retrieval, and deletion of custom skills in sandbox environment
- QR code generation support
Full changelog
- Optimized service startup time, reducing duration from 16s to 8s for 1c2g configuration, and from 11s to 4s for 2c4g configuration.
- The system now supports registration, mounting, retrieval, and deletion of
/v1/skills/*(API) Claude Skills. Users can upload and mount skills to the sandbox environment, integrating seamlessly with the existing Sandbox API. - The number of
/mcptools has been reduced (from 60 to 30). Methods from chrome-devtools-mcp are hidden by default but can be accessed via/mcp?search=chrome_devtools. - Added QR code generation qrcode dependency
- 优化服务启动时长,1c2g 配置耗时从 16s → 8s,2c4g 从 11s → 4s
- 新增
/v1/skills/*(API) Claude Skills 注册/挂载/获取/删除,支持注册、挂载、查询与删除,可将 Skills 上传/挂载到沙箱环境,与现有 Sandbox API 结合使用。 /mcptools 数量压缩(从 60 → 30) ,默认隐藏 chrome-devtools-mcp 工具方法,可通过/mcp?search=chrome_devtools使用;- 新增二维码生成 qrcode 依赖
v1.0.0.144
Mixed
⚠ Upgrade required
- New system dependencies (ffmpeg, latex, graphics libraries) required for manim video generation features
Security fixes
- --no-sandbox browser parameter removed to enhance security
Notable features
- System dependencies added for ffmpeg, latex, and graphics rendering to support manim video generation
- User-level executable directory ~/.local/bin appended to PATH
- Code examples for AIO usage added
Full changelog
- Fixed proxy log file could not be written
- Append user-level executable directory
'~/.local/bin'to'PATH ' - Security enhancements, removal of browser '--no-sandbox' parameter
- Added system dependencies related to ffmpeg, latex, and graphics rendering, which can be used to generate video animations using manim
- Added some code examples used by AIO examples
- 修复 proxy 日志文件无法写入问题
- 追加用户级可执行目录
~/.local/bin到PATH - 安全性增强,移除浏览器
--no-sandbox参数 - 增加 ffmpeg、latex、图形渲染相关的系统依赖,可使用 manim 于生成视频动画
- 新增 AIO 使用的一些代码示例 examples
v1.0.0.143
Mixed
Notable features
- Added pyecharts dependency with DejaVu Sans font support
Full changelog
- Add
pyechartsdependency and include the DejaVu Sans font. - Fixed error reported after container restart
mv: No such file or directory
- 增加 pyecharts 依赖,新增 DejaVu Sans 字体
- 修复容器重启后报错
mv: No such file or directory问题
v1.0.0.142
Mixed
Notable features
- New timeout parameter for POST /v1/shell/exec (soft timeout behavior)
- Fixed exec_dir not taking effect in shell execution
- Fixed PROXY_SERVER environment variable not being applied
Full changelog
POST /v1/shell/exec- Add a
timeoutparameter, which triggers a soft exit on timeout (returnsstatus: running) - Fix the issue where
exec_dir(execution directory) was not taking effect.
- Add a
POST /v1/shell/wait- Fix the inconsistency between the
statusandsuccessreturn values for running tasks
- Fix the inconsistency between the
- Fix the problem where the browser proxy
PROXY_SERVERenvironment variable was not taking effect
POST /v1/shell/exec- 增加
timeout参数,超时软退出(返回status: running) - 修复
exec_dir(执行目录)无法生效的问题。
- 增加
POST /v1/shell/wait- 修复运行中任务的
status与success返回值不一致问题
- 修复运行中任务的
- 修复浏览器代理
PROXY_SERVER环境变量不生效问题
v1.0.0.140
New feature
Notable features
- Session-level Python code execution via `/v1/jupyter/sessions/create` with dynamic dependency installation
- Runtime browser resolution configuration via `/v1/browser/config` endpoint and `DISPLAY_WIDTH`/`DISPLAY_HEIGHT` environment variables
- Container startup time reduced from 11s to 5s on 2-core/4GB configurations
Full changelog
- Added
/v1/browser/configto set browser resolution at runtime, and also supports environment variablesDISPLAY_WIDTHandDISPLAY_HEIGHT.
- Added sandbox context information
/v1/sandboxwith structured datadetail. - Added Python code execution to create a session_id via
/v1/jupyter/sessions/create. - Optimized container service ready time; on low‑spec (2c4g) configurations, reduced from 11s → 5s.
- Added a code_execute_example: Session‑level Python code execution, with command‑line dependency installation.
- 新增
/v1/browser/config在运行时设置浏览器分辨率,同时也支持环境变量DISPLAY_WIDTH、DISPLAY_HEIGHT设置 - 新增沙盒上下文信息
/v1/sandbox结构化数据detail - 增加 Python 代码执行创建 session_id
/v1/jupyter/sessions/create - 优化容器服务 ready 耗时,低配置(2c4g)下从 11s → 5s
- 增加一个 code_execute_example 代码示例:Session 会话维度 Python 代码执行,同时命令行安装依赖
v1.0.0.139
Bugfix
Fixed deployment error with BROWSER_EXTRA_ARGS format string expansion.
v1.0.0.138
Mixed
Notable features
- VolcEngine CLI (`ve`) integration support
- Built-in PyPI dependencies: numpy, fastapi, scipy, xlsxwriter, seaborn, httpx, docx2txt, python-pptx, uvicorn, lxml
- str_replace_editor `/v1/file/str_replace_editor` with `view` now returns original file content in `old_content`
Full changelog
- Supports the VolcEngine CLI
ve - Fixed the issue where
ulimitcould not be modified - Added built‑in PyPI dependencies:
numpy, fastapi, scipy, xlsxwriter, seaborn, httpx, docx2txt, python-pptx, uvicorn, lxml - Fixed the problem of query parameters not being passed through on the
/index.htmlDashboard page - Fixed the file type error in
str_replace_editorviewmarkdown files - Fixed permission issues with tmux temporary directories
- When using
/v1/file/str_replace_editorwithview, returns the original file content inold_content - Fixed the MCP Tool
get_browser_infoissue
- 支持火山引擎 cli
ve - 修复
ulimit不可修改问题 - 增加内置 pypi 依赖:
numpy, fastapi, scipy, xlsxwriter, seaborn, httpx, docx2txt, python-pptx, uvicorn, lxml - 修复
/index.htmlDashboard 页 query 参数不透传问题 - 修复
str_replace_editorviewmarkdown 文件类型错误问题 - 修复 tmux 临时目录的权限问题
- 支持
/v1/file/str_replace_editor使用view时在old_content返回原始文件内容 - 修复 MCP Tool
get_browser_info问题
v1.0.0.132
Breaking risk
Breaking changes
- MCP Tools reduced from 27 to 10
Notable features
- /v1/util/convert_to_markdown endpoint
- OpenSSH client support
v1.0.0.128
Breaking risk
Breaking changes
- browser.get_browser_info → browser.get_info
- browser.take_screenshot → browser.screenshot
- shell.view_shell → shell.view
Full changelog
- Fixed the issue where the
/v1/file/str_replace_editorinterface could not undo edits (undo_edit). - [BreakChange] Simplified SDK method names and optimized the MCP tool name.
- browser
browser.get_browser_info→browser.get_infobrowser.take_screenshot→browser.screenshot
- shell
shell.view_shell→shell.view
- code
code.info→code.get_infonodejs.execute_nodejs_code→nodejs.execute_codenodejs.info→nodejs.get_infojupyter.execute_jupyter_code→jupyter.execute_codejupyter.info→jupyter.get_info
- sandbox
sandbox.get_sandbox_context→sandbox.get_contextsandbox.python_packages→sandbox.get_python_packagessandbox.nodejs_packages→sandbox.get_nodejs_packages
- browser
- 修复
/v1/file/str_replace_editor接口无法撤销编辑undo_edit的问题 - [BreakChange] SDK 方法名简化变更,同时优化 MCP 工具名称
- browser
browser.get_browser_info→browser.get_infobrowser.take_screenshot→browser.screenshot
- shell
shell.view_shell→shell.view
- code
code.info→code.get_infonodejs.execute_nodejs_code→nodejs.execute_codenodejs.info→nodejs.get_infojupyter.execute_jupyter_code→jupyter.execute_codejupyter.info→jupyter.get_info
- sandbox
sandbox.get_sandbox_context→sandbox.get_contextsandbox.python_packages→sandbox.get_python_packagessandbox.nodejs_packages→sandbox.get_nodejs_packages
- browser
v1.0.0.127
New feature
Notable features
- `/v1/code/execute` endpoint for executing Python and Node.js code
- Internal service port configuration via environment variable for runtime conflict avoidance
- AIO MCP tool list optimization removing unnecessary tools
Full changelog
- The internal service port is configured via an environment variable, allowing the startup port to be changed at runtime to avoid port conflicts. See the detailed variable names in
docker-compose.yaml. - Added
/v1/code/executeintegration for executing Python and Node.js code. - Optimized the AIO MCP tool list by removing excessive unnecessary tools.
- Upgraded chrome-devtools-mcp from
0.4to0.6.
- 内部服务端口使用环境变量,可运行时修改启动端口,避免端口冲突。详细变量名见
docker-compose.yaml - 增加
/v1/code/execute集成 Python、Node.js 代码执行 - 优化 AIO MCP 工具列表,移除过多不必要的工具。
- 升级 chrome-devtools-mcp 从
0.4到0.6
v1.0.0.126
Breaking risk
⚠ Upgrade required
- Applications consuming /v1/ validation error responses must update error handling code to expect { "errors": [...], "data": null } structure
Breaking changes
- /v1/ validation error response structure changed from { "data": [{ loc: ... }] } to { "errors": [{ loc: ... }], "data": null }
Notable features
- Added `/mcp?search=` parameter to filter MCP servers by keyword (e.g., ?search=chrome_devtools)
Full changelog
- [BreakChange] The data structure for validation errors in the /v1/ interface has changed from
{ "data": [{ loc: ... }] }to{ "errors": [{ loc: ... }], "data": null }. @ycjcl868 - Added support for filtering with
/mcp?search=MCP Server, e.g.,?search=chrome_devtoolswill list only the Chrome DevTools MCP Server. @ycjcl868 - Fixed an error that occurred when the
/opt/gem/bashrcfile existed by @HashWarlock
- [BreakChange]
/v1/接口在校验错误的数据结构由{ "data": [{ loc: ... }] }变更为{ "errors": [{ loc: ... }], "data": null } - 支持
/mcp?search=MCP Server 过滤筛选功能,例如?search=chrome_devtools则只列举 Chrome DevTools MCP Server。 - 修复
/opt/gem/bashrc文件存在时的报错。
v1.0.0.125
New feature
Notable features
- Added chrome-devtools-mcp MCP tool with chrome_devtools_ prefixed endpoints
- Shell API `/v1/shell/sessions/create` supports custom session ID generation rules
- Sandbox startup speed optimized by ~1 second
Full changelog
- Added chrome-devtools-mcp; any
/mcpendpoint prefixed withchrome_devtools_belongs to this MCP tool. - The Shell API
/v1/shell/sessions/createnow supports customidgeneration rules forsession_id. - Optimized sandbox startup speed, reducing the delay by roughly 1 second.
- 新增 chrome-devtools-mcp,
/mcp以chrome_devtools_前缀的都是该 MCP 工具 - Shell API
/v1/shell/sessions/create支持id自定义session_id生成规则 - 优化沙盒启动速度,大概减少 1s 左右
v1.0.0.123
New feature
Adds MOVE_REL, DRAG_REL, WAIT actions to browser API and screenshot response headers with pixel dimensions.