/harness/cronjobs,基于 AgentKit CLI 0.54.0 打包部署的 Harness Runtime
启用条件
这些接口仅在 AgentKit CLI 部署的 Harness 启用cronjob 后存在。直接启动 VeADK 基础服务不会提供这组接口,未启用定时任务的 Harness 部署也不会挂载这些路径
当前支持服务鉴权的 Harness,例如 Runtime API Key 认证,并要求服务能直接使用模型凭证。共享 OAuth 部署依赖交互用户的委托身份,不支持后台定时任务
准备已有 TOS 桶,在包含 harness.yaml 的项目目录启用并部署
harness.yaml
发起请求
HARNESS_URL 使用部署返回的 Runtime 基础地址,HARNESS_TOKEN 使用该服务要求的访问凭证。请求不使用模型 API Key 作为接口认证
cronjob_id,作为后续请求的 job_id 路径参数。执行开始后,通过任务的 active.run_id、last_run.run_id 或执行历史获取 run_id
调度与执行行为
每次执行使用独立会话。任务覆盖配置使用本组创建接口中的
harness 结构,未覆盖字段继承已部署智能体;TOS 保存最终输出,因此读取历史不依赖本地会话是否还存在
外部操作不保证只发生一次。取消或中断也无法撤销工具已经完成的操作,恢复前应核对结果
结果与分页
GET /harness/cronjobs 返回任务列表,默认每页 100 条;GET /harness/cronjobs/{job_id}/runs 返回执行历史,默认每页 20 条。两者的 limit 范围均为 1–1000,将返回的 next_cursor 原样用于后续请求,空字符串表示没有下一页
执行状态包括 queued、running、succeeded、failed、cancelled、skipped 和 interrupted。执行历史按计划触发时间从新到旧排列;刚完成但尚未保存到历史的结果,可先通过任务详情的 active 或单次执行结果接口读取
暂停任务会阻止未来触发并取消排队执行,不会终止正在运行的执行。取消接口可以请求停止一次运行,默认配置下通常约 20 秒内检查取消请求。调度状态接口仅反映处理本次请求的副本,不是整个集群的汇总状态
创建幂等性
创建接口接受idempotency_key。相同键和相同请求返回原任务,HTTP 状态仍为 201;相同键对应不同输入返回 422。没有幂等键时,每次请求都会创建新任务,重试创建请求时应重复使用原键