Singapore has roughly 87,000 seniors living alone. This weekend, the 65 Labs Gemini hackathon gave me one track - Silver AI: designing Gemini for seniors - and 48 hours. The question I kept circling wasn't "what can AI do for older people?" It was the reverse: what do older people have that the rest of us need?
Flip the direction of care
Most senior tech puts elders on the receiving end - reminders, monitoring, companionship apps. But the people I had in mind are witnesses, makers, and teachers. What's usually missing isn't capability. It's a clear signal that somebody is genuinely ready to listen or learn.
So 87K Windows asks one gentle question, turns a lived memory into a consented offer, and makes the result visible: a Singapore housing block where one warm window lights up when a story has been witnessed, and two windows plus a fine blue thread appear only when the evidence actually connects two people. The prepared demo is deliberately small: repairing radios in Queenstown in the 1970s, with an explicit offer to teach - matched against someone who wants to learn how old radios worked. Queenstown · 1970s · radio repair · teach ↔ learn.


Two models, two jobs
The architecture splits the AI along a privacy boundary, and each model has exactly one visible job.
Gemma is the privacy layer. During the judged demo it runs locally - gemma3:4b through Ollama on my Mac - and receives redacted words only. It returns a structured capsule: place, era, skill, offer or want, a safe summary, and its own uncertainty. Zod validates every field; malformed output is rejected, not patched.
Gemini 3.6 Flash is the senior facilitator. It enters only after a match, receives only the approved safe capsules and the visible evidence, and returns two gentle questions that can be read aloud slowly. It never sees raw memory text, photos, contact details, or unmatched submissions.
Not an AI companion. Gemini opens the door, then gets out of the way so two people can talk.
The most important component has no AI in it
The matcher is MiniSearch plus a transparent scorer with a hard threshold. Boring on purpose. Weak evidence returns NO MATCH YET - one light, no thread, no invented invitation.
A model in that seat would be tempted to make everyone match, because agreement feels like success. But loneliness deserves better than fabricated warmth. Trust in this system comes from being able to point at the evidence and show exactly why two windows lit up - or honestly say they didn't.
Honest demos ship
Two rules carried the build. First, no silent fallback: if neither real model is available, the demo stops rather than simulating inference. Second, respect the hardware: local extraction handles one story at a time on a MacBook Air and says so, instead of faking a queue.
The public app runs the same Node process on Railway with hosted Gemma 27B for extraction and Gemini 3.6 Flash for facilitation - every surface labels which model is actually active. The critical Playwright test uses two browser contexts: a phone submission must light the projected wall, survive a reload, and then refuse a deliberately weak fixture.





Demo hour made the weekend. A room full of teams shipping real inference on real constraints, then showing exactly where the seams are.
Next time you design a system for someone vulnerable, ask the question this weekend forced on me: where, precisely, does the AI get out of the way?
Open the live app → 87k-windows on GitHub →