SETA: Scaling Environments for Terminal Agents
速读卡片 (TL;DR)
一句话: SETA 是 CAMEL-AI / Eigent.AI 把"为 terminal agent 训练用的 RL 环境"整套搬到开源的项目——核心包括 (1) 一份与 Terminal-Bench 任务格式兼容的 400+ 合成任务数据集(LLM-生成 / Docker 容器 / unit-test verifier),(2) 一个 双工具包(TerminalToolkit + NoteToolkit),(3) AReaL 上的端到端 GRPO 训练 workflow + rLLM 集成 demo。它对应的"训→评闭环"是 SWE-Gym → SWE-Bench 的 terminal 版,即 SETA → Terminal-Bench。代码、数据、Qwen3-8B 训练后权重全部 Apache-2.0 开源。
立场: SETA 不是一篇有 arXiv 编号的 paper,而是一份"持续更新"的 Notion 技术报告 + 两个活跃 GitHub 仓库。和姊妹项目 Toolathlon-Gym(MCP 域)以及 R2E-Gym(SWE 域)形成同一 CAMEL/Eigent 生态下的三大开源训练 env 矩阵。它最有信号价值的一句来自创始人 Guohao Li: "Frontier labs spend millions purchasing RL environments for training terminal agents. But we decided to open source it."——直接把 frontier lab 的"软资产"打回到 commodity。
1 · 背景:为什么 2026 突然需要 "terminal RL env" 这种东西
2024–2025 这一年,"终端"突然变成 agent 工程的中心舞台:
- Anthropic Claude Code(2025 中)、OpenAI Codex CLI、Cursor agent、OpenHands、Aider——一夜之间产品形态变成 "一个 shell prompt + 一个 LLM"。
- Terminal-Bench(Stanford / Anthropic 等,2025)从 0.1 → 1.0 → 2.0,逐步成为衡量 terminal agent 的"事实标准"——TB 2.0 包含 89 个真实世界 task,覆盖 git/devops/security/bioinfo/crypto 等领域。
- RL 训练侧:frontier lab(OpenAI / Anthropic / Google)被广泛猜测在内部维护着付费购买或内部合成的 terminal RL env 池——但没有任何开源对应物。
"Frontier labs spend millions purchasing RL environments for training terminal agents. But we decided to open source it. Introducing SETA: Scaling Environments for Terminal Agents, the largest open source training RL environments for terminal agents." —— Guohao Li (CAMEL-AI 创始人,X)
这句话点透了 SETA 的真正定位——不是再写一个 benchmark(那是 Terminal-Bench 的工作),而是把 "训练数据 + verifier + 训练 pipeline" 这个完整闭环开源化,让小团队 / 学术界也能跑得起 terminal agent 的 RL 训练。这与笔者前面读过的几个工作可以并排理解:
| 对应关系 | "benchmark"(评测) | "gym / env"(训练) | 关系 |
|---|---|---|---|
| Coding / SWE | SWE-Bench | SWE-Gym / R2E-Gym | SWE-Gym 显式 "train for SWE-Bench" |
| MCP / tool-use | MCP-Atlas (#19) / MCP-Universe | Toolathlon-Gym | Toolathlon-Gym 提供同源训练环境 |
| GUI | OSWorld / AndroidWorld | UI-TARS-2 沙箱 (#17) / ClawGUI (#14) | — |
| Terminal (本篇) | Terminal-Bench 1.0/2.0 | SETA | SETA 任务格式直接兼容 TB harness |
所以 SETA 在 2026 这一波"agent env / gym 大爆发"里的角色,是 terminal 这一象限的 SWE-Gym 等价物。它不是要取代 TB,而是要做 TB 的"上游训练管线"。
2 · SETA = toolkit + env + 训练 workflow 三合一
看 repo 结构最快理解它的边界:camel-ai/seta(代码 + 训练)+ camel-ai/seta-env(任务数据)共构。
2.1 TerminalToolkit:agent 用什么"敲键盘"
SETA 给 agent 的不是裸 bash,而是一套封装好的 TerminalToolkit(docs/terminal_toolkit_design.md),核心 6 个 API:
| API | 作用 |
|---|---|
shell_exec(cmd, block, id) | blocking / non-blocking 命令执行;Docker 后端自动 bash -c 包装 |
shell_write_content_to_file | 直接写文件——绕开 echo 嵌套引号灾难 |
shell_write_to_process | 给已运行的非阻塞 session 喂输入(交互式 REPL / vim / 数据库 shell) |
shell_view(id) | 查看后台 session 当前输出 |
shell_wait(id) | 事件驱动等待(基于"输出流空闲一段稳定时间") |
shell_kill_process(id) | 结束 session |
关键设计点(从 design doc 提炼):
- 每个 non-blocking session 跑独立后台 reader 线程 + thread-safe Queue,捕获实时输出——不会因为主程序阻塞而丢日志。
- "idle detection"代替
sleep:_collect_output_until_idle持续监测 output stream,当连续静默达到稳定阈值才返回——这是 terminal agent 的痛点 #1 解法(你不知道命令什么时候真正"完成")。 - 双后端:local
subprocess.Popen/ Docker exec socket,统一 API。 - session 日志的双轨制:blocking 全部追加进
blocking_commands.log;non-blocking 每个 session 一个session_{id}.lograw interleaved transcript——这对 trajectory 复盘 / reward 调试至关重要。
2.2 NoteToolkit:long-horizon 记忆补丁
blog 显式提到第二组工具,用于"long-horizon task"的外部 scratchpad(因为 LLM context 装不下整个 session log):
create_note(name, content) append_note(name, content) read_note(name) list_note()
对比 #17 UI-TARS-2 的"内部 memory token"路线,SETA 这里走的是显式 external memory——朴素但和 Claude Code / Codex CLI 的工程实践一致。
2.3 任务环境:Terminal-Bench 兼容包(seta-env)
每个 task 是一个独立目录,内含:
<task_id>/ ├── task.yaml # instruction + difficulty + category + tags + timeouts ├── Dockerfile # 完整可复现环境定义 ├── docker-compose.yaml ├── solution.sh # 标准答案(oracle agent 用) ├── run-tests.sh # 运行测试 ├── tests/ # pytest 测试集 └── weights.json # 评分权重
第一行总是 Terminal-Bench Canary String, DO NOT REMOVE + 一个 GUID——这是 TB 的数据污染检测金丝雀,显示 SETA 任务设计完全沿用 TB 的标准格式。
2.4 训练 workflow:AReaL 主线 + rLLM 备线
训练 workflow 在 seta/training/:
tbench_areal_workflow/—— 主线,基于清华+蚂蚁的 AReaL 框架(2505.24298,见 models/#19 综述)。包含完整train.py(33 KB)、eval.py(28 KB)、chat_agent_trace.py、terminal_toolkit.py、配置文件。tbench_rllm_workflow/—— 备线,集成 Agentica 的 rLLM 框架(README 自述 "have not been extensively tested yet")。data_utils/—— 数据下载 + 转 parquet 工具。
3 · 任务设计:400 task 长什么样
3.1 合成 pipeline:两个 LLM agent 接力
blog 描述任务生成 pipeline:
| 阶段 | 角色 | 输出 |
|---|---|---|
| 1. 种子收集 | — | 从 web 内容收集约 1,300 个 Q&A pair |
| 2. Idea Generation Agent | LLM | 把 raw Q&A 转成"详细 task spec" |
| 3. Datapoint Creation Agent | LLM | 输出"complete, executable Terminal-Bench task"(yaml + Dockerfile + tests) |
| 4. 验证 | oracle agent | 用 tb run --agent "oracle" 跑通 → 入库 |
难度分布:blog 自述"most tasks are medium-level",设计动机是"fill the gap between limited terminal capability of small models and difficult terminal-bench tasks"——也就是给小模型铺中间台阶。
3.2 7 大任务类别
| 类别 | 典型场景 |
|---|---|
| software-engineering | 打包安装清单、备份脚本、构建系统 |
| system-administration | 用户/组管理、文件权限、SSH key 迁移 |
| security | cert/key 操作、cryptography 题 |
| debugging | 修坏的脚本 / Dockerfile |
| systems-programming | 低层 C / 系统调用 |
| networking | iptables / curl / DNS / socket |
| devops | CI/CD / docker compose / 容器编排 |
3.3 三个真实 task 例子(实地从 repo 抽出)
例 1 · Dataset/0/task.yaml — software-engineering / medium / 15 min
You need to create a reproducible package inventory from the current Ubuntu system and prepare it for bulk installation on another system. Generate a complete list of all currently installed packages (excluding deinstalled ones), save it to packages.txt in $HOME, and create install_packages.sh that can reinstall those packages on a fresh Ubuntu system. The script should handle install errors gracefully and provide a summary of successful/failed installs. category: software-engineering parser_name: pytest max_agent_timeout_sec: 360 expert_time_estimate_min: 15 junior_time_estimate_min: 30
例 2 · Dataset/100/task.yaml — system-administration / medium / 20 min
Rename user account "olduser" → "newuser" while preserving UID/GID, moving /home, updating ownership across filesystem, fixing all config files that contain hardcoded references to the old username, preserving SSH key functionality, and verifying that the new user can authenticate. The old username should no longer exist. category: system-administration tags: [linux, user-management, system-administration] max_agent_timeout_sec: 600
例 3 · Dataset/500/task.yaml — software-engineering / medium / 10 min
Create a system backup script /workspace/backup.sh that: - creates compressed tar archive (backup.tar.gz) of /workspace/system_root/ - EXCLUDES /dev /proc /sys /tmp /media /mnt /lost+found and the archive itself - INCLUDES /home /etc /var /usr - uses gzip compression and preserves directory structure Validation: archive must contain all INCLUDE_MARKER files and none of the EXCLUDE_MARKER files. tags: [bash, tar, linux, backup, filesystem]
这三例集中体现了 SETA 任务的风格特征:多步骤、有副作用、需要 robust 错误处理、unit-test 可验证。和 Terminal-Bench 2.0 那种"play-zork / pwntools / bioinfo pipeline"的真实任务相比,SETA 任务更"标准化"——但这正是 RL 训练需要的:reward signal 干净、能批量并行、Docker 化彻底。
camel-ai/seta-env/Dataset/ 当前可见目录数已经 ≥ 1000(GitHub API 第一页返回 1000),另有 Harbor-Dataset/ 同样规模。Blog 自述"400 with continuous scaling"是 RLVR-ready 的初始批,实际仓库已超出。
4 · 训练 recipe:AReaL GRPO + RLVR 配方拆解
4.1 框架选择:AReaL(主线)+ rLLM(备线)
主线训练在 AReaL 上完成(training/tbench_areal_workflow/train.py,33 KB)。AReaL 是完全异步的 RL 框架——rollout server (SGLang) 与 trainer 解耦,policy lag 可控(配置里 max_head_offpolicyness: 2)。这与 SETA 这种"任务可能跑 6 分钟、不同任务方差极大"的场景天然契合。rLLM workflow 提供小规模可读 demo。
4.2 实证 hyperparam(从 config.yaml 直接读出)
| 参数 | 取值 | 解读 |
|---|---|---|
| base model | Qwen/Qwen3-8B | 非 thinking 版 |
| total epochs | 10 | 非常短——260 任务 × 10 epoch ≈ 2600 步 |
| n_trajs | 2 | 每个 task 采 2 条轨迹 |
| max_tokens / trajectory | 32,768 | 长 horizon |
| max_concurrent_rollouts | 64 | 并行 64 个 Docker 环境 |
| algorithm | GRPO(experiment_name 显示) | group_size=1,实际更像单 traj policy gradient + group baseline |
| lr | 1.70e-5 | constant schedule |
| weight_decay | 0.017 | |
| eps_clip | 0.4 | 较大,允许更激进 update |
| use_decoupled_loss | true | off-policy 修正 |
| behav_imp_weight_cap | 5.0 | importance weight clip |
| kl_ctl | 0.0 | ⚠️ 完全无 KL 约束 |
| reward_scaling | 10.0 | 原始 reward × 10 |
| reward_bias | -0.5 | 把 [0,1] 平移到 [-0.5, +0.5] |
| cluster | 1 node × 8 GPU(default 8×H100 config 存在) | — |
| allocation_mode | sglang:d4p1t1+d4p1t1 | 4 GPU 推理 + 4 GPU 训练 |
| backend | FSDP |
4.3 Reward 设计(RLVR 核心)
blog 明文:
"We use unit test pass ratio for each rollout as reward, with additional bonus reward 1 assigned to fully succeeded rollout. The reward value could be larger than 1 since we add a bonus for full completion trajectories."
非常朴素的 RLVR 配方:
- 没有 process reward,没有 LLM-judge,纯 unit-test 通过率(verifiable)。
- "全过 +1 bonus"避开 partial credit gaming——避免 agent 学会"先过几个简单 test 就摆烂"。
- R ∈ [0, 2],再经
reward_scaling=10+reward_bias=-0.5平移到 advantage 较友好的区间。 - KL=0 + decoupled loss + clip cap 5 这个组合,意味着放手让模型偏离 base——但靠 importance weight 截断防爆。
4.4 训练基础设施(从 README 推断)
- Docker per task,且必须为 address pool 用尽 准备 daemon.json 自定义 subnet(README 单列一章)——侧面证明并行规模可观。
- blog 提到 "Remote Environment Manager" 通过 TCP 编排远程主机上的容器生命周期,使用 "AWS server fleet" 与 "256+ containers concurrently"。
- 提供 sglang server 与 trainer 分离的部署模式(
train_remote_rollout.py),应对单机不够的情况。 - GPU 总小时 未公开。
4.5 260 / 400 的取舍
blog 直接说 "400 terminal tasks ..., 260 of which have been used for RLVR finetuning"。Notion 报告(持续更新中)未给出明确剔除标准——合理推测:剩下 140 是 oracle 验证不稳定 / Docker 资源占用过大 / 难度偏离目标分布的部分。这部分笔者未在 repo 中找到显式 split 列表。
5 · 实证:TB2.0 #1 (46.5%) 与 Qwen3-8B 微调收益
5.1 双线结果:大模型 + CAMEL agent 框架
第一个数字与 RL 训练无关,而是"frontier model + CAMEL agent 框架"在 Terminal-Bench 上的成绩——这是 CAMEL 团队展示 agent infra 价值的数字:
| Setting | TB 版本 | 分数 | 排名 | 领先 |
|---|---|---|---|---|
| Claude Sonnet 4.5 + CAMEL terminal agent | 2.0(89 tasks) | 46.5% | #1 | +3 pp(vs #2) |
| GPT-4.1 + CAMEL terminal agent | 1.0 | 35.0% | #1 | +4.7 pp(vs #2) |
分领域表现(TB 2.0,from blog):
| Domain | Pass rate |
|---|---|
| Git 操作 | 80% (4/5) |
| DevOps workflows | 100% (3/3) |
| Code security | 100% (3/3) |
| Cryptography | 33% (1/3) |
| Bioinformatics | 0% (0/3) |
典型的"泛型工程任务很强,垂直领域知识题崩盘"——bioinformatics 0/3 暴露了纯 prompting + 工程 toolkit 的天花板。
5.2 Qwen3-8B 主战场:RLVR 真的有用吗
| Metric | Before RLVR | After RLVR | Δ |
|---|---|---|---|
| TB 2.0 task 通过(out of 89) | 3 tasks(3.4%) | 3 + 4 = 7 tasks | +4 task |
| Unit-test pass ratio(per rollout 平均) | 0.38 | 0.45 | +20.2% relative |
这组数字老实但不闪亮:
- 基线 3.4% 本来就在地板上,绝对增量 4 task 听上去微小;但 unit-test pass ratio +20.2% 是个像样的训练信号。
- 说明在 Qwen3-8B 这个 scale 上,纯 RLVR + 260 task + 10 epoch 还不足以让小模型"突变"——它能学,但还远不够替代 frontier。
- 但这同时也是 SETA 的 honest 之处:不挑樱桃,直接报 89 task 上的实测。
6 · 🔍 开源现状清点(repo 实地走查)
这是本篇最关键的一节——直接决定 SETA 能不能被复用。截至 2026-05,走查结果如下:
6.1 仓库清单 & license
| 资产 | 位置 | License | 规模 | 状态 |
|---|---|---|---|---|
| SETA 代码主仓 | camel-ai/seta | Apache-2.0 | ~9 MB,104★ | ✓ 全开 |
| SETA 任务数据仓 | camel-ai/seta-env | Apache-2.0 | ~22 MB,134★ | ✓ 全开 |
| HF dataset | camel-ai/seta-env | Apache-2.0 | 10.9 MB(预览) | ✓ 月下载 735 |
| 训练后模型 | camel-ai/seta-rl-qwen3-8b | (继承 Qwen3 协议) | Qwen3-8B BF16 | ✓ 权重已放 |
| 技术报告 | Notion(eigent-ai) | — | 持续更新 | ✓ 可读 |
| arXiv paper | — | — | — | ✗ 无,只挂 BibTeX |
6.2 camel-ai/seta 内容剖面
seta/ ├── dataset/ # 任务数据(submodule + 转换) │ ├── tbench-tasks/ (symlink) # 终端 bench 原任务 │ └── tbench-tasks_convert/ # parquet 转换后版 ├── docs/terminal_toolkit_design.md # 详细工具设计文档 ├── evaluation/ │ ├── terminal_bench_eval/ # 跑 TB 1.0 / TB 2.0 官方评测 │ └── terminal_bench_run/ # single-agent / workforce 试跑 ├── training/ │ ├── tbench_areal_workflow/ # 主线 RL 训练(AReaL) │ │ ├── train.py (33 KB) │ │ ├── eval.py (28 KB) │ │ ├── terminal_toolkit.py │ │ ├── chat_agent_trace.py │ │ ├── prompts.py │ │ └── configs/ │ │ ├── config_8xh100-qwen3-8b.yaml │ │ └── config_test_tasks_qwen3-8b_synthdata_1-400.yaml │ ├── tbench_rllm_workflow/ # rLLM 备线(README 自述未充分测试) │ └── data_utils/ # 下载 / 转 parquet 工具 ├── external/ # git submodule ├── setup.sh └── LICENSE (Apache-2.0)
6.3 自托管要点 / 复现门槛
- 可复现性 ≈ 中上:训练脚本、config、reward 设计、prompts 全部开源。和 #18 Agent World Model(全开源)相当,显著优于 #17 UI-TARS-2(主线权重 / 沙箱 / 训练全闭)。
- 硬件门槛:config 默认 1 node × 8 H100,sglang 分配 d4p1t1 + 训练 d4p1t1。要复现 GRPO 训练你大约需要 8×H100(80 GB),并预留充足 docker 网络池子(README 专门提了 address pool drain 故障)。
- 非琐碎的依赖:依赖 AReaL(也开源,清华+蚂蚁)、SGLang、Terminal-Bench harness、Docker。整个栈是开源的,但 first-time setup 不轻松。
- RL 训好的权重直接可下:
camel-ai/seta-rl-qwen3-8b是 BF16 完整 8B,可直接 inference 看效果——不必跑训练。 - 评测复现:
evaluation/terminal_bench_eval/run_tb2.sh一键跑 TB 2.0,只需要替换tbench_camel_agent.py的 API key。
6.4 开源度对比:同生态三件套
| 项目 | 域 | 训练 code | 数据 | 权重 | arXiv | License |
|---|---|---|---|---|---|---|
| SETA(本篇) | Terminal | ✓ AReaL+rLLM | ✓ 400+,持续增 | ✓ Qwen3-8B | 无,Notion | Apache-2.0 |
| Toolathlon-Gym | MCP | ✓ | ✓ | 部分 | 无 | Apache-2.0 |
| R2E-Gym | SWE | ✓ | ✓ | ✓ | 有 | — |
| Agent World Model(#18) | 多任务合成 | ✓ | ✓ 1K env / 35K tools | ✓ 4/8/14B | 2602.10090 | — |
| AgentGym-RL(#6) | 5 类多 env | ✓ | ✓ 27 task | 部分 | 2509.08755 | — |
| UI-TARS-2(#17) | GUI | ✗ 主线闭 | ✗ | ✗ 主线 230B 闭 | 2509.02544 | — |
7 · 与同类工作横排
| 维度 | SETA | Toolathlon-Gym | R2E-Gym | AgentGym-RL(#6) | Terminal-Bench 2.0 |
|---|---|---|---|---|---|
| 定位 | Terminal 训练 env | MCP 训练 env | SWE 训练 env | 通用多 env 训练框架 | Terminal 评测 |
| 对应评测 | TB 1.0 / 2.0 | MCP-Atlas / Universe | SWE-Bench Verified | 27 内置 env | — |
| 任务数 | 400+(目标持续增) | — | — | 27 task | 89 (v2) |
| 任务生成 | LLM 自动合成(双 agent 流水线) | — | 真实 GitHub issue 来源 | 多源 | 人工 + 社区贡献 |
| 动作空间 | TerminalToolkit (6 tool)+ NoteToolkit (4) | MCP-tool 调用 | code patch + bash | 每 env 不同 | bash |
| Reward | unit-test pass ratio + 全过 bonus | — | 测试通过 | env-specific | 测试通过(评测) |
| RL 框架 | AReaL(主)+ rLLM | — | — | 自有 ScalingInter-RL | — |
| 训练模型 | Qwen3-8B | — | Qwen / Llama 多 | 多 | — |
| License | Apache-2.0 | Apache-2.0 | — | — | — |
8 · SETA + Terminal-Bench 的训→评闭环
seta-rl-qwen3-8b;最后用 Terminal-Bench 2.0 评测,失败案例回流到种子池(虚线红色 = feedback)。这与 SWE-Gym → SWE-Bench 的范式同构。9 · 局限与个人 take
9.1 老实的局限
- 400 task 还不够。对比 R2E-Gym 上千、Agent World Model 1,000 env / 35,062 tool 的规模,SETA 的初始 batch 偏小。好消息是"continuous scaling"且 repo 里已经能看到 1000+ task 目录——但 RLVR 实际只用了 260。
- 合成任务的分布偏向 "medium"。这恰恰是有意为之(填中间台阶),但意味着 SETA 训练完的小模型对 TB2.0 里的 bioinfo / cryptography 这种长尾不会有结构性突破——这与"+4 task / +20.2% pass ratio"的温和提升一致。
- 主线 RL 跑在 Qwen3-8B,缺更大 scale。没有 14B / 32B / MoE 的对照实验,无法判断 RLVR 配方在大模型上 saturate 还是 keep scaling。
- 无 arXiv,只有 Notion 报告 + blog。技术细节(reward 公式、最终 ablation 表)需要交叉读 blog + config + train.py 才能拼齐——这篇笔记本身就是为弥补这点而写。
- 对 CAMEL agent 框架的依赖。
tbench_camel_agent.py直接绑定 CAMEL 的 ChatAgent / Workforce,迁移到其他 agent 架构(LangGraph / OpenHands / 自研)需要小改写。但好在 toolkit 接口标准、reward 函数干净——并不"vendor-locked"。 - KL=0 的训练配方比较激进。在小数据(260 task × 2 traj × 10 epoch ≈ 5,200 trajectories)上+无 KL 锚定,理论上有模式坍缩到几个高 reward 命令套路的风险——blog 没报告 generation diversity 指标。
9.2 个人 take
- 战略价值 > 工程数字。SETA 的"+4 task on TB 2.0"是个温和数字,但项目真正的价值是把 frontier lab 的"软资产"开源化——任何团队现在都能用 8×H100 复现一个 terminal RL 训练管线,这对学术界和小厂是巨大的杠杆。
- 双 agent 合成 pipeline 是核心 IP。"Idea Generation + Datapoint Creation"这种从 1,300 个 Q&A 种子合成可执行 Docker task的能力,本身比合成出来的 400 task 更有复用价值——这与 #18 Agent World Model 的 code-driven env 生成思路相通,但 SETA 走的是 "Docker + pytest"更工程化的路线。
- 三件套生态的信号。CAMEL/Eigent 在 2026 初连发 SETA(terminal)+ Toolathlon-Gym(MCP)+(预计的 GUI gym),形成"训练 env 矩阵"打法。这与"先做模型再补 env"的 frontier lab 路径正好相反——是"先把 env 做厚,模型谁来训都行"的赋能策略。 SETA 的 Qwen3-8B 训练某种意义上只是"用例 demo",真正的产品是 env 本身。
- 对照 #17 UI-TARS-2 的反讽。UI-TARS-2 是 ByteDance 把 230B MoE + 千机沙箱全闭;SETA 是 CAMEL 把 8×H100 跑得动的训练全栈全开。两者代表了 agent infra 在 2026 的两条路:闭源垂直巨型 vs 开源水平赋能。SETA 这一手开源,大概率会让"frontier lab 花百万买 terminal RL env"这条护城河迅速干涸。
- 意外发现: HF dataset 卡片只显示 3 行,但实际 GitHub
seta-env/Dataset/已经有 1000+ 任务目录,Harbor-Dataset/又有 1000+。"400"是 blog 时点的 RLVR-ready 子集,实际开源池子已远超此数——这是用户实际复用时容易忽略的 silver lining。
Shen, Rainton, Aliev, Awelkair, Ma, Huang, Mao, Fan, Torr, Ghanem, Hu, Thakker, Li · CAMEL-AI + Eigent.AI + SambaNova + KAUST + Imperial / Stanford / Oxford
CAMEL Blog · Notion Tech Report · GitHub seta · GitHub seta-env · HF dataset · HF model
- #06 AgentGym-RL — 多 env 训练框架,概念上更宽,但 env 池子更小(27)
- #14 ClawGUI — Android GUI agent 全栈,开源度可比但域不同
- #16 桌面 GUI/CLI Agent 生态调研 — 把 SETA 放到 desktop/CLI 大图里
- #17 UI-TARS-2 — 闭源版本的对位:GUI 域 / 千机闭沙箱
- #18 Agent World Model — 同期"1K env"全合成,但 code-driven 而非 Docker
- #19 MCP-Atlas — Toolathlon-Gym 训练对应的评测;SETA / TB 是 terminal 域的同构