跳到主内容

dsh-tensorlake-sandbox 使用指南

把 DSH 的文件、子进程、Bash、终端、LSP 操作统一搬到一台短命的 Tensorlake 远程 Linux 沙箱里执行,本地不再触碰任何宿主机文件或进程。

本文为派生内容(基于 wiki / faq / compatibility_json 自动组装),非 AI 即时创作。

本文由本站基于该插件已收录的字段自动派生(wiki / faq / compatibility_json / readme),非 AI 即时创作。每节末尾标源字段。

快速上手

dsh-tensorlake-sandbox

— 源: plugin_wiki.wiki_content

安装与验证

dsh plugin --profile web add @tensorlakeai/dsh-sandbox

复制以上命令在 DSH Web Profile 内运行。安装完成后在「插件列表」启用即可。

— 源: plugins.install

关键要点

  • Node.js ^22.19.0 or >=24.0.0
  • @deepseek-ai/dsh 0.1.0-rc.6 or a later compatible release
  • A Tensorlake project with TENSORLAKE_API_KEY set in the host environment
  • DEEPSEEK_API_KEY set in the host environment for the default DeepSeek model provider
  • id: sandbox-policy

— 源: plugin_wiki.readme_zh (fallback readme_raw)

常见问题

安装后会发生什么变化?

宿主机上的 subprocess、fs-sandbox 提供者会被停用,新增一组以 tensorlake- 开头的远程服务;Bash、文件读写、进程和终端全部改在 Tensorlake 远程 Linux 沙箱里跑,DSH 退出时沙箱随之销毁。

需要额外准备什么才能跑起来?

主机环境里要设置 TENSORLAKE_API_KEY(Tensorlake 平台凭证),并按 dsh profile 的要求提供 DEEPSEEK_API_KEY;首次启动会自动建一个短命沙箱并打日志,打印的 sandbox id 在创建和销毁两行应一致。

我能在本机硬盘上读写文件吗?

不能。文件操作只发生在沙箱内的 Linux 路径(默认 /home/tl-user/workspace),模型和工具看到的都是这个远程路径;如果想换工作目录请用 DSH_TENSORLAKE_CWD 环境变量同时覆盖运行时 cwd 与沙箱策略工作目录。

我能改权限预设吗?

插件固定启用 danger-full-access 沙箱 + never 审批策略,并把权限预设仅暴露为 danger-full-access。cordis.patch.yml 是一次性替换,要改就必须把 sandbox-policy、approval、permission 三段都重写,否则会被覆盖回默认值。

默认沙箱配置是什么?想调大内存或 CPU 怎么改?

默认只设置了 600 秒闲置超时,CPU/内存/磁盘沿用 Tensorlake 服务端默认值。在 profile 的 cordis.patch.yml 里覆盖 tensorlake-runtime 的 cpus / memoryMb / diskMb 即可,注意 timeoutSecs 必须是正整数。

卸载会影响 DSH 本身吗?

不会。卸载插件只是把被它替换的 layer 还原,DSH 安装目录不会被修改;如需清理只需移除插件并重启 dsh,无需额外命令。

这套方案安全吗?凭证会进沙箱吗?

包代码不会把 TENSORLAKE_API_KEY、DEEPSEEK_API_KEY、其他凭证形态的环境变量或 DSH_* 变量透传到沙箱进程;显式注入只能通过 dsh 的工具或服务调用另行发起。沙箱本身是远程隔离的 microVM,但仍需自行评估 Tensorlake SDK 传递依赖的 npm audit 报告。

— 源: plugin_wiki.faq_json

兼容性

  • DSH: >=0.1.0-rc.6
  • Node: ^22.19.0 || >=24.0.0

— 源: plugin_wiki.compatibility_json

踩坑提醒

安装前请审阅上游仓库;本指南基于已收录字段自动派生,可能滞后于最新版本。如发现与官方文档冲突,请以上游为准。

— 来源:通用规则