Skip to main content
skill CX Codex

eventkit · dpearson2699 — Claude Code skill for EventKit calendars and reminders

A skill that walks your agent through EventKit and EventKitUI code: calendar events, reminders, recurrence rules and the system editors.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add dpearson2699/swift-ios-skills --skill eventkit -a claude-code
Open on GitHub

What eventkit does

The skill covers EventKit work in an iOS app: asking for access, creating and fetching events, reminders, recurrence rules, alarms, and the EventKitUI controllers. Sections come with Swift samples built on EKEventStore, EKEvent, EKReminder, EKRecurrenceRule, EKEventEditViewController and EKCalendarChooser. There is also a list of common mistakes and a review checklist.

Permissions are where this gets fiddly. On iOS 17 and later the legacy requestAccess(to:) call no longer prompts and throws instead, so the skill points you at the granular methods: requestFullAccessToEvents(), requestWriteOnlyAccessToEvents(), requestFullAccessToReminders(). Write-only access creates events but cannot fetch calendars or events — if you plan to look up or edit what you saved, you need full access. For iOS 10–16 the older request path still applies and belongs behind a version guard.

Your Info.plist needs the usage string that matches the chosen path: NSCalendarsFullAccessUsageDescription, NSCalendarsWriteOnlyAccessUsageDescription or NSRemindersFullAccessUsageDescription. The system event editor can create an event with no calendar access at all. Keep one EKEventStore instance and reuse it; objects from separate stores do not mix. Event queries run synchronously and are capped at a four-year span.

What it helps with

  • request calendar and reminder access the iOS 17 way
  • save a new event into a chosen calendar
  • set up a repeating event with EKRecurrenceRule
  • list writable calendars and pick one for saving
  • present the system event editor with EKEventEditViewController

Example prompts for the agent

  • Add full calendar access and a Swift function that creates an event
  • Create a reminder with a due date using EKReminder and save it
  • Check this EventKit code for permission mistakes

How to install eventkit

1Skills CLI (Vercel)

npx skills add dpearson2699/swift-ios-skills --skill eventkit -a claude-code

2Manually: put the files in place

~/.claude/skills/eventkit/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/eventkit/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about eventkit

How do I install eventkit in Claude Code?

Run npx skills add dpearson2699/swift-ios-skills --skill eventkit -a claude-code. The skill file then lands at ~/.claude/skills/eventkit/SKILL.md.

What does eventkit do?

It gives the agent a reference for EventKit and EventKitUI: authorization, event CRUD, reminders, recurrence, alarms, the system editors and calendar change observation.

Why does requestAccess(to:) fail on iOS 17?

That method stopped prompting and now throws. The skill uses the granular calls instead: requestFullAccessToEvents(), requestWriteOnlyAccessToEvents() and requestFullAccessToReminders().

Similar skills

Everything for Mobile →

eventkit by other authors comes first.

From the same set86

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor