/install garmin-connect-health
Garmin Connect Health Data Skill
Fetch comprehensive health & fitness data from Garmin Connect for your AI agent.
Data Coverage
| Category | Fields |
|---|---|
| Activity | Steps, distance, calories (active + BMR), floors, intensity minutes |
| Heart Rate | Min/max/resting heart rate |
| Sleep | Duration, score, deep/light/REM/awake breakdown, stress during sleep |
| HRV | Last night avg, 5min peak, weekly avg, status (balanced/unbalanced), baseline |
| Body Battery | Current level, daily min/max |
| SpO2 | Average and minimum blood oxygen |
| Respiration | Waking and sleep breathing rate |
| Stress | Average/max, rest/low/medium/high duration breakdown |
| Training Status | Overreaching/Highly Active/Productive/Maintaining/Recovery/Detraining + acute/chronic load ratio |
| Training Readiness | Score (0-100) |
| Fitness Metrics | VO2 Max, fitness age, endurance score, hill score |
| Race Predictions | 5K/10K/Half/Marathon predicted times |
| Weight/Body Comp | Weight (kg), body fat %, BMI (requires Garmin Index scale) |
| Hydration | Intake (ml) vs goal |
| Activities | Individual workouts with HR, duration, calories, elevation, training effect |
| Weekly Summary | Total/avg steps for the week |
Setup
1. Install dependency
pip install garminconnect
2. Set credentials (choose one method)
Option A -- Environment variables:
export GARMIN_EMAIL="[email protected]"
export GARMIN_PASSWORD="yourpassword"
Option B -- CLI args:
python3 garmin_health.py --email [email protected] --password yourpassword
Option C -- macOS Keychain:
security add-generic-password -a "[email protected]" -s "garmin_connect" -w "yourpassword"
Option D -- Credentials file:
echo -e "[email protected]\
password=yourpassword" > ~/.garmin_credentials
chmod 600 ~/.garmin_credentials
3. Set region (China accounts only)
If your Garmin account was registered in China, add this to your shell profile (~/.zshrc / ~/.bashrc) once:
export GARMIN_IS_CN=true
This tells the skill to use connect.garmin.com.cn instead of the global endpoint -- more reliable for mainland China IPs and prevents 429 rate-limit errors. Skip this step if you have a global Garmin account.
4. First run
First login may require MFA verification. You'll be prompted to enter a code sent to your email.
5. Use with OpenClaw
Ask your AI agent:
- "Show my health data"
- "How did I sleep last night?"
- "What's my HRV?"
- "Am I overtraining?"
Usage
# Fetch today's data (default)
python3 garmin_health.py
# Fetch specific date
python3 garmin_health.py --date 2026-03-16
# Show latest cached data
python3 garmin_health.py --show
# Use Garmin Connect CN endpoint (Chinese accounts / mainland China IP)
python3 garmin_health.py --cn
# With credentials
python3 garmin_health.py --email [email protected] --password pass
Data Storage
~/.garmin_health/YYYY-MM-DD.json-- Daily snapshots~/.garmin_health/latest.json-- Most recent fetch~/.garminconnect/-- OAuth token cache
Override with env vars:
GARMIN_DATA_DIR-- Change data directoryGARMIN_TOKENSTORE-- Change token cache directoryGARMIN_IS_CN=true-- Use Garmin Connect CN endpoint (set once in shell profile)
Supported Languages
All labels and output in English. JSON field names are English by design.
Security & Privacy
- Your credentials only -- this skill authenticates with Garmin Connect using your own account credentials. No credentials are shared with or stored by this skill.
- Local storage only -- all fetched health data is saved as JSON files on your own machine. No data is sent to any third party.
- Token caching -- after first login, an OAuth token is cached locally (
~/.garminconnect/). Subsequent runs reuse this token and do not re-send your password. - Recommended auth -- use macOS Keychain or environment variables rather than
--passwordCLI flag to avoid password exposure in shell history. - Official API only -- all requests go directly to
connect.garmin.com(orconnect.garmin.com.cnfor CN accounts). No proxies or intermediaries.
Requirements
- Python 3.10+
garminconnectlibrary- A Garmin Connect account
- Device: Any Garmin watch/fitness tracker synced to Garmin Connect
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install garmin-connect-health - 安装完成后,直接呼叫该 Skill 的名称或使用
/garmin-connect-health触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Garmin Connect Health 是什么?
Fetch health and fitness data from Garmin Connect -- 40+ metrics including sleep, HRV, stress, body battery, SpO2, VO2 Max, training status, and activities.... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 226 次。
如何安装 Garmin Connect Health?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install garmin-connect-health」即可一键安装,无需额外配置。
Garmin Connect Health 是免费的吗?
是的,Garmin Connect Health 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Garmin Connect Health 支持哪些平台?
Garmin Connect Health 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Garmin Connect Health?
由 dw1161(@dw1161)开发并维护,当前版本 v1.0.8。