openclaw 支持四种定时任务配置方式:一、用 openclaw cron add 命令添加一次性或周期性任务;二、手动编辑 ~/.openclaw/cron/jobs.json 文件;三、通过系统 crontab 调用外部 shell 脚本;四、基于 workflow 绑定 time-trigger 事件实现复杂自动化流程。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您希望 OpenClaw 在固定时间自动执行任务(如每天发送日报、定时检查邮件或生成周报),则需通过其内置的 openclaw cron 子命令配置定时任务。OpenClaw 不依赖操作系统级 cron,而是自带轻量级调度器,所有任务统一存储于 ~/.openclaw/cron/jobs.json,运行历史记录保存在 ~/.openclaw/cron/runs/ 目录下。以下是创建定时任务的多种方法:
一、使用 openclaw cron add 创建一次性或周期性任务
该方法直接调用 OpenClaw 原生命令行接口,支持自然语言式参数输入,适用于大多数标准场景,无需编辑配置文件或外部调度器。
1、创建 30 分钟后触发的一次性提醒任务:
执行命令:openclaw cron add --name "临时提醒" --at "30m" --system-event "请准备下午的项目评审材料"
2、创建每天早上 7:00 执行的周期性任务(发送日报):
执行命令:openclaw cron add --name "每日日报" --cron "0 7 * * *" --tz "Asia/Shanghai" --message "汇总昨日工作,列出今日计划" --announce --channel telegram --to "-1003844379529"
3、创建每小时执行一次的检查任务:
执行命令:openclaw cron add --name "每小时健康检查" --every "1h" --session isolated --message "检查服务状态与日志异常"
二、手动编辑 jobs.json 文件添加任务
该方法适用于批量导入、脚本化部署或需要精确控制字段的高级用户。所有任务以 JSON 格式定义,可直接写入 ~/.openclaw/cron/jobs.json,OpenClaw 启动时自动加载。
1、打开终端,进入 cron 配置目录:cd ~/.openclaw/cron
2、使用文本编辑器打开 jobs.json:nano jobs.json(或使用 vim / code .)
3、在数组中插入一个新任务对象,示例格式如下:
{ "id": "daily-report-20260318", "name": "每日数据同步", "cron": "0 2 * * *", "tz": "Asia/Shanghai", "session": "isolated", "message": "拉取生产数据库变更并归档", "announce": true, "channel": "email", "to": "admin@example.com" }
4、保存文件并退出编辑器
5、重启 OpenClaw 或执行 openclaw cron reload 使新任务生效
三、通过 crontab + 外部 Shell 脚本调用 OpenClaw 命令
该方法将 OpenClaw 视为普通 CLI 工具,交由系统级 cron 管理,适合需与系统事件深度集成(如开机启动、网络就绪后触发)或已有成熟 crontab 管理流程的环境。
1、编写一个封装脚本,例如 ~/bin/run-daily-publish.sh:
内容为:#!/bin/bash
cd ~ && openclaw cron run --id "publish-article-daily" --force 2>/dev/null
2、赋予脚本执行权限:chmod +x ~/bin/run-daily-publish.sh
3、编辑用户 crontab:crontab -e
4、添加一行系统级定时规则(例如每天 6:30 执行):
30 6 * * * /home/username/bin/run-daily-publish.sh
5、保存退出,系统 cron 将按时调用该脚本触发 OpenClaw 任务
四、基于 OpenClaw Workflow 绑定时间事件创建自动化流程
该方法适用于复杂多步骤任务,将定时触发作为 workflow 的起始事件,后续可串联 Skill 调用、条件判断、多通道分发等逻辑,实现真正意义上的“自动干活”。
1、创建一个 workflow 定义文件,例如 ~/openclaw-workflows/daily-review.yml
2、在文件中定义 time-trigger 类型事件:
trigger:
type: time
schedule: "0 18 * * 1-5"
3、定义 steps 序列,例如:
steps:
- skill: git
action: get-commit-log
params: { since: "24h" }
- skill: ai
action: generate-report
- skill: feishu
action: send-message
params: { chat_id: "oc_abc123..." }
4、注册 workflow:openclaw workflow create --file ~/openclaw-workflows/daily-review.yml
5、确认 workflow 已启用:openclaw workflow list











