Configure which domains, calendars, and reminder lists the plugin can access
Configures plugin access to Apple calendars, reminders, contacts, and mail by setting domain permissions and allowlists.
npx claudepluginhub omarshahine/apple-pim-agent-pluginHelp the user configure which domains, calendars, and reminder lists the apple-pim plugin can access.
Tip: If you encounter permission errors during configuration, use /apple-pim:authorize to check and request macOS permissions first.
The config file is at ~/.config/apple-pim/config.json (JSON format).
The Swift CLIs read this file directly via the PIMConfig library.
Do NOT write to any plugin cache directory or use YAML/markdown format.
apple-pim action config_show to see current config and action status for macOS access
notDetermined, use action authorize to trigger promptsdenied, warn the user and guide to System Settingsapple-pim action config_init — this lists ALL calendars and reminder lists from macOS~/.config/apple-pim/config.json if it existsapple-pim action config_init (do NOT use calendar action list — that returns filtered results)~/.config/apple-pim/config.jsonWrite the config file as JSON to ~/.config/apple-pim/config.json:
{
"calendars": {
"enabled": true,
"mode": "allowlist",
"items": ["Calendar Name 1", "Calendar Name 2"]
},
"reminders": {
"enabled": true,
"mode": "allowlist",
"items": ["List Name 1", "List Name 2"]
},
"contacts": {
"enabled": true,
"mode": "all",
"items": []
},
"mail": {
"enabled": true
},
"default_calendar": "Calendar Name",
"default_reminder_list": "List Name"
}
"all" (no filtering), "allowlist" (only listed items), "blocklist" (all except listed)true/false to enable/disable an entire domainapple-pim with action config_show and action config_init in parallel to get current config AND available items~/.config/apple-pim/config.json if it exists (for preserving user choices)apple-pim action config_init results (these show ALL items, unfiltered)ceil(item_count / 4)~/.config/apple-pim/config.json using the Write toolapple-pim with action config_init returns ALL calendars and reminder lists from macOS (unfiltered) — use this for discoverycalendar with action list returns only calendars allowed by the CURRENT config — do NOT use this for configurationcalendar action list would miss calendars the user previously blocked, making them impossible to re-enableBefore presenting options to the user, explicitly list out:
Then verify your questions cover all items. Missing items means the user can't configure them!