TerminalWorld
收藏资源简介:
TerminalWorld 是一个用于评估 AI 代理在真实世界终端和命令行任务上表现的基准数据集。该数据集包含 1,530 个基于终端的任务,这些任务从公开可用的终端记录中逆向工程而来,涵盖数据处理、系统管理、网络、安全、版本控制、容器与编排、调试与测试、环境设置和科学计算等多个领域。每个任务包括自然语言指令、参考解决方案、基于状态的评估测试和可复现的 Docker 执行环境。数据集分为三个配置:完整版(1,530 个任务)、已验证版(200 个经过人工验证的任务)和样本版(20 个随机选取的任务)。数据格式为 JSONL,包含任务 ID、指令、工件路径、是否需要 Docker、终端领域类别等字段。数据集适用于终端和编码代理的评估、比较以及软件工程和系统管理领域的研究,但不适用于训练通用自主代理或评估需要认证凭证的工作流。数据集采用 CC BY-NC 4.0 许可,仅供非商业学术研究使用。
TerminalWorld is a benchmark dataset for evaluating the performance of AI agents on real-world terminal and command-line tasks. It contains 1,530 terminal-based tasks, reverse-engineered from publicly available terminal logs, covering various domains such as data processing, system administration, networking, security, version control, containers and orchestration, debugging and testing, environment setup, and scientific computing. Each task includes a natural language instruction, reference solution, state-based evaluation test, and a reproducible Docker execution environment. The dataset is divided into three configurations: the full version (1,530 tasks), the verified version (200 manually verified tasks), and the sample version (20 randomly selected tasks). The data format is JSONL, containing fields such as task ID, instruction, artifact path, whether Docker is required, and terminal domain category. The dataset is suitable for evaluating and comparing terminal and coding agents, as well as research in software engineering and system administration, but is not intended for training general autonomous agents or evaluating workflows requiring authentication credentials. It is licensed under CC BY-NC 4.0 and is for non-commercial academic research use only.
TerminalWorld 数据集概述
基本信息
- 数据集名称: TerminalWorld
- 发布机构: EuniAI
- 许可协议: CC BY-NC 4.0(非商业学术用途)
- 语言: 英文
- 任务类别: 文本生成、强化学习、问答
- 数据集规模: 1K < n < 10K
数据集简介
TerminalWorld 是一个用于评估 AI 智能体在真实终端和命令行任务上表现的基准数据集。包含从公开终端录制中反向工程得到的 1,530 个终端任务,覆盖数据处理、系统管理、网络、安全、版本控制、容器与编排、调试与测试、环境设置及科学计算等多个领域。
每个任务包含自然语言指令、标准答案、基于状态的评估测试以及可复现的 Docker 执行环境。
数据集变体
数据集提供三种配置:
| 配置 | 任务数 | 说明 |
|---|---|---|
full |
1,530 | 数据管道生成的所有 TerminalWorld 任务 |
verified |
200 | 经人工验证的子集,包含指令清晰度、工件完整性、答案可回放性和状态测试有效性审核 |
sample |
20 | 从 verified 中随机抽取的小样本,用于快速检查与开发 |
预期用途
- 在可复现的本地环境中评估终端与编码智能体
- 衡量 CLI 可靠性、环境复现、标准答案回放及基于状态的任务评估
- 比较不同智能体架构在真实终端工作流上的表现
- 针对软件工程和系统管理 AI 智能体的学术研究
建议使用 verified 子集作为基准测试的主要评估子集。
非预期用途
- 训练用于不受限制真实系统操作的通用自主智能体
- 安全敏感的命令执行或需凭据的云端管理
- 评估 GUI/TUI 密集型操作或需身份认证的工作流
- 衡量所有开发者场景下的通用软件工程能力
数据格式
每个任务以 JSONL 记录存储,包含以下字段:
| 字段 | 类型 | 描述 |
|---|---|---|
task_id |
string | 唯一任务标识符(如 "tw_100135") |
instruction |
string | 自然语言任务描述 |
artifact_path |
string | 压缩任务工件的相对路径 |
requires_docker |
boolean | 任务是否需要 Docker |
terminal_domain |
string | 任务类别(如数据分析、版本控制、安全) |
source_type |
string | 源材料来源 |
pii_status |
string | 个人身份信息处理状态 |
license |
string | 数据集许可 |
工件格式
每个任务工件 artifacts/{task_id}.tar.gz 包含以下结构:
{task_id}/ ├── task.toml # 任务元数据与配置 ├── instruction.md # 自然语言指令 ├── solution/ # 标准答案脚本 ├── tests/ # 基于状态的评估测试 └── environment/ # Docker 构建上下文(Dockerfile、资源文件)
数据收集与处理流程
- 公开终端录制收集:从公开来源收集终端会话录制
- 预处理与过滤:清洗、去重并过滤合适的录制
- 任务意图推断:从每个录制中推断预期任务与目标
- 标准答案提取:提取成功的命令序列作为标准答案
- 执行环境复现:构建 Docker 环境以复现原始执行上下文
- 状态测试生成:生成自动化测试以验证任务完成情况
- 任务优化:迭代优化任务的清晰度、可复现性与评估质量
- 人工验证(仅
verified子集):依据验证协议进行人工审核
人工验证协议
verified 子集中的 200 个任务经人工审核,包括:
- 指令清晰度:指令无歧义且正确描述预期行为
- 工件完整性:所有必需文件存在且有效
- 答案可回放性:标准答案在提供环境中成功执行并产生预期输出
- 状态测试有效性:自动化状态测试能正确区分任务完成成功与失败
隐私与敏感信息处理
数据构建流程包含过滤与清理步骤,去除可识别的个人信息、凭据、令牌、私有路径、邮箱、用户名、主机名、API 密钥等敏感字符串。发布的工件不包含原始终端录制或个人身份级别的元数据。但由于源材料来自公开的人类终端操作,无法完全消除残留敏感信息风险。
局限性与偏差
TerminalWorld 专注于从公开终端录制反向工程得到的任务,可能低估:
- 不常公开分享的工作流
- 涉及私有企业基础设施的任务
- GUI/TUI 密集型操作
- 长期运行的云部署
- 需要身份认证的工作流
数据集继承自公开终端录制平台的选择偏差,发布终端录制的用户可能在专业能力、工具偏好、操作系统、语言生态系统和分享意愿上与更广泛的开发者群体存在差异。




