Your AI health coach needs a record, not a memory
Chatbots “remember” by rereading conversations. That breaks quickly for health, where what matters is structured, correctable, longitudinal data — and proof of every write.
Tell a general-purpose chatbot what you ate today and it will respond warmly, maybe even usefully. Do it for a month and ask “how has my protein trended since I started lifting?” — and you’ll watch the illusion collapse. It will produce something fluent and confident. It will not produce your actual protein trend, because nothing in that system ever stored one.
Memory is not a record
When a chatbot “remembers,” it’s rereading text — conversation history, retrieved snippets, a notes file. That’s genuinely useful for preferences and context. But health questions are aggregation questions: averages over weeks, trends against targets, this month versus last. Text doesn’t aggregate. There’s no arithmetic over “I had a big lunch, maybe 700 calories?” scattered across ninety conversations — there’s only an AI improvising over fragments, with every incentive to fill gaps confidently rather than admit them.
A record is a different object. Three properties make the difference:
- Structured. A logged meal isn’t a sentence in a transcript; it’s foods, portions, calories, macros, attached to a date. Structure is what makes “average protein, Tuesdays excluded” a computation instead of a hallucination.
- Longitudinal. Its unit of meaning is the trend, not the message. Month-old data isn’t context rot — it’s the baseline your progress is measured against.
- Correctable. Records have edits, removals, and ground truth. A transcript where you said the wrong thing forever contains you saying the wrong thing.
The trust loop: prove every write
A record the AI both reads and writes creates an obvious worry: what exactly is it writing? Most assistants answer with vibes — “Got it, logged!” — and you’re left auditing. We think the honest answer is a visible write-trail: every write appears as a chip under the reply (2 foods added, 1 exercise updated), and hovering shows precisely what was written — old value → new value on corrections. Say “actually it was two pieces” and you can watch the record change:
The same principle governs the numbers flowing the other way. In the weekly recap, every figure is computed from the record by ordinary code; the AI narrates but cannot alter arithmetic. And where numbers enter the record via estimation — like photo logging — each one is labeled verified-against-a-database or honestly marked an estimate. Trustworthy pieces, visibly joined: that’s what lets a coach say “protein has been under target on training days” and have it be true.
A record is also something you can own
Structure has a quiet second benefit: a record can be handed to you in a way a scattered chat history never can. In Moraine, one tap exports everything — journal, goals, targets, the lot — as JSON you can keep, inspect, or move elsewhere. One typed confirmation deletes all of it, including uploaded files. The chat itself clears after seven days by design; it’s the scratchpad, not the asset. Your record is the asset, and it’s yours.
The test to run on any “AI health coach”
Three questions separate a coach from a chatbot wearing one’s clothes:
- Ask for a specific aggregate — “average sleep over the last two weeks?” — and check it against reality.
- Correct something — “that run was 5k, not 10k” — then ask again tomorrow and see which version survived.
- Ask to see everything it has on you, in a file, today.
A system built on a real record passes all three without ceremony. A system built on chat memory fails at least one, fluently. That gap is the product we’re building — here’s what exists today — but the test is worth running on anything that offers to coach your health, ours included.