You need to enable JavaScript to run this app.
文档中心
AI 原生 BaaS 平台 Supabase 版

AI 原生 BaaS 平台 Supabase 版

复制全文
下载 pdf
沙箱服务
使用沙箱
复制全文
下载 pdf
使用沙箱
沙箱(Sandbox)是 AI 原生 BaaS 平台 Supabase 版为使用 Supabase 引擎的 Workspace 提供的隔离运行环境,用于在受控、可回收的环境中运行命令、调用大模型或执行代码。您可以在控制台的「沙箱使用」页面选择模板、输入命令并快速创建沙箱执行。​
背景信息​
  • 沙箱基于模板创建,平台预置了多种模板(如 opencode、claude、base、code-interpreter、codex 等),不同模板预装的运行时和工具不同。​
  • 每个沙箱有剩余 TTL(生存时间),到期后自动回收。​
  • 除了在控制台手动创建并执行外,您也可以通过 SDK 在业务代码中调用沙箱。​
前提条件​
  • 已创建 Workspace 且 Workspace 的状态为运行中。​
  • 目标当前分支处于运行中状态。​
  • 当日沙箱创建数量未超出额度配置。​
操作步骤​
​
  1. 在分支管理页面,单击目标分支名称,进入分支总览页。​
  1. 在分支总览页,选择沙箱服务 > 沙箱使用选项卡。​
  1. 在左侧模板列表中选择需要使用的模板。选中后,右侧展示该模板的描述、模板大小、预装工具和最近更新时间。​
  1. 在命令输入框中输入需要在沙箱中执行的命令。例如使用 opencode 模板时,可输入 opencode run "请帮我编写一个通用的销售目标提升方案"。​
  1. 单击创建沙箱并执行。​
  1. 在页面下方的执行结果区域查看沙箱输出。执行期间页面右上角显示流式输出中,命令输入框只读,并出现停止按钮。如需中止执行,单击停止。​
  1. 执行结束后: ​
  • 执行成功时,执行结果区域展示完整输出。​
  • 执行失败时,「执行结果」区域展示错误日志及退出码(非 0),可根据错误信息调整命令后再次单击创建沙箱并执行重试。​
模板说明​
模板列表中展示当前可用的沙箱模板。选中某一模板后,右侧展示其详细信息:​
​
字段​
说明​
模板描述​
模板的用途说明,例如 opencode 模板描述为 e2b sandbox opencode template。​
模板大小​
模板镜像大小,例如 800MB。​
预装工具​
模板中已预装的运行时和工具,例如 python、node、git、opencode。​
最近更新时间​
模板最近一次更新的时间。​
​
说明​
不同模板预装的工具链不同,请根据要执行的命令选择合适的模板。例如需要运行 Python 代码时选择预装 Python 的模板,需要调用 opencode 时选择 opencode 模板。​
通过 SDK 调用沙箱​
沙箱使用页面下方的使用示例区域提供了通过 SDK 创建并调用沙箱的代码示例。典型流程为:使用 Supabase 账号密码登录获取 access token,调用 initBytedSupabaseSandbox 完成初始化,再通过 Sandbox.create 创建沙箱并执行命令。示例代码如下:​
​
import { createClient } from '@supabase/supabase-js'​
import { initBytedSupabaseSandbox } from '@byted-supabase/sandbox'​
​
const supabase = createClient(​
process.env.SUPABASE_URL,​
process.env.SUPABASE_ANON_KEY,​
)​
​
const { data, error } = await supabase.auth.signInWithPassword({​
email: 'user@example.com',​
password: '••••••••',​
})​
if (error) throw error​
​
initBytedSupabaseSandbox({​
url: process.env.SUPABASE_URL,​
apiKey: data.session.access_token,​
})​
​
import { Sandbox } from 'e2b'​
​
const sbx = await Sandbox.create()​
try {​
const cmd = await sbx.commands.run(​
'uname -a',​
{ timeoutMs: 60_000 },​
)​
console.log(cmd.stdout)​
} finally {​
await sbx.kill()​
}​
​
执行状态说明​
​
状态​
说明​
待执行​
命令输入完成,尚未单击「创建沙箱并执行」。命令输入框可编辑,页面显示「创建沙箱并执行」按钮。​
流式输出中​
已创建沙箱并正在执行,页面提示「正在创建沙箱并等待输出...」,命令输入框只读,操作按钮变为「停止」。​
执行完成​
命令执行成功,「执行结果」区域展示输出内容,退出码为 0。​
执行失败​
命令执行异常,「执行结果」区域展示错误日志,并显示非 0 退出码。​
​
相关操作​
  • 查看或调整每日沙箱创建额度,参见限额管理。​
最近更新时间:2026.10.12 14:40:35
这个页面对您有帮助吗?
有用
有用
无用
无用