定时任务
CountBot 的定时任务系统不只是“按 Cron 时间触发一句话”,而是完整的任务调度与执行链路:任务定义持久化、精确唤醒、并发控制、会话复用、渠道投递,以及通过 cron-manager 技能进行自然语言管理。
这章包含什么
- 当前 Cron API 的真实接口
max_retries、retry_delay、delete_on_success等新能力- 任务会话查看、清理、重置
- 批量创建、批量删除
- 内置任务保护
cron-manager技能的实际边界
核心组件
CronService
位置:
backend/modules/cron/service.py
负责:
- 任务 CRUD
- Cron 表达式校验
- 下次运行时间计算
- 调度描述生成
CronScheduler
位置:
backend/modules/cron/scheduler.py
负责:
- 精确计算下次唤醒时间
- 到点触发执行
- 并发控制
- 避免同一任务重复执行
CronExecutor
位置:
backend/modules/cron/executor.py
负责:
- 把任务消息交给 Agent 执行
- 维护任务会话
- 按需把结果投递到渠道