Article summary — original

让 AI Agent 接管身体:健康数据获取与对接全路径指南 为了突破健身平台期并让 AI Agent 协助分析身体状态,作者系统探讨了如何持续获取分散在各处的健康数据。根据基础记录、算法指标与手工记录三个数据层级,文章梳理了从主流平台导出、第三方连接器到厂商原生 API 的七种获取路径与实操方案。 健康数据通常分为基础记录、算法复合指标和手工记录三层,分散于手表/手环、特定 App 及聚合平台。 轻量需求可直接借助 ChatGPT、Claude 或国内蚂蚁阿福等 App 直连 Apple Health 进行问答,但受地域和功能限制较多。 iOS 生态可通过快捷指令(如 apple-health-shortcuts-mcp)、第三方工具(Health Push、Health Auto Export)或结合 SDK 自研 App 导出 Apple Health 数据。 Android 生态主要依托 Health Connect 与 Google Health,可借助 Health Sync、Health Data Export 等工具或官方 CLI 获取。 Oura 与 WHOOP 等高阶设备支持通过开发者 API 获取数据,但需注意 OAuth 2.0 认证迁移及 WHOOP 特有的生理周期聚合逻辑。 健康数据分层与轻量级接入 运动健康数据通常分为三层:第一层为步数、心率等基础记录;第二层为 strain、readiness 等算法复合指标;第三层为饮食及感受等手工数据。对于轻量分析需求,最简单的方式是直接使用支持 Apple Health 读取的 AI 应用(如 ChatGPT、Claude 的 iOS 端,或国内的蚂蚁阿福),或者利用第三方聚合连接器服务。但由于这类服务存在地区限制、功能较浅或受制于订阅,若想长期自由分析,仍需将数据掌控在自己手中。 Apple Health 生态的导出与自研路径 针对 iOS 用户,Apple Health 作为聚合中心整合了各类穿戴设备与 App 的数据。获取方式包括:使用 iOS 快捷指令配合数据库及 MCP 插件实现增量导出;使用现成的 Health Push 或 Health Auto Export 自动推送到 NAS、服务器或云端;若具备开发能力,还可以借助 open_wearables_ios_sdk 等开源 SDK,配合 AI Agent 快速搭建自用 App 完成本地或云端同步,但需注意个人免费签名的时效限制。 Android 与 Google 平台的对接方案 在 Android 端,需区分 Google Fit、Health Connect(系统级本地数据中枢)与 Google Health(含云端 API)。非国行或部分支持写入 Health Connect 的品牌,可通过 Health Sync、Health Data Export 导出至网盘或 Google 表格。Google Health 还提供了云端 API 与官方命令行工具 google-health-cli,覆盖四十余种数据类型并自带 Agent Skill,100 名以内个人用户可免除安全审核自行配置调用。 Oura、WHOOP 与国内穿戴厂商的 API 现状 针对高阶订阅制设备,Oura 和 WHOOP 均提供开放的开发者接口,用户可通过 OAuth 2.0 接入并由 Agent 编写脚本存入本地 SQLite。需要注意 Oura 已废弃 PAT 令牌,且 WHOOP 以生理周期而非自然日计算数据。国内穿戴厂商中,小米、OPPO 和 vivo 的健康开放平台均面向企业或科研机构,暂无明确的个人接入通道;仅华为的 Health Service Kit 允许个人开发者按项目申请基础健康数据权限。

Article summary — zh

