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.
npx skills add Dannykkh/skill-olympus --skill health-datagit clone --depth 1 https://github.com/Dannykkh/skill-olympusWrote 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.
[](https://agentmods.dev/skills/dannykkh/skill-olympus/health-data)<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.
<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>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.
| Model | Per session | Once 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 |
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.
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+dateupsert → 워치+폰 데이터 덮어쓰기 위험 (deviceId 포함 필요) - 로그아웃 시 pending buffer 미삭제 → 다른 사용자 데이터 업로드 위험
- Observer Query + Background Delivery 함께 사용 필수 (iOS)
- 동시 sync 방지: shared promise 패턴
Related Files
| 파일 | 역할 |
|---|---|
skills/social-login/SKILL.md |
소셜 로그인 (앱 인증과 함께 사용) |
skills/database-schema-designer/SKILL.md |
DB 스키마 설계 (파티셔닝 포함) |
| 네이티브 백엔드 작업자 | 프로젝트 Spring/JPA 버전·기존 persistence 경계·파티셔닝 테스트를 기준으로 구현 |
skills/python-backend-fastapi/SKILL.md |
FastAPI 백엔드 |
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.
- 5d ago First seen · 69 lines · 102 tokens per session scan A 9959d1b1b05e
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.
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…
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…
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…
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…
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…
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.