Scheduling

Schedule agent sessions to run automatically. Daily, weekly, intervals, or one-shot.

Location: Workspace Settings → CapabilitiesScheduling

Scheduling lets the agent run tasks on a schedule with no client connected and no human in the loop. Each run spawns a fresh session with a prompt you define. Use it for daily summaries, periodic checks, batch processing, or anything that should happen automatically.

Schedule types

TypeConfigExample
Interval{ intervalMinutes: N }Every 120 minutes
Daily{ time: "HH:mm" }Every day at 09:00
Weekly{ days: [0–6], time: "HH:mm" }Weekdays at 17:00
Once{ runAt: ISO timestamp }One-shot, specific date and time

Daily and weekly times are in server-local timezone. Weekdays are 0=Sunday through 6=Saturday.

Create a job

Two ways to create scheduled jobs:

  1. Via the UI: the scheduler modal. Name, prompt, schedule tabs, repeat limit, preconfig selector, session reuse, auto-approve.
  2. Via the agent: when Scheduling is enabled, the agent gets a scheduler tool. It creates jobs the same way, gated by the workspace permission risk level.

The prompt should be self-contained. It's the full instruction given to the agent for each run. No conversation history carries over unless you enable session reuse.

Session reuse

By default, each run creates a fresh session. Toggle Reuse same session and every run accumulates in one persistent conversation. Optionally enable Include history so the agent sees previous run context on the next run.

Repeat limit

Set a max number of runs. When the limit is reached, the job is marked completed and stops. Leave empty for infinite.

Per-job settings

SettingWhat it does
PreconfigWhich agent/preconfig runs the job. Defaults to the workspace default.
Auto-approveOverride the workspace auto-approve severity for sessions created by this job.
Repeat limitMax runs before the job auto-completes. Omit for infinite.
Session reuseAccumulate runs in one session instead of fresh sessions.
Include historyWhen reusing, whether the agent sees past run context.

Permission gating

The agent's scheduler tool is gated by the Scheduling capability risk level. List is always allowed (read-only). Create, update, pause, resume, trigger, and remove all require approval based on the risk threshold.

How it works

The scheduler runs a 60-second tick on the server. When a job's nextRunAt is due, the server:

  1. Advances nextRunAt before execution, so a crash mid-run doesn't cause a duplicate
  2. Spawns a session with the job's prompt and preconfig
  3. Strips the scheduler tool from the spawned session. Scheduled sessions can't create new scheduled jobs.
  4. Logs success or error on the job record

An immediate tick fires on server startup, catching jobs that became due while the server was offline.

Manage jobs

From the UI or the agent tool:

  • Pause: stops scheduling, keeps the job
  • Resume: recomputes the next run and resumes
  • Trigger: run immediately without affecting the schedule
  • Delete: permanently remove

What's next

  • Agents: promoted preconfigs with persistent home and scheduling pre-enabled
  • Capabilities: all workspace capabilities
  • Auto-Approve: how auto-approve severity works