TaskGoblin 是一个云端智能体,这意味着最重要的那个问题——我的代码在哪里运行?——只有一个答案:在一个隔离的云端沙箱里,绝不在任何人的笔记本电脑上。本页解释这个沙箱是什么、为什么它是隔离的,以及随着团队成长它如何保持隔离。
沙箱是什么
沙箱是云端的一个隔离容器,里面有一份你的代码仓库检出。当你交出一个任务时,智能体在那个容器内部运行——它在那里读取和编辑文件、执行命令、检查仓库,无法访问你的机器,也不依赖你的机器处于开机状态。
因为沙箱位于云端,工作天然就是异步的:你分配一个任务然后离开,无论你是否在看,智能体都会继续工作。
隔离:每个组织一道边界
每个组织的工作都在自己的沙箱中运行。这道边界是 TaskGoblin 数据隔离的核心——一个组织永远无法读取或写入另一个组织的代码、仓库或运行历史。智能体只能看到你明确连接的工作区、仓库和项目;断开某个连接,它就立刻失去访问权限。
持久化:它记住的是环境,而不只是任务
沙箱是持久的,并在同一会话线程的多条消息之间复用。针对同一个问题的后续追问会落到一个已经克隆好仓库、并保留着上一次运行状态的环境里——因此智能体能快速接续,而不是每次都从一个空盒子开始。这正是让一个任务的迭代感觉连贯而非重复的原因。(关于这种连贯性如何在多次运行之间承载决策,请参阅智能体是如何工作的中关于会话线程与交接记忆的部分。)
密钥留在智能体之外
智能体永远看不到你的凭据。沙箱内的 git 访问权限在运行时按组织配发——一个 GitLab OAuth 令牌,或一个新签发的 GitHub 安装令牌——并被注入到智能体外围的环境中,而不是作为可读内容交给它。智能体可以使用它克隆和推送所需的访问权限,而你的密钥从不会进入它的对话记录或上下文。
这是一条刻意划下的边界,而不是副产品:凭据对沙箱中的 git 工具可用,但它从不属于智能体读取或推理的材料。
自定义沙箱
在团队套餐中,你可以带上自定义沙箱——一个预装了你的项目构建和测试所需工具链、系统软件包与服务的容器镜像。当智能体的工作不只依赖一份裸检出(需要特定运行时、一个数据库、私有构建工具)时,自定义沙箱意味着任务一开始环境就已就绪,智能体的改动也能在贴近真实的环境中得到验证。
自托管沙箱
有合规或数据驻留要求的团队可以在自己的基础设施上运行沙箱。控制平面依然负责调度和驱动工作,但检出并执行你代码的那个容器位于你自己的环境内——因此源码、构建产物和运行状态从不离开你所控制的边界。当"在云上"必须意味着你的云时,就该选这个选项。