开发者文档 指南

工作区与 Git

任务文件所在之处:项目沙箱内的工作区、团队级文件共享、GitLab 集成运行与一次性环境。

一项目一沙箱

每个项目有一个常驻沙箱。工作区是其中 /workspace/{slug} 下的目录,团队所有成员读写同一批文件。文件跨运行存活——今天脚本写的 report.md,明天还在那里。

slug 永久不变

工作区 slug 在创建时生成且不可更改——slug 就是物理目录名,改名等于丢文件。第一个工作区(slug default)是任务默认运行的地方。

指定工作区

元任务绑定默认工作区;create_task 调用可以按次覆盖:

tid = create_task(
    "indexer",
    params={"source": "/workspace/docs/notes.md"},
    workspace_slug="docs",   # 在 docs 工作区运行
)

GitLab 集成工作区

给工作区绑定 GitLab 仓库后,那里的任务切换为 git 模式:每次运行在 task-{id} 分支的独立 worktree 上进行,成功后推送分支并自动创建 merge request——MR URL 回填到任务记录。

一次性沙箱

重型或有风险的运行可以在一次性沙箱中执行:全新环境、相同的工作区布局,运行结束即删除。

自定义环境

任务需要预装 SDK 之外的依赖时,在项目的镜像页用 Dockerfile 构建自定义镜像,并绑定到元任务(或后台服务)。该镜像将替换这些运行的基础环境;工作区布局保持不变。