Automation
Schedules
A Schedule is a recurring automation. Like cron jobs in a Unix system, Schedules run in the background on a cadence without you having to think about them. "Every Monday at 9am, do this." "On the first of every month, generate that."
In River, a Schedule is a first-class entity — you can see it, edit it, pause it, and delete it just like any other thing in your workspace. Each Schedule fires a Job on its cadence.
What Schedules can fire#
Schedules don't care what kind of Job they fire. They can run:
- An Agent (the most common case)
- A Workflow
- A Tool call directly (e.g., a daily database query)
- A Skill (a single LLM call)
Pick the cadence; pick what runs. That's it.
Common cadences#
You can use plain English or cron syntax:
| Plain | Cron |
|---|---|
| Every weekday at 7am | 0 7 * * 1-5 |
| Every Monday at 9am | 0 9 * * 1 |
| Every hour | 0 * * * * |
| The first of each month | 0 9 1 * * |
| Every 15 minutes | */15 * * * * |
The Schedule editor accepts both and shows the next 5 fire times so you can sanity-check.
Where Schedules live#
Open AutomationsApp → Schedules to see all Schedules in your Dataspace, their next run time, and the last result. From there you can:
- Pause or resume a Schedule
- Edit the cadence
- Run it now (independent of its schedule)
- Look at the Job history (every past run)
Common patterns#
- Morning briefing at 7am weekdays — runs your Morning Briefer Agent.
- Weekly recap Friday at 4pm — runs a "Last Week in Review" Agent.
- Monthly close the first of the month — runs a Workflow that pulls Stripe data and generates a financial summary.
- Hourly inbox sweep during business hours — runs an Inbox Triage Agent on emails received in the last hour.
Quiet hours and weekends#
You can scope a Schedule to:
- Specific days (weekdays only, weekends only, custom)
- Specific hours (business hours only)
- Specific time zones (the user's local time, not UTC)
A Schedule paused for the weekend will skip Saturday and Sunday automatically.
Tips#
- Always check the "next run" preview before saving — it catches obvious mistakes (wrong time zone, wrong day).
- Pause Schedules instead of deleting them while iterating. Less likely to lose history.
- Schedules in a team Dataspace are shared — anyone can see what's running and when.