Reeve
Core Concepts

Cron & Automation

Schedule recurring tasks, set reminders, automate reports, and wake agents on a schedule.

Cron & Automation

Reeve includes a built-in scheduler that lets you automate recurring tasks — morning briefings, weekly reports, metric checks, and reminders. Think of it as "when to run" + "what to do."

What You Can Automate

Use CaseExample
Morning briefingSummarize inbox and calendar every day at 7am
Weekly reportsGenerate revenue or marketing reports every Monday
Metric monitoringCheck ad performance every 4 hours
RemindersOne-time reminder to follow up on a task
Content schedulingPost social content on a schedule
Data syncsPull fresh data from connected platforms daily

Schedule Types

Three ways to schedule:

TypeWhen to UseExample
One-shot (at)Single future eventReminder at 3pm tomorrow
Interval (every)Fixed recurring intervalEvery 4 hours
Cron expression (cron)Calendar-based scheduleWeekdays at 9am

How It Works

Main Session Jobs

Run during the agent's regular heartbeat cycle. Best for tasks that benefit from the agent's full conversation context.

reeve cron add \
  --name "Calendar check" \
  --at "20m" \
  --session main \
  --system-event "Check calendar for upcoming meetings." \
  --wake now

Isolated Jobs

Run in a dedicated session — separate from your main conversation. Best for background tasks that shouldn't clutter your chat history.

reeve cron add \
  --name "Morning status" \
  --cron "0 7 * * *" \
  --tz "America/Los_Angeles" \
  --session isolated \
  --message "Summarize inbox + calendar for today." \
  --deliver \
  --channel whatsapp \
  --to "+15551234567"

Isolated jobs can deliver their output to any connected channel — WhatsApp, Slack, Telegram, Discord, and more.

Common Recipes

Daily Morning Briefing

reeve cron add \
  --name "Morning briefing" \
  --cron "0 7 * * 1-5" \
  --tz "America/New_York" \
  --session isolated \
  --message "Good morning briefing: summarize calendar, email inbox, and key metrics for today." \
  --deliver \
  --channel slack \
  --to "channel:general"

Weekly Revenue Report

reeve cron add \
  --name "Weekly revenue" \
  --cron "0 9 * * 1" \
  --tz "America/New_York" \
  --session isolated \
  --message "Generate a weekly revenue report: MRR, new subs, churn, and trends." \
  --deliver \
  --channel slack \
  --to "channel:finance"

One-Shot Reminder

reeve cron add \
  --name "Follow up with client" \
  --at "2026-03-10T15:00:00Z" \
  --session main \
  --system-event "Reminder: follow up with Acme Corp about the proposal." \
  --wake now \
  --delete-after-run

Delivery Channels

Isolated jobs can deliver output to any connected channel:

ChannelTarget Format
Slackchannel:C12345 or user:U12345
WhatsApp+15551234567
Telegram-1001234567890 or -1001234567890:topic:123
Discordchannel:123456789
iMessagePhone number or email

Use --channel last to deliver to wherever the agent last responded.

Managing Jobs

# List all scheduled jobs
reeve cron list

# View job details and run history
reeve cron status <jobId>

# Edit an existing job
reeve cron edit <jobId> --message "Updated prompt"

# View run history
reeve cron runs --id <jobId> --limit 10

# Manually trigger a job (for testing)
reeve cron run <jobId> --force

# Delete a job
reeve cron remove <jobId>

Model Overrides

Isolated jobs can use a different model than your default — useful for cost optimization or when a task needs more capable reasoning:

reeve cron add \
  --name "Deep analysis" \
  --cron "0 6 * * 1" \
  --session isolated \
  --message "Weekly deep analysis of project progress." \
  --model "opus" \
  --thinking high

Cron vs Heartbeat

FeatureCronHeartbeat
WhenOn a schedule you defineFixed interval while gateway runs
ContextIsolated or main sessionAlways main session
OutputCan deliver to any channelStays in main session
Use caseScheduled tasks, reports, remindersRegular background checks

See Cron vs Heartbeat for a deeper comparison.

Cron jobs persist across gateway restarts — schedules are stored in ~/.reeve/cron/ and resume automatically. For the full technical reference, see Cron Jobs (Gateway Scheduler).

On this page