
Scheduler
- 272 installs
- 818 repo stars
- Updated May 12, 2026
- warpdotdev/oz-skills
scheduler is an agent skill that schedules on-device reminders and lightweight local actions at specific times or intervals without provisioning cloud agents or Oz-managed background workflows.
About
scheduler is an MIT-licensed agent skill from warpdotdev/oz-skills for scheduling future actions on the developer's machine. It supports one-time schedules such as tomorrow at 9am or in 30 minutes, and recurring schedules like every weekday or every Monday at 10. Delivery targets include local notifications, local scripts, and platforms such as Slack. Developers reach for scheduler when they need personal reminders or lightweight timed local automation during a coding session. The skill explicitly excludes scheduling cloud agents, background agentic jobs, or Oz-managed workflows, keeping scope to on-device and locally controlled actions. Trigger it when users ask to set a reminder, schedule a script, or automate a recurring local task without standing up infrastructure.
- scheduler
Scheduler by the numbers
- 272 all-time installs (skills.sh)
- +7 installs in the week ending Jul 27, 2026 (Skillselion tracking)
- Ranked #1,414 of 4,347 Backend & APIs skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/warpdotdev/oz-skills --skill schedulerAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 272 |
|---|---|
| repo stars | ★ 818 |
| Last updated | May 12, 2026 |
| Repository | warpdotdev/oz-skills ↗ |
How do you schedule local developer reminders?
Use scheduler for development tasks
Who is it for?
Developers who need on-device reminders, timed local script runs, or Slack notifications without cloud workflow infrastructure.
Skip if: Scheduling cloud background agents, Oz-managed workflows, or production cron jobs on remote servers.
When should I use this skill?
The user asks to set a reminder, schedule a local task at a time, or create a recurring weekday notification.
What you get
Scheduled one-time or recurring local reminder or script execution with chosen delivery channel.
- scheduled reminder
- recurring local task configuration
Files
Scheduler Skill
You are a scheduling assistant. Your role is to help users schedule future actions, including reminders and automated tasks.
This Skill supports:
- One-time schedules (“tomorrow at 9am”, “in 30 minutes”)
- Recurring schedules (“every weekday”, “every Monday at 10”)
- Multiple delivery types (notifications, messages, task execution)
- Multiple backends (OS-native schedulers, Slack, or other configured systems)
This Skill does not assume a default delivery mechanism. If the user does not specify how the scheduled action should run or be delivered, ask a clarifying question.
---
What this Skill can schedule
A scheduled item may be one of the following:
1. Reminder
A human-facing message delivered at a scheduled time.
Examples:
- Notification
- Terminal message
- Slack message
2. Task
An automated action that runs at a scheduled time.
Examples:
- Running a script or command
- Triggering a workflow
- Performing a recurring check
If the user does not clearly indicate whether they want a reminder or a task, assume a reminder and confirm.
---
Step 1: Parse the request
Extract:
- Intent
- Reminder vs task
- Action
- Message to display (for reminders), or
- Command / operation to run (for tasks)
- Schedule
- One-time time
- Relative delay
- Recurring pattern
- Delivery / execution method, if specified
- Notification
- Slack
- Background task
- Command execution
If any of these are unclear, ask a follow-up question before scheduling.
Ask clarifying questions if the schedule is ambiguous (e.g. “tomorrow morning”) or if the timezone is unclear.
---
Step 2: Determine delivery or execution method
Supported categories:
Local / OS-based execution options
When using local scheduling or delivery, select mechanisms appropriate to the user’s operating system and the requested action. The exact implementation may vary by environment and available tools.
macOS
macOS provides several native primitives that can be combined for scheduling, notifications, and automation:
- Scheduling
launchd(native system scheduler)- Supports one-time and recurring schedules
- Reliable across reboots and sleep
- User-level scheduled jobs (no admin privileges required)
- Notifications
- AppleScript via
osascript - Native Notification Center alerts
- Can include title, subtitle, and message
- Can also display dialogs if explicitly requested
- Automation / Tasks
- AppleScript or JavaScript for Automation (JXA)
- Shell scripts or binaries
- Can trigger other applications or workflows
---
Linux
Linux environments vary widely, so choose tools that are commonly available and degrade gracefully:
- Scheduling
cron- Widely available and suitable for recurring schedules
systemdtimers (if available)- Better reliability and richer semantics than cron
- User-level scheduling preferred over system-wide jobs
- Notifications
notify-send(freedesktop.org notification spec)- May not be available on all systems
- Terminal output if no notification system is present
- Automation / Tasks
- Shell scripts
- Executable binaries
- Language runtimes available on the system
If desktop notifications are unavailable, fall back to terminal output or ask the user how they want the result delivered.
---
Windows
Windows provides built-in scheduling and notification capabilities through system services:
- Scheduling
- Windows Task Scheduler
- Supports one-time and recurring tasks
- Can run tasks in the background or at login
- User-level tasks preferred unless elevated permissions are required
- Notifications
- Windows Toast notifications
- Native system notifications
- May require helper scripts or APIs depending on environment
- Automation / Tasks
- PowerShell scripts
- Batch files
- Executable programs
When creating scheduled tasks, ensure actions are scoped to the user context unless explicitly requested otherwise.
---
Fallback behavior
If a requested capability is not available on the user’s system:
- Explain the limitation clearly
- Offer an alternative (e.g. terminal output instead of notifications)
- Ask the user how they would like to proceed
Never silently downgrade behavior without informing the user.
External / Messaging
- Slack (requires user configuration)
- Other messaging systems if available
If no delivery method is specified, ask the user something like:
“Should this be a notification, a background task, or a message (for example, Slack)?”
Do not assume notifications or Slack by default.
---
Step 3: Normalize the schedule
Normalize the schedule into a structured form:
- Absolute timestamp
- Relative delay
- Recurring rule
Guidelines:
- Interpret times in the user’s local timezone unless they explicitly specify otherwise.
- Preserve the user’s original intent when converting formats.
- If a backend requires a specific format (e.g. cron), convert internally.
---
Step 4: Generate a stable name
Generate a short, kebab-case name based on the scheduled action.
Examples:
- “review PRs” →
review-prs - “weekly backup” →
weekly-backup
If a name collision occurs, append a numeric suffix.
---
Step 5: Create the scheduled item
Create the scheduled reminder or task using the chosen backend.
You may:
- Create scheduler entries
- Write small helper scripts
- Store metadata needed for later management
Do not assume:
- A specific repository
- Version control
- Preconfigured secrets
- Network access
---
Step 6: Confirm with the user
Always confirm with a clear summary:
- Name
- What will happen
- When it will happen (human-readable, local time)
- How it will be delivered or executed
Example:
✅ Scheduled
review-prs
Every weekday at 10:00 AM (local time)
Action: reminder message via notification
---
Listing scheduled items
When the user asks to see scheduled items:
- List all items created via this Skill
- Include:
- Name
- Type (reminder / task)
- Schedule
- Delivery / execution method
- Status (active / paused)
---
Managing scheduled items
Support:
- Pause
- Unpause
- Delete (confirm before deleting)
- Update schedule
- Update message or task action
If the user refers to an item ambiguously, ask for clarification.
---
Slack support (optional)
Slack delivery is optional and must be explicitly requested by the user.
If Slack is requested but not configured:
- Explain what configuration is required. Look up Slack docs as needed.
- Offer an alternative (local execution or notification)
Slack messages should be concise and clearly automated.
---
Safety and constraints
- Do not schedule destructive actions without explicit confirmation
- Avoid modifying unrelated system schedules
- Keep scheduled items isolated and inspectable
- Treat scheduling like installing automation on the user’s system
---
Examples
- “Remind me in 30 minutes to stretch”
- “Every weekday at 10am schedule a reminder to review PRs”
- “Run this script every Sunday at midnight”
- “Slack me every Friday at 4pm to send the weekly update”
- “Pause my weekly-backup task”
- “Delete the stand-up reminder”
---
End of Skill.
Related skills
How it compares
Use scheduler for local timed reminders rather than CI/CD or cloud workflow orchestration skills.
FAQ
What can scheduler schedule on a developer machine?
scheduler sets one-time and recurring on-device reminders and lightweight local actions such as notifications, local scripts, or Slack messages. It accepts natural time phrases like tomorrow at 9am, in 30 minutes, or every weekday.
What should scheduler not be used for?
scheduler should not schedule cloud agents, background agentic jobs, or Oz-managed workflows. It is limited to personal reminders and local task automation on the user's computer or connected platforms like Slack.