Agent skill · software engineering · dpearson2699
healthkit
Read, write, and query Apple Health data using HealthKit. Covers HKHealthStore authorization, sample queries, statistics queries, statistics collection queries for charts, saving HKQuantitySample data, background delivery, workout sessions with HKWorkoutSession and HKLiveWorkoutBuilder, HKUnit, and HKQuantityTypeIdentifier values. Use when integrating with Apple Health, displaying health metrics, recording workouts, or enabling background health data delivery.
Why this skill is useful
Provides specific commands and patterns for integrating with Apple Health that the AI wouldn't reliably generate on its own.
What it needs
About 7k tokens when loaded. Last updated 2026-07-31. 973 stars on the source repository.
What this skill does
HealthKit Read and write health and fitness data from the Apple Health store. Covers authorization, queries, writing samples, background delivery, and workout sessions. Targets Swift 6.3 / iOS 26+. Contents Setup and Availability Authorization Reading Data: Sample Queries Reading Data: Statistics Queries Reading Data: Statistics Collection Queries Writing Data Background Delivery Workout Sessions Common Data Types HKUnit Reference Common Mistakes Review Checklist References Setup and Availability Project Configuration 1. Enable the HealthKit capability in Xcode (adds the entitlement) 2. Add NSHealthShareUsageDescription (read) and NSHealthUpdateUsageDescription (write) to Info.plist 3. For background delivery, enable the "Background Delivery" sub-capability Availability Check Always check availability before calling other HealthKit APIs. Health data is available on iOS, watchOS, visionOS, iPadOS 17+, and iOS apps running on Vision Pro. It is unavailable on iPadOS 16 or earlier and may be restricted by managed device policy. Create a single HKHealthStore instance and reuse it throughout your app. It is thread-safe. If HealthKit is optional, review Xcode's generated UIRequiredDeviceCapabilities healthkit entry so unsupported devices are not excluded unintentionally. Authorization Request only the types your app genuinely needs. App Review rejects apps that over-request. Checking Authorization Status authorizationStatus(for:) reports write/share authorization. HealthKit does not reveal whether read permission was granted or denied. If the user denies read access, queries return only samples your app successfully saved, which may look like empty or partial data. Reading Data: Sample Queries Use HKSampleQueryDescriptor (async/await) for one-shot reads. Prefer descriptors over the older callback-based HKSampleQuery. Reading Data: Statistics Queries Use HKStatisticsQueryDescriptor for aggregated single-value stats (sum, average, min, max). …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills dpearson2699/healthkit