返回顶部
f

fitbit-trackerFitbit追踪器

Personal Fitbit integration for daily health tracking with adaptive sleep and activity reporting

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 0.2.2
安全检测
已通过
136
下载量
免费
免费
2
收藏
概述
安装方式
版本历史

fitbit-tracker

Fitbit Tracker

由官方Fitbit API驱动的便捷健康监测。无需应用,无需仪表盘——只需提问,即刻获取健康数据。

功能特性

智能睡眠追踪

  • - 自动区分小睡与主睡眠
  • 报告时长、效率及所有睡眠阶段(深睡、浅睡、快速眼动、清醒)
  • 小睡检测并单独报告

完整活动数据

  • - 步数、卡路里、距离、活跃分钟数
  • 静息心率
  • 心率区间(区间外、燃脂、心肺、峰值)

自适应报告

仅显示您询问的内容——无冗余数据。
您说...报告内容...
我睡得怎么样 / 睡眠时长、效率、所有阶段、小睡
只看步数
仅步数 | | 今天的活动 | 步数、卡路里、距离、活跃分钟、心率区间 | | 完整报告 / 全部 / 摘要 | 所有可用数据 | | fitbit / 健康 | 完整每日摘要 |

整洁格式化

  • - 数字格式便于阅读(例如8,234步)
  • 阶段按逻辑分组
  • 无原始数据堆砌

可用数据

睡眠:

  • - 时长(总睡眠时间)
  • 睡眠效率百分比
  • 睡眠评分(可用时)
  • 睡眠阶段:深睡、浅睡、快速眼动、清醒
  • 小睡时长(有记录时)

活动:

  • - 步数
  • 卡路里(总计 + 基础代谢率)
  • 距离(公里)
  • 静息心率
  • 活跃分钟数(非常活跃、较活跃、轻度活跃、久坐)
  • 心率区间

设置

1. 创建Fitbit开发者应用

  1. 1. 访问 dev.fitbit.com
  2. 登录并点击 注册应用
  3. 填写:
- 应用名称:OpenClaw Fitbit(或任意名称) - 描述:OpenClaw的Fitbit集成 - 应用网站:https://github.com/yourusername/openclaw - OAuth 2.0应用类型:选择 个人 - 回调URL:http://localhost:8080(本地使用)或您的重定向URI
  1. 4. 接受条款并注册
  2. 复制您的 客户端ID客户端密钥

2. 配置环境变量

bash
export FITBITCLIENTID=yourclientid
export FITBITCLIENTSECRET=yourclientsecret
export FITBITREDIRECTURI=http://localhost:8080
export FITBIT_TZ=Europe/London # 您的时区

或添加到 ~/.openclaw/.env:

FITBITCLIENTID=yourclientid
FITBITCLIENTSECRET=yourclientsecret
FITBITREDIRECTURI=http://localhost:8080
FITBIT_TZ=Europe/London

3. 身份验证

运行OAuth登录脚本:
bash
python3 scripts/fitbitoauthlogin.py

此操作将:

  • - 在浏览器中打开Fitbit授权页面
  • 请求您批准访问
  • 将授权码交换为令牌
  • 将令牌保存到 ~/.config/openclaw/fitbit/token.json

令牌过期时会自动刷新。

命令

该技能使用三步流水线:

bash

步骤1:从Fitbit API获取原始数据


重要提示:对于睡眠查询(早晨),使用 --date today 而非 yesterday!


Fitbit将昨晚的睡眠归入今天的日期。


python3 scripts/fitbitfetchdaily.py --date today --out /tmp/fitbit_raw.json

步骤2:规范化为整洁格式(提取实际睡眠时间、阶段、活动)

python3 scripts/fitbitnormalizedaily.py /tmp/fitbitraw.json --out /tmp/fitbitday.json

步骤3:渲染显示(使用 --channel discord、telegram 或 generic)

python3 scripts/fitbitrender.py /tmp/fitbitday.json --channel discord

指定日期(YYYY-MM-DD格式):
bash
python3 scripts/fitbitfetchdaily.py --date 2026-03-25 --out /tmp/fitbit_raw.json

仅睡眠部分:
bash
python3 scripts/fitbitrender.py /tmp/fitbitday.json --channel discord --section sleep

