WellAlly 数字健康集成是一套面向个人健康管理的技能,用于整合多种数字健康数据来源,并连接 WellAlly.tech 知识库,为个人健康管理系统提供数据导入与知识参考。
一、用途 该技能用于把来自外部健康设备与平台的数据导入本地健康管理系统,并基于这些数据检索和推荐健康知识库文章。适用场景包括数据导入、知识库查询、个性化文章推荐以及外部数据管理。
二、主要能力
- 数字健康数据导入
- Apple Health(HealthKit):导出 XML/ZIP 文件解析。
- Fitbit:OAuth2 API 集成与 CSV 导入。
- Oura Ring:API v2 数据同步。
- 通用导入:CSV/JSON 文件导入,支持字段映射。
- WellAlly.tech 知识库集成
- 分类文章索引:营养、健身、睡眠、心理健康、慢性病管理。
- 智能推荐:根据用户健康数据推荐相关文章。
- URL 引用:提供指向 WellAlly.tech 平台的直接链接。
- 数据标准化
- 格式转换:将外部数据转换为本地 JSON 格式。
- 字段映射:智能映射来自不同平台的数据字段。
- 数据校验:确保导入数据的完整性与准确性。
- 智能文章推荐
- 健康状况分析:基于用户健康数据进行分析。
- 相关性匹配:推荐与用户健康状况最相关的文章。
- 分类导航:按健康主题组织知识库文章。
三、使用方式 触发条件为用户提到以下场景时使用:
- 数据导入:如“从 Apple Health 导入我的健康数据”“连接我的 Fitbit 设备”“同步我的 Oura Ring 数据”“导入 CSV 健康数据文件”。
- 知识库查询:如“WellAlly 平台上关于高血压的文章”“根据我的健康数据推荐文章”“关于睡眠的 WellAlly 知识库文章”。
- 数据管理:如“我有哪些健康数据来源”“整合不同平台的健康数据”“查看已导入的外部数据”。
执行流程:
- 识别用户意图:导入数据、查询知识库、获取推荐或管理数据。
- 数据导入工作流:确定数据源,读取外部数据,进行数据映射与转换,执行数据校验,生成导入报告。
- 知识库查询工作流:识别查询主题,在知识库索引中检索相关文章,返回文章链接。
- 智能推荐工作流:读取用户健康数据,分析健康状况,匹配相关文章,生成推荐报告。
数据导入命令示例:
- Apple Health:python scripts/import_apple_health.py ~/Downloads/apple_health_export.zip
- Fitbit API:python scripts/import_fitbit.py --api --days 30
- Fitbit CSV:python scripts/import_fitbit.py --csv fitbit_export.csv
- Oura Ring:python scripts/import_oura.py --date-range 2025-01-01 2025-01-22
- 通用导入:python scripts/import_generic.py health_data.csv --mapping mapping_config.json
字段映射配置示例(mapping_config.json): { "date": "Date", "steps": "Step Count", "weight": "Weight (kg)", "heart_rate": "Resting Heart Rate" }
四、适用场景
- 从 Apple Health、Fitbit、Oura Ring 或通用 CSV/JSON 导入健康数据。
- 查询 WellAlly.tech 知识库中营养、健身、睡眠、心理健康、慢性病管理等主题的文章。
- 根据用户健康数据(如血压、睡眠、体重、步数)获得相关文章推荐。
- 查看与管理已导入的外部健康数据。
五、数据来源与存储 外部数据源与导入方式:
- Apple Health:文件导入,XML/ZIP 解析,内容含步数、体重、心率、睡眠、锻炼。
- Fitbit:API/CSV,OAuth2 或 CSV,内容含活动、心率、睡眠、体重。
- Oura Ring:API,OAuth2,内容含睡眠阶段、准备度、心率变异性。
- 通用 CSV/JSON:文件导入,字段映射,自定义健康数据。
本地数据文件:
- data/profile.json:个人资料、体重历史。
- data/fitness/activities.json:步数、活动数据。
- data/fitness/heart-rate.json:心率记录。
- data/sleep/sleep-records.json:睡眠记录。
- data/fitness/recovery.json:恢复数据(Oura Ring 准备度)。
知识库结构:
- 营养与饮食(knowledge-base/nutrition.md):饮食管理指南、食物营养查询、饮食建议、特殊饮食需求。
- 健身与运动(knowledge-base/fitness.md):运动追踪最佳实践、活动建议、运动数据解读、训练计划。
- 睡眠健康(knowledge-base/sleep.md):睡眠质量分析、睡眠改善策略、睡眠障碍概述、睡眠卫生。
- 心理健康(knowledge-base/mental-health.md):压力管理技巧、情绪追踪解读、心理健康资源、正念练习。
- 慢性病管理(knowledge-base/chronic-disease.md):高血压监测、糖尿病管理、COPD 护理、用药依从性。
文章推荐映射示例:
- 高血压:chronic-disease/hypertension-monitoring、chronic-disease/bp-lowering-strategies
- 糖尿病:chronic-disease/diabetes-management、nutrition/diabetic-diet
- 睡眠不足:sleep/sleep-hygiene、sleep/sleep-quality-improvement
- 体重增加:nutrition/healthy-diet、nutrition/calorie-management
- 高压力:mental-health/stress-management、mental-health/mindfulness
六、限制与安全要求
- 不得将数据上传到外部服务器(API 同步除外)。
- 不得在代码中硬编码 API 凭据。
- 不得分享用户访问令牌。
- 所有导入数据仅本地存储。
- OAuth 凭据加密存储。
- 仅在用户明确授权后导入。
- 数据校验需验证类型与范围、过滤异常值、保留数据来源信息、处理时区转换。
错误处理:
- 文件读取失败:提示无法读取文件,请检查文件路径和格式;提供正确格式示例;建议重新导出数据。
- API 调用失败:提示 API 调用失败,请检查网络连接和凭据;提供 OAuth 重新认证指引;回退到 CSV 导入方式。
- 数据校验失败:提示数据格式不正确,已跳过无效记录;记录跳过记录数;继续处理有效数据。
七、相关命令
- /health-trend:分析健康趋势(使用已导入数据)
- /sleep:记录睡眠数据
- /diet:记录饮食数据
- /fitness:记录运动数据
- /profile:管理个人资料
八、技术实现 本技能仅使用以下工具:Read(读取外部数据文件和配置)、Grep(搜索数据模式)、Glob(查找数据文件)、Write(将导入数据保存为本地 JSON 文件)。
Python 依赖(导入脚本可能需要的包):
- Apple Health:import xml.etree.ElementTree as ET、import zipfile
- Fitbit/Oura:import requests
- 通用导入:import csv、import json
性能优化:增量读取(仅导入指定时间范围数据)、数据去重(避免导入同一天的重复数据)、批量写入(分批保存数据以提升性能)、错误恢复(支持断点续传)。
输出格式包含三类:数据导入输出(来源、导入时间、记录统计、时间范围、保存路径、校验警告、后续步骤)、知识库查询输出(搜索主题、文章数量、分类、链接、描述、相关主题)、智能推荐输出(按关注程度分级,给出当前状态与推荐文章链接)。