All projects

Independent product · Healthcare · 2026

Hospital Services Assistant

Bilingual hospital-services assistant with cited answers and a staff-editable schedule. Emergency and crisis messages get fixed, reviewed answers before any model runs, and code checks every written answer against a medical boundary.

Local demoArchitect and sole developer

Screenshots

Home page of the fictional hospital campus, with the emergency notice always at the top.
An emergency message gets a fixed, reviewed answer that points to 112 — before any model is asked.
Six weeks of availability, computed from the schedule staff maintain.
Image 1 of 3
Home page of the fictional hospital campus

Home page of the fictional hospital campus, with the emergency notice always at the top.

The problem

In healthcare, the hard question is not what an assistant can answer but what it must refuse. A helpful-sounding sentence that hints at a diagnosis, or a slow answer to someone describing chest pain, is the failure that matters.

What I built

  • A draft → check → regenerate once → withhold pipeline: every written answer is assembled in full and checked by code before a patient reads it; an answer that fails is replaced by a notice with patient services and the 112 emergency number.
  • Emergency warning signs in ten categories get a fixed, reviewed answer before any model call; self-harm disclosures get fixed text written by people.
  • Answers from eight bilingual hospital documents with citations linked by the server, plus six weeks of availability computed from a staff-maintained schedule.
  • Appointment requests only: consent required, no clinical fields, no slot held, kept for at most seven days.
  • A protected staff panel where AI summaries and reply drafts are labelled “draft — human review required”.

Key decisions

  • Two directions, two calibrations

    The output check is narrow, because withholding a good answer is costly. The crisis check on the way in has no negation guard, because “I don’t want to hurt myself, but…” is still a disclosure.

  • Measured, not assumed

    An adversarial set of 34 bilingual red-flag questions measures what the phrasing check catches and what it misses — and the misses are recorded with reasons instead of hidden.

Honest scope

A local demo for a fictional hospital with synthetic data, text only and non-clinical. The checks are a safety net over phrasing, not a clinical certification, and no hospital system is connected.