How to schedule tasks or reminders in OpenClaw?
Clawpedia · For Humans
Set up automated schedules, recurring tasks, and reminders using OpenClaw's built-in scheduling capabilities.
How to Schedule Tasks or Reminders in OpenClaw?
One of OpenClaw's most practical features is its built-in task scheduler. Instead of relying on separate reminder apps or cron jobs, you can schedule recurring tasks, one-time reminders, and automated workflows directly from your agent.
---
Quick Start
Set a Simple Reminder
openclaw schedule "Buy milk" --at "6:00 PM today"
Set a Recurring Task
openclaw schedule "Check email and summarize" --every day --at 08:00
Natural Language Scheduling
openclaw chat "Remind me to call the dentist tomorrow at 2 PM"
openclaw chat "Every Monday morning, summarize my calendar for the week"
OpenClaw understands natural language time expressions.
---
Schedule Types
| Type | Example | Use Case |
|---|
| One-time | --at "2025-03-15 14:00" | Single reminder |
|---|
| Daily | --every day --at 08:00 | Morning briefings |
|---|
| Weekly | --every monday --at 09:00 | Weekly reports |
|---|
| Interval | --every 30min | Monitoring |
|---|
| Cron | --cron "0 /4 " | Complex schedules |
|---|
---
Creating Schedules
Command Line
# One-time reminder
openclaw schedule "Submit report" --at "Friday 5 PM"
# Daily task
openclaw schedule "Weather briefing" --every day --at 07:30
# Weekly task
openclaw schedule "Review expenses" --every friday --at 16:00
# Every N minutes/hours
openclaw schedule "Check server status" --every 15min
openclaw schedule "Sync data" --every 2h
# Cron expression
openclaw schedule "Backup database" --cron "0 3 * * *" # 3 AM daily
# Multiple days
openclaw schedule "Standup summary" --every mon,wed,fri --at 09:30
In Chat
You: Remind me to water the plants every Tuesday and Friday at 10 AM
OpenClaw: ✅ Scheduled: "Water the plants"
Every Tuesday and Friday at 10:00 AM
Next run: Tuesday, March 18 at 10:00 AM
---
What Can Be Scheduled?
Scheduled tasks can do anything OpenClaw can do:
Simple Reminders
openclaw schedule "Take a break and stretch" --every 2h
AI-Powered Tasks
# Summarize news every morning
openclaw schedule "Search for AI news and give me a 5-bullet summary" --every day --at 08:00
# Daily weather
openclaw schedule "What's the weather forecast for today?" --every day --at 07:00
# Weekly code review
openclaw schedule "List open PRs in my-org/my-repo and summarize each" --every monday --at 09:00
Skill-Based Tasks
# Run a specific skill on schedule
openclaw schedule --skill weather-forecast --params '{"city": "Berlin"}' --every day --at 07:00
# Run a server health check
openclaw schedule --skill server-monitor --every 5min
Notification Delivery
Scheduled results can be delivered to:
# Terminal notification (default)
openclaw schedule "task" --every day --at 08:00
# Telegram
openclaw schedule "task" --every day --at 08:00 --notify telegram
# Discord
openclaw schedule "task" --every day --at 08:00 --notify discord
# Slack
openclaw schedule "task" --every day --at 08:00 --notify slack
# Email (requires email skill)
openclaw schedule "task" --every day --at 08:00 --notify email
---
Managing Schedules
List All Schedules
openclaw schedule list
Output:
ID Task Schedule Next Run Status
──────── ───────────────────────────── ───────────────── ────────────────── ──────
sc_01 Weather briefing Daily 07:30 Mar 18, 07:30 Active
sc_02 Check server status Every 15min Mar 17, 14:45 Active
sc_03 Weekly expense review Fri 16:00 Mar 21, 16:00 Active
sc_04 Submit report Once: Mar 15 Mar 15, 17:00 Pending
sc_05 Old task Daily 09:00 — Paused
Pause and Resume
openclaw schedule pause sc_02
openclaw schedule resume sc_02
Delete a Schedule
openclaw schedule delete sc_04
Edit a Schedule
openclaw schedule edit sc_01 --at 08:00 # Change time
openclaw schedule edit sc_02 --every 30min # Change interval
---
Schedule Configuration
# ~/.openclaw/config.yaml
scheduler:
enabled: true
timezone: "Europe/Berlin" # Default timezone
max_concurrent: 3 # Max simultaneous tasks
retry_on_failure: true # Retry failed tasks
retry_delay: 300 # Seconds before retry
max_retries: 3 # Maximum retry attempts
log_results: true # Log task outputs
quiet_hours: # Don't send notifications
start: "22:00"
end: "07:00"
---
Timezone Handling
# Set your timezone
openclaw config set scheduler.timezone "America/New_York"
# Schedule in a specific timezone
openclaw schedule "task" --at "09:00 America/Los_Angeles"
# Use UTC explicitly
openclaw schedule "task" --at "14:00 UTC"
---
Advanced: Conditional Schedules
Only Run If Condition Is Met
# Only notify if temperature is below freezing
openclaw schedule "Check if temperature is below 0°C. Only respond if yes." --every day --at 07:00
Chain Tasks
# Run tasks in sequence
openclaw schedule "Fetch news, then summarize, then send to Telegram" --every day --at 08:00
---
Troubleshooting
Schedules Not Running
- Ensure the gateway is running:
openclaw gateway status - Check scheduler is enabled:
openclaw config get scheduler.enabled - Verify timezone:
openclaw config get scheduler.timezone - Check logs:
openclaw logs --filter scheduler
Missed Schedules After Restart
OpenClaw catches up on missed schedules when the gateway restarts:
scheduler:
catch_up_missed: true # Run missed tasks on startup
catch_up_max_age: 3600 # Only catch up tasks missed within 1 hour
Wrong Time
Verify your timezone:
openclaw config get scheduler.timezone
date # Check system time
---
Summary
OpenClaw's scheduler turns your agent into a proactive assistant that works on your behalf around the clock. From simple reminders to complex AI-powered automations, schedules can be created in natural language or precise cron syntax. Deliver notifications to any connected platform, and manage everything with simple CLI commands.
Related Articles
- Automating Social Media Tasks with OpenClaw — Schedule posts, analyze engagement, and manage social media accounts using your OpenClaw agent.
- OpenClaw Gmail Integration Setup — Connect Gmail & Google Calendar — OpenClaw Gmail integration setup step by step: OAuth credentials, scopes, Google Calendar access, and testing automated email and scheduling workflows.