让 AI Agent 接管身体:健康数据获取与对接全路径指南 为了突破健身平台期并让 AI Agent 协助分析身体状态,作者系统探讨了如何持续获取分散在各处的健康数据。根据基础记录、算法指标与手工记录三个数据层级,文章梳理了从主流平台导出、第三方连接器到厂商原生 API 的七种获取路径与实操方案。 健康数据通常分为基础记录、算法复合指标和手工记录三层,分散于手表/手环、特定 App 及聚合平台。 轻量需求可直接借助 ChatGPT、Claude 或国内蚂蚁阿福等 App 直连 Apple Health 进行问答,但受地域和功能限制较多。 iOS 生态可通过快捷指令(如 apple-health-shortcuts-mcp)、第三方工具(Health Push、Health Auto Export)或结合 SDK 自研 App 导出 Apple Health 数据。 Android 生态主要依托 Health Connect 与 Google Health,可借助 Health Sync、Health Data Export 等工具或官方 CLI 获取。 Oura 与 WHOOP 等高阶设备支持通过开发者 API 获取数据,但需注意 OAuth 2.0 认证迁移及 WHOOP 特有的生理周期聚合逻辑。 健康数据分层与轻量级接入 运动健康数据通常分为三层:第一层为步数、心率等基础记录;第二层为 strain、readiness 等算法复合指标;第三层为饮食及感受等手工数据。对于轻量分析需求,最简单的方式是直接使用支持 Apple Health 读取的 AI 应用(如 ChatGPT、Claude 的 iOS 端,或国内的蚂蚁阿福),或者利用第三方聚合连接器服务。但由于这类服务存在地区限制、功能较浅或受制于订阅,若想长期自由分析,仍需将数据掌控在自己手中。 Apple Health 生态的导出与自研路径 针对 iOS 用户,Apple Health 作为聚合中心整合了各类穿戴设备与 App 的数据。获取方式包括:使用 iOS 快捷指令配合数据库及 MCP 插件实现增量导出;使用现成的 Health Push 或 Health Auto Export 自动推送到 NAS、服务器或云端;若具备开发能力,还可以借助 open_wearables_ios_sdk 等开源 SDK,配合 AI Agent 快速搭建自用 App 完成本地或云端同步,但需注意个人免费签名的时效限制。 Android 与 Google 平台的对接方案 在 Android 端,需区分 Google Fit、Health Connect(系统级本地数据中枢)与 Google Health(含云端 API)。非国行或部分支持写入 Health Connect 的品牌,可通过 Health Sync、Health Data Export 导出至网盘或 Google 表格。Google Health 还提供了云端 API 与官方命令行工具 google-health-cli,覆盖四十余种数据类型并自带 Agent Skill,100 名以内个人用户可免除安全审核自行配置调用。 Oura、WHOOP 与国内穿戴厂商的 API 现状 针对高阶订阅制设备,Oura 和 WHOOP 均提供开放的开发者接口,用户可通过 OAuth 2.0 接入并由 Agent 编写脚本存入本地 SQLite。需要注意 Oura 已废弃 PAT 令牌,且 WHOOP 以生理周期而非自然日计算数据。国内穿戴厂商中,小米、OPPO 和 vivo 的健康开放平台均面向企业或科研机构,暂无明确的个人接入通道;仅华为的 Health Service Kit 允许个人开发者按项目申请基础健康数据权限。

Saved original article

