HealthSteward
open source · privacy-first · v1.0

The open-source version of HealthSteward. It runs on your machine.

Version 1.0 centralizes what your providers gave you — locally, on your machine — and turns it into what to bring up at the next appointment. It is free (GPLv3) and has been tested on synthetic cases and a few real documents, not yet with real patients.

local by default · no cloud storage · no sync · nothing leaves your machine unless you opt in to a cloud model

Features

What v1.0 does

Profile

Health profile management

Conditions with ICD-10 codes, medications, doctors, and appointments, kept in one place.

Prep

AI visit preparation

An agentic loop drafts personalized questions for an upcoming visit, pulling relevant history and calling tools (medication lookup, past-visit lookup) before it finalizes anything. Runs fully local via Ollama by default — Claude API and other providers are opt-in.

Ingest

After-visit summary parsing

Upload the PDF you're handed on the way out. Parsed locally with Ollama, reviewed by you, then applied to your profile.

Follow-up

Proactive action items

Follow-ups to book, labs to get done, referrals to schedule — surfaced right after a visit, and again in a persistent "needs attention" list until you snooze or resolve them.

Privacy

Two trust boundaries, not one

Health data is sensitive by default, so nothing crosses a boundary un-redacted.

Stays on device — default

Ollama, local

PDF parsing always runs on a local model, and visit prep does too by default. Your raw records never touch the network unless you opt out.

Anonymized first

Claude, or any provider you choose — optional

Switch visit prep to Claude API or any OpenAI-compatible provider from Settings — names, dates of birth, and contact details are removed before anything is sent, using pattern matching and spaCy name detection.

This reduces exposure but isn't a guarantee — name detection is statistical and can miss names or identifying details in unusual free-text phrasing. Local-only mode (Ollama for both parsing and visit prep, the default) needs no anonymization step, since nothing leaves the machine.

Setup

Get started

Everything, including the database, stays in a folder on your machine. Needs Python 3.11+, Node 18+/pnpm, and Ollama.

terminal — backend
$ git clone https://github.com/nidhi-menon/HealthSteward.git && cd HealthSteward
$ pip install -r requirements.txt
$ python -m alembic upgrade head
$ python -m uvicorn src.main:app --reload --host 127.0.0.1 --port 8000
terminal — frontend
$ cd frontend && pnpm install && pnpm dev
terminal — local models, for PDF parsing and visit prep
$ ollama serve
$ ollama pull qwen2.5:7b
$ ollama pull llama3.2

Full setup, including the .env file, is in the README. A one-step installer for people who'd rather not open a terminal is on the way — track progress on GitHub.

Looking for the consumer app?

A hosted version is in development

This page is about the open-source v1.0 you run yourself. A hosted consumer app, with record linking, a Village of trusted people, and chat over your record, is being built separately and is not available yet. The main page explains the problem and the plan, and you can join the waitlist.