File 对象
上传、查询和列表接口都会返回 File 对象。| 字段 | 类型 | 说明 |
|---|---|---|
file_id | string | File ID,前缀为 file_ |
filename | string | 存储后的文件名 |
size_bytes | integer | 文件大小,单位 byte |
mime_type | string | 上传时提供或根据文件名检测出的 MIME type |
purpose | string | 文件用途,见 File purpose |
status | string | 文件状态,见 File status |
metadata | JSON value | 上传时传入的 metadata JSON;省略时为 {} |
created_at | string | UTC 创建时间,RFC 3339 格式 |
updated_at | string | UTC 更新时间;与 created_at 不同时返回 |
session_id | string | 文件关联 Session 时返回 |
File purpose
| 值 | 说明 |
|---|---|
user_upload | 用户上传并供后续使用的文件 |
tool_output | 工具生成的文件 |
skill_output | Skill 生成的文件 |
session_resource | 作为 Session resource 挂载的文件 |
agent_output | Agent 生成的输出文件 |
File status
| 值 | 说明 |
|---|---|
uploading | 文件记录已创建,内容上传中 |
ready | 文件内容可用 |
error | 文件记录创建后上传失败 |
deleted | 文件已删除;只有列表接口显式包含 deleted 文件时才会返回 |
File content link
GET /v1/files/{file_id}/content 返回该结构。
| 字段 | 类型 | 说明 |
|---|---|---|
url | string | 预签名下载 URL |
expires_at | string | URL 的 UTC 过期时间,RFC 3339 格式 |
上传表单字段
POST /v1/files 使用 multipart/form-data。
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
file | file | 是 | 文本类文件内容 |
name | string | 否 | 存储文件名。不传时使用上传文件名。服务端清理后长度必须为 1-255 byte,且不能是 . 或 .. |
purpose | string | 否 | 默认 user_upload,见 File purpose |
metadata | JSON string | 否 | 作为表单字段传入的合法 JSON。原始长度最大 8 KB,省略时为 {} |
支持上传的文件类型
上传接口只接受文本类文件。| 类别 | 支持的值 |
|---|---|
| MIME type | 任意 text/* MIME type,以及 application/json、application/xml、application/javascript、application/x-yaml、application/x-toml |
| 文件扩展名 | .txt、.md、.csv、.json、.xml、.yaml、.yml、.toml、.ini、.conf、.cfg、.env、.log、.html、.htm、.css、.scss、.less、.js、.jsx、.ts、.tsx、.vue、.svelte、.py、.go、.rs、.java、.kt、.scala、.c、.cpp、.cc、.h、.hpp、.rb、.php、.swift、.r、.lua、.pl、.sh、.bash、.zsh、.fish、.ps1、.sql、.graphql、.gql、.proto、.dockerfile、.makefile、.gitignore、.editorconfig、.eslintrc、.prettierrc、.tex、.rst、.adoc、.org、.svg |
| 无扩展名文件名 | dockerfile、makefile、gemfile、rakefile、procfile、vagrantfile、justfile、brewfile |
相关
附加与下载文件
上传文件为 Agent 提供上下文,并下载 Agent 产出的文件。