Homeostat Live demo

Self-hosted health vault · WHOOP · Garmin · FreeStyle Libre

Your health data,
kept at home.

Homeostat pulls all three into one SQLite file on your own computer. Click any number to see the raw record behind it. Ask in plain words, and every figure in the answer cites its source.

Try the live demo

Real app, synthetic data. No sign-up.

Email me when it installs

Opens your mail app. One email when it installs.

WHOOP · Garmin · FreeStyle Libre · Claude via your API key · Ollama optional

Homeostat Overview with synthetic sample data: a current glucose of 118 mg/dL, a 14-day glucose trace with 97.4% of samples in range, a coverage and source line for the Libre sensor, the method used, and a table of sleep, HRV, resting heart rate, recovery, body battery and steps per day.
Fig 1 · Overview Synthetic sample data
  1. Each value opens its raw record.
  2. Coverage and the sensor it came from.
  3. The method and time window behind the figures.

One file. One writer.

Everything lives in a single SQLite database on your disk. Copy it, back it up, open it with any SQLite tool. A small daemon on 127.0.0.11 is the only process that writes to it. Connector tokens and API keys are stored encrypted with AES-256-GCM.2

Your record outlives the subscription and the sensor.

  1. Nobody else holds a copy.

    One SQLite file on your disk, and no account. The only Homeostat server is the public demo, and it holds synthetic data.

  2. Nobody else reads your vault.

    Questions go to Claude with only the records they need, on your own API key. Or to Ollama, and nothing leaves at all. Health values and prompts are never written to logs.

  3. Nobody can lock you out.

    Export everything as FHIR R4. Source release coming, under the MIT license.

  4. Nobody gets telemetry.

    The app has no analytics, and its map tiles live on your disk. This page loads nothing from third parties either.3

The Explore evidence drawer, 'Where this number came from': a heart rate variability reading of 61.4 ms traced to its WHOOP connector, batch key, commit time, raw payload hash and size, logical key, revision and normaliser, with a revision history table below.
Fig 2 · Evidence drawerWHOOP

Every number has a receipt.

Click any value to see where it came from: connector, batch, raw payload hash, revision.4 Ask cites the same chain.

An AI that has to show its work.

Ask in plain language. Each number in the answer cites the measurement it came from. A number that doesn't trace back is flagged not in evidence, inside the answer. Answers describe your data and give no medical or dosing advice.

Homeostat Ask, dark theme, on synthetic sample data: a thread list on the left and Claude Haiku 5.5's answer to 'Did I sleep longer on the nights after my long runs this past month?'. It lists the four nights after Garmin long runs, about 504 minutes on average against about 477 on the other 27 nights, roughly 26 minutes longer, with each value cited and a caveat that four nights is a small sample. A composer is below.
Homeostat Ask on a phone, dark theme, on synthetic sample data: the end of a cited answer about sleep after long runs, its caveats, and the question composer.
Fig 3 · AskSynthetic sample data · Garmin · WHOOP

Where the question goes is your choice.

Ask uses Claude with your own Anthropic API key. Homeostat keeps the key in your local vault, encrypted with AES-256-GCM. Each question sends Anthropic that question and the records needed to answer it, and nothing else.5 Ollama runs a model on your own computer, needs no key, and sends nothing anywhere.

Ask
  • Claudeyour API key, default
  • Ollamalocal, optional
MCP

Or point your own agent at the MCP server. It gets scoped read access.

  • Claude Desktop
  • any MCP client
Settings, Engines, with an API key saved: Claude (API) marked remote, default and enabled, the saved key's last characters blurred, with Replace key and Remove key buttons and the note that your question and the values Ask looks up are sent to Anthropic; Ollama marked local, no consent needed.
Fig 4 · Settings, engines

A run map that never calls home.

Garmin tracks drawn on a basemap stored on your disk. Download it once and the map makes no more network calls.

Homeostat Training: 26 weeks of running summarised as 486 km, 43.8 hours, 55 sessions and a training load of 6086, above a map of 55 recorded tracks around a city lake.
Homeostat Training on a phone: the run map with recorded tracks around a city lake, and the weekly progress chart.
Fig 5 · TrainingGarmin

Targets you set. Progress it computes.

Set a target and Homeostat tracks progress from your data. Change it later and the old target stays in history, so an answer that cited it still points to the right number.

Homeostat Goals: five active goals with progress rings, including 120 km before race day at 69% and on track, resting heart rate at or below 52 achieved, time in range above 90% achieved, sleep 7.5 h a night, and run 25 km a week with a weekly bar chart.
Homeostat Goals on a phone: goal cards with progress rings and their current values.
Fig 6 · Goals

Questions

Is it a medical device?
No. Homeostat shows your own data and cites where each number came from. It doesn't diagnose anything, and Ask gives no medical or dosing advice.
Does my data leave my computer?
Your data stays in one file on your computer. When you ask Claude a question, only that question and the records it needs go to Anthropic, under your own API key. With Ollama, nothing leaves.
Which devices does it support?
WHOOP, Garmin and FreeStyle Libre.
Can I try it?
Yes. The live demo is the real app on synthetic sample data. It's read-only and needs no sign-up. You can ask it questions, and Claude answers them on the demo's own key, up to a daily limit.
When can I install it?
There is no date yet. Homeostat runs from source today and has no installer, but you can try the live demo now. Email hello@gethomeostat.com and you'll get one email when it installs.

I wear a WHOOP, a Garmin watch and a FreeStyle Libre. Each came with its own app, and each app kept one slice of me. I got tired of switching between three of them to answer one question.

So I built Homeostat. It has run every day on my own data since late September 2026. The connectors, the evidence drawer, Ask with citations, offline run maps, Training, Goals, the MCP server and FHIR export all work. What's missing is an installer. For now it runs from source on my own computer, and you can try it on synthetic data in the live demo.

When it installs, I'll send one email to everyone who asked. That's the only email you'll get from me.

There is no account, and the only Homeostat server is the demo, which runs on synthetic data. I never hold your data, so I have nothing of yours to sell.

Serhii Troinin, Amsterdam
github.com/serhiitroinin

Early preview.

It runs from source today and has no installer yet. Try the live demo now, or send a line and you'll get one email when it installs.

Try the live demo

Real app, synthetic data. No sign-up.

Email me when it installs

Opens your mail app. One email when it installs.

hello@gethomeostat.com

Started 2026-09-21 · 28 merged pull requests · schema v12

Receipts

  1. The daemon binds to 127.0.0.1 only, so other machines on your network can't reach it. Any tool that lists listening ports shows that address while it runs.
  2. Connector tokens and your Anthropic API key are encrypted with AES-256-GCM before they are written. You can read that code once the source is released.
  3. Fonts, images and styles on this page come from this domain. Open your browser's network tab and reload to check. No cookies, no analytics.
  4. Fig 2 is the evidence drawer for one HRV reading: connector, batch key, raw payload hash, revision and normaliser.
  5. Fig 4 is Settings, Engines, with a key saved: Claude (API) is the default engine and enabled, and Ollama stays local and optional. The Claude (API) row states the rule: your question and the values Ask looks up are sent to Anthropic. The saved key's last characters are blurred in the screenshot.