Smart Cron
Schedule any OpenClaw task using plain English.
- Rating
- 4.3 (260 reviews)
- Downloads
- 5,080 downloads
- Version
- 1.0.0
Overview
Schedule any OpenClaw task using plain English.
✨Key Features
Natural language scheduling — "every weekday at 9am", "every 30 minutes", "first Monday of month"
Full cron job lifecycle — add, list, remove, pause, resume
Timezone-aware — schedule in any timezone (UTC, Europe/Bucharest, etc.)
Failure alerts — WhatsApp/Telegram alert if a job fails
Next run preview — shows exactly when each job runs next
Run logs — persisted history of every execution
Zero external dependencies — uses system cron + OpenClaw orchestration
Complete Documentation
View Source →Smart Cron — Natural Language Cron Scheduler for OpenClaw
Schedule any OpenClaw task using plain English. No cron syntax required. Just say what you want, when you want it.
What It Does
- Natural language scheduling — "every weekday at 9am", "every 30 minutes", "first Monday of month"
- Full cron job lifecycle — add, list, remove, pause, resume
- Timezone-aware — schedule in any timezone (UTC, Europe/Bucharest, etc.)
- Failure alerts — WhatsApp/Telegram alert if a job fails
- Next run preview — shows exactly when each job runs next
- Run logs — persisted history of every execution
- Zero external dependencies — uses system cron + OpenClaw orchestration
Quick Start
# Add a daily digest job
smart-cron add "every weekday at 9am" --task "summarize my emails"
# Add an interval job
smart-cron add "every 30 minutes" --task "check server health"
# Monthly job
smart-cron add "first Monday of month at 10am" --task "generate monthly report"
# List all scheduled jobs
smart-cron list
# Show next run times
smart-cron next
# View job logs
smart-cron logs
# Pause a job (without deleting it)
smart-cron pause <job-id>
# Resume paused job
smart-cron resume <job-id>
# Remove a job
smart-cron remove <job-id>
Commands
| Command | Description |
|---|---|
| smart-cron add | Schedule a new task |
| smart-cron list | List all jobs with status |
| smart-cron remove | Remove a job |
| smart-cron next | Show next run time for all jobs |
| smart-cron run | Run a job immediately |
| smart-cron logs [id] | View execution logs |
| smart-cron pause | Pause a job |
| smart-cron resume | Resume a paused job |
Supported Schedule Expressions
Intervals
every 5 minutes→/5 *every hour→0every 2 hours→0 /2every 30 minutes→/30 *
Daily
every day at 9am→0 9 *every weekday at 9am→0 9 1-5every weekend at noon→0 12 6,0daily at midnight→0 0 *
Weekly
every Monday at 8am→0 8 1every Friday at 5pm→0 17 5
Monthly
first Monday of month→ calculated and re-scheduled1st of month at 9am→0 9 1last day of month→ calculated dynamically
Custom cron (passthrough)
0 /6→ runs as-is for advanced users
Timezone Support
# Schedule in your local timezone
smart-cron add "every weekday at 9am" \
--task "daily standup reminder" \
--timezone Europe/Bucharest
# List shows times in both UTC and local tz
Failure Alerts
When a scheduled task fails, Smart Cron sends an alert via your configured channel:
⚠️ Smart Cron: "daily standup reminder" FAILED
Time: 09:00 EET (07:00 UTC)
Error: Task timed out after 300s
Last success: yesterday at 09:00
Logs: smart-cron logs job-123
Data Storage
All job configs and logs stored locally at ~/.openclaw/workspace/smart-cron-data/. SQLite, no telemetry.
Configuration
Edit ~/.openclaw/workspace/smart-cron-data/config.json:
{
"default_timezone": "Europe/Bucharest",
"alert_channel": "whatsapp",
"alert_on_failure": true,
"log_retention_days": 30
}
Use Cases
Morning Briefing
smart-cron add "every weekday at 8am" --task "summarize overnight emails and news"
Uptime Monitoring
smart-cron add "every 5 minutes" --task "check all APIs and alert if any is down"
Weekly Reports
smart-cron add "every Friday at 5pm" --task "generate weekly work summary and log to MEMORY.md"
Monthly Cleanup
smart-cron add "1st of month at 2am" --task "clean old logs and archive memory files older than 90 days"
Requirements
- OpenClaw 1.0+
- Python 3.8+ (for schedule parsing)
- cron daemon (standard on Linux/macOS)
Source & Issues
- Source: https://github.com/mariusfit/smart-cron
- Issues: https://github.com/mariusfit/smart-cron/issues
- Author: @mariusfit
Installation
openclaw install smart-cron
💻Code Examples
smart-cron remove <job-id>
## Commands
| Command | Description |
|---------|-------------|
| `smart-cron add <schedule> --task <task>` | Schedule a new task |
| `smart-cron list` | List all jobs with status |
| `smart-cron remove <id>` | Remove a job |
| `smart-cron next` | Show next run time for all jobs |
| `smart-cron run <id>` | Run a job immediately |
| `smart-cron logs [id]` | View execution logs |
| `smart-cron pause <id>` | Pause a job |
| `smart-cron resume <id>` | Resume a paused job |
## Supported Schedule Expressions
### Intervals
- `every 5 minutes` → `*/5 * * * *`
- `every hour` → `0 * * * *`
- `every 2 hours` → `0 */2 * * *`
- `every 30 minutes` → `*/30 * * * *`
### Daily
- `every day at 9am` → `0 9 * * *`
- `every weekday at 9am` → `0 9 * * 1-5`
- `every weekend at noon` → `0 12 * * 6,0`
- `daily at midnight` → `0 0 * * *`
### Weekly
- `every Monday at 8am` → `0 8 * * 1`
- `every Friday at 5pm` → `0 17 * * 5`
### Monthly
- `first Monday of month` → calculated and re-scheduled
- `1st of month at 9am` → `0 9 1 * *`
- `last day of month` → calculated dynamically
### Custom cron (passthrough)
- `0 */6 * * *` → runs as-is for advanced users
## Timezone Support# List shows times in both UTC and local tz
## Failure Alerts
When a scheduled task fails, Smart Cron sends an alert via your configured channel:Logs: smart-cron logs job-123
## Data Storage
All job configs and logs stored locally at `~/.openclaw/workspace/smart-cron-data/`. SQLite, no telemetry.
## Configuration
Edit `~/.openclaw/workspace/smart-cron-data/config.json`:}
## Use Cases
### Morning Briefing# Add a daily digest job
smart-cron add "every weekday at 9am" --task "summarize my emails"
# Add an interval job
smart-cron add "every 30 minutes" --task "check server health"
# Monthly job
smart-cron add "first Monday of month at 10am" --task "generate monthly report"
# List all scheduled jobs
smart-cron list
# Show next run times
smart-cron next
# View job logs
smart-cron logs
# Pause a job (without deleting it)
smart-cron pause <job-id>
# Resume paused job
smart-cron resume <job-id>
# Remove a job
smart-cron remove <job-id># Schedule in your local timezone
smart-cron add "every weekday at 9am" \
--task "daily standup reminder" \
--timezone Europe/Bucharest
# List shows times in both UTC and local tz⚠️ Smart Cron: "daily standup reminder" FAILED
Time: 09:00 EET (07:00 UTC)
Error: Task timed out after 300s
Last success: yesterday at 09:00
Logs: smart-cron logs job-123{
"default_timezone": "Europe/Bucharest",
"alert_channel": "whatsapp",
"alert_on_failure": true,
"log_retention_days": 30
}Tags
Quick Info
Ready to Install?
Get started with this skill in seconds
Related Skills
4claw
4claw — a moderated imageboard for AI agents.
Aap Passport
Agent Attestation Protocol - The Reverse Turing Test.
Acestep Lyrics Transcription
Transcribe audio to timestamped lyrics using OpenAI Whisper or ElevenLabs Scribe API.
Adaptive Suite
A continuously adaptive skill suite that empowers Clawdbot.