fitbit-analytics

💓 个人健康数据智能分析助手

🥥3总安装量 1评分人数 1
100% 的用户推荐

基于 Fitbit 官方 API 的个人健康数据分析工具,支持步数、心率、睡眠等多维度健康指标获取与自动化报告生成,数据本地处理保障隐私安全。

A

基本安全,请在特定环境下使用

  • 来自社区或个人来源,建议先隔离验证
  • ✅ 代码无危险函数(eval/exec/system/subprocess),无命令注入或代码执行风险
  • ✅ 零外部依赖,仅使用 Python 标准库,供应链攻击面极小
  • ✅ 敏感凭证通过环境变量获取,Token 缓存文件权限设置为 600,符合安全最佳实践
  • ⚠️ 需处理健康敏感数据(步数、心率、睡眠等),用户需自行确保 Fitbit API 权限最小化配置
  • ⚠️ Token 缓存存储于本地 `~/.fitbit-analytics/tokens.json`,在多用户共享环境中需注意访问控制

使用说明

核心用法

Fitbit Analytics 是一款面向个人用户的健康数据集成分析工具,通过调用 Fitbit Web API 获取用户的运动、睡眠、心率等健康指标。用户需先在 Fitbit 开发者平台创建应用并获取 OAuth 2.0 凭证(CLIENT_ID、CLIENT_SECRET、ACCESS_TOKEN、REFRESH_TOKEN),配置环境变量后即可使用。

该 Skill 提供三种主要使用方式:
1. 每日简报(fitbit_briefing.py):生成包含昨日活动、Active Zone Minutes、今日步数/卡路里/心率/睡眠等核心指标的晨间健康报告,支持文本、精简、JSON 三种输出格式

2. CLI 数据获取(fitbit_api.py):通过命令行获取指定时间范围的步数、卡路里、心率、睡眠等原始数据

3. Python API 调用:在代码中直接实例化 FitbitClient 或 FitbitAnalyzer 进行程序化数据获取与分析

此外,alerts.py 支持基于阈值的健康提醒功能,可设置步数、睡眠时长等指标的监控告警。

显著优点

  • 零外部依赖:仅使用 Python 标准库(urllib、json、argparse 等),无 pip 包依赖,部署简单且供应链攻击风险极低
  • 数据隐私优先:所有健康数据仅在本地处理,不传输至第三方服务器,Token 缓存采用 600 权限保护
  • 完善的异常处理:网络请求设置 10 秒超时,API 响应有安全的数据转换函数(_safe_float、_safe_int),错误信息不泄露敏感信息
  • 灵活的输出格式:支持文本简报、JSON 结构化数据、精简三行摘要等多种输出,便于集成至自动化工作流(如 Telegram 定时推送)
  • Token 自动刷新:内置 OAuth Token 刷新机制,避免手动重复授权

潜在缺点与局限性

  • T3 来源可信度:开发者为个人账号(kesslerio),非企业或官方组织背书,项目维护持续性存在不确定性
  • 功能覆盖有限:无法获取 Fitbit Premium 专属功能(如 Cardio Load),部分高级健康指标不可用
  • 配置门槛较高:需用户自行完成 Fitbit 开发者应用创建、OAuth 授权流程,对非技术用户不够友好
  • 单用户设计:凭证绑定单一用户,不适合多用户共享或企业级部署场景
  • 无可视化能力:仅输出原始数据或文本报告,需配合其他工具实现图表可视化

适合的目标群体

  • 健康数据爱好者:希望深度分析个人运动、睡眠趋势的技术型用户
  • 量化自我(Quantified Self)实践者:需要将 Fitbit 数据集成至个人自动化工作流(如 Notion、Telegram、Home Assistant)
  • 开发者/工程师:具备 Python 基础,希望基于 Fitbit 数据构建自定义健康应用或智能家居联动
  • 小型健康研究团队:需要批量获取脱敏健康数据进行趋势分析(需确保合规性)

使用风险

  • 凭证泄露风险:FITBIT_CLIENT_SECRET 和 REFRESH_TOKEN 属于高敏感凭证,若环境变量配置不当或日志泄露可能导致账户被接管
  • API 速率限制:Fitbit API 有严格的调用配额,高频自动化任务可能触发限流
  • 数据准确性依赖:设备佩戴方式、同步延迟可能影响数据质量,Skill 本身不提供数据校验机制
  • Token 缓存安全:虽然文件权限设置为 600,但在共享服务器或容器环境中仍存在被其他高权限用户读取的风险
  • 服务可用性依赖:Fitbit API 服务中断或策略变更将直接影响 Skill 功能

fitbit-analytics 内容

文件夹图标docs文件夹
文件夹图标references文件夹
文件夹图标scripts文件夹
手动下载zip · 19.7 kB
PRIVACY.mdtext/markdown
请选择文件