核心用法
Garmin Connect CLI(gc)是一款非交互式命令行工具,用于直接访问 Garmin Connect 平台的健康、健身及活动数据。用户可通过 Homebrew 快速安装,支持邮箱/密码及 MFA 认证登录。
数据覆盖范围极广:涵盖日常健康指标(步数、心率、睡眠、压力、Body Battery)、血氧、呼吸、血压、月经追踪;运动活动全生命周期管理(查询、筛选、下载 FIT/GPX/TCX、上传);高级训练指标(VO₂max、HRV、训练准备度、乳酸阈值、骑行 FTP、耐力/爬坡评分);设备管理、目标记录、徽章挑战、装备追踪等。
特色功能:
- 日期智能快捷词(today/yesterday/week/month)与范围查询
- JSON/表格双格式输出,便于脚本集成
- 训练计划与结构化训练(Workout)的创建、更新、下载,支持 JSON 或简写语法定义训练步骤
- 原始 API 直连能力,可调用未封装的 Garmin Connect 端点
显著优点
1. 数据主权:打破 Garmin 官方 App 的封闭性,用户可批量导出原始数据,用于自定义分析或迁移。
2. 自动化友好:CLI 设计适合 Crontab、CI/CD 或数据处理 Pipeline 集成。
3. 训练深度管理:支持结构化训练创建(含区间、功率/心率目标、重复组),填补官方 web 端功能空白。
4. 多维度聚合:周/月趋势、装备统计、太阳能充电数据等细粒度查询。
潜在缺点与局限性
- 认证依赖:需明文存储或交互式输入 Garmin 账号密码,MFA 流程增加自动化复杂度。
- 非官方实现:基于私有 API 逆向,存在 Garmin 封锁接口或变更协议的风险。
- 无数据可视化:纯文本/JSON 输出,需配合 Grafana、Python 等工具做图表呈现。
- 用户门槛:训练步骤 JSON Schema 较为复杂,普通用户需学习成本。
适合人群
- 数据极客与量化自我(Quantified Self)实践者
- 耐力运动员(铁三、马拉松、骑行)需深度分析训练负荷与恢复状态
- 开发者构建健康数据同步或备份工作流
- 教练管理多人训练计划(结合脚本批量操作)
常规风险
- 账号安全:凭证泄露可能导致 Garmin 账户被盗,建议启用 MFA 并限制自动化脚本的权限环境。
- API 稳定性:非官方工具,功能可能随 Garmin 服务端更新而失效。
- 隐私合规:导出数据含敏感健康信息,需遵守 GDPR/HIPAA 等法规的本地存储与处理要求。
- 数据完整性:部分高级指标(如训练准备度)依赖设备固件版本,可能存在同步延迟或缺失。