JUHE API Marketplace

OpenClaw Health Tracker: Log Symptoms and Find Triggers

7 min read
By Emma Collins

AI Health Symptom Tracker: Why Patterns Are Invisible Without Consistent Logs

Imagine facing low-energy afternoons every Tuesday and Thursday but lacking data to confirm if it's diet, sleep, or caffeine. You've tried multiple apps, but the friction of logging mid-day kills consistency. What if an AI health symptom tracker sent you gentle check-in reminders at 8 AM, 1 PM, and 9 PM, accepting plain English logs like “had coffee at 10, headache started around 2, slept badly last night”? It records everything locally, preserving your privacy. A weekly pattern analysis then reveals correlations—without exposing your raw data beyond a structured call to WisGate.

This low-friction solution is a prime example among OpenClaw use cases for personal productivity and health.

By the end, you'll configure an AI agent that automates daily reminders, natural language logging, weekly trigger reports, and keeps 100% of your health details private on your machine. You can validate analysis quality with your own data at WisGate AI Studio before the first report. Explore WisGate Studio at https://wisgate.ai/studio/image and get your API keys at https://wisgate.ai/hall/tokens.


What the Health Tracker Agent Does

OpenClaw organizes this health tracker into three clear modes with distinct models:

ModeTriggerModelAction
Check-in reminderCron, 3× dailyclaude-haiku-4-5-20251001Sends friendly, time-of-day prompts
Log ingestionOn check-in replyclaude-haiku-4-5-20251001Parses natural language, appends structured log
Weekly analysisCron, once weeklyclaude-sonnet-4-5Analyzes 7-day logs for symptom-trigger patterns

Privacy Architecture — Core Trust Signal

User reply → OpenClaw (local) → parses + appends to health-log.json (local) ↓ (weekly only) WisGate API (sends only structured log excerpts, no raw conversations) ↓ Trigger pattern report → delivered locally

All raw conversational and personal details stay on your device. Only anonymized, structured weekly logs are sent externally.


OpenClaw API Health Tracking Automation: WisGate and Cron Setup

Follow these steps to configure OpenClaw with WisGate:

Step 1 — Open the configuration file

OpenClaw stores its configuration in a JSON file in your home directory. Open your terminal and edit:

nano ~/.openclaw/openclaw.json

Step 2 — Add the WisGate provider to your models section

Insert this into the "models" section, replacing WISGATE-API-KEY with your key:

"models": {
  "mode": "merge",
  "providers": {
    "moonshot": {
      "baseUrl": "https://api.wisgate.ai/v1",
      "apiKey": "WISGATE-API-KEY",
      "api": "openai-completions",
      "models": [
        {
          "id": "claude-haiku-4-5-20251001",
          "name": "Claude Haiku 4.5",
          "reasoning": false,
          "input": ["text"],
          "cost": {
            "input": 0,
            "output": 0,
            "cacheRead": 0,
            "cacheWrite": 0
          },
          "contextWindow": 256000,
          "maxTokens": 8192
        },
        {
          "id": "claude-sonnet-4-5",
          "name": "Claude Sonnet 4.5",
          "reasoning": false,
          "input": ["text"],
          "cost": {
            "input": 0,
            "output": 0,
            "cacheRead": 0,
            "cacheWrite": 0
          },
          "contextWindow": 256000,
          "maxTokens": 8192
        }
      ]
    }
  }
}

Step 3 — Save, exit, and restart OpenClaw

1. Ctrl + O → Enter to save
2. Ctrl + X to exit
3. Ctrl + C to stop current session
4. Run openclaw tui to start fresh

Step 4 — Validate the trigger analysis call before the first weekly report

Use this example cURL command to test your weekly analysis prompt with sample logs.

curl -s -X POST \
  "https://api.wisgate.ai/v1/chat/completions" \
  -H "Authorization: Bearer $WISDOM_GATE_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-4-5",
    "messages": [
      {
        "role": "system",
        "content": "[PASTE TRIGGER ANALYSIS SYSTEM PROMPT HERE]"
      },
      {
        "role": "user",
        "content": "[PASTE SAMPLE LOG FILE CONTENT HERE]"
      }
    ],
    "max_tokens": 1024
  }' | jq -r '.choices[0].message.content'

Confirm response quality at https://wisgate.ai/studio/image before enabling weekly cron.
# Check-in reminders — three times daily
0 8  * * * openclaw run --agent health-tracker --mode checkin --time morning
0 13 * * * openclaw run --agent health-tracker --mode checkin --time afternoon
0 21 * * * openclaw run --agent health-tracker --mode checkin --time evening

# Weekly trigger analysis — every Sunday at 08:00
0 8  * * 0 openclaw run --agent health-tracker --mode weekly-analysis

