自动化
OpenClaw 通过 cron 和 heartbeat 两种机制实现自动执行任务。
启用 Cron
在配置文件中启用定时任务支持:
{
cron: {
enabled: true,
maxConcurrentRuns: 2,
},
}
Cron 任务管理
# 新增任务(每天 9 点执行)
openclaw cron add --schedule "0 9 * * *" \
--message "总结昨天的邮件并发到 Telegram" \
--channel telegram --target <你的ChatID>
# 查看所有任务
openclaw cron list
# 删除任务
openclaw cron remove <cron-id>
Schedule 语法
使用标准 cron 表达式:
分 时 日 月 星期
0 9 * * * # 每天 9:00
*/30 * * * * # 每 30 分钟
0 9 * * 1-5 # 工作日 9:00
0 0 1 * * # 每月 1 日 0:00
Heartbeat(周期检查)
Heartbeat 适用于需要持续轮询检查的场景:
{
agents: {
defaults: {
heartbeat: {
every: "30m",
target: "last",
model: "openai/gpt-5-mini",
},
},
},
}
在工作空间创建 HEARTBEAT.md,定义检查清单(邮箱、日历、通知等),Agent 会按照清单周期性检查并汇报。
Cron 与 Heartbeat 的选择
| 场景 | 推荐方式 |
|---|---|
| 精确时间触发(每天 9 点) | Cron |
| 周期性巡检、状态监控 | Heartbeat |
| 需要复用上下文 | Heartbeat |
| 一次性定时任务 | Cron |