Garmin Tracker

🏃 Garmin 训练数据自动同步管家

自动化同步 Garmin 训练数据,整合历史活动与训练计划,支持浏览器会话认证与本地数据重建,适合跑步者追踪进度。

收藏
6.5k
安装
1.4k
版本
1.0.1
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

Garmin Tracker 是一个专为 Garmin 用户设计的训练数据同步技能,通过浏览器自动化从 Garmin Connect 提取跑步活动与训练计划信息,并维护结构化的 garmin_tracking.json 文件。

主要流程:
1. 数据抓取:使用 Playwright 浏览器引擎访问 Garmin 活动列表和训练计划页面

2. 本地重建:读取现有 JSON 文件,保留 planNamerecurring_activities,重建 historysummary

3. 计划同步:更新 currentWeekupcoming 训练安排

4. 验证归档:通过 Python 脚本进行模式校验和摘要重计算

认证方式(优先级递减):

  • 浏览器现有会话(推荐)
  • 引导用户手动登录
  • 凭证回退模式(需用户明确授权)

技术约束:

  • 固定起始日期 2026-02-01
  • 严格控制数据范围:仅列表/表格字段,不抓取 GPS 轨迹、功率、步频等原始时序数据
  • 标准化活动字段:type、distanceKm、durationSec、avgPaceSecPerKm、avgHrBpm、calories、sourceId

显著优点

1. 自动化程度高:单次配置后可持续同步,减少手动导出导入
2. 数据结构清晰:强制模式约束,确保跨工具兼容性

3. 安全优先设计:浏览器会话优先,凭证模式有严格清理规则

4. 模块化脚本:分离重建、同步、验证功能,便于调试和维护

5. 故障恢复机制:内置浏览器状态恢复序列(tabs → focus → snapshot)

潜在局限

1. 依赖浏览器环境:必须安装 playwright-core,对无 GUI 环境配置要求较高
2. 认证脆弱性:Garmin 页面结构变更可能导致登录流程失效

3. 数据深度有限:故意不抓取详细telemetry,不适合需要深度分析的用户

4. 日期硬编码2026-02-01 起始日期无法配置,历史数据追溯受限

5. 单用户设计:无多账户支持,家庭共享场景需手动切换

适合人群

  • 需要定期追踪训练进度但不想手动记录数据的 Garmin 跑步用户
  • 希望将训练计划与历史活动整合到统一 JSON 工作流的技术用户
  • 已有 OpenClaw 环境配置、能接受浏览器自动化方案的进阶用户

常规风险

| 风险类别 | 说明 | 缓解措施 |
|---------|------|---------|
| 会话过期 | Garmin 登录状态失效 | 明确引导重新登录流程 |
| 凭证泄露 | 回退模式下的密码处理 | 强制内存清理,禁止持久化存储 |
| 数据覆盖 | 重建流程可能丢失未归档数据 | 建议重建前手动备份 |
| 页面结构变更 | Garmin UI 更新导致选择器失效 | 依赖稳定列表/表格字段,降低 Fragility |
| 网络不稳定 | 同步中断导致 JSON 损坏 | 验证脚本前置检查 |

该技能体现了"最小可行抓取"的设计哲学,在自动化便利性与数据安全之间取得平衡,适合作为个人训练管理流水线的可靠数据源。

Garmin Tracker 内容

scripts文件夹
__tests__文件夹
fixtures文件夹
手动下载zip · 12.2 kB
training-plan-lines.jsonapplication/json
请选择文件