某一天,我站在健身房里,发现自己似乎已经有一阵子没什么进步了,隐约生出一种「怎么练来练去还是这样」的顿感。我知道,这多半是平台期。理论上,我要做的无非是调整训练量、换动作、看恢复、查饮食,必要时调整周期安排。但前提是,我得先知道自己卡在哪一环。 于是,我开始琢磨一件事:能不能让 AI Agent 来「接管」我的身体?这个需求可以拆分成三个问题: 由于篇幅问题,这三个问题,我准备分开来写。本文处理第一个问题:怎样让 AI 持续拿到我已经在记录的数据。 需要承认的是,我个人的精力与手边的设备都有限,只能实测从 Apple Health 与 Oura 获取数据的方法;其余厂商的部分,均来自公开资料的整理。如果有实际跑不通的地方,欢迎在评论区指正。 不同的获取方式之所以显得复杂,是因为健康数据并不只存在于一个地方。有些是手表直接记录的,有些经过厂商算法计算,还有一些本来就需要手动填写。为了便于理解,我个人粗浅地将运动健康数据分为三层: 第一层通常是步数、心率、睡眠时段和运动轨迹等基础记录;第二层是 readiness、strain、resilience 一类经过算法计算的指标;第三层则包括饮食、训练感受和其他手工记录。 这些数据大致分散在三类来源: 厂商或 App 大多能把第一层以及部分第二、三层信息同步给平台,但不会交出原应用里的全部内容。一方面,Apple Health 或 Health Connect 未必有对应字段;另一方面,某些复合指标本来就是订阅产品的核心卖点。因此,选择获取方式时,可以先问自己两个问题:数据是否已经进入聚合平台,以及平台里的字段够不够用。 在此基础上,下面,我将介绍七种获取数据的路径,供读者按情况参考。 如果你只想做些轻量分析,不愿花太多心力配置,最直接的选择是让 AI 产品读取现成的数据。 [ChatGPT](https://openai.com/zh-Hans-CN/index/health-in-chatgpt/) 与 [Claude](https://support.claude.com/en/articles/11869619-use-claude-with-ios-apps) 都支持在 iOS App 内接入 Apple Health。以 ChatGPT 为例,符合开放条件的用户可以授权读取健康数据,然后直接提问。 不过,这类功能的可用性受地区、账号和开放进度等条件影响,一般只在美国先上线。如果你不在美国,也没有办法获得「假装在美国」的环境,国内的蚂蚁阿福 App 也可以接入 Apple Health 并做问答。按我的实测,相关功能还比较基础,能够应付一些简单的睡眠与运动问题,复杂分析的表现则较为有限。从产品呈现来看,它更侧重体检报告解读与 AI 问诊,健康管理功能似乎并不成熟。 总的来说,这种方式胜在省心,但更适合临时查询和轻量分析;如果希望长期积累、自由查询或者更换模型,还是需要把数据保存到自己能够控制的位置。 另一种省事的路径,是使用厂商已经做好的连接器,或者让第三方服务替你完成数据汇集。得益于 AI 的火热,「能被 AI Agent 读取」正在变成这类服务的一项卖点。例如: 如果选择连接器服务,需要确认它能读取哪些字段、数据存放在哪里,以及停止订阅后能否完整导出。 如果多个设备和 App 已经把数据写入同一个平台,从平台统一导出,往往比逐个连接厂商更省事。Apple Health、Health Connect 与 Google Health 都承担了这样的角色,但三者的工作方式并不完全相同。 想到要把健康数据和 AI Agent 对接,我的第一反应就是从 Apple Health 入手。一方面,Apple Watch 是我的主要数据来源之一;另一方面,Apple Health 本身就是一个汇总平台,支持相当丰富的[数据类型](https://developer.apple.com/documentation/healthkit/data-types)。除了手表记录的数据外,一些第三方 App 写入的营养和训练记录,也可以汇集在这里。你甚至可以手动在「健康」App 中添加数据。 支持 Apple Health 生态的第三方厂商也比较多。根据我的查询,至少小米、Zepp、OPPO、佳明等都支持同步,Keep、Nike Run Club 等运动 App 也可以接入。至于是否写入你看中数据,建议读者根据自身情况进一步核实。 得益于其完善的生态,读取和导出 Apple Health 的工具也已相当丰富。下面介绍快捷指令、第三方 app 和自己 vibe 工具三种方法。 快捷指令是 iOS 自带的自动化工具,少数派社区里已经有很多介绍和攻略文章,这里就不过多赘述。 快捷指令可以直接读取 Apple Health 的数据,并且支持日期、时间等条件筛选。于是,「只导出你真正关心的那几项指标」以及「增量导出」成为可能;若你已经备好服务器或数据库,甚至可以让它把数据直接送上云端。 这同样有现成的方案,例如[Aimee1129/apple-health-shortcuts-mcp](https://github.com/Aimee1129/apple-health-shortcuts-mcp/tree/main)。你可以跟着教程搭建适合自己的快捷指令,一键把所需数据上传到云端数据库,再让 AI Agent 通过 MCP 读取。 在我的实际体验中,这个方法能够覆盖我需要的大多数数据类型。主要门槛在于需要一些动手配置的耐心,当然,这个过程也可以请 AI 协助: 我想用快捷指令持续导出特定的 Apple Health 数据。请先完整读[这篇教程](https://github.com/Aimee1129/apple-health-shortcuts-mcp/blob/main/GUIDE-MOBILE.zh-CN.md)再回答,不要凭记忆推测操作步骤。我的环境:iPhone \_\_\_,iOS \_\_\_,有/没有 Apple Watch,有/没有 Cloudflare 账号。我要导出的指标:\_\_\_。请先告诉我这些是否都在该项目默认支持的范围内;如果有超出的,说明需要改哪些地方,以及改动难度。我的最终目标是 \_\_\_(例如:每天睡醒自动同步昨天的睡眠数据,每天运动完自动同步运动数据,每天 0 点自动同步状态数据)。请说明如何处理迟到的数据、重复记录和后续修改。交付方式:一步一步来,每步给一个动作,我做完回复「好了」或发截图,你再给下一步。如果文档里的步骤和我实际看到的界面对不上,指出差异并给替代路径。 如果不想自己搭快捷指令,可以使用专门的导出工具。 例如,[Health Push](https://apps.apple.com/cn/app/health-push-%E5%81%A5%E5%BA%B7%E6%95%B0%E6%8D%AE%E5%AF%BC%E5%87%BA/id6770443608) 是一个简单的小工具,可以将数据导出为 JSON,供 AI Agent 读取和分析。 [Health Auto Export](https://www.healthyapps.dev/apps/health-auto-export/) 的功能则更完整。它支持选择数据类型、时间范围和导出格式,也可以把数据自动发送到 REST API 或云存储(需要高级版)。接收端可以放在电脑、NAS、服务器上,也可以使用 Supabase、Cloudflare 一类云服务。数据库建表和数据清洗等工作,可以交给 AI Agent 协助完成。可惜的是,国区目前不支持终身买断。 倘若你有一台 Mac,并且拥有开发者账号,又稍微懂一点 iOS 应用开发,也可以自己做一个自用 App 来导出数据,甚至同步到自己的服务器或电脑。 GitHub 上有可用的 SDK,例如 [the-momentum/open\_wearables\_ios\_sdk](https://github.com/the-momentum/open_wearables_ios_sdk)。所谓 SDK,就是别人写好、封装好的一段可复用功能,你只要调用它,不必从零写起,交给 AI 稍作修改包装即可上手。 可以先让 Agent 按 SDK 文档做出一个最小应用,在真机上完成授权和一次同步,再增加数据类型与更新机制。 请基于这个 SDK,帮我开发一个个人自用的 iOS App:https://github.com/the-momentum/open\_wearables\_ios\_sdk 请先阅读项目文档,确认支持范围,不要凭记忆编写接口。 我的环境:Mac \_\_\_,Xcode \_\_\_,iOS \_\_\_,开发者账号类型 \_\_\_。需要读取的 Apple Health 数据:\_\_\_。历史范围:\_\_\_。保存目标:本地文件/自己的电脑/服务器? 先做最小版本:真机安装 > 读取授权 > 按日期查询 > 导出 JSON。保留时间、单位、来源和记录标识,确认数据正确后,再增加上传、增量同步、去重和失败重试。后台同步以 iOS 实际支持的能力为准。 先给方案,我确认后再执行。遇到文档缺失或权限限制,明确说明,不要猜测。 不过,开发、安装和长期稳定使用是不同的事情。苹果允许通过 Xcode 的 Personal Team 在个人设备上测试应用,只是免费签名有有效期等限制。 Android 这边,首先需要理清几个容易混淆的名字: 如果你使用 Fitbit 或 Pixel Watch,数据会直接进入 Google Health。其他品牌则要看对应 App 能否把所需数据写入 Health Connect。 从公开信息和网上讨论看,OPPO、vivo、小米等国内厂商的国际版,以及非国行的三星设备,都支持向 Health Connect 写入数据。以小米为例,可以在 Mi Fitness 的「账号—添加账号」中授权。但我手上没有真机,无从逐一确认。部分国行三星设备也可以通过[开发者设置与地区调整](https://xice.cx/posts/openDevOnSamsungHelathCN/)启用 Health Connect;这类方法依赖具体系统版本,不能直接视为通用方案。 在 Health Connect 一侧,老牌工具 [Health Sync](https://healthsync.app/) 和开源项目 [Health Data Export](https://play.google.com/store/apps/details?id=com.teqxnology.healthdataexport) 都是现成的选择。前者可以把数据导出到网盘或者服务器,支持多种格式;后者支持导出到 Google 表格并增量更新。 如果想自己定制,可以参考 [Health Connect 官方文档](https://developer.android.com/health-and-fitness/health-connect/get-started?hl=zh-cn) 或第三方项目 [the-momentum/open\_wearables\_android\_sdk](https://github.com/the-momentum/open_wearables_android_sdk)。相比 iOS,Android 自用应用的安装通常更灵活,调试和安装到自己的手机上不需要商店开发者账号。 如果平台不能提供你需要的数据,就要回到数据来源。厂商提供的 API、SDK 或官方连接器,能够直接读取原服务里的数据,通常也更适合自动更新。 Google Health 提供了一条与 Apple Health 本地接入不同的路径:通过 API 从 Google Health 云端直接获取数据。大致流程是:创建 Google Cloud 项目、启用 API、配置 OAuth 应用和所需权限,再完成账号授权。个人自用可以全程自助;只有支持超过 100 名用户时,才会[触发安全审核](https://developers.google.com/health/app-verification?hl=zh-cn)。 谷歌还提供了 [Google-Health-API/google-health-cli](https://github.com/Google-Health-API/google-health-cli)。它覆盖四十余种数据类型,可输出 JSON、CSV 或终端表格,仓库里也附有 Agent Skill 文件。对于想让 Agent 直接读取自己数据的人,这算得上是一种官方适配。 Oura 与 Whoop 的生态位颇为相近:硬件价格较高,完整体验依赖订阅,生态相对封闭,但开发者接口对个人较为开放,前提是订阅仍然有效。 如有开发需求,可以直接在 [Oura](https://developer.ouraring.com/) 和 [Whoop](http://developer.whoop.com/) 的开发者中心注册应用,取得 client\_id 和 client\_secret,再按文档完成授权。接下来,就可以让 AI Agent 协助建立数据抓取、存储和分析程序。 以 Oura 为例: 请先读一遍 Oura 官方文档再回答,不要凭记忆写端点和参数:[https://cloud.ouraring.com/v2/docs](https://cloud.ouraring.com/v2/docs)。认证部分:[https://cloud.ouraring.com/docs/authentication](https://cloud.ouraring.com/docs/authentication)。 目标:写一个本地脚本,定期把我自己的 Oura 数据拉下来,存进本地 SQLite。 环境:脚本跑在 \_\_\_(Mac / Docker),语言用 Python,依赖可以自由安装。 认证:我已在 Oura 后台创建了 OAuth 应用,拿到了 client\_id 和 client\_secret。 我要拉的数据:\_\_\_(例:daily\_sleep、daily\_readiness、daily\_activity、sleep、workout;heartrate 暂不拉/只拉最近 N 天)。历史回补范围:\_\_\_。之后的更新频率:\_\_\_。 方案里请明确处理这几点: 1. 授权码流程怎么在本地跑通; 2. token 的有效期和刷新机制是什么,刷新后如何持久化新 token,以及失效时的恢复路径; 3. 增量拉取的判重键和断点续传。 先给方案,把你的不确定点和默认假设一次性列出来,我确认后再写代码。 (安全提示:令牌更适合在本地配置,不要直接粘贴进对话。) 如果开发基础薄弱,也没必要重复造轮子。[spxrogers/oura-toolkit](https://github.com/spxrogers/oura-toolkit) 面向 AI Agent 使用场景,直接把仓库地址交给 Agent 即可开始配置;Whoop 也有现成的社区项目,如 [dpshde/whoop-mcp](https://github.com/dpshde/whoop-mcp)。 需要留意的是,Oura 已于 2025 年 12 月弃用 Personal Access Token(PAT),目前需要采用 OAuth 2.0;WHOOP 也已迁移到新版 API,旧版 webhook 已移除。网上不少旧脚本和教程已经不再适用。 WHOOP 还有一个容易忽略的细节:它不按自然日组织数据,基本单位是 [physiological cycle(生理周期)](https://developer.whoop.com/docs/developing/user-data/cycle/)。让 Agent 处理数据前,需要明确这个定义,否则它可能直接按日历日期聚合,得到一份时间错位的分析。 按[官方文档](https://developer.samsung.com/health/blog/en/accessing-samsung-health-data-through-health-connect),Samsung Health 与 Health Connect 之间支持双向同步,但只覆盖有限的类别。 如果想读取 Energy Score 等特色数据,可以使用 [Samsung Health Data SDK](https://developer.samsung.com/health/android/overview.html)。在 Samsung Health 里连点十次版本号[打开开发者模式](https://developer.samsung.com/health/data/guide/developer-mode.html),再按 SDK 要求申请权限并读取数据。 具体做法与前文类似:让 Agent 创建一个Android 应用,接入 SDK,申请所需权限,读取后保存为文件或上传到接收端。 华为、小米、OPPO、vivo 都有面向合作方的健康开放平台,但普通用户和个人开发者能够使用的范围有限。四家的情况可以归纳如下: | 厂商 | 面向个人的接口 | 个人能拿到什么 | 门槛 | | 华为 | 有限开放 | 基础数据 | 按项目申请,权限有使用期限,并有应用相关要求 | | 小米 | 暂未找到 | — | 健康云开放平台主要面向生态链企业及合作伙伴 | | OPPO | 暂未找到 | — | Health Research Kit 面向健康行业与科研机构 | | vivo | 暂未找到 | — | Health Kit 位于开发者开放平台,个人接入路径不明确 | 可以看出,只有华为的 [Health Service Kit](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/health-service-kit-guide) 允许个人开发者申请,不一定需要公司主体。理论上,你可以自己写一个 App,持续把自己的数据导出。