关键日期规则: 当用户在早晨询问睡眠情况时(例如我睡得怎么样),使用 --date today。Fitbit的睡眠API将睡眠关联到您醒来的日期,因此昨晚的睡眠(3月25日晚上11点→3月26日早上7点)会出现在日期today(3月26日)下。仅在您明确需要前一天完整活动数据的活动查询时,才使用 --date yesterday。

重要提示: 始终运行完整流水线(获取→规范化→渲染)。切勿直接使用原始API的 duration 字段——它包含睡眠窗口内的清醒时段。规范化后的 duration_minutes 字段(映射到Fitbit的 minutesAsleep)才是实际睡眠时间。

使用示例

睡眠报告:

Fitbit — 2026-03-21

  • - 睡眠:7小时32分钟(评分85)| 93%效率

- 阶段:深睡:1小时42分钟,浅睡:3小时20分钟,快速眼动:1小时45分钟,清醒:45分钟
  • - 小睡:1小时6分钟

完整每日摘要:

Fitbit — 2026-03-21

  • - 睡眠:7小时32分钟(评分85)| 93%效率

- 阶段:深睡:1小时42分钟,浅睡:3小时20分钟,快速眼动:1小时45分钟,清醒:45分钟
  • - 小睡:1小时6分钟
  • 步数:8,234
  • 卡路里:1,892(基础代谢率1,048)
  • 距离:6.2公里
  • 静息心率:58次/分钟

- 活跃分钟:非常活跃:45分钟,较活跃:23分钟,轻度活跃:1小时24分钟,久坐:8小时12分钟
- 心率区间:区间外:12小时,燃脂:1小时30分钟,心肺:32分钟,峰值:8分钟

仅步数:

  • - 步数:8,234

Python依赖

无需第三方依赖。使用Python标准库:

  • - urllib.request - HTTP请求
  • json - JSON解析
  • datetime - 日期处理
  • zoneinfo - 时区支持(Python 3.9+)

故障排除

缺少环境变量:FITBITCLIENTID

环境变量未加载。加载您的 .env 文件或确保变量已在网关环境中设置: bash source ~/.openclaw/.env

令牌过期错误

令牌会自动刷新。如果反复出现此错误:
  1. 1. 删除 ~/.config/openclaw/fitbit/token.json
  2. 重新运行 python3 scripts/fitbitoauthlogin.py

未找到该日期的数据

  • - 检查 FITBIT_TZ 是否与您的时区匹配
  • 尝试 --date yesterday 确认数据是否存在
  • 验证Fitbit账户中该日期是否有数据

小睡未与主睡眠分离

这可能表明您的Fitbit账户上 isMainSleep 标志未正确设置。该技能通过此标志过滤记录——某些较旧的Fitbit设备无法正确设置该标志。

睡眠评分未显示

并非所有Fitbit账户/设备都提供睡眠评分。这是Fitbit API的限制,而非技能问题。效率和阶段在可用时始终会报告。

使用的API端点

  • - GET /1/user/-/activities/date/{date}.json - 每日活动摘要
  • GET /1.2/user/-/sleep/date/{date}.json - 睡眠记录

参考资料

  • - API详情:references/fitbitapi.md
  • 输出模式:references/outputschema.md

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 fitbit-tracker-1776068464 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 fitbit-tracker-1776068464 技能

通过命令行安装

skillhub install fitbit-tracker-1776068464

下载

⬇ 下载 fitbit-tracker v0.2.2(免费)

文件大小: 16.28 KB | 发布时间: 2026-4-14 13:25

v0.2.2 最新 2026-4-14 13:25
v0.2.2 - Skill invocation fix, sleep field correction, date resolution

### Bug Fixes
- SKILL.md frontmatter: Added missing triggers for auto-activation on sleep/fitness queries
- Timezone default: Was hardcoded to UTC instead of respecting FITBIT_TZ env var. Fixed.
- Sleep field name mismatch: duration_minutes vs minutesAsleep corrected
- Schema docs updated to reflect correct duration_minutes field name

### Documentation
- 3-step pipeline documented (fetch → normalize → render)
- Date rule: Use --date today for morning sleep queries (Fitbit returns last night's sleep under today's date)
- Duration warning: Never use raw API duration field directly (includes wake time); always use normalized duration_minutes

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部