← ClaudeAtlas

apple-calendarlisted

Use when the user asks to list Apple Calendar calendars or events, create/update/delete events, search appointments, or manage recurrence in Calendar.app on macOS. Inputs - calendar name when needed, event UID for read/update/delete, event title, start/end times, location/description/recurrence details for writes. Do not use when the user needs Google/Outlook calendar APIs, cross-platform sync, or general scheduling advice; use a service-specific calendar integration instead. Produces Calendar.app script commands and parsed event/calendar results. Escalate if calendar permissions are missing, the target calendar is read-only, dates are ambiguous, or deleting a recurring event could remove an entire series.
Naoray/skills · ★ 1 · AI & Automation · score 65
Install: claude install-skill Naoray/skills
# Apple Calendar **Evidence tier**: P **Basis**: Practitioner workflow for macOS Calendar.app automation through AppleScript-backed shell commands. **Source IDs**: skill apple-calendar scripts/cal-list.sh, scripts/cal-events.sh, scripts/cal-create.sh; WriterBuilder calendar-agent pattern **Reviewed**: 2026-05-12 Interact with Calendar.app via AppleScript. Run scripts from: `cd {baseDir}` ## Commands | Command | Usage | |---------|-------| | List calendars | `scripts/cal-list.sh` | | List events | `scripts/cal-events.sh [days_ahead] [calendar_name]` | | Read event | `scripts/cal-read.sh <event-uid> [calendar_name]` | | Create event | `scripts/cal-create.sh <calendar> <summary> <start> <end> [location] [description] [allday] [recurrence]` | | Update event | `scripts/cal-update.sh <event-uid> [--summary X] [--start X] [--end X] [--location X] [--description X]` | | Delete event | `scripts/cal-delete.sh <event-uid> [calendar_name]` | | Search events | `scripts/cal-search.sh <query> [days_ahead] [calendar_name]` | ## Date Format - Timed: `YYYY-MM-DD HH:MM` - All-day: `YYYY-MM-DD` ## Recurrence | Pattern | RRULE | |---------|-------| | Daily 10x | `FREQ=DAILY;COUNT=10` | | Weekly M/W/F | `FREQ=WEEKLY;BYDAY=MO,WE,FR` | | Monthly 15th | `FREQ=MONTHLY;BYMONTHDAY=15` | ## Output - Events/search: `UID | Summary | Start | End | AllDay | Location | Calendar` - Read: Full details with description, URL, recurrence ## Notes - Read-only calendars (Birthdays, Holidays) can't be mod