Google Health API 推出 CLI:ghealth 是一款用于 Fitbit 数据的开源工具
ghealth 是一款全新的开源命令行工具,它封装了 Google Health API v4。该工具以一个采用 Apache 2.0 许可证的 Go 二进制文件形式发布,可将 Fitbit 和联网设备的数据转换为格式一致的 JSON。该项目发布于
此版本面向需要可靠访问步数、心率、睡眠、体重、血氧和心率变异性数据,且不想构建完整移动端或 Web 客户端的开发者和 AI 智能体。
工具以单一二进制文件发布,并内置智能体功能
ghealth 将整个客户端打包为一个可执行文件。用户下载二进制文件后,即可直接在 macOS、Linux 或 Windows 上运行。
其设计包含确定性退出代码、--dry-run 标志和 --raw 标志。该版本还附带两个 SKILL.md 文件,使 AI 智能体无需额外文档即可了解支持的命令和输出格式。
这些功能减少了基于智能体的工作流在连接健康数据源时通常会遇到的设置障碍。
40 种数据类型返回结构化 JSON
该工具目前支持 Google Health API v4 中 40 种经过验证的数据类型。支持的指标包括每日步数、静息心率、睡眠阶段、体重、SpO2 和 HRV。
无论数据源设备是什么,每次查询都会返回相同的 JSON 架构。数据可以来自 Fitbit 追踪器、Pixel Watch 设备,或任何通过 Google Health 同步的第三方设备。
这种一致性使智能体从多个可穿戴设备导入数据时,无需使用自定义解析器。Google Health API v4 文档指出,响应必须对“在健康数据平台下注册的所有数据类型”采用统一架构。
OAuth 设置采用 PKCE S256 流程
用户必须在 Google Cloud 控制台中创建自己的 OAuth 凭据。随后,该工具会在终端内运行 PKCE S256 授权流程。
二进制文件中不会存储客户端密钥。该流程在本地完成,并返回一个刷新令牌,供工具在后续调用中使用。
这种方式在满足 Google Health API 安全要求的同时,也让工具保持轻量。
以智能体为先的设计决定命令行为
两个 SKILL.md 文件描述了所有受支持的命令,以及每个命令返回的确切 JSON 结构。智能体可以读取这些文件,并在无需人工指导的情况下生成有效调用。
确定性退出代码让调用脚本无需解析文本输出,即可将非零结果视为失败。--dry-run 标志会显示计划中的 API 请求,但不会发送该请求。
开发者可以运行 ghealth fetch --type steps --start 2026-06-01 --end 2026-06-07 --output json 之类的命令,以获取结构化的每周步数报告。例如,AI 健身教练智能体可以每周发起此调用,将返回的步数 JSON 与同一工具提供的睡眠阶段数据结合起来,为用户生成单一的个性化恢复评分。
这些控制功能使 ghealth 适用于涉及健康数据且必须保持行为可预测的自动化管道。更多指导请参阅 Google Health API v4 参考资料和 Fitbit Web API 更新日志。
当前限制和待解问题
该项目仍处于早期阶段。只有 SKILL.md 文件中列出的核心数据类型能够保证正常运行。完整 Google Health API 中的其他类型可能需要通过未来更新才能支持。
目前尚未发布公开路线图或贡献者指南。迄今为止,所有合并和问题分类工作均由唯一的维护者负责。
该工具能以多快的速度跟进底层 Google Health API 的变化,以及社区能否在初始版本发布后继续壮大,目前仍不明确。
后续关注重点
构建健康相关智能体的团队应在未来 30 天内使用现有 Fitbit 数据测试该二进制文件。40 种受支持类型中存在的任何缺口都将很快显现。
请关注首个添加新数据类型的社区拉取请求。这项变更将展示当前命令结构能否在不破坏现有智能体集成的情况下扩展。
此外,还应关注 Google Health API 更新日志。Google 宣布的任何破坏性变更都会立即检验 ghealth 能否凭借规模较小的维护团队保持同步。正如维护者所言:“我们的目标是为智能体提供一个可靠、精简的健康数据接口,让它们无需重新实现 OAuth 或 JSON 解析。”



