Installs into .claude/skills of the current project.
Sponsors
SSkills DirectorySkills Directory
Know which skills are safe β weekly.
SSkills DirectorySkills Directory
Is that skill safe to install?
Are you the author of Schedule?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/johnalbertini14-glitch-schedule)
---
name: Schedule
slug: schedule
version: 1.0.2
description: Program recurring or one-time tasks. User defines what to do, skill handles when.
changelog: Clarified user-driven execution model, removed assumed access patterns
metadata: {"clawdbot":{"emoji":"π ","requires":{"bins":[]},"os":["linux","darwin","win32"]}}
---
## Data Storage
```
~/schedule/
βββ jobs.json # Job definitions
βββ preferences.json # Timezone, preferred times
βββ history/ # Execution logs
βββ YYYY-MM.jsonl
```
Create on first use: `mkdir -p ~/schedule/history`
## Scope
This skill:
- β Stores scheduled job definitions in ~/schedule/
- β Triggers jobs at specified times
- β Learns timezone and time preferences from user
**Execution model:**
- User explicitly defines WHAT the job does
- User grants any permissions needed for the job
- Skill only handles WHEN, not WHAT
This skill does NOT:
- β Assume access to any external service
- β Modify system crontab or launchd
- β Execute jobs without user-defined instructions
## Quick Reference
| Topic | File |
|-------|------|
| Cron expression syntax | `patterns.md` |
| Common mistakes | `traps.md` |
| Job format | `jobs.md` |
## Core Rules
### 1. User Defines Everything
When user requests a scheduled task:
1. **WHAT**: User specifies the action (may require other skills/permissions)
2. **WHEN**: This skill handles timing
3. **HOW**: User grants any needed access explicitly
Example flow:
```
User: "Every morning, summarize my emails"
Agent: "I'll schedule this for 8am. This will need email access β
do you want me to use the mail skill for this?"
User: "Yes"
β Job stored with explicit reference to mail skill
```
### 2. Simple Requests
| Request | Action |
|---------|--------|
| "Remind me to X at Y" | Store job, confirm |
| "Every morning do X" | Ask time, store job |
| "Cancel X" | Remove from jobs.json |
### 3. Confirmation Format
```
β [what user requested]
π [when] ([timezone])
π§ [permissions/skills needed, if any]
π [id]
```
### 4. Job Persistence
In ~/schedule/jobs.json:
```json
{
"daily_review": {
"cron": "0 9 * * 1-5",
"task": "User-defined task description",
"requires": ["mail"],
"created": "2024-03-15",
"timezone": "Europe/Madrid"
}
}
```
The `requires` field explicitly lists any skills/access the job needs.
### 5. Execution
When scheduled time arrives:
- Agent executes the user-defined task
- Uses only permissions user explicitly granted
- Logs result to history/
### 6. Preferences
After first job, store in preferences.json:
- Timezone
- Preferred "morning" / "evening" times
- Default notification style