AIO Proactive Health

History

Where this project comes from: how the author's own personal system changed over a year, in four generations

This page is about how my own personal system changed over a year. In October 2026 the part of it that handles data was taken out and became the open-source Proactive Health AIO (live demo ↗ · code ↗), which contains none of the real data here.

Start with these three cards

AWhat it does every day

  • It sends messages to my phone every day through Telegram, a chat app.
  • At 8:30 in the morning, a brief: today's deadlines and classes, what to train, how I slept.
  • At 10:30 at night, a reminder of tomorrow, so I don't stay up late.
  • If any stream of data from my phone or watch stops, it tells me.

BFour generations in a year

  • Word draft (Oct 2025) → Word rebuild (Apr 2026) → web version (May 2026) → phone app with scheduled AI messages (Jun 2026 to now).
  • Each one replaced the last after using it showed a problem.
  • The turning point: the health data on my phone stopped for 5 days and I did not notice. Since then it no longer waits for me to look; it comes to me.

CHow it relates to the open-source app

  • This open-source app is the data part of the fourth generation: it reads the exports you already have, compares each signal with your own normal, and names what to adjust each day.
  • Who did what: the needs, the trade-offs and the acceptance checks are mine; the code was written by AI coding tools (Claude Code, Codex).
  • Users: so far, only me.

Try it:Today ↗Body ↗Plan ↗

