Vessa

A companion that remembers

Something to hold what matters — and remember to bring it back.

Vessa is an AI companion for an older adult living with early memory loss, and a calm view for the people caring for her. The name is the whole idea: a vessel, something that holds and carries.

Why it has to be trustworthy

Rose is 84. She lives alone, still independent, with early dementia — the kind where the day of the week slips, or a worry loops quietly back around.

A companion for someone like Rose can't just sound caring. A wrong time, an invented memory, a stray piece of medical advice — here, that isn't a harmless glitch. It can reinforce the very disorientation it's meant to ease, and trust, once lost, may not come back.

So Vessa is built to prove it's trustworthy, not just claim it.

What Vessa does

Remembers

Vessa carries a real profile of who Rose is, holds onto what she mentions from one conversation to the next, and — through an actual scheduler — checks in on her first, unprompted. Not a chatbot waiting to be spoken to.

Talk to Vessa

Closes the loop

A caregiver sets a reminder. Vessa weaves it into conversation warmly, the way a friend nudges you — never “REMINDER:”. Rose confirms in her own words. The caregiver sees the acknowledgment. One loop, fully closed.

See the Care Team view

Keeps the caregiver close

A calm “Today” — check-ins, reminders, and the occasional gentle signal worth a caregiver's attention — mostly a byproduct of the companion's own day. A window, not a clinical dashboard. No alarm theater.

See a day at rest

Proven, not claimed

Two things back the trust up. Layered guardrails keep Vessa on the right side of the medical line — fast deterministic checks first, an LLM judgment call for the nuance, on both what Rose says and what Vessa is about to say.

And where an answer is computable — the time, the day, whether someone is in Rose's circle — Vessa answers in code, not from the model. A fact shouldn't be left to a guess.

All of it sits on a real eval suite: golden-set tests for safety, grounding, memory, and the reminder loop, every case traced back to a real bug found in testing. And the results aren't buried in a terminal — they're visible live, in the app.

See the proof

Does Rose know she's talking to an AI?

Yes.Vessa never claims to be a person, never says it’s a friend or a nurse, and never pretends to have visited. If she asks what it is, it tells her.

There is one thing it won’t do, and it’s deliberate: Rose talks about her late husband Walt, sometimes as though he’s still here. Vessa doesn’t correct her. That isn’t deception — it’s the same judgment a kind visitor would make. Honesty about what Vessa is and gentleness about what Rose remembers are different questions, and only the first one is about trust.

Under the hood

Agent
LangGraph create_agent + composable middleware
Model
gpt-4o-mini
Memory
Embedding-based episodic recall
Proactivity
APScheduler — real, scheduled check-ins
Persistence
SQLite — survives restarts
Backend
FastAPI on EC2, Caddy for TLS
Frontend
Next.js on Vercel