Work that starts on time
One-time and recurring instructions, time zones, delivery, and missed runs.
A schedule contains an instruction, an agent conversation, and a time. When due, the gateway submits the instruction as a new turn marked [Scheduled: name]. The result belongs to that conversation; in a messaging-channel conversation it can be delivered through that channel.
Create a routine
Open Schedules for the selected agent, or ask the agent to schedule a concrete task. Include the desired output and constraints:
Every weekday at 09:30 in Europe/London, summarize the open tasks for Harbor Studio in this conversation. Highlight overdue work and suggest three next actions. Do not update tasks or message anyone else.
The future run receives the saved instruction, not the entire intent you left unstated today. Replace “that report” or “remind him” with the subject, recipient, and expected result.
Timing modes
| Mode | Meaning | Example |
|---|---|---|
at | One occurrence | ISO 8601 timestamp with offset, or a supported relative delay such as +1h |
cron | Recurrence | Five fields: minute, hour, day of month, month, day of week |
One-time values without an offset are treated as UTC. Prefer explicit offsets for absolute timestamps. A recurrence runs at most every five minutes.
0 8 * * * Every day at 08:00
30 9 * * 1-5 Weekdays at 09:30
0 18 * * 5 Friday at 18:00
0 10 1 * * First day of each month at 10:00Cron hours are interpreted in the schedule's IANA time zone. If none is supplied, the gateway's zone is used. Desktop local mode uses the computer's zone; a server can set JIAN_TIME_ZONE. The installation zone is a server setting, not a panel setting.
Destination and permissions
A schedule targets a session. By default, agent-created schedules answer in the conversation that requested them; another session can be selected explicitly.
A timed run still needs a working provider, available tools, and whatever approval its conversation requires. Ask first can leave an action waiting for a person. Scheduling a message does not grant new rights to send it or bypass channel contact policy.
Availability and missed time
The gateway must be running to dispatch work. A local gateway stops when the app quits, and a sleeping computer cannot run local tasks. A server gateway is appropriate for work that must continue independently of the laptop.
On recovery from downtime, the scheduler coalesces missed occurrences rather than replaying every missed interval. A recurring morning summary is not sent once for every day the gateway was down. Inspect its actual run and next scheduled time after an interruption.
Edit, pause, or remove
Check for an existing schedule before creating another. Change its instruction, timing, or destination when the routine changes. Disabling pauses it; deleting removes it. A one-time schedule disables itself after dispatch.
Use Listening when the trigger is “CI finished” or “the pull request closed,” instead of repeatedly scheduling a polling conversation.