定时任务配置
设好闹钟,AI按时干活 —— 不用你盯着
这个 Skill 干嘛用的?
设好时间,AI 按时干活 —— 不用你盯着、不用你手动触发,到点就自动跑。
每天早上 8 点生成早报、每周五下午出周报、每隔 2 小时检查一次服务器状态 —— 把重复的事情交给定时任务,你只管看结果就行。
这是自动化的最后一块拼图。有了它,其他所有 Skill 和 Task 都可以无人值守运行。
没有定时任务的自动化
你配好了早报模板、配好了通知推送,每天早上还是得手动跑一遍。说好的「自动化」呢?每天记得打开电脑、点一下运行、等结果 —— 这跟没自动化有什么区别?少了定时任务这一环,所有自动化都只是半自动。
模板一:每日定时任务
最常见的场景 —— 每天固定时间执行一个任务。早报、数据同步、日志清理都适用。
每日定时任务 · Skill 模板
SKILL
## SKILL: 每日定时执行
### 功能描述
每天在指定时间自动执行任务,支持时区配置。
### 配置示例
- 每天 08:00 执行早报任务
- 每天 18:00 生成日报摘要
- 每天 23:00 清理临时文件
### 执行流程
1. 到达设定时间,自动启动
2. 按顺序执行关联的 Task
3. 调用 Notification Skill 推送结果
4. 记录执行日志(成功/失败/耗时)
### 异常处理
- 执行失败:自动重试(最多 3 次)
- 重试仍失败:发送错误通知
- 执行超时:终止并报告
- 错过执行时间(机器关机等):下次启动时补执行
模板二:工作日执行
有些事只在工作日干 —— 周末发工作通知谁看啊。这个模板自动跳过周末和节假日。
工作日执行 · Skill 模板
SKILL
## SKILL: 工作日定时执行
### 功能描述
仅在工作日执行的定时任务,自动跳过周末和配置的节假日。
### 配置示例
- 工作日 09:00 发送团队早会提醒
- 工作日 17:30 汇总今日工作进展
- 每周五 16:00 生成本周周报
### 日历规则
- 默认跳过周六、周日
- 支持配置节假日列表(手动或接 API)
- 支持调休日(周末上班)特殊处理
- 支持多时区团队(按成员时区分别触发)
### 适用场景
- 团队日报/周报自动生成
- 工作日数据同步
- 工作日站会提醒
模板三:间隔执行
不按固定时间,而是每隔一段时间执行一次。监控、健康检查、数据采集用这个。
间隔执行 · Skill 模板
SKILL
## SKILL: 间隔定时执行
### 功能描述
按固定时间间隔循环执行任务,适合监控和轮询场景。
### 配置示例
- 每 30 分钟检查一次服务器状态
- 每 2 小时抓取一次竞品价格
- 每 6 小时同步一次数据
### 执行策略
- 固定间隔:上次执行完成后等待 N 分钟再执行
- 固定频率:不管上次多久,严格按间隔触发
- 退避策略:连续失败时自动延长间隔
### 防重复机制
- 上一次还没执行完时不启动新的
- 执行锁:避免多实例同时运行
- 心跳检测:确认执行器还活着
### 适用场景
- 服务监控和健康检查
- 竞品价格追踪
- 数据增量同步
skill_config 配置参考
定时任务的核心是 cron 表达式。别慌,下面有速查:
定时任务 skill_config
skill_config:
name: "scheduler"
description: "定时任务调度"
version: "1.0"
schedules:
daily_briefing:
cron: "0 8 * * *" # 每天 08:00
timezone: "Asia/Shanghai"
task: "task-daily-briefing"
notify_on_complete: true
weekday_report:
cron: "0 17 * * 1-5" # 工作日 17:00
timezone: "Asia/Shanghai"
task: "task-daily-summary"
skip_holidays: true
weekly_review:
cron: "0 16 * * 5" # 每周五 16:00
timezone: "Asia/Shanghai"
task: "task-weekly-review"
health_check:
interval: "30m" # 每 30 分钟
task: "task-health-check"
notify_on_failure: true # 只在失败时通知
settings:
max_concurrent: 3 # 最多同时运行 3 个任务
execution_timeout: 300 # 单任务最长 5 分钟
retry_on_failure: 3
retry_delay: 60 # 重试间隔 60 秒
catch_up: false # 错过的任务不补执行
permissions:
- schedule_tasks
- trigger_tasks
error_handling:
on_failure: "通知管理员并记录日志"
on_timeout: "终止任务并通知"
max_consecutive_failures: 5 # 连续失败 5 次后暂停调度
Cron 表达式速查:「分 时 日 月 周」五个字段。* 表示每一个,1-5 表示周一到周五,*/2 表示每隔 2 个。举几个例子 —— 「0 8 * * *」= 每天 8 点,「0 */2 * * *」= 每 2 小时,「0 9 * * 1-5」= 工作日 9 点,「0 0 1 * *」= 每月 1 号零点。
相关资源
定时任务是自动化的调度中心,搭配这些使用: