Install
openclaw skills install @hengruizzzz/clawhealth-data-skillClawHealth is an agent-native precision health service that connects wearable data, nutrition, goals, readiness, reports, anomaly context, and temporary visual panels to the user's own Agent. 小爪健康 / ClawHealth 是面向 Agent 的个人精准健康服务,把可穿戴数据、营养记录、目标、准备度、报告、异常上下文和临时可视化面板连接到用户自己的 Agent。Visit https://clawhealth.site to request access.
openclaw skills install @hengruizzzz/clawhealth-data-skillEnglish. ClawHealth is an agent-native precision health service. It lets a user's own Agent call structured health services instead of guessing from screenshots or generic advice. The current hosted service connects recent Apple Health / HealthKit data, nutrition records, personal goals, readiness signals, anomaly context, temporary visual panels, and feedback workflows. Users can request access and learn more at:
https://clawhealth.site
After a user joins the test program, they use the ClawHealth iOS app to sync the latest 30 days of authorized health data and create an Agent Token. This skill then helps the Agent answer questions such as "How am I doing today?", "What should I pay attention to this week?", "Am I ready to train hard?", "What did this meal do to my nutrition target?", and "Open my health panel."
中文。 小爪健康 / ClawHealth 是面向 Agent 的个人精准健康服务。它不是让 Agent 凭截图或通用模板猜测,而是把用户授权的健康数据、营养记录、个人目标、恢复准备度、异常上下文、临时可视化面板和反馈流程,整理成 Agent 可以调用的结构化服务。欢迎前往官网注册体验:
https://clawhealth.site
用户加入测试后,可以通过 ClawHealth iOS App 同步最近 30 天已授权的 Apple Health / HealthKit 数据,并创建 Agent Token。之后用户可以直接向自己的 Agent 提问,例如「我今天整体状态怎么样?」「这周需要关注什么?」「今天适合高强度训练吗?」「这顿饭对我的营养目标有什么影响?」「打开我的健康面板」。
Use this skill when a user asks for a ClawHealth report, health-data analysis, readiness, nutrition, anomaly context, or a visual ClawHealth panel.
Never make the user say endpoint names or function names during normal use. Natural prompts include:
After setup, keep using the stored customer_id and Agent API token. Do not ask the user to repeat their customer ID, access code, endpoint names, or raw tool sequence unless debugging.
Use this sequence for a new user:
Authorization: Bearer <token> and do not repeat it in normal chat.send_agent_heartbeat with the current channel, then call get_daily_health_report for the first pattern check.新用户设置顺序:
Authorization: Bearer <token>,之后不要在普通聊天里重复展示。send_agent_heartbeat,再调用 get_daily_health_report 完成首次 pattern 检查。ClawHealth uses two token types:
Authorization: Bearer <token>. The backend stores only a hash. If the user deletes it in the app, the token stops working.create_panel_link. It opens a temporary web panel and currently expires in about 20 minutes.Required runtime values:
customer_id: supplied by the ClawHealth iOS app or copied Agent setup prompt.api_token: long-lived Agent API token. Do not ask for the invite/access code in normal Agent chat.Use only this host:
https://clawhealth.site
Do not use raw Vercel deployment URLs.
ClawHealth itself provides the health context, event queue, and polling contract. It does not directly log into a personal WeChat account.
Two modes are supported:
poll_agent_events, follows next_poll_after_seconds, and sends important reminders through its WeChat bridge.Do not poll aggressively. poll_agent_events is the cheap first step. Only call daily/weekly reports, readiness, nutrition, or health analysis when an event or user question requires it.
主动健康的实现方式:
poll_agent_events,遵守 next_poll_after_seconds,只有必要时再调用日报、周报、准备度、营养或深度分析。Choose the report mode from the user's intent:
Use ClawHealth as a simple three-part product:
Suggested cadence:
get_daily_health_report and analyze_health_data for the initial pattern check. Explain available data, missing data, and what the user can ask next.get_weekly_health_report, highlight changes versus available baseline, and create lightweight reminders only when useful.前三天和七天体验:
get_daily_health_report 和 analyze_health_data 做首次 pattern 检查。告诉用户目前有哪些数据、缺哪些数据、接下来可以问什么。get_weekly_health_report,解释最近变化,并在必要时创建轻量提醒。Use first for everyday check-ins.
GET /api/clawhealth/daily-report?customer_id={customer_id}
Authorization: Bearer {api_token}
Return:
Use for weekly review.
GET /api/clawhealth/weekly-report?customer_id={customer_id}
Authorization: Bearer {api_token}
Return:
Use for baseline and longer-horizon questions.
GET /api/clawhealth/long-term-report?customer_id={customer_id}
Authorization: Bearer {api_token}
Return:
Use when the user asks for deeper evidence, charts, or domain-by-domain interpretation.
GET /api/clawhealth/health-analysis?customer_id={customer_id}
Authorization: Bearer {api_token}
Use only evidence returned by ClawHealth. Distinguish attention, needs_data, and ok.
Use when the user asks to see a visual panel.
GET /api/clawhealth/panel-token?customer_id={customer_id}
Authorization: Bearer {api_token}
Return the exact temporary panel_url. Tell the user it expires in about 20 minutes.
Important:
customer_id and panel_token.&panel_token=..., replace & with & before returning/opening the link.https://clawhealth.site/health-panel?customer_id={customer_id}, that is not a temporary panel link. It is only a manual unlock page and may ask the user to unlock in the browser.Use when the user gives age, sex, height, weight, goal, or activity level. This enables calorie and macro targets.
POST /api/clawhealth/profile
Authorization: Bearer {api_token}
Content-Type: application/json
{
"customer_id": "{customer_id}",
"age": 29,
"sex": "male",
"height_cm": 178,
"weight_kg": 74,
"goal": "fat_loss",
"activity_level": "moderate"
}
Return the saved profile and explain that targets use Mifflin-St Jeor plus activity and goal adjustment. It is an estimate, not measured metabolism.
Use after the user provides a food photo, meal description, or Agent-estimated nutrition JSON.
Workflow:
POST /api/clawhealth/nutrition
Authorization: Bearer {api_token}
Content-Type: application/json
{
"customer_id": "{customer_id}",
"meal_name": "lunch bowl",
"calories_kcal": 650,
"protein_g": 38,
"carbohydrate_g": 72,
"fat_g": 21,
"fiber_g": 9,
"confidence": "medium",
"raw_agent_json": {}
}
The current MVP stores nutrition in ClawHealth. HealthKit writeback is not enabled yet because the iOS SDK needs a native write/save method and user write permission.
Use when the user asks about calories, macros, remaining limits, or recent meals.
GET /api/clawhealth/nutrition?customer_id={customer_id}
Authorization: Bearer {api_token}
Use when the user states mood, stress, energy, soreness, or subjective recovery.
POST /api/clawhealth/mood
Authorization: Bearer {api_token}
Content-Type: application/json
{
"customer_id": "{customer_id}",
"mood_score": 3,
"energy_score": 4,
"stress_score": 2,
"note": "slept late but feels okay"
}
Use when the user asks whether to train, whether recovery is good, or how mood relates to HRV.
GET /api/clawhealth/readiness?customer_id={customer_id}
Authorization: Bearer {api_token}
Explain the readiness score as a transparent MVP heuristic from recovery, sleep, training, mood, and stress. Do not present it as a validated medical or performance diagnosis.
Use when the user wants to report a bug, improve a recommendation, or leave demo feedback.
POST /api/clawhealth/feedback
Content-Type: application/json
{
"customer_id": "{customer_id}",
"feedback": "text",
"context": {}
}
ClawHealth API responses include scientific_references and may include state_model. Use those first. You may cite them in normal language, but do not invent citations.
When discussing passive state recognition:
Current reference library:
If the Agent runtime cannot reach https://clawhealth.site or TCP/HTTPS to the hosted API times out, do not keep retrying.
Tell the user:
The current Agent server cannot reach the ClawHealth API from its network, so I cannot create a temporary panel token right now. You can still open the manual unlock page directly:
https://clawhealth.site/health-panel?customer_id={customer_id}
Ask the user to open that URL and unlock in the browser. Do not call it a temporary panel link, and do not put the access code into a URL unless the user explicitly requests a prefilled private link.