Inspiration

In Homer's Odyssey, Odysseus comes home after twenty years in disguise. His wife doesn't recognize him. His son doesn't recognize him. The first to know him is his old dog, Argos.

People living with dementia go through the opposite every day. Someone they love walks in, starts talking, and they can't place the face or the voice. Most of them don't forget that they love this person. What they lose is the who and the what we talk about. That gap brings fear, embarrassment and withdrawal. Many patients would rather go quiet than risk getting it wrong.

We wanted something that plays the role of Argos: it recognizes the visitor first and quietly tells the patient, so the visit can just be a visit.

"This is Telemachus, your grandson. He just came back from Sparta."

What it does

  1. Memory: every person close to the patient has a memory: who they are, their relationship, shared memories, recent events and past conversations.
  2. Recognize: when a visitor speaks, Argos identifies them by voice within a few seconds.
  3. Remind: one short sentence plays in the patient's earbud: name, relationship and one thing to talk about.
  4. Continue: the patient carries on the conversation naturally.
  5. Update: when the conversation ends, the transcript is saved and the important things are added to that person's memory, so the next reminder stays current.

Family members join through an emailed magic link. They add their name, relationship, stories, a photo and a short voice sample, with no account needed. The patient's closest person manages everything from a dashboard and can edit or delete any memory.

How we built it

Argos has two parts that share one Supabase database:

  • Web app (Next.js on Vercel): the dashboard, invitations by email (Resend) and all AI work. ElevenLabs Scribe transcribes conversations with speaker separation. OpenAI gpt-5-mini extracts the important things and writes the reminder sentence. ElevenLabs text-to-speech turns it into a calm, warm voice.
  • Patient station (Python on a MacBook): listens through the mic, detects speech with Silero VAD, recognizes voices with SpeechBrain voiceprints, plays the reminder into an AirPod, then records and uploads the conversation.

Recognition. Each registered voice sample becomes a voiceprint, a vector e_i. For a 3–5 second greeting with voiceprint x, we compare it with every registered person using cosine similarity:

$$ s_i = \frac{x \cdot e_i}{|x| \, |e_i|} $$

Argos speaks only if the best match clears a confidence threshold:

$$ \text{remind if } \max_i s_i \ge \tau \text{, otherwise stay silent} $$

The patient's own voice is registered too, so the patient is never mistaken for a visitor.

Reminders are made ahead of time. Whenever someone's memory changes, the web app regenerates their reminder sentence and audio. During a conversation the station only has to recognize the voice and press play. It never waits for an AI call.

Choosing the hook. The hook is picked in this order: a follow-up from the last conversation, then a recent event (recent means the last 30 days), then a shared memory. The same hook is never used twice in a row.

Challenges we ran into

  • Silence over mistakes. Naming the wrong person is far worse than naming no one. It can confuse or hurt the patient. So we treat every unsure match, unknown voice or changed voice (for example a cold) as a reason to stay silent. Picking a threshold that stays silent when unsure but still catches real greetings was the core trade-off.
  • Voice recognition was the biggest risk. We tested it before building anything else: register three voices, check that short greetings match the right person and that an unknown voice matches no one. We kept Picovoice Eagle ready as a fallback.
  • Knowing when a conversation ends. A visitor might step out for ten minutes. We decided a conversation ends after 5 minutes without the visitor's voice. If they return within 30 minutes, it is the same conversation: no second reminder, and the memory update waits until they really leave.
  • Two visitors at once. Each gets their own reminder, one after the other with a short pause, and each plays only once.
  • Privacy. Real voices, photos and conversations are some of the most sensitive data there is. They live only in protected storage, never in our repo. Only the fictional Odyssey family is used for the demo.

Accomplishments that we're proud of

Built With

Share this project:

Updates

Submission history