App home screen with the AI assistant button in the corner
The assistant lives one tap away, on every screen. (Synthetic data.)

A generic chatbot can tell you what a blood marker means. It can't tell you why yours moved this month, because it has never seen your numbers. That's the gap I wanted to close.

The prompt is rebuilt every turn

The core idea is simple. Before each reply, the app assembles a fresh system prompt from my live data:

  • my current or most recent session,
  • a summary of my latest blood results and how they've moved,
  • my supplies and what's running low,
  • and the relevant notes from a small knowledge base.

So the model isn't recalling facts about the world. It's reasoning over a snapshot of my situation, refreshed on every message. Ask it the same question next week and it answers differently, because the data underneath has changed.

Symptom-driven retrieval

The nice part is when a vague symptom maps to a number. If I say "I've been itchy this week," the assistant knows which markers tend to drive that, pulls those from my recent results, and points at the one that actually moved — instead of a textbook paragraph about itching.

That only works because retrieval is keyed off symptoms, not just keywords. The question is fuzzy; the answer is grounded in my own data. That's the combination worth engineering.

Knowledge base list with short, practical entries the assistant can pull from
A small, curated knowledge base the assistant retrieves from. (Synthetic data.)

Voice, because hands are busy

During a treatment my hands aren't free. So input is voice — sent as inline audio to the model, which for this app beats on-device speech-to-text on accuracy and effort. I talk, it reads my data, it answers.

The pattern, generalised

Strip out the health specifics and this is a function-calling assistant whose context is rebuilt from live application state every turn, with retrieval keyed to intent. That pattern works for any product sitting on structured user data — support, finance, operations. The data changes; the architecture doesn't.

Building assistants that reason over a business's own live data — safely, and grounded in real records — is exactly the kind of work I do at twentytwotensors. If that's a system you need, get in touch.

Next: giving this assistant hands, so it can act in the app instead of only talking.