文件 API 让你向 Session 提供文件上下文——代码仓库、配置文件、参考文档等。Agent 可以读取这些文件来理解任务背景。
仅
上传多个文件:
上传后,通过 Resources API 将文件挂载到指定 Session:
请求体(使用
批量挂载多个文件(一次请求传入多个资源):
仅
其他类型请求
支持按
Q:上传的文件存储多久? A:文件与所属资源(Agent/Session)生命周期一致。Session 删除后相关文件会被清理。
Q:能否直接在创建 Session 时附带文件? A:当前需分步操作:先上传、再挂载。后续版本可能支持一步完成。
Q:为什么 user_upload 类型不可下载? A:出于安全考虑,用户上传的原始文件仅供 Agent 内部使用。如需导出结果,Agent 会以
核心流程
POST /files — 上传文件二进制内容并指定 purpose。 POST /sessions/{session_id}/resources — 把已上传文件挂载到 Session。 Session 运行期间 Agent 读取文件内容,完成任务。
上传文件
参数
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
file | binary | 是 | 文件内容 |
purpose | string | 是 | 文件用途(见下表) |
filename | string | 否 | 自定义文件名 |
purpose 字段说明
| 值 | 含义 | 谁创建 | 可下载 |
|---|---|---|---|
user_upload | 用户上传的输入文件 | 用户 | 否 |
tool_output | 工具执行产出的文件 | Agent/工具 | 是 |
skill_output | Skill 执行产出的文件 | Agent/Skill | 是 |
session_resource | Session 级别的资源文件 | 用户/系统 | 否 |
agent_output | Agent 最终输出文件 | Agent | 否 |
tool_output 和 skill_output 可通过 /content 端点下载。其他类型仅供 Agent 内部使用。
curl 上传示例
响应:
挂载到 Session
上传后,通过 Resources API 将文件挂载到指定 Session:
resources 数组包装,单次可批量挂载):
curl 挂载示例
下载文件
仅 tool_output 和 skill_output 类型的文件可下载:
/content 端点将返回 403 Forbidden。
查看文件信息
列出文件
purpose 过滤。
完整工作流示例
常见问题
Q:上传的文件存储多久? A:文件与所属资源(Agent/Session)生命周期一致。Session 删除后相关文件会被清理。
Q:能否直接在创建 Session 时附带文件? A:当前需分步操作:先上传、再挂载。后续版本可能支持一步完成。
Q:为什么 user_upload 类型不可下载? A:出于安全考虑,用户上传的原始文件仅供 Agent 内部使用。如需导出结果,Agent 会以 tool_output 或 skill_output 类型产出新文件。
Q:支持哪些文件格式? A:无格式限制,任意二进制文件均可上传。Agent 对文本类文件(代码、配置、文档)的理解效果最佳。