dsh-garmin-coach: Garmin Connect 运动 AI 教练插件

前言

DeepSeek Harness (DSH) 采用「一切皆插件」的架构。dsh-garmin-coach 是由开发者 csustyang 维护的一款插件,旨在将用户的 Garmin Connect 运动数据接入 DSH,通过本地 AI 分析生成训练建议和计划。

该插件通过逆向分析 Garmin Connect 的内部接口进行数据同步,数据完全本地化存储。使用前需注意:佳明账号存在因异常登录被限流或封禁的风险,且 DSH 在沙箱模式下需要特殊权限才能写入本地数据。

核心功能

数据同步与认证

插件支持 CN 账号与国际账号登录,通过 DI OAuth2 实现认证。Access Token 有效期约 1 小时,支持自动刷新。同步采用增量策略,避免重复拉取全量数据,并支持手动触发同步以防止被 Garmin 行为指纹检测。

运动看板与分析

同步后,插件会在 DSH 侧栏提供运动看板,展示 30+ 维度的分析指标,包括距离、配速、心率、HR-Pace、步频、TRIMP 指数、时段分布及一致性等。

AI 训练能力

基于同步的数据,AI 可以生成训练建议(如 PB 变化趋势、跑量建议)以及结构化的训练计划。用户可以在对话中直接下达指令生成计划并保存,或在训练后记录日记。

本地持久化

所有数据(同步数据、训练计划、训练日记)均存储在本地 ~/data/ 目录下,不上传服务器。密码和邮箱仅在登录时通过 HTTP Body 传递,不会持久化保存。

安装与启用

DSH 启动时只显式加载 dsh.profile.bundles 列表中的包,因此安装后需手动添加。

1. 安装插件

打开终端,进入 DSH 的 web profiles 目录并安装:

cd ~/.dsh/profiles/web
pnpm add dsh-garmin-coach

2. 配置 bundles

编辑 ~/.dsh/profiles/web/package.json,在 dsh.profile.bundles 数组末尾添加 "dsh-garmin-coach"。

"dsh": {
  "profile": {
    "bundles": [
      ...其他包,
      "dsh-garmin-coach"
    ]
  }
}

或者使用命令行直接追加:

cd ~/.dsh/profiles/web
node -e "
const fs = require('fs');
const p = JSON.parse(fs.readFileSync('package.json', 'utf8'));
if (!p.dsh.profile.bundles.includes('dsh-garmin-coach')) {
  p.dsh.profile.bundles.push('dsh-garmin-coach');
  fs.writeFileSync('package.json', JSON.stringify(p, null, 2) + '\n');
}
"

3. 重启 DSH

ddsh restart

首次配置

  1. 打开 DSH 设置,找到 Garmin Coach 卡片。
  2. 选择账号区域(CN 或 国际)。
  3. 输入邮箱与密码。
  4. 如需短信 MFA,输入验证码。
  5. 点击保存配置,等待 token 自动刷新保存。
  6. 点击「立即同步」拉取历史数据。

典型用法

在 DSH 对话中,可以直接使用自然语言调用工具:

  • 查看报告:garmin_report(month) (查看某月报告)
  • 查询成绩:garmin_best_pace(10000) (查询 10km 最佳配速)
  • 生成计划:garmin_training_plan + garmin_save_training_plan (生成并保存训练计划)
  • 记录日记:garmin_log_diary (记录今日训练感受与评分)

重要注意事项

沙箱文件访问权限

插件需要将训练计划、日记等写入 ~/data/ 目录。如果 DSH 运行在沙箱模式下,默认没有写入权限,会导致数据保存失败。
* macOS:首次写入时需在系统弹窗中允许「完整文件访问」权限。
* Windows:需在 DSH 设置的沙箱/安全选项中开启「完整文件访问」并重启。
* Linux:通常默认有权限,如有问题请检查目录权限。

账号安全与合规

插件通过逆向接口调用,非佳明官方客户端。频繁使用或批量操作可能导致账号被限流或封禁。插件仅支持学习与个人研究使用,请勿用于违反佳明服务条款的场景。

数据存储

所有数据存储在本地 ~/data/ 目录(Windows 为 DSH 启动目录下的 data 文件夹),包括 garmin.json、training-plan.json 和 training-diary.json。

总结

dsh-garmin-coach 为 DSH 用户提供了将个人运动数据转化为 AI 上下文的方案。它不需要依赖云端同步服务,完全在本地处理数据,适合希望用 AI 辅助制定训练计划的开发者。

  • 项目地址:https://github.com/csustyang/dsh-garmin-coach
  • 目录页:https://www.skillhub.cn/plugins/csustyang/dsh-garmin-coach
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