omdsh-dev/dsh-sandbox-micro
omdsh-dev★ 1TypeScriptLast synced: 2026-08-16
—
README excerpt
dsh-sandbox-micro English DeepSeek Harness 的 microsandbox 插件 bundle:把模型可见的 ctx.shell 替换为 Linux 微虚拟机 中的 bash -c 执行器,同时保留一个直接面向 ctx.sandbox seam 的 provider。 安全模型 - 不使用 cmd.exe 或其他 shell 包装不可信 argv 。Windows 上历史实现通过 cmd /c 启动 npm .CMD shim,会让模型命令中的 & / 引号 / %VAR% 被宿主机 shell 解析。本插件改为直接运行 microsandbox 依赖自带的 Node shim( node .../bin/microsandbox.cjs ),并显式拒绝 .CMD / .BAT 覆盖路径。 - fail-closed :首次 confinement 前会探测 msb --version 和 msb doctor (检查宿主虚拟化前置条件);失败时缓存判决并抛出 SANDBOX UNAVAILABLE ,绝不退回未隔离执行。 - 执行期 runner 失败可识别 : runnerFailureRules 按 msb 0.6.9 的真实 stderr 方言校准,覆盖镜像拉取、挂载路径、沙箱启动和无效配置错误。 - 默认 --no-net ;可通过 allowNetwork: true 显式放开。 架构 这个包暴露两个 Cordis 入口: 入口 服务 用途 @deepseek-ai/dsh-sandbox-micro ctx.sandbox 直接调用 SandboxProvider.confine() 的兼容 provider。seam 不携带 env/cwd,因此 guest 固定为 /work @deepseek-ai/dsh-sandbox-micro/shell ctx.shell 模型 shell 工具实际使用的执行器 。它能看到完整 ShellExecSpec ,会映射 workdir 到 /work/ ,并通过 -e KEY=VALUE 转发 ENV OVERRIDES 、 spec.env 与 DSH cordis.patch.yml 会: - 禁用官方 sandbox / bash-sandbox / pwsh-sandbox row - 插入 sandbox-micro 与 shell-micro - 全平台启用 tool-bash - 禁用 tool-pwsh (其 PowerShell 方言无法运行在 Debian guest 中) 前置条件 - Node ^22.19.0 =24.0.0 - microsandbox 0.6.9+(已作为 dependency 随包安装) - Windows:Wi…
View full README on GitHub →