Setup
On first use, follow setup.md to establish local operating context and confirmation preferences before any calendar write.
When to Use
User wants to manage events from the macOS Calendar stack where Google, iCloud, Exchange, and CalDAV accounts are already synced locally.
Agent handles lookup, create, update, delete, conflict checks, and post-write verification without provider OAuth setup.
Requirements
- macOS with Calendar app access enabled for terminal tools.
- At least one working command path:
apple-calendar-cli, icalBuddy, shortcuts, or osascript.
- User confirmation before destructive operations.
- Provider accounts should already be connected in Calendar.app; this skill does not run provider OAuth.
Architecture
Memory lives in ~/apple-calendar-macos/. See memory-template.md for structure.
~/apple-calendar-macos/
├── memory.md # Status, defaults, and confirmation behavior
├── command-paths.md # Detected CLI path and fallback status
├── timezone-defaults.md # Preferred timezone and date style
└── safety-log.md # Deletions, bulk edits, and rollback notes
Quick Reference
| Topic |
File |
| Setup and first-run behavior |
setup.md |
| Memory structure |
memory-template.md |
| Command path matrix |
command-paths.md |
| Safety checklist before writes |
safety-checklist.md |
| Calendar operation patterns |
operation-patterns.md |
| Troubleshooting and recovery |
troubleshooting.md |
Data Storage
All skill files are stored in ~/apple-calendar-macos/.
Before creating or changing local files, describe the planned write and ask for confirmation.
Core Rules
1. Treat Calendar.app as the Unified Calendar Source
- Assume provider sync already happens inside Calendar.app and operate on that local unified view.
- Do not request Google, Microsoft, or Apple OAuth inside this skill unless user explicitly asks for external setup help.
2. Detect Command Path Before Any Calendar Action
- Probe available tools in strict order:
apple-calendar-cli, then icalBuddy, then shortcuts, then osascript.
- If no path is available, stop and explain the missing requirement instead of guessing commands.
3. Use Deterministic Time Inputs and Calendar Scopes
- Normalize all user time inputs to explicit timezone and start/end boundaries before running commands.
- Confirm date interpretation when input is ambiguous such as "next Friday" or locale specific formats.
4. Read First, Then Write, Then Verify
- For create, update, or delete operations, run a bounded pre-read in the target time window.
- After each write, run read-back verification and report final state with title, time, and calendar.
5. Confirm Destructive or Broad Changes
- Always require explicit confirmation for delete, move across calendars, and multi-event edits.
- If confidence is low due to duplicate titles, ask a disambiguation question before any write.
6. Keep Recurrence and All-Day Semantics Explicit
- Confirm recurrence rule, timezone behavior, and all-day interpretation before writing recurring events.
- Avoid silent defaults that can shift recurring events after DST changes.
7. Prioritize Minimal Exposure and Local-First Handling
- Use only the fields required for the requested action.
- Do not export full calendar contents when the user asked for a narrow lookup.
- Do not send event data to third-party APIs from this skill.
Common Traps
- Editing by title only when duplicates exist -> wrong event modified.
- Writing recurring events without timezone confirmation -> drift after DST.
- Deleting without pre-read snapshot -> difficult recovery.
- Trusting one CLI path blindly -> brittle behavior across macOS setups.
- Running broad searches by default -> noisy output and accidental edits.
Security & Privacy
Data that stays local:
- Calendar operation context and defaults in
~/apple-calendar-macos/.
- Event metadata used for requested operations.
Data that may leave your machine:
- None by default. Commands target local macOS Calendar data already synced on the device.
This skill does NOT:
- Request undeclared API keys.
- Send calendar data to third-party APIs.
- Execute destructive calendar writes without explicit confirmation.
Related Skills
Install with clawhub install <slug> if user confirms:
macos - macOS workflows and system command patterns.
events - event planning and structure patterns.
meetings - meeting prep and follow-up workflows.
schedule - broader scheduling and planning workflows.
remind - reminder design and deadline management patterns.
Feedback
- If useful:
clawhub star apple-calendar-macos
- Stay updated:
clawhub sync
1---2name: apple-calendar-macos3description: Use local CLI to manage Apple, Google, iCloud, Outlook, CalDAV, and other calendars synced in macOS Calendar, without API keys or OAuth.4---5
6## Setup
7
8On first use, follow `setup.md` to establish local operating context and confirmation preferences before any calendar write.
9
10## When to Use
11
12User wants to manage events from the macOS Calendar stack where Google, iCloud, Exchange, and CalDAV accounts are already synced locally.
13Agent handles lookup, create, update, delete, conflict checks, and post-write verification without provider OAuth setup.
14
15## Requirements
16
17- macOS with Calendar app access enabled for terminal tools.
18- At least one working command path: `apple-calendar-cli`, `icalBuddy`, `shortcuts`, or `osascript`.
19- User confirmation before destructive operations.
20- Provider accounts should already be connected in Calendar.app; this skill does not run provider OAuth.
21
22## Architecture
23
24Memory lives in `~/apple-calendar-macos/`. See `memory-template.md` for structure.
25
26```text
27~/apple-calendar-macos/
28├── memory.md # Status, defaults, and confirmation behavior
29├── command-paths.md # Detected CLI path and fallback status
30├── timezone-defaults.md # Preferred timezone and date style
31└── safety-log.md # Deletions, bulk edits, and rollback notes
32```
33
34## Quick Reference
35
36| Topic | File |
37|-------|------|
38| Setup and first-run behavior | `setup.md` |
39| Memory structure | `memory-template.md` |
40| Command path matrix | `command-paths.md` |
41| Safety checklist before writes | `safety-checklist.md` |
42| Calendar operation patterns | `operation-patterns.md` |
43| Troubleshooting and recovery | `troubleshooting.md` |
44
45## Data Storage
46
47All skill files are stored in `~/apple-calendar-macos/`.
48Before creating or changing local files, describe the planned write and ask for confirmation.
49
50## Core Rules
51
52### 1. Treat Calendar.app as the Unified Calendar Source
53- Assume provider sync already happens inside Calendar.app and operate on that local unified view.
54- Do not request Google, Microsoft, or Apple OAuth inside this skill unless user explicitly asks for external setup help.
55
56### 2. Detect Command Path Before Any Calendar Action
57- Probe available tools in strict order: `apple-calendar-cli`, then `icalBuddy`, then `shortcuts`, then `osascript`.
58- If no path is available, stop and explain the missing requirement instead of guessing commands.
59
60### 3. Use Deterministic Time Inputs and Calendar Scopes
61- Normalize all user time inputs to explicit timezone and start/end boundaries before running commands.
62- Confirm date interpretation when input is ambiguous such as "next Friday" or locale specific formats.
63
64### 4. Read First, Then Write, Then Verify
65- For create, update, or delete operations, run a bounded pre-read in the target time window.
66- After each write, run read-back verification and report final state with title, time, and calendar.
67
68### 5. Confirm Destructive or Broad Changes
69- Always require explicit confirmation for delete, move across calendars, and multi-event edits.
70- If confidence is low due to duplicate titles, ask a disambiguation question before any write.
71
72### 6. Keep Recurrence and All-Day Semantics Explicit
73- Confirm recurrence rule, timezone behavior, and all-day interpretation before writing recurring events.
74- Avoid silent defaults that can shift recurring events after DST changes.
75
76### 7. Prioritize Minimal Exposure and Local-First Handling
77- Use only the fields required for the requested action.
78- Do not export full calendar contents when the user asked for a narrow lookup.
79- Do not send event data to third-party APIs from this skill.
80
81## Common Traps
82
83- Editing by title only when duplicates exist -> wrong event modified.
84- Writing recurring events without timezone confirmation -> drift after DST.
85- Deleting without pre-read snapshot -> difficult recovery.
86- Trusting one CLI path blindly -> brittle behavior across macOS setups.
87- Running broad searches by default -> noisy output and accidental edits.
88
89## Security & Privacy
90
91**Data that stays local:**
92- Calendar operation context and defaults in `~/apple-calendar-macos/`.
93- Event metadata used for requested operations.
94
95**Data that may leave your machine:**
96- None by default. Commands target local macOS Calendar data already synced on the device.
97
98**This skill does NOT:**
99- Request undeclared API keys.
100- Send calendar data to third-party APIs.
101- Execute destructive calendar writes without explicit confirmation.
102
103## Related Skills
104Install with `clawhub install <slug>` if user confirms:
105- `macos` - macOS workflows and system command patterns.
106- `events` - event planning and structure patterns.
107- `meetings` - meeting prep and follow-up workflows.
108- `schedule` - broader scheduling and planning workflows.
109- `remind` - reminder design and deadline management patterns.
110
111## Feedback
112
113- If useful: `clawhub star apple-calendar-macos`
114- Stay updated: `clawhub sync`