Install any skill in seconds. Free to start, no credit card required.
Get Started Free →iOS HealthKit data sync CLI commands and patterns. Use when working with healthsync CLI, fetching Apple Health data (steps, heart rate, sleep, workouts), pairing iOS devices over local network, or understanding the iOS Health Sync project architecture including mTLS certificate pinning, Keychain storage, and audit logging.
.claude/skills/sundial-org-healthkit-sync/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 30% | 0% |
| case-02 | ✗→✓ | ▲ Improved | -21% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 27% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 59% | 0% |
| case-06 | ✗→✓ | ▲ Improved | -13% | 0% |
Securely sync Apple HealthKit data from iPhone to Mac over local network using mTLS.
healthsync CLI commandsbash# 1. Discover devices on local network healthsync discover # 2. On iOS app: tap "Share" to generate QR code, then "Copy" # 3. Scan QR from clipboard (Universal Clipboard) healthsync scan # Alternative: scan from image file healthsync scan --file ~/Desktop/qr.png
bash# Check connection status healthsync status # List enabled data types healthsync types # Fetch data as CSV (default) healthsync fetch --start 2026-01-01T00:00:00Z --end 2026-12-31T23:59:59Z --types steps # Fetch multiple types as JSON healthsync fetch --start 2026-01-01T00:00:00Z --end 2026-12-31T23:59:59Z \ --types steps,heartRate,sleepAnalysis --format json | jq # Pipe to file healthsync fetch --start 2026-01-01T00:00:00Z --end 2026-12-31T23:59:59Z \ --types steps > steps.csv
Activity: steps, distanceWalkingRunning, distanceCycling, activeEnergyBurned, basalEnergyBurned, exerciseTime, standHours, flightsClimbed, workouts
Heart: heartRate, restingHeartRate, walkingHeartRateAverage, heartRateVariability
Vitals: bloodPressureSystolic, bloodPressureDiastolic, bloodOxygen, respiratoryRate, bodyTemperature, vo2Max
Sleep: sleepAnalysis, sleepInBed, sleepAsleep, sleepAwake, sleepREM, sleepCore, sleepDeep
Body: weight, height, bodyMassIndex, bodyFatPercentage, leanBodyMass
Config stored at ~/.healthsync/config.json (permissions: 0600):
json{ "host": "192.168.1.x", "port": 8443, "fingerprint": "sha256-certificate-fingerprint" }
Token stored in macOS Keychain under service org.mvneves.healthsync.cli.
The CLI validates server certificates by SHA256 fingerprint (TOFU model):
Host validation restricts connections to:
localhost, *.local domains192.168.*, 10.*, 172.16-31.*::1, link-local: fe80::Tokens never stored in config file - always in Keychain with:
kSecAttrAccessibleWhenUnlocked protection classorg.mvneves.healthsync.clitoken-{host}ai-health-sync-ios-clawdbot/
├── iOS Health Sync App/ # Swift 6 iOS app
│ ├── Services/Security/ # CertificateService, KeychainStore, PairingService
│ ├── Services/HealthKit/ # HealthKitService, HealthSampleMapper
│ ├── Services/Network/ # NetworkServer (TLS), HTTPTypes
│ └── Services/Audit/ # AuditService (SwiftData)
└── macOS/HealthSyncCLI/ # Swift Package CLI"No devices found":
"Pairing code expired":
"Certificate mismatch":
~/.healthsync/config.json and re-pair"Connection refused":
healthsync status --dry-run to test without connectingOther measured skills in the registry, with their headline benchmark lift.