dsh-agentenv-sandbox:AgentENV E2B 沙箱

DeepSeek Harness(DSH)採用插件化架構。在 Agent 開發中,本地文件系統和子進程是常見的執行載體,但這帶來了一定的安全隱患。DSH 插件 dsh-agentenv-sandbox 解決了這個問題,它將 Harness 進程的文件操作和命令執行能力遷移到遠程環境,通過 AgentENV 提供的 Firecracker microVM 後端來運行。

插件介紹

該插件是 DeepSeek Harness 的 AgentENV/E2B 執行世界 bundle。它負責替換 DSH 內置的本地文件系統和子進程提供程序,使用官方的 Harness E2B 適配器,並運行在 AgentENV 的 microVM 後端之上。安裝後,Bash 命令、文件工具、持久化終端以及 LSP 進程將共享同一個遠程 Linux 世界。

  • 所有者:ztting01
  • 分類:admin-security
  • 許可證:MIT
  • 核心價值:在 microVM 環境中安全地執行 Agent 操作。

核心功能

  1. 提供程序替換:將本地文件系統和子進程提供程序替換爲 E2B 適配器,Agent 的所有操作通過 ctx.fs 和 ctx.subprocess 發送到遠程。
  2. 運行環境:基於 AgentENV Firecracker microVM 後端。
  3. 支持能力:支持 Bash 命令、文件工具、持久化終端、LSP 進程。
  4. 版本兼容:與 DeepSeek Harness 0.1.0-rc.7、E2B 2.29.1、AgentENV 0.1.0 和 0.1.3 兼容。
  5. 環境要求:需要 Node.js 22.19+ 或 24+ 環境。

安裝與配置

此插件不包含 AgentENV 和 DeepSeek Harness 的安裝腳本,也不自動構建模板。它要求用戶預先完成 AgentENV 和 Harness 的部署,並構建好模板。

1. 環境與前置條件

  • 操作系統:僅支持 WSL 2 或 Linux。原生 Windows 不支持(DSH 會拒絕啓動)。
  • Node.js:版本需在 22.19.0 以上或 24.0.0 以上。
  • 依賴:必須預先安裝並運行 DeepSeek Harness 和 AgentENV。

2. 構建模板

在使用插件前,需要先構建一個 AgentENV 模板。該插件包含一個 sandbox/Dockerfile,定義了 Node.js 24、Bash、Git 等工具環境。

# 在 AgentENV 安裝並認證後,從插件根目錄運行
aenv build ./sandbox/Dockerfile --name dsh-agentenv-node24 --cpu 2 --memory 4096

3. 配置環境變量

在啓動 Harness 進程的 shell 中,必須設置以下環境變量以連接到本地或遠程的 AgentENV 服務。

export AENV_API_KEY='<agentenv-api-key>'
export E2B_API_URL=http://127.0.0.1:8000
export E2B_SANDBOX_URL="$E2B_API_URL"
export E2B_API_KEY="$AENV_API_KEY"
export AENV_TEMPLATE_ID=dsh-agentenv-node24

4. 安裝插件

下載預編譯的 release 包並添加到 Harness 的 web profile。

curl -LO https://github.com/ztting01/dsh-agentenv-sandbox/releases/download/v0.1.5/dsh-agentenv-sandbox-0.1.5.tgz
dsh plugin --profile web add "$PWD/dsh-agentenv-sandbox-0.1.5.tgz"
dsh --profile web --dump-config

注意事項

  • 失敗關閉機制:該插件採用“失敗關閉”策略。如果 AgentENV 創建、設置或工作區上傳失敗,遠程提供程序將無法加載,且不會回退到主機執行。這保證了隔離性。
  • 宿主機依賴:DSH 進程本身、模型調用、Cordis 服務、會話持久化等仍保留在宿主機;只有通過適配器的操作會進入 microVM。
  • 純代碼插件限制:純代碼插件無法直接訪問 Node.js 原生的 fs 或 child_process,必須通過適配器進行。
  • 版本鎖定:當前版本在 DeepSeek Harness 0.1.0-rc.7 上測試通過,請確保版本匹配。

總結

dsh-agentenv-sandbox 是將 DSH 本地執行環境替換爲遠程隔離環境的標準方案。它通過 E2B 適配器和 AgentENV microVM,讓 Agent 在更安全、可持久化的沙箱中運行 Bash 和文件操作。部署時需注意前置依賴的安裝和模板的構建,並確保在 WSL 2 或 Linux 環境下運行。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