← 返回列表
⚠ 装前注意
用于 DeepSeek Harness 的 Tensorlake 沙箱
基本兼容但装前注意:未发布到 npm registry,仅可从源码安装 · 最近上游提交 2026/8/15 · 已提供中文文档
一个用于 tensorlake 沙箱的 deepseek harness 插件
综合分
34.9
GitHub 分
34.9
用户评分
—
★ Stars
6
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add tensorlakeai/dsh-tensorlake-sandbox未发布到 npm registry,仅可从源码安装,改用 GitHub 源安装
数据截至 2026/9/17(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
安装兼容性检查⚠ 装前注意
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包@tensorlakeai/dsh-sandbox(未发布到 npm,仅可源码安装)
✓Node 引擎要求 ^22.19.0 || >=24.0.0 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
未发布到 npm registry,仅可从源码安装
验证方式:npm registry 存在性 + package.json 静态校验 · 最后验证 2026/9/18 02:58:31
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/cordis-plugin-include@deepseek-ai/dsh-fs@deepseek-ai/dsh-subprocess@deepseek-ai/schemastery用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
用于 DeepSeek Harness 的 Tensorlake 沙箱 @tensorlakeai/dsh-sandbox 将 DeepSeek Harness 的文件、子进程、Bash、终端和 LSP 操作迁移到单个短生命周期的 Tensorlake 微虚拟机中。它是一个可安装的 dsh 插件包,无需对 Harness 安装进行任何更改。 前置条件 - Node.js ^22.19.0 或 >=24.0.0 - @deepseek-ai/dsh 0.1.0-rc.6 或更高兼容版本 - 一个 Tensorlake 项目,并在宿主环境中设置了 TENSORLAKE_API_KEY - 在宿主环境中为默认 DeepSeek 模型提供方设置 DEEPSEEK_API_KEY 请将凭据保存在环境变量或密钥管理器中;不要将它们提交到配置文件或代码仓库中。 安装 安装 dsh 并将此插件包添加到你要运行的配置文件中: npm install --global @deepseek-ai/dsh dsh plugin --profile headless add @tensorlakeai/dsh-sandbox TENSORLAKE_API_KEY=... DEEPSEEK_API_KEY=... dsh --profile headless "build and test this repo" 在开发过程中,从本地检出目录进行安装: npm install npm run build dsh plugin --profile headless add . 使用 dsh --profile headless --dump-config 来验证 @tensorlakeai/dsh-sandbox 层是否禁用了宿主的 subprocess 和 fs-sandbox 提供方,插入了 Tensorlake 运行时、子进程和文件系统行,并保持 bash-sandbox 以 danger-full-access 模式挂载。在该模式下,Harness 的沙箱感知 Bash 执行器会直接委托给 Tensorlake 子进程提供方,同时仍然满足权限预设的能力契约。 冒烟测试 运行一个同时使用子进程和文件系统提供方的无头任务: dsh --profile headless \ "Use Bash to run pwd and id. Create smoke-test.txt containing hello, read it back, and report the results." 成功运行后,pwd 会报告 /home/tl-user/workspace,id 会报告 tl-user 身份,并从文件中读回 hello。面向模型的工作目录是相同的远程 Linux 路径,因此响应不应提及或回退到宿主机路径。 配置 该插件包会在配置文件启动时启动一个临时沙箱,并在 dsh 退出时终止它。运行时模块接受以下 Cordis 配置字段: 每次运行都会在两个生命周期边界处打印沙箱 ID。这些 ID 应当一致: Tensorlake sandbox created: Tensorlake sandbox terminated: | 字段 | 默认值 | 含义 | |---|---:|---| | apiKey | TENSORLAKE_API_KEY | 仅由宿主 SDK 使用的 Tensorlake API 凭据 | | cwd | /home/tl-user/workspace | 由文件和进程提供方共享的绝对 Linux 工作目录 | | timeoutSecs | 600 | 沙箱不活动超时时间 | | cpus | Tensorlake 默认值 | 虚拟 CPU 分配 | | memoryMb | Tensorlake 默认值 | 以 MiB 为单位的内存分配 | | diskMb | Tensorlake 默认值 | 以 MiB 为单位的根磁盘分配 | 随附的 bundle 会从 DSH_TENSORLAKE_CWD 同时推导运行时 cwd 和策略工作区。更改工作区时优先使用这一单一设置,这样 Bash 策略和远程 provider 就不会发生漂移: DSH_TENSORLAKE_CWD=/workspace/project dsh --profile headless "build and test this repo" 要直接在 profile 的 cordis.patch.yml 中配置这些行,请同时覆盖两者。patch 会替换完整配置,因此请重新声明你需要的每个非默认字段: - id: sandbox-policy config: mode: danger-full-access workspaceRoot: /workspace/project - id: tensorlake-runtime config: cwd: /workspace/project timeoutSecs: 1800 cpus: 2 memoryMb: 4096 apiKey 是可选的,通常应保持省略。该包绝不会将 TENSORLAKE_API_KEY、DEEPSEEK_API_KEY、其他形似凭据的环境变量或 DSH_* 变量复制到沙箱进程中。调用方仍可通过 Harness 工具或服务请求传入显式的环境变量条目。 运行时要求 Tensorlake 镜像必须提供 bash、Node.js,以及 GNU 的 base64、cat、chmod、env、find、grep、ln、mkdir、mktemp、mv、ps、realpath、rm、stat 和 tee。默认的托管 Ubuntu 镜像提供这些工具。运行时会验证配置的 cwd 是否可写,并在必要时使用托管镜像的免密码 sudo 创建并移交受保护路径。 该包面向 @deepseek-ai/dsh 0.1.0-rc.6 或更高版本的兼容发行版。dsh 安装会通过 profile 模块回退机制提供其可选的 Cordis、filesystem、subprocess 和 Schemastery peer。该包仅使用公开的 ctx.fs 和 ctx.subprocess 服务定义;无需 DeepSeek Harness 源码注册、生成的目录或仓库内配置。 已知限制 - tensorlake@0.5.103(当前 SDK 发行版)固定了 undici@8.3.0 和 nanoid@3.3.11;npm audit --omit=dev 会针对这些传递依赖版本报告高严重性安全公告。目前没有审计干净的 Tensorlake SDK 发行版,因此请在生产使用前查看上游安全公告,并在 Tensorlake 发布后更新 SDK 版本固定。 开发 npm install npm run check npm pack 三个 Loader 入口点分别是 @tensorlakeai/dsh-sandbox/runtime、@tensorlakeai/dsh-sandbox/filesystem 和 @tensorlakeai/dsh-sandbox/subprocess。每个模块默认导出其服务类;不要向这些模块添加函数插件形式的具名导出,因为 Cordis Loader 会将混合导出形式视为函数插件命名空间。
扫码进群