What the morning brief looks like (an example: the real brief's format, made-up content)

☀️ Good morning, Wed 14 Oct

Today:

· 🟠 Due tomorrow: data visualisation group draft

· Class: 14:00 Machine learning lecture

· Training: pull (back and arms)

Last night: slept 7 h 40 min

Recovery: normal against your last 28 days

Reply “energy 3, focus 4” (0–5) and today's state is logged

08:30

Drawn to real days. The Word draft took five and a half months; the web version was built in 4 days, then paused for a month (hatched); the fourth generation runs from mid-June to today, its three steps from light to dark: the skeleton, more and more features, coming to me.

Gen 1Word draft30 Oct 2025 – 15 Apr 2026

Writing ideas down

Wanted: to write down loose ideas and experience, sorted into five areas: thinking, body, daily rhythm, people, and the practical side of life.

Examples

  • v1.2

    AI as “a personal teacher for every field”: in a field I don't know, first ask the AI to explain it with an analogy from one I do, then go deeper.

  • Question

    Questions jotted down to look into, such as “how do water and electrolytes affect thinking?”

Found

The list kept growing, and I could not tell principles from things to do.

Changed

Generation 2: reorganise it with AI's help.

Gen 2Word rebuild17 Apr – 4 May 20267 versions in 18 days

Putting ideas in layers

Wanted: a document I could look things up in and correct. Every entry is tagged principle, strategy, to-do or question: principles rarely change, strategies change when needed, questions stay open.

Examples

  • v2.0

    “Don't optimise a higher layer while a lower one is broken. If you are sleeping badly, don't fine-tune your taste; if your energy is low, don't plan your career.”

  • v2.0

    When my pace of work falls apart, first check recent sleep, focus, relationships and surroundings, before blaming myself for “lacking discipline”.

  • v2.1

    Three rules for using the system: reflection depends on timing, not frequency; attach records to things I already do; don't fix the system's problems by adding more system.

  • v2.4

    Watch out for AI's “digital flattery”. AI goes along with you by default. Three signs: every chat with it feels great; it almost never really disagrees; your view hasn't changed, only your wording got nicer.

  • v2.6

    Plan sleep in 90-minute cycles: choose how long to sleep by the number of cycles instead of forcing 8 hours; waking at the edge of a cycle is close to waking naturally.

Found

The document had principles but no daily records; what I wrote and how I lived did not match.

Changed

Generation 3: keep body and training data in tables.

Gen 3Web version16 – 19 May 2026then paused until mid-June

Starting to record data

Wanted: to record body, training and supplements on a web page and see trends. For the first time an AI updated the data for me, following written rules.

Examples

  • 16 May

    Which muscles were sore after training, recorded by body part; a weekly report written automatically.

  • 18 May

    Training load and night-time heart rate drawn as trends, with an Apple Health-style summary.

Found

Made-up demo data had got mixed into the real records.

Changed

Removed it and started recording from scratch.

Found

Recording, calculating and showing were all piled onto one web page, and every change made it messier.

Changed

The page went back to only showing; after a month's pause, the fourth generation split these jobs apart.

Gen 4Phone app with scheduled AI messagesJun 2026 – todaythree steps

Split the jobs, then make it come to me

Step 1 · The skeletonmid to late June

Did: stored “how I think” apart from “how I actually am”: on one side the ideas and principles I write down, on the other the data my phone and watch record by themselves, matched up by IDs.

Examples

  • Append

    Raw records are only added to, never rewritten. A mistake gets a correction added after it and the old line stays, like a ledger with no erasing.

  • Candidate

    A new idea from the AI stays a “candidate” until I say yes.

Found

At first the AI sat on top of the whole system as the lead.

Changed

The AI only coordinates and looks things up; the records decide what is true, not the AI.

Step 2 · More and more featuresJuly – early September

Did: AI chat on the phone and the computer, a training card, pain notes, an archive of Apple Health data back to 2017, screen time.

Examples

  • Training

    Seven days rotating between push, pull, easy cardio and recovery. When recovery is poor it suggests doing less, but the plan itself is never changed and I decide; if key data is missing it says “not enough data” instead of guessing.

  • Ask

    “Ask the coach” only fills in the question; I press send. The AI suggests, I act.

Found

Too many rules, and I got stuck. I gave my own AI a long list of rules: every feature approved on its own, every step confirmed by me; it could not even quote my own heart-rate readings. Nothing moved fast.

Changed

In July the rules came down to three: my ideas and decisions can't change without my say-so; raw records can only be added to; passwords and keys are never read or passed on. In August it became “use it first, fix problems as they come”.

Found

I wanted to count my time on the phone and the computer, but Apple locks that data away. I worked around it for several versions and the numbers never matched.

Changed

In September I deleted all of it. In October I found another way in, reading a different raw record that macOS keeps, and it worked the same day.

Found

Building my own chat app and a framework for several AIs working together was too heavy to keep up.

Changed

In September I switched to Hermes, an existing AI assistant with memory and scheduled jobs, which messages me on Telegram; the phone app only collects data.

Step 3 · Coming to meSeptember – today

Did: the morning brief, the bedtime reminder and the data-gap alert all arrive on my phone on time.

Examples

  • 22:30

    Bedtime reminder: tomorrow's classes and deadlines; no class reminders in the holidays; if a class starts before 10 tomorrow, a nudge not to stay up.

  • Forecast

    Forecasting tomorrow's HRV (a heart-rate measure of how recovered the body is). Four methods were compared, and the latest year of data was locked away and used once, at the end. A simple linear model had about 5% lower average error than “just my usual of the last 28 days”; a neural network did no better, so the simple one went live.

  • Compare

    Looking at what goes with a better next day, one result went against intuition: after nights I went to bed early, my resting heart rate the next day was slightly higher. A possible explanation is that I go to bed early when I am already tired or unwell, so it is not read as cause and effect.

  • Wake

    Moving my wake-up earlier: one on-time morning moves the next alarm 15 minutes earlier; a late morning leaves it, and it never moves later.

  • Promise

    Things I said I would do, or promised someone, the day before are listed in the next morning's brief; replying “done” crosses them off.

Found

The health data stopped for 5 days before I noticed. I had installed the phone app myself without paying Apple's yearly developer fee, so it stopped working after a week; the automatic reinstall failed, and the alert even blamed the network.

Changed

A “watchdog” now checks every stream of data at 9 each morning. Before, a 5-day gap went unnoticed; now a 2-day gap sends me a message, and I am warned 2 days before the app would stop working.

Found

I nearly copied features from a course assignment. An assignment is made for a marker; this system is for me.

Changed

Features are chosen by four questions: what state am I in, how is it changing, what did a choice bring me and cost me, how should I plan today. Assignment features that matter little to these, such as comparing with other people's data, are left out for now.

Found

Does the AI that messages and chats with me every day actually understand me? I built a 25-question test for it, and it got 19 right. Asked what I would do if a friend invited me to a bar, it guessed I would “drink a little less”, but my notes say I don't drink or smoke. The answer was in its notes; it didn't look when it mattered.

Changed

The problem is when it looks things up, not a lack of material. Three rules are ready (not yet added): before guessing what I'd do, look up my notes for that situation; take numbers only from calculation tools; give dates and sources.

Six lessons from the year

  1. 1The system should come to me

    A system that waits for me to look can break without anyone knowing. The brief, the bedtime reminder and the gap alert arrive on my phone without my opening anything; that is what “proactive” in the name means.

  2. 2Attach records to what I already do

    I wrote this down in generation 2. Now most data arrives by itself, from the phone, the watch and the computer; all that is left for me is a sentence to the AI.

  3. 3Don't fix rules by adding rules; I did it myself

    Also written in generation 2. In generation 4 I still added a layer of approvals and checks for every problem, then took them off again one by one.

  4. 4Keep “how I think” apart from “how I am”, and facts apart from guesses

    Ideas and data are stored apart; the AI's ideas count only when I agree; training advice never changes the plan; when data is short, it says so.

  5. 5When a road is blocked, change roads

    I spent nearly two months on screen time along the road Apple had locked; once I deleted it and took another, it worked in a day. Swapping my own chat and coordination framework for an existing one was the same lesson.

  6. 6Whether it works is for tests to say

    19 out of 25, and the wrong answer about the bar, say more than “it feels useful”; in the HRV forecast the neural network was no more accurate, so the simple model is used.

Two smaller lessons: a redesign must not drop features that were there (in September a new phone home screen left some out and was rolled back the same day); passing on the computer's simulator is not enough, open it once on a real phone.

Not done yet