Domain
Health
My health records, watch and scale data, compared with my own normal, with every statement traceable to its evidence.
Health data is easy to collect and hard to read. Devices overlap, data goes missing, and a change can look important only because the comparison is poor. I wanted something quieter than another dashboard.
Health answers three questions: what changed compared with my own history, how complete the evidence is, and what can honestly be said about it. Code does the measuring and the comparing. A model never decides what the numbers mean.
What it holds
- Watch, phone and scale data
- Sleep, heart rate, heart-rate variability, steps, workouts and body composition, sent by the collectors. Health reads a copy it can rebuild at any time; the originals stay with the collectors, unchanged.
- My medical record
- Pathology results and how they trend, medications from the dispensing record, conditions and episodes. A record counts only after I have checked and attested it, and any later edit removes that attestation.
- My own normal
- Personal ranges worked out from my recent history, and the goals I have set. A change is judged against my normal, not against a population average.
From evidence to a weekly briefing
The evidence
Watch and phone
sleep, heart, steps, workouts
Scale
weight and body composition
Medical record
results and medications, attested by me
Calculated in code
units, overlaps between devices, gaps in the data, comparison with my own normal, confidence
Evidence pack
every fact with its period, its source, how complete it was and what it cannot show
Weekly briefing
written from the pack by code and kept with everything it was built from, so the same week always gives the same briefing
A model proposes claims
each one citing facts from the pack
Validator in code
checks every claim against the evidence it cites
Supported
said, with its citation
Unsupported
withheld, with the reason
- 01
Pick two complete weeks
The week that just ended and the one before it, each Monday to Monday in my time zone.
- 02
Read only what is needed
Health reads the measurements for those two weeks and nothing else, without changing any of them.
- 03
Calculate in code
Units, overlaps between devices, gaps in the data, comparisons and confidence are all worked out by code. No model is involved.
- 04
Build an evidence pack
Every fact is written down with its period, where it came from, how complete the data was and what it cannot show.
- 05
Write the briefing and keep it
The pack becomes a briefing I can read, saved privately with everything it was built from, so the same week always gives the same briefing.
The safety rules
- Unknown stays unknown
- Missing or unclear data is shown as missing. It is never turned into a zero, a reassurance or a worry.
- Together does not mean caused
- When two signals moved at the same time, Health says exactly that and stops there.
- Every statement is traceable
- Each statement names the fact behind it, the period, how complete the data was and how confident the calculation is.
- Health does not diagnose
- It helps me understand my own data. Diagnosis, prescriptions and emergencies belong to a doctor.
These rules live in code: schemas, validators and checks that stop a briefing before it says something the evidence cannot support. A prompt can only suggest. Code can refuse.

How it fits in AlanOS
Health is confidential by default. Its interface, a set of MCP tools, runs only on my home server and never hands a model the text of a medical document. The runtime and the console read it there, and a scheduled run writes the weekly briefing once the week's data has been collected. What that run reports about itself is success or failure, never a health value.
Its data comes from the iPhone app and the scale reader. Career proved the domain pattern first and has an interface on the internet. Health shares the pattern and keeps its interface at home.
It is built with TypeScript, Node.js, Zod and PostgreSQL, and tested with Vitest on invented data.
Health is built to be useful without sounding certain. Every statement it makes can show the evidence behind it and how much of that evidence there was.