Created: Feb 15, 2026
Purpose: Proactive next-day schedule briefings to eliminate morning surprises and protect sleep
Two-tier alert system for next-day schedule awareness:
Job: Early morning event advance warning
Trigger: Daily at 6:00 PM PT
Purpose: Alert about early next-day events (before 8am) to enable sleep planning
Behavior:
Thresholds:
Travel calculation:
Example:
⏰ EARLY START TOMORROW
7:30 AM - LA Passport Agency Appointment
Location: 11000 Wilshire Blvd, Los Angeles
Early morning. Consider winding down soon for adequate rest.
Departure from Castaic: ~6:00 AM (1hr travel time)
Full schedule briefing at 10pm.
Job: Evening schedule briefing
Trigger: Daily at 10:00 PM PT
Purpose: Complete next-day schedule overview for final prep
Behavior:
Content:
Example:
📅 Tomorrow's Schedule (Monday, Feb 17)
• 7:30 AM - LA Passport Agency Appointment
Location: 11000 Wilshire Blvd, Los Angeles
Prep: Old passport with valid China visa, confirmation M69TWDMT
Departure: 6:00 AM from Castaic (1hr travel)
⏰ Early start tomorrow - 7:30 AM. Plan sleep accordingly.
If no events:
📅 Tomorrow's Schedule (Tuesday, Feb 18)
Clear day - no scheduled events.
6:00 PM Early Warning:
10:00 PM Full Briefing:
Data source: Google Calendar (primary)
Tool: tools/google-calendar-list.py
Command: python3 google-calendar-list.py --days 1
Assumes:
Protects:
Prevents:
If helpful:
If annoying:
{
"name": "Early morning event advance warning",
"schedule": {
"kind": "cron",
"expr": "0 18 * * *",
"tz": "America/Los_Angeles"
},
"sessionTarget": "isolated",
"payload": {
"kind": "agentTurn",
"model": "anthropic/claude-sonnet-4-5"
},
"delivery": {
"mode": "announce",
"channel": "telegram"
}
}
{
"name": "Evening schedule briefing",
"schedule": {
"kind": "cron",
"expr": "0 22 * * *",
"tz": "America/Los_Angeles"
},
"sessionTarget": "isolated",
"payload": {
"kind": "agentTurn",
"model": "anthropic/claude-sonnet-4-5"
},
"delivery": {
"mode": "announce",
"channel": "telegram"
}
}
Verify early warning:
# Check if tomorrow has early events
python3 /home/node/.openclaw/workspace/tools/google-calendar-list.py --days 1 | grep -E "0[0-7]:[0-9]{2}"
# If early events exist, 6pm job should alert
# If no early events, 6pm job should be silent (NO_REPLY)
Verify full briefing:
# List all tomorrow's events
python3 /home/node/.openclaw/workspace/tools/google-calendar-list.py --days 1
# 10pm job should list all events regardless of time
Manual trigger:
# Run early warning check now
cron run <job-id>
# Run full briefing now
cron run <job-id>
Weekly: Verify jobs are running (check cron status)
Monthly: Review alert accuracy (false positives/negatives)
Quarterly: Adjust thresholds based on feedback
Owner: Minnie
Status: ✅ Active (Feb 15, 2026)
Next Review: May 15, 2026