⏰ OpenClaw定时任务:让你的Agent成为"永动机"
凌晨3点,你在呼呼大睡,而你的Agent正在:
- ✅ 抓取最新的AI行业新闻
- ✅ 生成日报并发布到Discord
- ✅ 检查全站死链并更新sitemap
- ✅ 自动回复GitHub Discussions
这一切,都靠OpenClaw的cron定时任务系统。就像王家卫电影里那些精确的时间节点——"5月1号,凌晨3点",每一刻都有它的使命。
📋 Cron表达式速查
基本格式:分 时 日 月 星期
| 表达式 | 含义 | 示例 |
0 8 * * * | 每天8:00 | 早报生成 |
*/2 * * * * | 每2小时 | RSS聚合 |
0 */6 * * * | 每6小时 | SEO巡检 |
0 1,13,22 * * * | 每天1:00、13:00、22:00 | 三班倒任务 |
0 2 * * 1-5 | 工作日2:00 | 工作日任务 |
@reboot | 开机时执行 | 启动初始化 |
🔧 配置定时任务
{
"cron": {
"enabled": true,
"timezone": "Asia/Shanghai",
"tasks": [
{
"name": "seo-daily-check",
"schedule": "0 18 * * *",
"task": "执行SEO巡检:检查死链、更新sitemap、生成报告",
"timeout": 300000,
"retry": {
"maxAttempts": 3,
"backoff": "exponential"
}
},
{
"name": "news-daily",
"schedule": "0 8 * * *",
"task": "生成AI新闻日报并发布到Discord",
"notify": {
"onSuccess": "feishu",
"onFailure": "feishu+email"
}
},
{
"name": "rss-aggregation",
"schedule": "*/2 * * * *",
"task": "聚合OpenClaw玩法相关RSS源",
"concurrency": "allow" // 允许与前一个实例并行
}
]
}
}
🎬 实战案例:miaoquai.com的自动化任务
// 在配置文件中定义miaoquai.com的六轨自动化任务
{
"cron": {
"tasks": [
// 第1轨:术语百科生成(凌晨1点)
{
"name": "glossary-generation",
"schedule": "0 1 * * *",
"task": "生成5-10个AI术语百科页面",
"output": "/var/www/miaoquai/glossary/"
},
// 第2轨:教程页面生成(凌晨2点)
{
"name": "tutorial-generation",
"schedule": "0 2 * * *",
"task": "批量生成OpenClaw教程页面",
"output": "/var/www/miaoquai/tools/"
},
// 第3轨:SEO巡检(每6小时)
{
"name": "seo-audit",
"schedule": "0 */6 * * *",
"task": "检查死链、更新sitemap、生成SEO报告"
},
// 第4轨:竞品监控(每天19:00)
{
"name": "competitor-monitor",
"schedule": "0 19 * * *",
"task": "监控竞品更新并生成报告"
},
// 第5轨:AI新闻日报(每天8:00)
{
"name": "ai-news-daily",
"schedule": "0 8 * * *",
"task": "生成10条AI新闻日报并发送到Discord"
},
// 第6轨:内部链接优化(每2小时)
{
"name": "internal-links-optimize",
"schedule": "0 */2 * * *",
"task": "扫描并优化网站内部链接"
}
]
}
}
📊 任务监控与管理
# 列出所有定时任务
openclaw cron list
# 查看任务执行历史
openclaw cron history --name=seo-daily-check --limit=10
# 立即执行某个任务(不等cron)
openclaw cron run seo-daily-check
# 暂停某个任务
openclaw cron pause rss-aggregation
# 恢复任务
openclaw cron resume rss-aggregation
# 查看任务日志
openclaw cron logs ai-news-daily --follow
💡 妙趣建议:
- 每个任务都要设置超时时间(timeout),防止任务卡死
- 关键任务配置重试策略,建议使用指数退避(exponential backoff)
- 使用
notify 配置失败通知,第一时间知道出问题
- 定期运行
openclaw cron cleanup 清理过期日志
- 时区一定要设置对!Asia/Shanghai不是默认时区
🚨 常见问题
- 任务没有执行:检查时区设置,确认cron表达式正确
- 任务重复执行:设置了
"concurrency": "allow" 的任务会允许并行,改为 "deny" 或 "kill-old"
- 任务执行失败但无通知:检查notify配置,确认feishu/email配置正确
🔗 相关资源