К основному содержанию
скилл CX Codex

eventkit · dpearson2699 — скилл для Claude Code: календарь и напоминания в iOS

Скилл по EventKit и EventKitUI: помогает агенту писать код для календарей, напоминаний, повторяющихся событий и системных редакторов.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add dpearson2699/swift-ios-skills --skill eventkit -a claude-code
Открыть на GitHub

Что делает eventkit

Скилл описывает работу с EventKit в iOS-приложении: запрос доступа, создание и чтение событий, напоминания, правила повторения, будильники и контроллеры EventKitUI. Внутри — разделы с примерами на Swift: EKEventStore, EKEvent, EKReminder, EKRecurrenceRule, EKEventEditViewController, EKCalendarChooser. Есть отдельные блоки про типичные ошибки и чек-лист для ревью.

Главная тонкость — разрешения. На iOS 17 и новее старый requestAccess(to:) больше не показывает запрос и выбрасывает ошибку, поэтому нужны гранулярные методы: requestFullAccessToEvents(), requestWriteOnlyAccessToEvents(), requestFullAccessToReminders(). Доступ только на запись позволяет создавать события, но не даёт их читать и не возвращает список календарей — если событие потом нужно найти или изменить, потребуется полный доступ. Для iOS 10–16 API другие, их надо оборачивать в проверку версии.

В Info.plist добавляется строка использования под выбранный путь доступа: NSCalendarsFullAccessUsageDescription, NSCalendarsWriteOnlyAccessUsageDescription или NSRemindersFullAccessUsageDescription. Системный редактор события работает вообще без доступа к календарю приложения. EKEventStore создают один раз и переиспользуют — объекты из разных хранилищ смешивать нельзя. Выборка событий синхронная и ограничена диапазоном в четыре года.

Какие задачи решает

  • запросить доступ к календарю и напоминаниям по правилам iOS 17
  • создать событие и сохранить его в нужном календаре
  • настроить повторяющееся событие с правилом EKRecurrenceRule
  • выбрать календарь для записи и отфильтровать недоступные
  • показать системный редактор события через EKEventEditViewController

Примеры запросов агенту

  • Добавь запрос полного доступа к календарю и функцию создания события на Swift
  • Сделай напоминание с датой выполнения через EKReminder и сохрани его
  • Проверь, где в этом коде нарушены правила EventKit по разрешениям

Как установить eventkit

1Через Skills CLI (Vercel)

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

2Вручную: положить файлы

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

Папка скилла целиком; для одного проекта — .claude/skills/eventkit/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Из того же набора69

homekit Скилл помогает писать код на Swift для умного дома: управлять аксессуарами HomeKit и подключать устройства Matter. CX Codex +1 3 100установок carplay Скилл для сборки приложений с поддержкой CarPlay: шаблоны, сцены, entitlements и проверка в CarPlay Simulator. CX Codex +1 3 100установок pencilkit Помогает настроить рисование через PencilKit в Swift, настроить инструменты PKToolPicker и сохранить штрихи. Пригодится при создании экранов для заметок и подписей на iOS. CX Codex +1 3 100установок musickit Скилл по MusicKit и MediaPlayer: поиск по каталогу Apple Music, подписка, очередь воспроизведения, Now Playing и пульт. CX Codex +1 3 100установок gamekit Подсказывает паттерны интеграции Apple GameKit в приложение на Swift. Помогает настроить авторизацию Game Center, списки лидеров и достижения. CX Codex +1 3 100установок swift-security Скилл настраивает работу с Keychain, CryptoKit и биометрией в iOS и macOS. Помогает внедрить защиту секретов по правилам OWASP MASVS. CX Codex +1 3 000установок relevancekit Скилл подсказывает агенту, как через RelevanceKit задавать контекст виджета на Apple Watch: время, место, тренировки, сон, подключённое железо. CX Codex +1 3 000установок appmigrationkit Скилл помогает настроить перенос данных между iOS и другими платформами через AppMigrationKit во время первичной настройки устройства. CX Codex +1 3 000установок

Другие версии eventkit

Похожие

vercel-react-native-skills vercel Набор правил по React Native и Expo для ИИ-агента: списки, анимации, навигация. Пригодится, когда агент правит мобильный код и надо, чтобы он делал это одинаково. CX Codex +1 255 200установок animate-expo emilkowalski Создаёт мобильные анимации для React Native и Expo на базе Reanimated и Gesture Handler. Помогает избежать просадок кадров на реальных устройствах. CX Codex +1 137 900установок mobile-native emilkowalski Убирает мелочи, из-за которых веб-приложение на телефоне выдаёт себя: залипающий hover, вспышку при тапе, ошибку с 100vh. CX Codex +1 86 600установок aso coreyhaines31 Анализирует страницы приложений в App Store и Google Play по правилам поисковой оптимизации. Находит слабые места в метаданных, графике и конверсии. CX Codex +1 75 400установок swiftui-pro Paul Hudson Проверяет SwiftUI-код на устаревшие API, ошибки в структуре и проблемы доступности. Пригодится для ревью и доработки проектов на SwiftUI. CX Codex +1 35 200установок orca-emulator stablyai Управляет iOS Simulator внутри Orca с живым экраном устройства. Пригодится для тапов, жестов, поворота экрана и сбора доказательств работы iOS-приложения. CX Codex +1 5 800установок

Рядом в теме «Мобильная разработка»

Всё по теме «Мобильная разработка» →

Вопросы о eventkit

Как установить eventkit в Claude Code?

Выполните npx skills add dpearson2699/swift-ios-skills --skill eventkit -a claude-code. После этого файл скилла появится по пути ~/.claude/skills/eventkit/SKILL.md.

Что делает eventkit?

Даёт агенту справочник по EventKit и EventKitUI: авторизация, создание и чтение событий, напоминания, повторения, будильники, системные редакторы и наблюдение за изменениями календаря.

Почему на iOS 17 не работает requestAccess(to:)?

Этот метод больше не показывает запрос и выбрасывает ошибку. Вместо него скилл предлагает гранулярные вызовы: requestFullAccessToEvents(), requestWriteOnlyAccessToEvents() и requestFullAccessToReminders().

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой