Schedule jobs
Creates, inspects, updates and removes one-time or recurring jobs.
Goal
Use this skill to create, inspect, update, and remove scheduled jobs. Only schedule work when the user explicitly wants future or recurring execution.
Use when
- The user wants a task to run once in the future.
- The user wants a recurring job.
- The user wants to inspect, reschedule, edit, or delete an existing job.
Workflow
- Use
get_all_scheduled_jobswhen the user asks what already exists or before editing/removing a job. - For a new job, choose one trigger kind:
date_triggerfor one-time executioninterval_triggerfor every N minutes, hours, or dayscron_triggerfor calendar schedules such as weekdays or fixed times
- Build a clear
job_payloadwithjob_name,job_description, and a self-containedjob_prompt. - Use
create_scheduled_jobto create jobs. - Use
update_scheduled_jobto change the trigger, payload, or both. - Use
remove_jobonly when the user explicitly wants cancellation or deletion.
Job Prompt Rules
- Write only the actual task prompt. Do not add scheduler wrapper markup yourself.
- The scheduler tools inject and normalize runtime context around
job_promptautomatically. - Make the prompt self-contained: goal, required checks, expected output, and any ordering constraints.
- Prefer numbered steps when the task has multiple phases.
- Put only the needed runtime tools into
llm_tools. - Keep
subagentsempty unless runtime support is explicitly available.
Trigger Rules
- Exactly one trigger kind is allowed per create or update call.
- Use RFC3339 datetimes for
run_at,start_date, andend_date. - Prefer explicit
timezonevalues to avoid DST surprises. calendar_interval_triggeris not supported.
Chat Targeting Rules
- If
target_chat_keyis omitted, the job runs in the current chat. - Tell the user when the current chat will be used implicitly.
- Use
target_chat_keyonly when the user wants the job to run in a different chat context.
Examples
{
"job_payload": {
"job_name": "weekday-weather",
"job_description": "Check the weather every weekday morning",
"job_prompt": "Create a concise weather report for Berlin. Include temperature, conditions, and today's forecast.",
"llm_tools": ["web_search"],
"subagents": []
},
"trigger": {
"kind": "cron_trigger",
"params": {
"day_of_week": "mon,tue,wed,thu,fri",
"hour": "7",
"minute": "0",
"timezone": "Europe/Berlin"
}
}
}
{
"job_id": "existing-job-id",
"input": {
"job_payload_updates": {
"job_prompt": "Create the same report, but include wind speed as well."
}
}
}