alarmkit
Implement AlarmKit alarms and countdown timers for iOS and iPadOS with Lock Screen, Dynamic Island, StandBy, and paired Apple Watch system UI. Covers AlarmManager scheduling, AlarmAttributes and AlarmPresentation, AlarmButton stop and snooze actions, authorization, state observation, countdown widget-extension handoff, and Live Activity integration. Use when building wake-up alarms, countdown timers, or alarm-style alerts that need Apple's system alarm experience.
Security Assessment
About alarmkit
AlarmKit is a specialized iOS development skill that enables developers to implement native alarm and countdown timer functionality for iOS 26+ and iPadOS 26+ applications. It provides direct access to Apple's system-level alarm UI that appears on the Lock Screen, Dynamic Island, and Apple Watch, offering the same prominent, Focus-overriding experience users expect from the built-in Clock app. Unlike standard notifications, AlarmKit alarms automatically override Do Not Disturb and Silent mode, ensuring critical alerts reach users.
This skill covers the complete AlarmKit framework workflow, from authorization and scheduling to state management and Live Activity integration. Developers can create both time-based alarms that fire at specific clock times (with optional weekly recurrence) and duration-based countdown timers. The framework uses a declarative configuration approach through AlarmAttributes and AlarmPresentation, allowing developers to define alert, countdown, and paused states without building custom widget views. Every alarm automatically creates a system-managed Live Activity with templated UI that follows Apple's design guidelines.
The skill is designed for iOS developers building applications that require reliable, prominent time-based alerts such as alarm clock apps, meditation timers, cooking assistants, workout interval timers, medication reminders, or any scenario where users need guaranteed notification delivery with system-level UI integration. It includes comprehensive guidance on authorization handling, scheduling patterns, state observation, snooze/stop button configuration, and common pitfalls to avoid when working with Apple's alarm infrastructure.
FAQ
What iOS versions does AlarmKit require?
AlarmKit requires iOS 26+ or iPadOS 26+. It is not available on earlier iOS versions and cannot be backported.
Do AlarmKit alarms override Do Not Disturb and Silent mode?
Yes, alarms scheduled through AlarmKit automatically override Focus modes and Silent mode, ensuring they always reach the user with full system UI.
What's the difference between .alarm and .timer configurations?
Use .alarm for time-based alerts that fire at a specific clock time (like 7:30 AM) with optional weekly recurrence. Use .timer for duration-based alerts that fire after a countdown elapses (like 5 minutes from now). Timers always show countdown UI while alarms can optionally show it.
Do I need to build custom widget views for AlarmKit?
No, AlarmKit uses templated system UI. You configure the presentation through AlarmAttributes and AlarmPresentation rather than building custom ActivityKit widget views. However, if using countdown timers, you need to add a widget extension target for the non-alerting Live Activity UI.
What happens if the user denies alarm authorization?
If authorization is denied, alarms silently fail to schedule. You should check authorizationState before scheduling and handle the .denied state by guiding users to Settings if needed.
Install alarmkit
Quick Setup:
- Copy the skill folder to
.claude/skills/ - Claude will automatically detect and use the skill
Repository
dpearson2699/swift-ios-skills