Lesson 2 of 4
Create Your First Morning Briefing
Estimated time: 5 minutes
Create Your First Morning Briefing
Now for the fun part — you'll create a cron job that sends you a morning briefing every day. OpenClaw's cron system is built into the Gateway, so there's nothing extra to install.
Create the cron job
Run this command to schedule a daily briefing at 7:00 AM:
openclaw cron add \
--name "Morning Briefing" \
--cron "0 7 * * *" \
--tz "America/New_York" \
--session isolated \
--message "Give me a morning briefing for today. Include:
1. A friendly greeting with today's date and day of the week
2. A motivational quote or interesting fact
3. A summary of what's likely happening in the world today (major news, tech, business)
4. 3 productivity tips or reminders for having a great day
Format it as a clean, easy-to-read message with emoji section headers. Keep it concise — aim for a message I can read in under 60 seconds." \
--announce \
--channel telegram \
--to "CHAT_ID"
Replace the values:
America/New_York— your timezone (list of timezone names)CHAT_ID— your Telegram chat ID from the previous lesson
| Flag | Purpose |
|---|---|
--cron "0 7 * * *" | Runs at minute 0, hour 7, every day. Standard cron syntax. |
--tz | Ensures 7 AM means 7 AM in your timezone |
--session isolated | Each run gets a fresh context (no memory bleed between days) |
--announce | Sends the response to the chat channel |
--channel and --to | Where to deliver the message |
Verify the job was created
List your cron jobs to confirm:
openclaw cron listYou should see your "Morning Briefing" job with its schedule and next run time.
Test it right now
Don't want to wait until 7 AM? Run the job immediately:
openclaw cron run <job-id>Replace <job-id> with the ID shown in openclaw cron list. Within a few seconds, you should receive a briefing message in your Telegram chat.
Iterate on the prompt
If the output isn't quite right, edit the prompt and test again:
openclaw cron edit <job-id> --message 'Your updated prompt here'Then run it again with openclaw cron run <job-id> to test.
Adjust the schedule (optional)
Skip weekends:
openclaw cron edit <job-id> --cron '0 7 * * 1-5'Common cron patterns:
| Pattern | Meaning |
|---|---|
0 7 * * * | Every day at 7:00 AM |
0 7 * * 1-5 | Weekdays only at 7:00 AM |
0 9 * * 0,6 | Weekends only at 9:00 AM |
30 6 * * * | Every day at 6:30 AM |
0 7,18 * * * | Twice daily: 7 AM and 6 PM |
What You Have So Far
Your briefing is now working. Every morning at 7:00 AM, OpenClaw will:
- Wake up (isolated session, no prior context)
- Run your prompt through the AI model
- Generate a formatted briefing
- Send it to your Telegram chat
This version uses the AI's general knowledge — it's great for motivational content, date facts, and general tips. But it doesn't yet have real-time data like your actual weather, calendar, or tasks.
That's what the next lesson covers.
What flag ensures each morning briefing starts with a fresh AI context?
Already useful!
Even without real-time data, this basic briefing is genuinely useful. Many people stop here and are happy with a daily motivational message and reminders. The next lessons are for those who want to go further.
Configuring Reliable Cron Jobs in OpenClaw
# Reliable Cron Jobs Cron jobs allow you to automate recurring tasks. Here is how to set them up effectively. ## 🛠 Basic Setup Add a new cron job using the CLI: ```bash openclaw cron add --name "...