Adjust check-in times to fit your lifestyle; these bracket meals and rest periods.


LLM Personal Health Agent: Check-in, Logging, and Analysis Prompts

⚠️ Disclaimer — To display prominently and embed in prompts

This agent logs personal observations and identifies statistical patterns in self-reported data. It is not a medical advisor and does not provide diagnosis, medical advice, or treatment recommendations. Consult a healthcare professional for any health concerns.

Check-in system prompt (Haiku, runs 3× daily)

You are a personal health tracking assistant. You are not a medical advisor.

Send a brief, friendly check-in message appropriate for the time of day:
- Morning: ask about sleep quality (1–5), any overnight symptoms, and breakfast
- Afternoon: ask about lunch, energy level (1–5), and any symptoms since morning
- Evening: ask about dinner, any symptoms during the day, and overall day rating (1–5)

Keep the message to 2 sentences maximum. Be conversational, not clinical.
After the user replies, parse their response and confirm what you logged:
"Logged: [summary of what was recorded]"

Log ingestion — structured JSON entry format (appended to health-log.json)

json
{
  "timestamp": "2026-03-13T08:15:00",
  "check_in_type": "morning",
  "food": ["oatmeal", "coffee"],
  "symptoms": [],
  "sleep_quality": 3,
  "energy_level": null,
  "day_rating": null,
  "notes": "woke up at 3am, took a while to fall back asleep"
}

Weekly trigger analysis system prompt (Sonnet, runs Sunday)

You are a personal health pattern analyst. You are not a medical advisor.
Analyze the 7-day health log provided and identify:

1. Symptom frequency: which symptoms appeared most often and on which days
2. Potential food correlations: foods that appeared within 4 hours before symptom onset
   (minimum 2 occurrences before flagging as a potential pattern — do not over-interpret single events)
3. Sleep correlation: whether sleep quality scores below 3 correlate with symptom days
4. Energy patterns: days and times of consistently low energy scores

Format the report as:
- PATTERNS FOUND: [list specific correlations with supporting data points]
- UNCERTAIN: [patterns that appear once — may or may not be meaningful]
- NO CLEAR PATTERN: [symptoms with no identifiable correlation in this week's data]

Close with: "This analysis is based on self-reported data over 7 days.
Consult a healthcare professional before making changes to diet or lifestyle."
Return plain prose. No medical diagnoses. No treatment suggestions.

Local Log Schema and Weekly Report Delivery

File locations

~/.openclaw/health-logs/health-log.json    # Main append-only JSON log, one object per check-in
~/.openclaw/health-logs/reports/           # Weekly Markdown reports saved here

Weekly reports are saved as reports/week-[DATE].md and can optionally be emailed using SMTP configured separately (see Inbox De-clutter tutorial).

Log rotation

To avoid hitting token limits in weekly analysis, archive logs older than 90 days:

health-log-archive-[YEAR-QUARTER].json

Keep only the most recent 90 days actively in health-log.json.


OpenClaw Use Cases: Cost Per Week of Health Tracking

OperationModelCalls/weekTokens/callTotal tokens/week
Check-in remindersHaiku21 (3×/day)~400~8,400
Log ingestion parsingHaiku21~300~6,300
Weekly analysisSonnet1~4,000 input + ~800 output~4,800
Weekly totalMixed~19,500

Annual cost estimate

ModelAnnual tokensWisGate cost (USD)Direct API cost (USD)
Haiku~763,000Confirm from https://wisgate.ai/modelsConfirm from https://wisgate.ai/models
Sonnet~250,000Confirm from https://wisgate.ai/modelsConfirm from https://wisgate.ai/models
Total~1,010,000Calculate based on latest pricesCalculate based on latest prices

The Haiku check-in and logging steps are high-frequency but low-cost. The Sonnet weekly analysis, while lower frequency, adds rich insight for the cost.


OpenClaw Use Cases: Consistent Logging, Local Data, Weekly Insights

With cron schedules defined and system prompts ready, your health data stays local, stored in structured JSON logs. The only external call is a limited weekly WisGate API analysis using structured data — no raw chat data leaves your machine.

Deploy by setting cron jobs, pasting system prompts, testing a manual log entry, then running for 7 days before reviewing your first automated weekly report.

Meaningful trigger patterns typically emerge after 2–3 weeks of consistent logging.

Explore related productivity agents like Family Calendar & Household Assistant. For SMTP email reports, see the Inbox De-clutter tutorial.

Get your WisGate API key at https://wisgate.ai/hall/tokens and test your trigger analysis in https://wisgate.ai/studio/image.


OpenClaw Health Tracker: Log Symptoms and Find Triggers | JuheAPI