| name | apple-calendar |
| description | Apple Calendar.app integration for macOS. CRUD operations for events, search, and multi-calendar support. |
| author | G-HunterAi |
| license | MIT |
| version | 1.0.0 |
| tags | ["calendar","macos","scheduling","events"] |
| platforms | ["macos"] |
| category | integration |
| emoji | 📅 |
| metadata | {"clawdbot":{"emoji":"📅","os":["darwin"]}} |
Apple Calendar
Interact with Calendar.app via AppleScript. Run scripts from: cd {baseDir}
When to Use
- Creating, updating, or deleting events in macOS Calendar
- Searching for events by date or keywords
- Managing multiple calendars
- Setting up recurring events with custom recurrence rules
When NOT to Use
- Interacting with read-only calendars (Birthdays, Holidays)
- Accessing calendars on non-macOS platforms
- Operations on deleted recurring events (entire series is removed)
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
Error Handling
| Error | Cause | Solution |
|---|
Calendar not found | Calendar name doesn't exist or is misspelled | Verify calendar name with cal-list.sh; calendar names are case-sensitive |
UID not found | Event doesn't exist or belongs to different calendar | Confirm event UID with cal-list.sh or cal-search.sh |
Permission denied | Read-only calendar (Birthdays, Holidays) | Use a writable calendar for modifications |
Works Well With
- google-workspace — Sync events between Apple Calendar and Google Calendar
- email-automation — Create calendar invites and send email notifications
- mission-control — Integrate task deadlines with calendar scheduling
Notes
- Read-only calendars (Birthdays, Holidays) can't be modified
- Calendar names are case-sensitive
- Deleting recurring events removes entire series