自然对话查询 Garmin 数据——如“我滑雪最快速度是多少?”、“昨晚睡得如何?”、“下午3点心率多少?”。访问睡眠分期、身体电量、HRV、最大摄氧量、训练准备程度、身体成分、血氧饱和度等20多项指标,下载 FIT/GPX 文件分析路线,查询任意点的海拔或配速,生成交互式健康仪表盘。从随意的“展示本周运动”到深度的“分析我的恢复与训练负荷对比”,应有尽有。
Garmin 健康分析 QQuery 健康测量标准来自 Garmin 连接并生成交互 HTML 图表是一项面向实际任务的技能,主要用于两个安装路径;此技能支持两个不同的设置 ::: Clawdbot Skill( 此指南)。
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
从 Garmin Connect 查询健康指标,并生成交互式 HTML 图表。
本技能支持 两种不同配置方式:
请根据您的实际使用场景选择对应路径。您也可以同时启用两种方式!
pip3 install garminconnect
您有三种方式提供 Garmin Connect 登录凭据:
将凭据添加至 ~/.clawdbot/clawdbot.json:
{
"skills": {
"entries": {
"garmin-health-analysis": {
"enabled": true,
"env": {
"GARMIN_EMAIL": "your-email@example.com",
"GARMIN_PASSWORD": "your-password"
}
}
}
}
}
提示:您也可通过 Clawdbot UI 的“Skills 设置”面板设置这些参数。
在技能目录中创建配置文件:
cd ~/.clawdbot/skills/garmin-health-analysis # 或:cd/skills/garmin-health-analysis cp config.example.json config.json # 编辑 config.json,填入您的邮箱和密码
config.json 示例:
{
"email": "your-email@example.com",
"password": "your-password"
}
注意:config.json 已被加入 .gitignore,以保障您的凭据安全。
认证时直接通过命令行传入凭据:
python3 scripts/garmin_auth.py login --email YOUR_EMAIL@example.com --password YOUR_PASSWORD
登录 Garmin Connect 并保存会话令牌:
python3 scripts/garmin_auth.py login
凭据来源优先级顺序如下:
--email、--password)config.json)GARMIN_EMAIL、GARMIN_PASSWORD)skills.entries.garmin-health-analysis.env)会话令牌将存储于 ~/.clawdbot/garmin-tokens.json,并自动刷新。
检查认证状态:
python3 scripts/garmin_auth.py status
使用 scripts/garmin_data.py 获取 JSON 格式数据:
# 睡眠数据(默认最近 7 天) python3 scripts/garmin_data.py sleep --days 14 # 身体电量(Garmin 的恢复指标) python3 scripts/garmin_data.py body_battery --days 30 # HRV 数据 python3 scripts/garmin_data.py hrv --days 30 # 心率(静息、最大、最小值) python3 scripts/garmin_data.py heart_rate --days 7 # 运动/训练记录 python3 scripts/garmin_data.py activities --days 30 # 压力水平 python3 scripts/garmin_data.py stress --days 7 # 综合摘要(含各项均值) python3 scripts/garmin_data.py summary --days 7 # 自定义日期范围 python3 scripts/garmin_data.py sleep --start 2026-01-01 --end 2026-01-15 # 用户档案 python3 scripts/garmin_data.py profile
输出为标准输出(stdout)的 JSON 数据,可解析后用于回答用户问题。
使用 scripts/garmin_chart.py 生成交互式 HTML 可视化图表:
# 睡眠分析(时长 + 分数) python3 scripts/garmin_chart.py sleep --days 30 # 身体电量恢复趋势图(彩色编码) python3 scripts/garmin_chart.py body_battery --days 30 # HRV 与静息心率趋势 python3 scripts/garmin_chart.py hrv --days 90 # 运动汇总(按类型、卡路里) python3 scripts/garmin_chart.py activities --days 30 # 全功能仪表盘(含全部 4 类图表) python3 scripts/garmin_chart.py dashboard --days 30 # 输出至指定文件 python3 scripts/garmin_chart.py dashboard --days 90 --output ~/Desktop/garmin-health.html
图表将在默认浏览器中自动打开。图表基于 Chart.js 构建,采用现代渐变配色设计,包含统计卡片与交互式工具提示。
| 用户提问 | 对应操作 |
|---|---|
| “我昨晚睡得怎么样?” | garmin_data.py summary --days 1,报告睡眠时长与分数 |
| “我这周恢复情况如何?” | garmin_data.py body_battery --days 7,报告平均值与趋势 |
| “展示我上个月的整体健康状况” | garmin_chart.py dashboard --days 30 |
| “我的 HRV 在提升吗?” | garmin_data.py hrv --days 30,分析趋势变化 |
| “我这周做了哪些运动?” | garmin_data.py activities --days 7,列出含详细信息的运动记录 |
| “我的静息心率如何?” | garmin_data.py heart_rate --days 7,报告平均值与趋势 |
Garmin 专有的恢复指标,综合 HRV、压力、睡眠与活动数据计算得出:
基于睡眠时长、各阶段分布及干扰次数得出的整体质量评分:
单位为毫秒(ms),数值越高通常表示状态越好:
数值越低,通常代表心血管健康水平越高:
基于全天 HRV 分析得出:
当用户请求深入洞察或希望理解自身数据趋势时,请参考 references/health_analysis.md,其中涵盖:
python3 scripts/garmin_data.py summary --days Nreferences/health_analysis.md 中的解读框架python3 scripts/garmin_auth.py login ...garminconnect 导入失败,请执行:pip3 install --upgrade garminconnect~/.clawdbot/garmin-tokens.json| 功能 | Garmin | Whoop |
|---|---|---|
| 恢复指标 | 身体电量(0–100) | 恢复分数(0–100%) |
| HRV 追踪 | 支持(夜间平均值) | 支持(更详细) |
| 睡眠阶段 | 浅睡、深睡、REM、清醒 | 浅睡、慢波睡眠(SWS)、REM、清醒 |
| 运动追踪 | 内置 GPS,支持多种运动模式 | 压力分数(0–21) |
| 压力 | 全天压力水平 | 未直接追踪 |
| API | 非官方(garminconnect) | 官方 OAuth |
| 设备类型 | 智能手表、健身追踪器 | 仅手环类可穿戴设备 |
references/api.md — Garmin Connect API 说明(非官方)references/health_analysis.md — 循证健康数据分析解读相关专题
热门下载
相关下载
精品课程
共6课时 | 54.6万人学习
共89课时 | 133.4万人学习
共49课时 | 82.2万人学习