Schedules

Define recurring agent work in schedules.toml. Schedules run only while the agent is enabled and their bundle version is pinned.

Define a schedule

[[schedules]]
cron = "0 9 * * 1-5"
markdown = "Review open work and write a concise morning status."
timezone = "Europe/London"

cron and markdown are required. timezone defaults to UTC. Consecutive occurrences must be at least one hour apart because Aleph evaluates schedules hourly.

An optional conversationId resumes a particular conversation. An optional deliverTo.bindingId targets a connected channel binding.

Choose delivery

Without deliverTo, a non-silent result posts only to the agent's Discord Schedule channel when one is configured. It does not fan out to Telegram or every binding.

To target a binding, select it in Aleph and use its binding ID. Discord schedule delivery still requires a Schedule channel. Silent results such as NO_REPLY are not posted.

Test before waiting

Publish the bundle, enable the version, then use Run now from the Schedules tab. Confirm the result and delivery status before relying on the recurring run.