shanselman/sandbox-mcp
开发工具通过 CLI 或 MCP 自动启动一次性 Windows Sandbox,完成应用测试、UI 自动化、安装包对比和未知文件行为分析。
项目介绍
sandbox-mcp 为开发者和 AI Agent 提供一台真实的、用完即弃的 Windows 11 测试机。它启动全新的 Windows Sandbox,把应用复制进去并运行,通过原生 UI Automation 操作窗口、截图或录制,最后销毁虚拟机。同一套引擎同时提供独立的 sbx CLI 和可选的 MCP 服务,Agent 需要可发现的工具结构和内联图片时再接入 MCP source:5。
除运行应用外,它还能在不执行程序的前提下诊断宿主机依赖,显式选择安装经过验证的运行时,通过系统快照对比测试安装包,并在离线环境中观察可疑文件的实际行为 source:29。
快速使用
前提:Windows 11 专业版、企业版或教育版,已开启虚拟化,并有已登录的桌面会话。需要启用 Windows Sandbox 和 wsb 命令行工具。
- 从最新发布页下载 Windows x64 便携 ZIP,用相邻的
.sha256校验后解压。压缩包内含 Node.js,无需安装 Node/npm source:30。 - 在解压目录打开 PowerShell,运行就绪检查:
.\sbx.cmd doctor
- 如果 Sandbox 功能未开启,在管理员 PowerShell 中执行以下命令并重启:
Enable-WindowsOptionalFeature -Online -FeatureName Containers-DisposableClientVM -All
重启后从开始菜单打开一次 Windows Sandbox,以安装 sbx 依赖的 wsb 命令行工具,然后重新运行 doctor source:37。
4. 用系统自带程序试跑:
.\sbx.cmd run C:\Windows\System32\charmap.exe --open
成功后在 %LOCALAPPDATA%\sandbox-mcp\runs\<timestamp> 下留下 report.md、report.json、截图和 audit.jsonl。加 --record 可生成自包含的 HTML 录像页;宿主机 PATH 中有 ffmpeg 时还会输出 MP4。
接入 Agent 时,将 MCP 客户端的 stdio 命令和参数指向压缩包内的 node.exe 与 src\server.js 绝对路径;VS Code、Copilot CLI 和 Claude Desktop 的顶层配置键不同,README 分别给出了示例 source:35。
使用约束
- 同一时间只能运行一个沙盒,这是 Windows Sandbox 的限制;并发的
sbx run会直接失败,不会排队 source:3。 - 每次启动都是干净系统,应用依赖不会自动安装。需要时用
--provision auto或显式组件列表加入,报告会把这类运行标记为非干净环境。 - 沙盒内没有 Microsoft Store 应用、winget、记事本、计算器或 Windows Terminal,但有 Windows PowerShell 5.1 和 .NET Framework 4.8。
- 首次 UI Automation 调用因动态生成互操作程序集约需 4 秒;系统快照需要 10–20 秒,因此
install-test通常运行两分钟左右,另加安装器自身耗时。 - 网络模式
off没有网络适配器,通过共享文件夹邮箱通信;处理不可信文件时应使用该模式。out文件夹对沙盒可写,回传内容不应被信任,Windows Sandbox 也不能替代专门的恶意软件分析环境。 - 项目采用 MIT 许可证。便携包面向原生 Windows x64,目前不提供 ARM64 包。
HotRepo 点评
sandbox-mcp 在 JavaScript 新项目榜的首个统计窗口内记录了 108 Star 和 3 Fork,单次快照只说明早期关注度,不足以推断趋势。材料里更值得看的是结构:完整 CLI 不依赖 MCP 客户端即可使用,可选适配器与 CLI 共用核心实现,报告包含真实日志和实测耗时,并附多框架兼容性矩阵 source:16。对需要测试 Windows 桌面应用、或让 Agent 操作一次性 Windows 环境的开发者,这些才是判断依据;星数本身提供的信息有限。
本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。