容器参考

更新时间:
复制为 MD 格式

Agent Session 运行在隔离的沙箱容器中。本文列出容器的操作系统、预装工具、资源限制等参考信息。

操作系统

项目

发行版

Ubuntu 22.04 LTS (Jammy)

架构

x86_64 (amd64)

内核

Linux 5.10.134(LIFSEA 容器引擎,基于 Linux 5.10 LTS)

预装工具

系统工具

工具

版本

说明

git

2.34+

版本控制

curl

7.81+

HTTP 客户端

wget

1.21+

文件下载

jq

1.6+

JSON 处理

vim

8.2+

文本编辑器

unzip / tar

系统版

压缩/解压

ssh

OpenSSH 8.9+

SSH 客户端

make

4.3+

构建工具

语言运行时

语言

版本

包管理器

Python

3.12.x

pip 24+

Node.js

20.x LTS

npm 10+

Go

1.22.x

go mod

包管理

工具

说明

apt

系统包管理

pip

Python 包

npm

Node.js 包

工作目录

/app

Agent 命令默认 cwd 为 /app。注意 $HOME 指向 /data(不同目录),~/ 展开后不在 cwd 下。上传的文件挂载路径见 Files 文档。

额外软件安装

通过 Environment 配置的 packages 字段安装额外依赖:

{
  "config": {
    "packages": {
      "apt": ["postgresql-client", "redis-tools", "ffmpeg"]
    }
  }
}

容器启动时会根据 apt/pip/npm 键分别安装对应的系统包、Python 包和 Node.js 包。

也可在 Agent system prompt 中指示 Agent 按需安装其他依赖。

网络配置

网络访问能力由 Environment 的 config.networking 字段控制(必须为对象格式):

类型

说明

unrestricted

容器可访问公网(默认)

limited

仅允许访问已知安全的公共服务和包管理器

allowed_hosts

仅允许访问指定主机名(白名单)

配置示例:

{
  "config": {
    "networking": {
      "type": "allowed_hosts",
      "allowed_hosts": [
        "api.github.com",
        "registry.npmjs.org"
      ]
    }
  }
}

详细字段说明请参见 云端环境 - 网络策略

资源限制

资源

默认限制

说明

CPU

4 vCPU

分配的处理器核心数

内存

8 GB

可用 RAM

磁盘

25 GB

工作区存储空间(overlay 文件系统,约 18 GB 可用)

执行时长

30 分钟

单次 Turn 最大执行时间

超出内存或磁盘限制时,进程会被 OOM Kill 或写入失败。请在 system prompt 中提醒 Agent 注意资源用量。

文件持久化

  • 同一 Session 内,文件在 Turn 之间保持不变

  • Session 结束(archived/deleted)后,容器及其文件销毁

  • 需要长期保存的文件,应通过 Files API 上传到平台存储

执行用户

容器内所有命令以 root 用户身份执行。whoami 返回 root,但 USER 环境变量未注入(为空字符串)。

因此 Agent 可以直接安装系统包、写入任意系统目录,无需 sudo。如对此有限制需求,请在 Agent 的系统提示词中明确说明。

环境变量

容器中预设的环境变量:

变量

说明

HOME

/data

用户主目录(~/ 展开到这里,与 cwd /app 不同)

USER

(未设置,为空字符串)

注:USER 环境变量未注入;获取实际身份请用 whoami,返回 root

SHELL

/bin/bash

默认 Shell

LANG

en_US.UTF-8

区域设置

Vault 中的凭证会以环境变量形式注入(需在 Session 创建时关联 Vault)。

相关文档