Skip to main content
A Scheduled Task takes a Craft prompt that works once and runs it on a timer. Each time it fires, Craft opens a fresh background session, runs the same agent loop, and records the result in run history. Nothing needs to be open and nobody needs to be watching. Anything you’d otherwise check or rebuild on a regular cadence is a good fit. Get the prompt right in a normal session, then schedule it:
  • Every morning, send me a Slack message with everything that needs my attention.
  • Every morning at 8am, send an update on the World Cup games I should watch that day.
  • Every hour, monitor my email and ping me in Slack about anything actually worth responding to.
Open Scheduled Tasks from the Craft sidebar, or go to /craft/v1/tasks.
Get the prompt working in a normal Craft session first. Once it reliably produces what you want, save it as a scheduled task.

Create a task

1

Write the name and prompt

Give the task a clear Name, then write the Prompt that Craft receives on every run. Include the output format, source material, audience, and any skills or apps it should use.
2

Choose a schedule

Pick Interval (every N minutes or hours) or Daily / Weekly (a time of day on selected days). Daily and weekly times use your browser’s local time.
3

Pre-approve expected apps

Under Pre-approved apps, select the apps the task may use unattended. An app you don’t pre-approve will pause mid-run to ask for approval, which stalls the run. Avoid pre-approving apps that can send, delete, or change sensitive records unless the task is tightly scoped.
4

Save, or save and run now

Choose Save to wait for the next scheduled run, or Save and run now to run it immediately and check the result.
The New Scheduled Task form showing the name, prompt, schedule, and pre-approved apps fields

Ownership and permissions

A scheduled task belongs to the person who created it. Every run executes with the creator’s Onyx permissions, connected apps, and skills, subject to the app policies your admins have set. If a task relies on an app connection, keep that connection active. When credentials expire or are revoked, future runs fail until the app is reconnected.

Run history

The task detail page lists every run with its Started time, Status, Duration, Summary, and Trigger (Run Now or Schedule). Each row links to the session that run created, so you can open it and inspect the messages, files, previews, and artifacts. Run statuses are:
StatusMeaning
QueuedWaiting to start.
RunningIn progress.
SucceededCompleted normally.
FailedHit an error. Open the session to see what happened.
SkippedThe previous run was still going when this one was due.
Awaiting approvalReached an app action that still needs approval.

Manage a task

From the task detail page you can Run now, Pause / Resume, Edit the prompt, schedule, or pre-approved apps, and Delete the task.
  • Pausing stops future runs without deleting history.
  • Deleting stops future runs. Past run sessions and history are preserved for review.

When a run needs attention

Scheduled tasks shouldn’t depend on a live approval prompt. If a run reaches an app action that still requires approval, it moves to awaiting approval rather than completing. Pre-approve the relevant apps to avoid this.
Failed runs are not retried automatically. When a run fails, open the generated session to inspect the error and any partial output, confirm the required files, skills, and app connections still exist, narrow the prompt if Craft went out of scope, and then Run now to try again.