@agentproto/sandbox-e2b

中文文档
0.11.2发布于 2026/11/06Apache-2.0TypeScriptES Module构建来源已验证近 30 天下载 5539

@ agentproto/ sandbox-e2b — e2b (英语) SandboxProvider 用于 @ agentprto/ sandbox 。 脚被钉住 agentproto-workstation e2b 模板( baked @ agentproto/cli 1. 31. 0),在其内部启动代理 proto 守护进程,并将其 MCP 端点作为 URL 曝光, 因此任何代理 Sessi 都可用

中文使用文档
文档目录7 节
  1. 使用量
  2. 大小
  3. 建设环境
  4. 从盒子里推开公关
  5. 港口接触
  6. 页:1
  7. 许可证

@ agentproto/ sandbox-e2b 页面存档备份,存于互联网档案馆

页:1 SandboxProvider 页:1 @agentproto/sandbox。启动预建 agentproto-workstation e2b 模板, 在内部启动代理程序守护进程 它,并暴露它的MCP端点作为一个URL——所以 createSandboxAgentSessionHost 可以直接交给 connectDaemonAgentSessionHost (单位:千美元)@agentproto/worktree运行任何 AgentStep 沙盒里面,没有变化.

使用量

import { createSandboxAgentSessionHost } from "@agentproto/sandbox"
import { e2bSandboxProvider } from "@agentproto/sandbox-e2b"
import { runWorkflow } from "@agentproto/workflow-runtime"
import { worktreeAgentWorkflow } from "@agentproto/worktree"

const host = await createSandboxAgentSessionHost({
  provider: e2bSandboxProvider,
  spec: { provider: "e2b", config: {} },
  secrets: { slugs: ["OPENROUTER_API_KEY"] },
})
try {
  await runWorkflow({ workflow: worktreeAgentWorkflow, input, agents: host })
} finally {
  await host.stop()
}

要求数 E2B_API_KEY 在主机进程环境中.

大小

选择每个产卵的盒子大小 config.size。每个大小都是自己出版的 模板 (agentproto-workstation-<size>,在 templates/workstation/versions.json:

agent_start({ sandbox: { provider: "e2b", config: { size: "large" } } })
大小五氯联苯内存( MB)e2b别名状态
nano1个第1024号agentproto-workstation-nano已出版
small2个2048 (英语)agentproto-workstation-small已出版
medium2个4096 (英语)agentproto-workstation-medium已出版
large (默认)页:18192 (韩语)agentproto-workstation-large已出版
x-large第8条16384 (英语)agentproto-workstation-x-large无 e2b拒绝: 400: Memory can't be higher than 8192 MiB (if you need to increase this limit, please contact support)
xx-large16个32768 (英语)agentproto-workstation-xx-large无 e2b拒绝: 400: CPU count can't be higher than 8 (if you need to increase this limit, please contact support)

赤裸裸的 agentproto-workstation 化名(和 agentproto-workstation-dev) 建造于 默认大小, large (4 vCPU / 8192 MB) (中文(简体) ).

  • 满 pnpm build + 键 pnpm test 用于满足代理原生物需求 large 或者说 大一点. 更小的盒子 OOM - 杀死会话中建和工作丢失 拿着盒子.
  • 没有 size 没有 template 赤裸出头 agentproto-workstation 模板, 默认大小。 明确 config.template 总是赢 结束 config.size。 。 。 .
  • 未知大小的启动失败 。 标记大小 不可用, 准确错误 e2b 在模板时返回 拒绝(今天:计划封装了8 vCPU / 8192 MB),而不是 开个小盒子.
  • e2b没有GPU沙盒,因此没有GPU大小.

建设环境

在4 GiB 交换文件旁边, 它可以在新靴子上, 提供商大小 节点建到框中: pnpm默认每个 vCPU 运行一个软件包构建 每个Tsup DTS工人 都拿Node的默认堆积,所以一个平地 pnpm build 死亡 与 JavaScript heap out of memory 很久以前,RAM就不见了。 在每一个 它从预设的解决大小中获得预算 concurrency = max(1, min(cpu, floor(ram MB / 3072))) 财务报告和审定财务报表 heap = clamp(floor(ram MB * 0.6 / concurrency), 768, 4096) (默认) 4 vCPU / 8192 MB 盒 → 2 在2457 MB 堆积地上建起)—— 并把它作为 NODE_OPTIONS=--max-old-space-size=…, (中文(简体) ), npm_config_workspace_concurrency 财务报告和审定财务报表 TURBO_CONCURRENCY 两种方式: 在守护进程启动时,守护进程 它所产的每一个适配者,都会继承它 /etc/profile.d/agentproto-build.sh,所以每个登录贝壳命令在框中 (代理的击打工具,任何 exec来源也。 明确 config.template 没有记录大小,所以盒子在靴子被探测一次 (单位:千美元)nproc, (中文(简体) ), free -m) (中文(简体) ). 来电者自身的价值总是赢:通过 NODE_OPTIONS 与 --max-old-space-size 一个没有 得到盒子堆成附件。 以 config.buildEnv: { concurrency, heapMb },或以 config.buildEnv: false。 。 。 .

