Scheduled work on workflow steps
Some workflow steps stay open for days or weeks — tracking a work item, sending reminders, or re-checking an external system on a cadence. Scheduled work lets Thunk.AI run the step's AI agent on a recurring timer while the step remains active.
Each timer tick is a normal agent run on that work item, driven by the step's AI Instructions. The agent does its work for this pass and, by default, waits for the next scheduled run rather than finishing the step. See How an AI agent ends a run for that conclude behavior.
Scheduled work is configured once per workflow step in the plan. Every active work item on that step shares the same schedule, filter, and scheduled-run instructions.
When to use scheduled work
Use a schedule when a step should wake up without a new inbound message — for example:
Send reminders or escalations as a deadline approaches
Re-check status on a cadence until a condition is met
Periodically refresh computed fields across many work items
For a full pattern that combines inbound updates with scheduled checks, see Design pattern: the Work Tracker.
Where to configure it
Open your thunk and select a workflow step.
Open the step's Settings tab (or the step details panel while authoring the plan).
Expand Scheduled Work Settings in the AI Instructions area.
Turn on a recurring schedule with Daily at specific time, Every hour, or Monthly on a specific day. When a schedule is active, an enabled indicator appears on the section header.
While authoring the workflow plan (no work item open), you can edit the schedule shape but cannot fire a test — testing requires a concrete work item and step instance.
Schedule options
Daily at specific time
Choose a Daily Time, Timezone, and optional Days of week chips (for example weekdays only). The agent runs once per selected day at that clock time in the chosen timezone.
Every hour
Runs at the top of each hour. Optionally turn on Only run between certain hours, pick From / To hours, and set a Timezone so ticks happen only during business hours in that zone.
Monthly on a specific day
Choose a Timezone, a Time, and a Day of month. The agent runs once a month on that day at that clock time in the chosen timezone.
Pick a numbered day (1–31) or Last day of month. A numbered day of 29, 30, or 31 only fires in months that have that day — shorter months are skipped — so choose Last day of month when you want the step to run every month (for example, end-of-month billing or reporting).
How a scheduled run behaves
On the first time a work item reaches the step, the agent runs once to do any setup, then typically concludes while leaving the step open.
On each timer tick, the agent runs again on that work item. Unless your instructions say to finish the step, the agent concludes by waiting for the next scheduled run — the step stays active for the next tick or for an inbound update.
Write directions that separate:
What to do on the initial run (setup, first message, and so on)
What to do on each scheduled run (re-check, remind, update state)
When the step should finish (for example when a status becomes
Done)
Use a Step Finish Condition under Workflow Options when the platform should enforce when the workflow may proceed. See Control when a step runs and proceeds.
Query Filter
By default, every active work item on the step is eligible on each tick. On thunks with many rows, that can be expensive.
Query Filter narrows scheduled runs to work items whose property values match a condition — the same condition builder used for Workflow Options and tests. You must bind input properties on the step before a filter is available.
Examples:
Only work items whose NextCheckDate is on or before today
Skip work items whose Status is already
Done
On a real scheduled run, work items that do not match the filter are skipped for that tick — the agent is not invoked for them.
Custom directions for scheduled runs
By default, scheduled runs use the step's Directions field. Turn on Use custom AI instructions for scheduled runs to author separate directions that apply only on timer ticks.
When this override is enabled, those directions replace the step's Directions for scheduled runs. Include any phrasing about when to finish the step or keep waiting in the override — the scheduled run reads these directions to decide.
Interactive runs (for example when an inbound message arrives) still use the step's normal Directions.
Test a scheduled run
From a work item on a step with an active schedule:
Use Test in Scheduled Work Settings, or
Click the timer icon in the step header
Both open the Scheduled Work dialog. You can:
Fire one simulated timer tick for this work item only
Optionally set Simulate firing at so time-dependent instructions (for example "if today is after the due date…") can be exercised without waiting for the clock
When a Query Filter is configured, choose whether to Respect the filter (default off for a test — the step runs regardless unless you opt in)
Simulated time affects what the agent is told the current time is. Tool results, message timestamps, and data the run writes still use the real clock.
Tips
Match schedule cadence to how timely reminders must be — status refreshes on the next tick or inbound update, not the instant a date passes.
Combine a fixed cadence with a Query Filter so each tick touches only work items that need attention.
For long-running tracking steps, pair scheduled work with inbound routing so updates and timer ticks share one set of directions.
Use Test with a simulated date when instructions depend on calendar logic.
