核心功能
Garmin Connect CLI (gc) 是一个命令行工具,提供对 Garmin Connect 平台健康与健身数据的非交互式读取能力。核心功能覆盖:
- 健康数据:步数、心率、睡眠、压力、Body Battery、血氧、血压、呼吸、饮水等日常指标
- 活动数据:活动列表查询、详情获取、分段数据、心率/功率区间、天气、装备关联,支持 FIT/GPX/TCX/KML/CSV 格式下载
- 进阶指标:VO2max、HRV、训练准备度、训练状态、健身年龄、比赛预测、耐力评分、乳酸阈值、骑行 FTP
- 设备管理:设备列表、设置查看、闹钟、太阳能充电数据
- 训练计划:训练、训练计划、 menstrual cycle 数据的查询与部分创建/更新/删除操作
- 目标与成就:记录、目标、徽章、挑战活动
显著优点
1. 全面的数据覆盖:几乎涵盖 Garmin Connect 平台所有健康、健身与训练相关数据维度,从基础步数到专业级训练指标
2. 灵活的输出格式:原生支持 --format json 机器可读输出,便于程序化解析和自动化工作流集成
3. 日期快捷操作:内置 today/yesterday/week/month 等快捷方式,简化常用时间范围查询
4. 非交互式设计:纯 CLI 操作,适合服务器定时任务、CI/CD 流水线等自动化场景
5. 训练管理:支持 workouts 的创建、更新、删除,以及训练计划的自适应调整
潜在局限与风险
1. 逆向工程依赖:非官方 Garmin API,基于私有协议逆向实现,存在 Garmin 更改接口导致工具失效的风险
2. 认证安全:需明文存储或传递邮箱密码,MFA 支持有限,存在凭证泄露风险
3. 数据写入限制:主要为读取工具,写入操作(如 workouts 创建)需精确匹配 Garmin 内部 JSON 格式,使用门槛较高
4. 无数据同步保证:非实时同步,依赖 Garmin Connect 云端数据延迟
5. 社区维护:个人维护的 Homebrew tap,长期支持稳定性存疑
适合人群
- 需要自动化导出 Garmin 健康数据的技术用户
- 进行个人运动数据分析的开发者/数据科学家
- 希望将 Garmin 数据集成到自建健康追踪系统的高级用户
- 需要批量管理训练计划的运动教练或严肃跑者
常规风险
- 账户安全:凭证泄露可能导致 Garmin 账户被恶意访问
- 服务中断:Garmin 可能随时封禁或更改非官方 API 访问
- 数据隐私:健康数据通过第三方工具传输,需评估数据泄露风险