Skip to main content

Scheduling

manage_schedule is the scheduling tool exposed through @function_tool, used for creating reminders, recurring tasks, and timed background turns.

Supported actions

  • create
  • list
  • get
  • status
  • update
  • run
  • runs
  • remove

Schedule object

Three schedule formats are supported:

{ "kind": "at", "at": "2026-03-19T15:00:00+08:00", "timezone": "Asia/Shanghai" }
{ "kind": "every", "every": "10m" }
{ "kind": "cron", "expr": "0 9 * * *", "timezone": "Asia/Shanghai" }

Execution kinds

  • system_event: lightweight, suitable for reminders, triggers, and wake-ups
  • scheduled_turn: runs a real background agent turn, suitable for tasks requiring thinking and tool calls

Typical use cases

  • "Remind me in 20 minutes"
  • "Sync status every day at 9 AM"
  • "Check a task queue every 10 minutes"

Notes

  • create requires both schedule and content
  • use kind=at for one-time tasks
  • use kind=every or kind=cron for recurring tasks
  • this tool supports both text and voice scenarios