Install
openclaw skills install @thcjp/apple-health-skill-freeopenclaw skills install @thcjp/apple-health-skill-free核心功能: 本技能提供中文交互等能力。
使用AI与运动健康数据对话的免费版。支持获取每日训练方案(无需认证)和查询训练记录。通过健康数据同步服务获取运动手环/手表同步的健康数据.
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| input | string | 是 | 运动健康数据基础版处理的输入数据或指令 |
| options | object | 否 | 附加配置选项,如模式选择、格式偏好等 |
| callback_url | string | 否 | 异步处理完成后的回调通知URL |
export HEALTH_API_KEY="${API_KEY:?请设置环境变量}"
认证端点需在请求头中携带 X-API-Key。GET /api/v1/wod 端点无需认证.
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent内置LLM提供 |
如需调用外部API,请参考环境配置章节设置对应密钥
API Key配置方式:
export API_KEY="${API_KEY:?请设置环境变量}"
配置后需重启会话或开启新终端生效。API Key应妥善保管,避免泄露到版本控制系统.
通过 GET /api/v1/wod?sport=run&duration=45 获取随机结构化训练方案,无需认证。参数 sport 支持 run(跑步)、bike(骑行)、swim(游泳)、strength(力量),默认 run。参数 duration 指定训练时长(10-300分钟),默认45。适用于快速获取训练建议.
通过 GET /api/v1/workouts?start=2026-02-09&end=2026-02-15 获取指定日期范围内的训练记录。必填参数 start 和 end(YYYY-MM-DD格式),最大查询范围90天。返回训练列表,包含训练类型、时长、距离、心率等详细数据。免费版配额100次/天。适用于训练历史回溯.
通过 GET /api/v1/profile 获取运动员档案信息。返回用户的基本信息、运动偏好、历史训练摘要等数据。适用于用户画像构建和基础数据获取。- 验证返回数据的完整性和格式正确性
详细的输入输出格式请参考下方章节说明。
以下为完整版(apple-health-skill)独有功能,免费版不可用:
POST /api/v1/coach/chat 自然语言提问健康数据,完整版配额100次/天GET /api/v1/performance/pmc 获取CTL/ATL/TSB训练负荷数据GET /api/v1/performance/stats 获取FTP、阈值配速、心率区间等指标GET /api/v1/coach/history 回顾AI教练对话记录升级至完整版以获取全部能力.
GET /api/v1/wod 获取训练方案(无需认证),指定 sport 和 duration 参数HEALTH_API_KEY,通过 GET /api/v1/workouts 查询训练记录(YYYY-MM-DD格式,最大90天)GET /api/v1/profile 获取运动员档案信息# 获取45分钟跑步训练方案
curl "https://health-api.example.com/api/v1/wod?sport=run&duration=45"
# 响应包含结构化训练计划:热身、主训练、放松等阶段
# ...
# 获取30分钟力量训练方案
example.com/api/v1/wod?sport=strength&duration=30"
# 获取最近一周的训练记录
curl -H "X-API-Key: $HEALTH_API_KEY" \
"https://health-api.example.com/api/v1/workouts?start=2026-02-09&end=2026-02-15"
# 响应包含训练类型、时长、距离、心率等数据
# ...
# 获取运动员档案
curl -H "X-API-Key: $HEALTH_API_KEY" \
example.com/api/v1/profile"
| 错误场景 | HTTP状态 | 原因 | 处理方式 |
|---|---|---|---|
| API Key未设置 | 401 | HEALTH_API_KEY 环境变量缺失或为空 | 在健康数据同步服务中生成API Key并设置环境变量 |
| 日期范围超过90天 | 400 | start 和 end 间隔超过最大范围 | 将查询范围缩小到90天以内,分段查询 |
| 日期格式错误 | 400 | start 或 end 非YYYY-MM-DD格式 | 使用标准日期格式,如 2026-02-09 |
| sport参数无效 | 400 | 传入了不支持的sport值 | 使用有效值:run/bike/swim/strength |
| duration超出范围 | 400 | duration不在10-300分钟范围内 | 调整duration值到10-300范围内,默认45分钟 |
| 免费配额用尽 | 429 | 超出100次/天读取限制 | 等待次日重置,或升级至完整版获取10000次/天配额 |
| 请求AI教练功能 | 403 | 免费版不支持 POST /api/v1/coach/chat | 升级至完整版以使用AI教练对话功能 |
不需要。GET /api/v1/wod 是唯一无需认证的端点。参数 sport 支持 run/bike/swim/strength(默认 run),duration 范围10-300分钟(默认45)。适用于快速获取训练方案,无需配置API Key.
在健康数据同步服务应用中,进入 Settings > API Keys,点击 Generate New Key 生成密钥。将生成的密钥设置到环境变量 HEALTH_API_KEY 中。认证端点(workouts、profile)需在请求头中携带 X-API-Key: $HEALTH_API_KEY.
可以。GET /api/v1/workouts 支持查询训练记录,免费版配额100次/天。参数 start 和 end 使用YYYY-MM-DD格式,最大查询范围90天。返回训练类型、时长、距离、心率等详细数据.
不可以。POST /api/v1/coach/chat AI教练对话是完整版独有功能。免费版仅支持训练方案生成、训练记录查询和运动员档案获取。如需AI教练对话,请升级至完整版.
不可以。GET /api/v1/performance/pmc(CTL/ATL/TSB训练负荷数据)和 GET /api/v1/performance/stats(FTP、心率区间等)是完整版独有功能。如需性能分析和训练负荷监控,请升级至完整版.
所有日期参数使用YYYY-MM-DD格式(如 2026-02-09)。GET /api/v1/workouts 端点的 start 和 end 参数之间的最大查询范围为90天,超过会返回400错误。需要查询更长时间范围时,分段多次查询.
POST /api/v1/coach/chat),完整版可用GET /api/v1/performance/pmc),完整版可用GET /api/v1/performance/stats),完整版可用GET /api/v1/coach/history),完整版可用{
"success": true,
"data": {
"result": "运动健康数据基础版处理结果",
"execution_time": "0.5s",
"metadata": {
"version": "1.0",
"processor": "apple-health-skill"
}
},
"execution_log": [
"解析输入参数",
"执行核心处理",
"格式化输出结果"
],
"error": null
}
触发条件: 当用户需要处理Security相关任务时自动激活
不适用: 超大文件处理(>100MB)或高并发场景(>100QPS),建议使用专业版或企业方案
| 操作步骤 | 手动耗时 | 自动化耗时 | 时间节约 | 准确率提升 |
|---|---|---|---|---|
| 获取每日训练方案 | 15分钟 | 1分钟 | 14分钟 | 95% |
| 查询训练记录 | 30分钟 | 5分钟 | 25分钟 | 98% |
| 分析训练数据 | 2小时 | 30分钟 | 1.5小时 | 97% |
| 构建运动员档案 | 1小时 | 15分钟 | 45分钟 | 96% |
| 生成训练报告 | 1小时 | 10分钟 | 50分钟 | 99% |
| 对比维度 | 本技能 | 手动操作 | Python脚本 | 专业软件 |
|---|---|---|---|---|
| 易用性 | 高 | 低 | 中 | 高 |
| 数据准确性 | 高 | 低 | 中 | 高 |
| 功能丰富度 | 中 | 低 | 中 | 高 |
| 成本 | 低 | 高 | 中 | 高 |
| 学习曲线 | 低 | 高 | 中 | 高 |
| 痛点 | 描述 | 影响范围 | 解决方案 | 量化效果 |
|---|---|---|---|---|
| 数据手动处理 | 需要大量时间手动处理和分析运动数据 | 降低效率,增加错误率 | 自动化处理和分析数据 | 时间节约50%,错误率降低20% |
| 训练方案获取困难 | 难以快速获取个性化的训练方案 | 影响训练效果 | 提供每日训练方案,提升训练效果 | 训练效果提升15% |
| 数据可视化困难 | 难以直观地展示运动数据 | 影响数据分析 | 提供数据可视化功能,提升数据分析效率 | 数据分析效率提升30% |
| 错误现象 | 可能原因 | 诊断步骤 | 解决方案 |
|---|---|---|---|
| 无法获取训练方案 | API Key配置错误 | 检查API Key是否正确配置 | 重新配置API Key |
| 无法查询训练记录 | 请求参数错误 | 检查请求参数是否正确 | 修正请求参数 |
| 无法获取运动员档案 | 用户未授权 | 检查用户是否已授权访问健康数据 | 授权用户访问健康数据 |
| 数据同步失败 | 网络连接问题 | 检查网络连接是否正常 | 修复网络连接 |
| API调用失败 | API Key过期 | 检查API Key是否过期 | 更新API Key |
| 风险项 | 等级 | 防护措施 | 验证方法 |
|---|---|---|---|
| API密钥泄露 | 高 | 通过环境变量配置,禁止硬编码 | 定期检查代码和配置文件 |
| 命令执行风险 | 高 | 仅执行白名单命令,避免拼接用户输入 | 使用沙箱环境测试 |
| 网络通信安全 | 中 | 使用HTTPS协议,验证SSL证书 | 定期检查证书有效期 |
| 敏感数据暴露 | 高 | 输出结果中不包含密钥、令牌等敏感信息 | 日志脱敏审查 |
| 未授权访问 | 中 | 限制访问权限,实施认证机制 | 定期审计访问日志 |
A1: 基础运动健康数据查询,获取训练方案和训练记录。使用AI与运动健康数据对话的免费版。支持获取每日训练方案(无需认证)和查询训练记录. 适用于基础训练数据查看场景。。支持文本指令和结构化参数输入,具体格式参考使用流程章节。
A2: 是的,部分功能需要配置对应平台的API Key。请在依赖说明章节查看具体要求,并通过环境变量安全配置。
A3: 检查命令参数是否正确,确认运行环境支持exec能力。如遇权限问题,请参照错误处理章节排查。