Scheduling & Cron

Schedule tasks to run automatically at fixed intervals or specific times.

Overview

Yukkai provides two complementary scheduling mechanisms that let you automate repetitive work and keep your calendar in sync:

  1. Cron / Recurring Prompts — schedule an AI prompt to execute automatically
on a recurring or fixed schedule. Think of it as a smart alarm clock for your assistant: every time the schedule fires, the stored prompt runs through the conversation engine just as if you had typed it yourself.

  1. Calendar Intelligence — the scheduling tool reads and writes Apple
Calendar events, suggests time slots for unscheduled tasks, detects overload, and generates a daily morning briefing.

The two features are separate: the calendar tool does not create cron jobs, and cron jobs are not calendar events. They are designed to work together when you need them to — for example, a cron job that runs every morning and asks the assistant to produce a briefing, which in turn reads your calendar.

How it works

Cron / Recurring Prompts

Cron jobs are managed entirely through slash commands in the chat. The assistant itself cannot create, modify, or list cron jobs via a tool call — you do it directly with the commands below.

Command Purpose
/cron List all existing cron jobs
/cron-add <schedule> \| <prompt> Create a new recurring job
/cron-run <id> Run a job immediately (manual trigger)
/cron-remove <id> Delete a job

When a cron job fires, it executes its stored prompt directly through the conversation engine. It is a recurring LLM prompt execution — not a spawned sub-agent and not a simple push notification.

Schedule syntax

Cron schedules accept several human-readable formats:

Syntax Meaning
@hourly Every hour
@daily Every day at midnight (use at for a specific time)
@weekly Every week
every 30m Every 30 minutes
every 2h Every 2 hours
at 08:00 Every day at 08:00
at 08:00 mon,wed,fri At 08:00 on Monday, Wednesday, and Friday

Day abbreviations can be entered in English (mon, wed, fri) or French (lun, mer, ven).

Calendar Intelligence

The scheduling tool provides six actions that integrate with Apple Calendar:

Action What it does
morning_briefing Returns a formatted daily overview of your events and tasks
suggest_schedule Analyses unscheduled tasks and suggests time slots (7-day horizon by default)
apply_schedule Commits a suggestion to your calendar (requires a task_id from the same session)
calendar_today Lists today's calendar events
free_slots Finds available time windows over the next 1–14 days
detect_overload Flags days where your schedule is too dense
calendar_create Manually creates a calendar event with a title, start time, and duration

All scheduling actions automatically request Calendar permission on first use. If you see a permission-denied error, it means the system dialog was refused — grant access in your Mac's Privacy & Security settings.

How to use it

Creating a recurring prompt

Type a slash command in the chat:

/cron-add every 1h | Check my email and summarize anything urgent

Yukkai parses the schedule and stores the prompt. From that point on, the job runs automatically at the specified interval. You can view all active jobs with:

/cron

To remove a job, find its ID in the list and run:

/cron-remove <id>

Using calendar intelligence

Simply ask Yukkai in natural language:

  • "What does my day look like?" → triggers calendar_today / morning_briefing
  • "Find me a free 2-hour slot this week." → triggers free_slots
  • "Am I overloaded this week?" → triggers detect_overload
  • "Schedule a 30-minute client call on July 10 at 2 PM." → triggers calendar_create
You can also combine both worlds: set up a cron job that runs every morning and asks Yukkai to produce a briefing, which in turn reads your calendar.

Examples

Daily weather and news digest

/cron-add at 08:00 | Give me today's weather and top news

Every morning at 08:00, Yukkai executes the prompt and delivers a fresh digest to your chat.

Hourly email triage

/cron-add every 1h | Check my email and summarize anything urgent

Mid-week project check-in

/cron-add at 09:00 mon,wed,fri | Review my active tasks and remind me of deadlines

One-off calendar event

Just say:

"Schedule a team sync on Friday at 3 PM for 45 minutes."

Yukkai calls calendar_create with the appropriate parameters and confirms the event has been added.

Morning briefing on demand

"Give me my morning briefing."

Yukkai calls morning_briefing and returns a formatted summary of today's events, tasks, and any overload warnings.

Tips

  • Cron jobs are not notifications. They execute a full LLM prompt, which means
the response can be as rich as any conversation reply — summaries, analyses, generated content, and more.

  • Keep prompts concise but specific. A cron prompt like "Check my email and
summarize anything urgent" works better than "Check email" because it tells the assistant exactly what output you expect.

  • Use English or French day abbreviations. Both mon,wed,fri and
lun,mer,ven are accepted in cron schedules.

  • Calendar permission is required. If scheduling actions fail, check
System Settings → Privacy & Security → Calendar and make sure Yukkai has access.

  • suggest_scheduleapply_schedule must happen in the same session. The
suggestion cache is in-memory and does not persist across sessions. If you close the conversation, you'll need to ask for new suggestions before applying one.

  • Test before you trust. Use /cron-run <id> to fire a job immediately and
verify the prompt produces the output you expect before relying on it long-term.

  • Combine cron + calendar. A cron job that runs at 07:55 and asks for a
morning briefing will pull in your live calendar data, giving you a proactive heads-up before your day starts.