ClawHealth Data Skill
Use this skill when a user asks for a ClawHealth daily report, health-data analysis, checkup focus, supplement reasoning, or a visual ClawHealth panel.
User-facing behavior
Do not ask the user to say function names, endpoint names, or raw implementation steps. Normal user prompts should sound like:
- "Show my ClawHealth daily report."
- "Check my recovery today."
- "Do I need to pay attention to anything from my recent health data?"
- "Why is ClawHealth recommending this supplement?"
- "Open my health panel."
The user should not have to say create_panel_link, analyze_health_data, or recommend_supplement_protocol.
After setup, the user should also not have to repeat their customer_id in
every request. The Agent may receive customer_id and the Agent API token from
the ClawHealth app's copied setup prompt, then keep using those values for
later daily reports.
Authentication model
ClawHealth uses two token types:
- Agent API token: long-lived token created in the ClawHealth iOS app. The app shows it once. Store and use it as
Authorization: Bearer <token>. The backend stores only a hash. If the user deletes it in the app, it stops working. - Panel token: short-lived token created by
create_panel_link. It opens a temporary web panel and currently expires in 20 minutes.
Required runtime values:
customer_id: supplied by the ClawHealth iOS app or copied Agent prompt.api_token: long-lived Agent API token. Do not ask for the user's access code in normal Agent chat.
Skill host
Use only:
https://clawhealth.site
Do not use raw Vercel deployment URLs such as https://clawhealth-...-voicetypes-projects.vercel.app; those can be protected by Vercel authentication.
Tools
get_daily_health_report
Use first for everyday check-ins.
GET /api/clawhealth/daily-report?customer_id={customer_id}
Authorization: Bearer {api_token}
Return a concise report: top focus, missing data, daily next action, and the 30-day sync window. Do not diagnose.
analyze_health_data
Use when the user asks for deeper evidence, charts, or domain-by-domain interpretation.
GET /api/clawhealth/health-check?customer_id={customer_id}
Authorization: Bearer {api_token}
Use only evidence returned by ClawHealth. Distinguish watch, needs_data, and ok.
decide_healthcare_check
Use the clinical_check_guidance object from analyze_health_data. If should_consider_check is true, frame the result as check-in topics, not medical advice.
recommend_supplement_protocol
GET /api/clawhealth/supplement-protocol?customer_id={customer_id}
Authorization: Bearer {api_token}
Explain why each supplement candidate appears using returned evidence only. Never claim a supplement treats, cures, prevents, or diagnoses a condition.
create_panel_link
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 temporary panel_url. Tell the user it expires in about 20 minutes.
Network fallback
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. You can still open the browser panel directly:
https://clawhealth.site/supplement-demo?customer_id={customer_id}
Ask the user to open that URL and enter their ClawHealth access code in the panel. Do not put the access code into a URL unless the user explicitly requests a prefilled private link.
Response rules
- Always mention that analysis uses the latest 30-day synced snapshot.
- Lead with the daily report when the user asks broadly how they are doing.
- Keep the user's experience natural; hide function names unless debugging.
- Do not ask for access code in normal Agent chat. Ask the user to create or refresh the Agent API token in the ClawHealth app if authentication fails.
- Do not respond with "please enter your ClawHealth access code" when a stored Agent API token should be available. Only ask the user to return to the app and create a new Agent API token if auth fails.
- Do not make the user copy-paste raw endpoint names or function names during normal use.
- Never diagnose, treat, or make emergency recommendations.
- If data is missing, say what needs to be synced or authorized.
Example natural flow
- User: "How am I doing today?"
- Call
get_daily_health_report. - If there are watch domains, optionally call
analyze_health_datafor evidence. - If the user asks about supplements, call
recommend_supplement_protocol. - If the user asks to see the page, call
create_panel_link. - Reply with a concise report, key evidence, any checkup focus, supplement reasoning, and a temporary panel link if requested.