核心要素
可以把 Agent 理解为一份”岗位说明书”:
Agent 本身不执行任务,它只是配置。真正执行任务的是绑定该 Agent 的 Session。
字段参考
model
model 指定 Agent 使用的模型。可先调用 列出模型 查询当前账户可用值,再在创建或更新 Agent 时传入模型 id。
tools
tools 是工具对象数组。内置工具通过 agent_toolset_20260401 配置,并使用 enabled_tools 数组按需开启原子工具:
enabled_tools 值:
自定义 client-side 工具与权限策略参见 Agent 工具配置。
管理 Agent
完整的 CRUD 接口请参考 API Reference / Agents。下面是常用工作流示例。创建
version 从 1 开始。
查询
更新
更新 Agent 必须携带当前version,详见下文「版本管理」。
version 自动 +1。
版本管理
Agent 采用乐观并发控制(OCC)机制:- 创建时
version从1开始 - 每次成功更新,
version自动 +1 - 更新请求必须携带当前
version。两种失败情形:- 缺少
version字段 — 返回 400invalid_request_error("Field 'version' is required.") version存在但与服务端不一致 — 返回 409conflict_error
- 缺少
处理 409 冲突
当持有的版本已过期时:GET最新 Agent 拿到当前version- 合并自己的变更
- 用新
version重新POST
最佳实践
- 命名规范 — 用
团队-用途格式,如backend-code-review、frontend-test-gen - 提示词精炼 —
system字段写清角色、输出格式、限制条件 - 最小工具集 — 只配置任务所需的工具,减少误操作风险
- 善用 metadata — 用标签分类管理,方便后续筛选和审计
- 生产环境锁版本 — 创建 Session 时用
{"id": ..., "version": ...}形式锁定 Agent 版本,避免新版本影响线上行为
常见问题
Q:更新 Agent 后,正在运行的 Session 会受影响吗? 不会。Session 在创建时绑定了 Agent 的特定版本,后续修改不影响已存在的 Session。 Q:tools 数组为空可以吗?
可以。不带工具的 Agent 只能进行纯文本对话,无法执行任何操作。
Q:name 字段有长度限制吗?
建议控制在 64 字符以内,使用小写字母、数字和短横线。
Q:如何回滚到旧版本的 Agent?
目前不支持自动回滚。建议在更新前记录旧配置,需要时手动 POST 回旧配置(携带最新 version)。
下一步
云端环境配置
配置 Agent 运行的基础设施。
启动 Session
用 Agent 创建工作会话。
Agent 工具配置
工具类型与权限策略详解。
Agents API
完整的 Agents CRUD 接口。