Create, list, pause, resume, and delete scheduled tasks using natural language
Create and manage recurring tasks through chat. When the user asks to schedule something, emit a schedule code block with the appropriate action.
ACTION: create
NAME: <short descriptive name>
SCHEDULE: <cron expression>
MESSAGE: <text to send when triggered>
CHANNEL: <channel — default to current>
TIMEZONE: <tz — default UTC>
Use SKILL + PARAMS instead of MESSAGE to run a skill:
ACTION: create
NAME: Morning calendar briefing
SCHEDULE: 0 9 * * *
SKILL: calendar
PARAMS: today
CHANNEL: discord
TIMEZONE: America/New_York
Runs every N minutes/hours/seconds. Use KIND: every with an INTERVAL field.
ACTION: create
NAME: Health check
KIND: every
INTERVAL: 30m
MESSAGE: Running health check...
Runs once at a specific datetime, then auto-deletes. Use KIND: at with a RUN_AT field (ISO 8601).
ACTION: create
NAME: Meeting reminder
KIND: at
RUN_AT: 2026-02-25T14:00:00
MESSAGE: Your meeting starts in 15 minutes!
Set DELETE_AFTER: false to keep the task after it runs (default is true for one-shot tasks).
ACTION: list
ACTION: pause
TASK_ID: <id>
ACTION: resume
TASK_ID: <id>
ACTION: delete
TASK_ID: <id>
| Pattern | Meaning |
|---|---|
0 9 * * * | Every day at 9:00 AM |
0 9 * * 1-5 | Weekdays at 9:00 AM |
0 */2 * * * | Every 2 hours |
30 8 * * 1 | Every Monday at 8:30 AM |
0 0 1 * * | First day of each month |
*/15 * * * * | Every 15 minutes |
| Value | Meaning |
|---|---|
30m | Every 30 minutes |
1h | Every hour |
2h | Every 2 hours |
6h | Every 6 hours |
12h | Every 12 hours |
24h | Every 24 hours |
60s | Every 60 seconds |
User: "remind me every day at 9 to check my calendar"
ACTION: create
NAME: Daily calendar reminder
SCHEDULE: 0 9 * * *
MESSAGE: Time to check your calendar!
TIMEZONE: UTC
User: "check the server every 30 minutes"
ACTION: create
NAME: Server check
KIND: every
INTERVAL: 30m
MESSAGE: Running server health check...
User: "remind me at 3pm tomorrow about the meeting"
ACTION: create
NAME: Meeting reminder
KIND: at
RUN_AT: 2026-02-25T15:00:00
MESSAGE: Don't forget your meeting!
User: "list my scheduled tasks"
ACTION: list
User: "cancel task abc123"
ACTION: delete
TASK_ID: abc123
| Kind | Field | Description |
|---|---|---|
cron (default) | SCHEDULE | Standard cron expression for recurring tasks |
every | INTERVAL | Repeat every N seconds/minutes/hours |
at | RUN_AT | Run once at a specific ISO 8601 datetime |
Failed tasks automatically retry with exponential backoff: 30s → 1m → 5m → 15m → 60m (up to 5 retries). One-shot tasks do not retry.
0 9 * * * unless the user specifies a timeKIND: every with INTERVALKIND: at with RUN_AT in ISO 8601 format