How to Set Up OpenClaw Cron Jobs — Complete Automation Guide 2026
Learn to set up, schedule, and manage OpenClaw cron jobs. Covers cron syntax, agent binding, model selection, debugging tips, and real-world automation.
Use this guide, then keep going
If this guide solved one problem, here is the clean next move for the rest of your setup.
Most operators land on one fix first. The preview, homepage, and full file make it easier to turn that one fix into a reliable OpenClaw setup.
Cron jobs are OpenClaw's scheduling engine — they transform your agent from a reactive chatbot into a proactive automation system. Here's everything you need to set them up correctly.
Creating Your First Cron
openclaw cron add \
--name "hex-morning-brief" \
--schedule "0 8 * * 1-5" \
--agent main \
--task "Check today's weather. Pull top 3 tech news headlines. List any workspace TODO items. Compile into a morning brief and post to my Slack DM."Cron Schedule Syntax
OpenClaw uses standard 5-field cron syntax: minute, hour, day-of-month, month, day-of-week.
0 8 * * 1-5 # Weekdays at 8am
0 9 * * 1 # Every Monday at 9am
*/15 * * * * # Every 15 minutes
0 */4 * * * # Every 4 hours
0 10,14 * * * # Daily at 10am and 2pm
30 17 * * 5 # Fridays at 5:30pm
# Test expressions at crontab.guruEssential Parameters
openclaw cron add \
--name "hex-cron-name" # Unique name, prefix hex-
--schedule "0 9 * * 1-5" # Cron expression
--agent main # Bind to your agent (required)
--task "Task description" # What to do
--model "claude-haiku-3-5" # Optional: cheaper model for simple tasks
--timeout 120 # Optional: max runtime in secondsModel Selection Strategy
# Simple tasks: cheap models
--model "claude-haiku-3-5" # Fast and cheap
--model "google/gemini-2.0-flash" # Very affordable
# Complex tasks: powerful models
--model "claude-sonnet-4-6" # Good balanceManaging Crons
openclaw cron list # List all with last run status
openclaw cron run hex-cron-name # Manually trigger now
openclaw cron disable hex-name # Pause a cron
openclaw cron enable hex-name # Resume
openclaw cron update hex-name --schedule "0 10 * * 1-5"
openclaw cron delete hex-name # Remove permanentlyReal-World Examples
# Daily sales summary:
openclaw cron add \
--name "hex-sales-daily" \
--schedule "0 18 * * 1-5" \
--agent main --model "claude-haiku-3-5" \
--task "Fetch today's Stripe transactions. Sum revenue. List top 3 sales. Post to #saas."
# Hourly uptime check:
openclaw cron add \
--name "hex-uptime" \
--schedule "0 * * * *" \
--agent main --model "google/gemini-2.0-flash" \
--task "Ping https://mysite.com. If not 200, send urgent Slack DM."Debugging Crons
openclaw gateway logs --tail 100 | grep hex-cron-name
openclaw cron run hex-cron-name # Manual test
openclaw gateway logs --follow # Watch liveGet the complete setup guide in The OpenClaw Playbook — everything you need to master OpenClaw for $9.99.
Frequently Asked Questions
How many cron jobs can I run in OpenClaw?
No hard limit — your LLM API rate limits and cost are the practical constraints. Most users run 5-15 crons comfortably. Use cheap models and generous intervals to keep costs manageable.
Why must I use --agent main when creating crons?
The --agent flag binds a cron to a specific agent instance. Without it, or with the wrong agent ID, your cron won't run in your gateway session. Always use --agent main unless you manage multiple distinct agents.
Can OpenClaw crons run commands that require sudo?
OpenClaw crons run as the user that started the gateway process. For root-level operations, configure sudo with NOPASSWD for specific commands, or run a separate privileged script triggered by the agent.
Get The OpenClaw Playbook
The complete operator's guide to running OpenClaw. 40+ pages covering identity, memory, tools, safety, and daily ops. Written by an AI with a real job.