health-data

health-data is a skill for Claude Code from Dannykkh/skill-olympus. It costs 102 tokens per session (854 once invoked), scanned A, original, MIT.

A development guide for collecting and synchronising health data from Android Health Connect and Apple HealthKit. These are operating-system services that store data such as heart rate, sleep, and steps for approved apps.

In plain words
What is it for?
Use it when building health-data features with React Native, Expo, Swift, Kotlin, or web applications.
Why use it?
It explains how to handle changing permissions, deleted records, duplicate data, and incremental synchronisation between devices, apps, servers, and databases.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the skill-olympus plugin — 98 skills, 7 commands, 42 agents, 5 MCP servers shipped together

Good fit Use it when building health-data features with React Native, Expo, Swift, Kotlin, or web applications.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/dannykkh/skill-olympus/health-data
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add Dannykkh/skill-olympus --skill health-data
Clone the repo
git clone --depth 1 https://github.com/Dannykkh/skill-olympus

Made for: Claude Code.

Or install skill-olympus, the plugin that ships this one along with the rest of its 98 skills, 7 commands, 42 agents, 5 MCP servers.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for health-data

README.md
[![agentmods](https://agentmods.dev/badge/skills/dannykkh/skill-olympus/health-data/github.svg)](https://agentmods.dev/skills/dannykkh/skill-olympus/health-data)
Your own site
<a href="https://agentmods.dev/skills/dannykkh/skill-olympus/health-data"><img src="https://agentmods.dev/badge/skills/dannykkh/skill-olympus/health-data/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for health-data

Your own site · 80×15
<a href="https://agentmods.dev/skills/dannykkh/skill-olympus/health-data"><img src="https://agentmods.dev/badge/skills/dannykkh/skill-olympus/health-data.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 102 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 854 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00102 $0.00854
Opus 5 $0.00051 $0.00427
Sonnet 5 $0.00020 $0.00171
Haiku 4.5 $0.00010 $0.00085

Measured 5d ago against content hash 9959d1b1b05e, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-09, from the pricing page.

Security

Grade A, and why

health-data scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/health-data/SKILL.md · 69 lines

What it actually says

Health Data Integration Guide

Health Connect(Android)와 HealthKit(iOS)를 활용한 건강 데이터 수집/동기화/저장 종합 가이드. React Native(Expo), Swift, Kotlin, Web 환경에서의 구현 패턴과 실전 gotcha 포함. 심박수, 수면, 걸음, 활동 에너지 등 주요 데이터 타입별 처리법.

Trigger

다음 키워드에 자동 활성화:

  • "Health Connect", "HealthKit", "헬스커넥트", "헬스킷"
  • "심박수", "수면 데이터", "걸음 수", "heart rate", "sleep data", "steps"
  • "건강 데이터 동기화", "health sync", "백그라운드 동기화"
  • "HKAnchoredObjectQuery", "getChanges", "health permission"

핵심 개념: 건강 데이터는 "내 데이터"가 아니다

건강 데이터의 가장 큰 함정: 우리 앱이 데이터의 주인이 아니다.

Health Connect/HealthKit은 OS가 관리하는 공유 저장소입니다. 다른 앱이 데이터를 쓸 수 있고, 사용자가 직접 삭제할 수도 있습니다.

[워치/센서] → [Health Connect / HealthKit] → [우리 앱] → [백엔드 서버] → [DB]
               ↑ 다른 앱도 읽기/쓰기      ↑ 여기서부터 우리 책임
               ↑ 사용자가 직접 삭제 가능

이것이 의미하는 것:

  • 데이터가 갑자기 사라질 수 있다 (사용자 삭제, 앱 제거)
  • 같은 시간대에 다른 앱이 쓴 중복 데이터가 있을 수 있다
  • 권한이 언제든 취소될 수 있다
  • **증분 동기화(incremental sync)**가 필수 — 매번 전체를 다시 읽으면 비용 폭발

상세 내용

이 스킬의 전체 내용(플랫폼 비교, 데이터 타입별 처리, 동기화 아키텍처, 권한 관리, 삭제 전파, 로컬 캐시, 워치 연동, 디버깅 가이드)은 글로벌 설치본을 참조하세요.

핵심 gotcha 요약:

  • Health Connect DeletionChange에 recordType 없음 → 데이터 타입별 별도 token 유지
  • iOS authorizationStatus()는 read 권한을 정확히 알려주지 않음
  • 심박수 raw 저장 시 파티셔닝 필수 (월 수만 row)
  • 수면 sleepDate 단위 upsert → 낮잠+밤잠 덮어쓰기 위험
  • 걸음 수 user+date upsert → 워치+폰 데이터 덮어쓰기 위험 (deviceId 포함 필요)
  • 로그아웃 시 pending buffer 미삭제 → 다른 사용자 데이터 업로드 위험
  • Observer Query + Background Delivery 함께 사용 필수 (iOS)
  • 동시 sync 방지: shared promise 패턴
파일 역할
skills/social-login/SKILL.md 소셜 로그인 (앱 인증과 함께 사용)
skills/database-schema-designer/SKILL.md DB 스키마 설계 (파티셔닝 포함)
네이티브 백엔드 작업자 프로젝트 Spring/JPA 버전·기존 persistence 경계·파티셔닝 테스트를 기준으로 구현
skills/python-backend-fastapi/SKILL.md FastAPI 백엔드
Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 5d ago First seen · 69 lines · 102 tokens per session scan A 9959d1b1b05e

Subscribe to this mod's changes

health-data is a skill published in the GitHub repository Dannykkh/skill-olympus (5 stars, last pushed today), licensed MIT. It adds 102 tokens to every session and 854 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.

Related

Other skills, from other repositories

accessorysetupkit

Discover and configure Bluetooth and Wi-Fi accessories using AccessorySetupKit. Use when presenting a privacy-preserving accessory picker, defining discovery descriptors for BLE or Wi-Fi devices, handling accessory session events, migrating from CoreBluetooth permission-based scanning, or setting up accessories…

dpearson2699/swift-ios-skills · 62 tokens

core-bluetooth

Build direct Bluetooth Low Energy workflows with Core Bluetooth. Use when implementing BLE central or peripheral GATT communication, scanning or connecting with CBCentralManager, discovering services and characteristics, reading/writing/subscribing with CBPeripheral, publishing local services with CBPeripheralManager…

dpearson2699/swift-ios-skills · 105 tokens

dockkit

Control motorized camera docks and enable intelligent subject tracking using DockKit. Use when discovering DockKit-compatible accessories, implementing camera subject tracking for faces or bodies, controlling dock motors for pan and tilt, configuring framing behavior, setting regions of interest, or building video…

dpearson2699/swift-ios-skills · 60 tokens

audioaccessorykit

Support automatic audio switching for paired third-party Bluetooth headphones or earbuds with AudioAccessoryKit. Use when a companion app registers an audio accessory, an app extension reports worn/removed placement or connected source-device changes, or AccessoryControlDevice capabilities and errors need handling. Do…

dpearson2699/swift-ios-skills · 75 tokens

core-motion

Access Core Motion accelerometer, gyroscope, magnetometer, device-motion, pedometer, activity-recognition, altitude, headphone motion, batched high-frequency workout motion, and water-submersion/depth data. Use when reading device sensors, counting steps, detecting walking/running/driving/cycling, tracking altitude…

dpearson2699/swift-ios-skills · 87 tokens

core-nfc

Read and write NFC tags using CoreNFC. Use when scanning NDEF tags, reading ISO7816/ISO15693/FeliCa/MIFARE tags, writing NDEF messages, handling NFC session lifecycle, configuring NFC entitlements, or implementing background tag reading in iOS apps.

dpearson2699/swift-ios-skills · 62 tokens