从盒子里推开公关

工作站模板会烤出 GitHub CLI(gh,钉入 templates/workstation/versions.json → tools.gh) (中文(简体) ). 当产卵时 工作空间有一个已注册的远程( o)agentproto workspace remote set <slug> --url <https-url> --token-stdin),守护进程向盒子中注入此符号 两次: AGENTPROTO_GIT_TOKEN,由 git 证书助手读取,作为 GH_TOKEN,读取 gh。这样,代理可以 git push 财务报告和审定财务报表 gh pr create {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}只要这个标志 目录: 写入 财务报告和审定财务报表 拉开 请求: 写入 在存储器上 (一个精细的 PAT 范围到那个) repo是合适的形状).

两个名字都保留下来。 它们只是从守护神那里得到的 工作空间自己的钥匙链 并且他们被剥离 任何呼叫者宣布 env.passthrough, (中文(简体) ), env.auth.state.env 或者说 join.tokenEnv因此,一个打电话者可以 既不遮住标志 也不拉守护魔自己的 GH_TOKEN 进入一个盒子. 该符号从未出现在命令、 URL 或 argv 中 。 还是个普通的地洞 var 在盒子里,所以代理可以读取它: 范围到一个仓库 并且当工作完成时撤销它.

港口接触

每个靴子的沙盒都暴露出一个 expose(port) 返回公众的方法 任何移植的沙盒进程的 URL 听取 :

const host = await createSandboxAgentSessionHost({ provider: e2bSandboxProvider, spec, secrets })
// After booting, expose any app port the sandboxed process is listening on:
const { url } = await host.expose!(3210)
// url → "https://3210-<sandboxId>.e2b.app"

要在启动时预览端口, 请声明 extraPorts 在谱中。 这个 已返回 BootedSandbox.ports 映射(和会话描述器) sandboxPorts 字段)即刻被覆盖,因此管弦乐手可以读取URL而无需读取 单独 expose() 电话 :

const host = await createSandboxAgentSessionHost({
  provider: e2bSandboxProvider,
  spec: { provider: "e2b", config: {}, extraPorts: [3210] },
  secrets: { slugs: ["E2B_API_KEY"] },
})
console.log(host.ports) // { 3210: "https://3210-<sandboxId>.e2b.app" }

环背捆绑在VM内部足够了——e2b的边缘手柄转发. 见 SandboxPortExposureUnsupportedError 内 @agentproto/sandbox 错误 呼叫时抛出 exposePort() 对于不支持接触的提供者.

页:1

  • 守护进程本身的来源允许列表默认为 localhost:*; 此提供者 打开它供沙盒自己的公共主机(--allow-origin https://<getHost>) 这样,主机进程就可以到达它了 https://<getHost>/mcp。 。 。 .
  • 自定义( 非封存的) 模板可以滞后: 提供者运行 npm i -g @agentproto/cli@<cliVersion> 在他们身上启动守护进程之前( a)cliVersion 默认为 @latest把它插进去 spec.config 为可复制的靴子。 设定 updateCliOnBoot: false 内 spec.config 完全跳过安装.

许可证

麻省理工学院——见 自由主义。 。 。 .

版本与发布记录

@agentproto/sandbox-e2b 共发布 45 个版本,首次发布于 2026/07/08;过去 12 个月发布了 45 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.11.2latest2026/11/06今天
0.11.12026/11/042 天前
0.11.02026/11/014 天前
0.10.02026/10/279 天前
0.9.12026/10/2314 天前
0.9.02026/10/2017 天前

关于 @agentproto/sandbox-e2b 的常见问题

@agentproto/sandbox-e2b 是什么?

@ agentproto/ sandbox-e2b — e2b (英语) SandboxProvider 用于 @ agentprto/ sandbox 。 脚被钉住 agentproto-workstation e2b 模板( baked @ agentproto/cli 1. 31. 0),在其内部启动代理 proto 守护进程,并将其 MCP 端点作为 URL 曝光, 因此任何代理 Sessi 都可用

如何安装 @agentproto/sandbox-e2b?

在项目目录运行 npm install @agentproto/sandbox-e2b,或使用 pnpm add / yarn add / bun add。

@agentproto/sandbox-e2b 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@agentproto/sandbox-e2b 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@agentproto/sandbox-e2b 可以商用吗?

@agentproto/sandbox-e2b 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@agentproto/sandbox-e2b 的下载量有多少?

根据 npm 官方下载统计,@agentproto/sandbox-e2b 在 2026/10/05 – 2026/11/03 这 30 天内被下载 5,539 次,日均约 185 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@agentproto/sandbox-e2b 还在维护吗?

最新版本 0.11.2 发布于 2026/11/06(今天);至今共发布 45 个版本,其中过去 12 个月发布了 45 个;首次发布于 2026/07/08。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。