用途:garmin-pp-cli 是驱动 Garmin Connect 的命令行工具,把整个账号的历史数据抓取到本地 SQLite 归档,从而回答跨越数周乃至数年的睡眠、训练负荷、心率区间、VO2 max、静息心率、步数等问题,而非受限于 Garmin 每次请求 28 天的上限。
主要能力:history 从最早一天起逐日填充本地归档,每个序列保留书签以便中断续跑;insights sleep 与 insights training 从归档中输出睡眠时长、评分、阶段分布、训练量、心率区间等 JSON;sql 可对归档执行只读单条 SELECT/WITH 查询;auth login 按账号隔离 home 并拒绝存储非指定邮箱的令牌。
使用方式:先安装 CLI,npx -y @mvanhorn/printing-press-library install garmin --cli-only,验证 garmin-pp-cli --version;失败可回退 go install github.com/mvanhorn/printing-press-library/library/health/garmin/cmd/garmin-pp-cli@latest。随后 garmin-pp-cli auth login --email you@example.com 登录,再运行 garmin-pp-cli history --since all 填充归档。查询示例:garmin-pp-cli insights sleep --days 90 --agent --select period,coverage.nights_with_stats,duration_minutes.avg,score.avg。
适用场景:本人 Garmin 账号的长期趋势分析、跨序列 SQL 关联、多家庭成员各自独立 home。
限制:所有命令只读,不写回 Garmin;归档未填充时趋势查询返回 null;不适用于实时设备读数、其他服务数据;每账号需独立登录;令牌需通过 GARMIN_ACCESS_TOKEN 或 GARMIN_TOKEN 提供时不会被刷新。