AI 任务调度器 — 用户手册 | YoBench
如何在 YoBench 中使用「AI Task Scheduler」:基于 cron 的 AI 运行、危险计划的审批流程、实时时间线、工具白名单与完整运行历史。
「AI Task Scheduler」模块的用途
AI Task Scheduler 让 AI 助手按计划运行。您定义提示词、选择提供商与上下文、附带可选工具集,并告诉调度器何时运行 — 每分钟、每小时、每天、每周或每月。助手自主执行;若构建出被标记为危险的计划,运行会暂停并显示明确的 Approve / Deny(批准 / 拒绝)提示,而不是直接失败。
您将获得:
- 基于 cron 的 AI 运行 — 五种计划类型(分钟、小时、天、周、月)。
- 按需手动运行 — 任意任务上的 Run Now(立即运行)。
- 任务级隔离 — 每个任务自选提供商、上下文、system prompt、温度、最大迭代次数与允许的工具。
- 审批流程 — 危险计划被持久化为
pending_approval(待审批),让您在执行继续之前进行审阅。 - 实时时间线 — 运行进行中,实时呈现消息与工具结果。
- 运行历史:状态、触发类型、耗时、token 与费用。
- 作用域级取消 — 每次运行都有唯一的 scope key;取消时,长时间运行的工具也会被清理。
概念
| 术语 | 含义 |
|---|---|
| Task(任务) | 可复用的 AI 配置:提示词、提供商、计划、工具白名单。 |
| Run(运行) | 任务的一次执行。手动或 cron 触发。 |
| Trigger(触发) | manual(按钮)或 cron(计划)。 |
| Status(状态) | running / done / error / pending_approval / cancelled。 |
| Approval(审批) | 暂停点,助手在执行被标记为危险的计划前请求确认。 |
| Scope(作用域) | 一次运行的取消根(scheduler-run:{runId})。该运行衍生的所有工具都属于此 scope。 |
计划类型
计划以 schedule_type 加辅助字段存储,运行时即时翻译为 cron 表达式。
| 类型 | 配置项 | 示例 |
|---|---|---|
| Minute(分钟) | 间隔分钟数 | 每 15 分钟 |
| Hour(小时) | 小时内的 HH:MM | 每小时 XX:30 |
| Day(天) | HH:MM | 每天 09:00 |
| Week(周) | 星期(1=一 … 7=日)+ HH:MM | 每周一 08:30 |
| Month(月) | 日期(1–31)+ HH:MM | 每月 1 日 00:05 |
手动触发(Run Now)忽略计划。
工具控制
每个任务可以:
- 使用 全部可用工具(老任务 / 新任务,
tools_enabled开启且工具列表为空 / null),或 - 使用 白名单 — 精确指定助手可调用的工具 ID(网页搜索、浏览器自动化、终端、文件系统、文档工具等),或
- 完全 禁用工具 — 助手只剩提示词与上下文。
这是安全调度任务的主要把手:每日报表任务大概率不需要终端访问;代码评审任务可能只需要 web 与 browser。
审批流程
管线运行在 autonomous mode(自主模式) — 任何 未 标记为危险的计划无需询问即可执行。当助手发出 requiresConfirmation = true 的计划时:
- 运行转入
pending_approval(待审批)状态。 - 计划被持久化;运行被暂停。
- 界面展示该计划,并附带 Approve(批准)与 Deny(拒绝)两个按钮。
- Approve — 管线从保存点恢复。
- Deny — 运行以
cancelled(已取消)状态结束,原因为 "Rejected by user"(被用户拒绝)。
待审批项同时出现在运行视图与页面顶部独立的 Pending Approvals(待审批)列表中,以免被淹没。
运行生命周期
计划触发(或 Run Now)
│
▼
创建 run
status = running
│
▼
─── 消息流入时间线 ───
│
├─ done → status = done
├─ error → status = error (保存错误信息)
├─ user cancels → status = cancelled
└─ dangerous plan → status = pending_approval
│
├─ approve → status = running → 继续
└─ deny → status = cancelled
每次运行记录:触发方式、起止时间戳、耗时、token 用量、美元费用、错误信息(若有)与完整消息日志。
设置
任务通过 Scheduler → Create(调度器 → 新建)创建,会打开表单抽屉。字段:
- Title(标题) — 显示名称。
- Prompt(提示词) — 助手每次触发执行的主指令。
- System Prompt(系统提示) — 可选的持久角色 / 行为。默认为空。
- Provider(提供商) — 运行使用的 AI 提供商。
- Context(上下文) — 可选的 RAG 上下文,会注入到运行中。
- Temperature(温度) — 0.0 – 1.0,默认 0.3。
- Max auto-iterations(最大自动迭代次数) — 单次运行内工具调用轮次上限,默认 5。
- Schedule type(计划类型) + 对应的时间 / 星期 / 日期字段。
- Is active(是否激活) — 在不删除任务的前提下暂停计划的开关。
- Tools enabled(启用工具) — 工具集的总开关。
- Allowed tools(允许的工具) — 多选,工具开启时使用。
表单也可在不激活的情况下保存草稿。
使用流程
1. 创建定时任务
- 在侧边栏打开 Scheduler(调度器)。
- 点击 Create(新建) → 任务抽屉滑出。
- 填写标题、提示词,并选择提供商。
- (可选)关联上下文、收紧 system prompt、降低温度。
- 选择计划类型与时间。
- 选择工具策略:启用 + 白名单、启用 + 开放,或禁用。
- 打开 Is active 并保存。
2. 按需运行
- 打开任务 → Run Now(立即运行) → 运行立即出现在时间线中。
- 实时观察消息与工具结果。
- 随时点击 Stop(停止)中断 — scope 被取消,长时间运行的工具被销毁。
3. 处理待审批
- 运行徽标变黄(待审批),或 Pending Approvals(待审批)列表中出现新条目。
- 打开运行 → 审阅建议的计划。
- Approve — 运行恢复。Deny — 运行取消。
4. 查看历史
- 任务视图列出每次运行,含状态、触发方式、耗时、token 用量与费用。
- 点击运行可查看完整消息日志与工具输出。
- 错误包含完整错误信息;取消则记录由谁 / 何事发起的取消。
提示与限制
- 在激活计划前,先用 manual runs(手动运行)测试提示词。
- 让 system prompt 与任务紧密绑定 — 全局人设属于 AI Chat 设置。
- token / 费用 数字来自提供商响应;自托管的本地模型费用显示为零。
- 调度器在桌面应用内运行 — YoBench 关闭时,cron 不会触发。请据此规划,或让应用驻留托盘。
- 起步阶段把 max auto-iterations 设保守一些;在信任提示词后再调高。
下一步
- 连接 AI 提供商 与至少一个 上下文。
- 把定时任务与 DB Manager 搭配 — 例如每晚总结慢查询日志的运行。
- 若要做周期性的 非 AI 工作(纯 cron + 脚本),使用嵌入式 DB 任务或 Scenarios 模块。
帮助与反馈
发现 Bug 或希望新增计划类型?通过反馈表单联系我们。