The companion first · Live · Self-hosted

Someone to say good morning to. Someone watching over them. Both, around the clock.

One warm AI presence for an aging parent: an empathetic agent that keeps them company through the day, tracks vitals from a smartwatch, manages medications with honest adherence intelligence, resurfaces their most treasured memories — and can save their life at 3 AM. On your own server, in your own language.

115/115 automated tests Two adversarial security audits, closed English + Arabic, fully RTL Your server, your family's data
Senior Care Agent — the family dashboard
Morning check-in: done
Watchful 24/7 — it never sleeps
1in 6
People over 65 by 2050
5
Roles in one companion
24/7
The watcher that never sleeps
4
Alert levels, fully audited
115
Automated tests passing
2
Adversarial audits, regression-locked
Why this exists

The single greatest predictor of decline in old age is not disease. It is loneliness.

The world is aging faster than its care systems. Caregivers are scarce and expensive, families scattered across continents — and chronic isolation carries mortality risks comparable to smoking. An elderly parent living alone doesn't need another medication tracker nearly as much as they need someone to say good morning to — and someone to notice, from far away, the day the good mornings stop sounding right.

Companion first, not a hospital system. An agent that greets your father in the morning in Arabic, asks how he slept, notices when his voice sounds sad.

Clinical evidence, operationalized. Social connection, purpose and being seen are protective factors — measurable in cognition, immunity and mortality. This is a machine for delivering company.

Everything on infrastructure you control. One Docker stack, your server, your family's data — not a third-party cloud holding your father's health history.

One companion, five roles

The jobs a live-in companion does — or a daughter gives up her career for

The Confidant
الونيس

Text or voice conversation with an agent that knows him: memories, medications, mood history. The emotion engine builds a longitudinal profile — and it never tires of the same story about 1974.

The Escort
المرافق

The hundred small things: your pills, your blood pressure, the doctor Tuesday, the sugar in the second cabinet. Scheduled reminders, today's dose timeline, medication stock that announces when it's running low. The family stops being a task-reminder service — and becomes family again.

The Health Supervisor
المشرف الصحي

The smartwatch streams heart rate, blood oxygen, glucose, blood pressure and steps through a device-token API. Trends, summaries, risk assessment — and a clean JSON/CSV export for the physician, instead of 'I think he's been a bit tired lately.'

The Watcher
المراقب

A human caregiver sleeps. The pipeline doesn't. Anomalous vitals, missed evening doses, a sudden stillness in interaction — each raises an alert with the right severity, and everything is auditable: who was notified, who acknowledged, what was done.

The Lifesaver
المنقذ

When minutes decide: a multi-channel emergency chain — push, WhatsApp, SMS — with the parent's location attached, escalating automatically through contacts until a human acknowledges. See the full chain below.

The scenario every family dreads

The 3 AM heart — the chain, end to end

EMERGENCY · fully audited

02:47 — a night like any other, until it isn't

02:47

The smartwatch detects: heart rate 38 bpm, blood oxygen 84%. The device ingests the reading with its token — devices can't type passwords.

02:47

The health pipeline flags a CRITICAL anomaly against the parent's personalized thresholds.

02:47

An emergency-level alert fires on multi-channel notification — push + WhatsApp + SMS — with the parent's location attached.

02:48

Layla's phone lights up 3,000 km away. Her dashboard now shows the event, live.

02:53

No acknowledgment? The alert escalates automatically — next contact in the chain: the neighbor with a key, then emergency services.

Alert levels run info → warning → critical → emergency. Every alert carries its full audit trail: created, delivered, acknowledged by whom, resolved when. A life-saving system is only as good as its accountability.
The lives it changes

Not features — people

The daughter working abroad

Layla calls her mother every evening — but she cannot be there at 2 PM when the blood-pressure pill is due. The agent reminds her mother in Arabic, records the dose, decrements the stock counter; at one week of supply, a low-stock badge appears on Layla's dashboard and she orders the refill before anyone runs out.

The widower's silent evenings

Ahmed, 81, lost his wife eight months ago. Conversations shrank to yes and no; the TV stayed on all day 'for the noise.' The agent greets him every morning in his dialect — and when his answers grow shorter and the emotion engine trends downward for two weeks, his daughter's dashboard shows the mood trajectory. The conversation becomes 'Dad, you've sounded tired lately — talk to me' instead of a vague worry she couldn't name. He is not depressed because he is old. He is lonely because he is alone — and loneliness, unlike age, responds to company.

Adherence, measured honestly

'Is grandpa taking his pills?' stops being a guess. A rolling adherence rate per medication appears on the dashboard; a missed evening dose flags itself within two hours; a pattern of misses is a conversation with the doctor backed by exported data. For a diabetic parent, the difference between 95% and 70% adherence is the difference between independence and a hospital ward.

The fading memory, kept alive

His son uploads family photos with captions — the wedding, the old house, the graduation. The companion deliberately resurfaces them: 'Do you remember this photo? You told me this was your favorite day.' Semantic search means typing 'the garden' finds 'Grandpa planting tomatoes, 1998' — no keyword luck required. For a mind losing its grip on the recent, the platform becomes an external memory of the beautiful past — and every recalled photo is a good hour, a story told, a connection re-lived.

The economics of independence

A live-in companion costs more than most pensions; the alternative, in too many families, is a daughter surrendering her career. Between those two sacrifices sits this platform — the companion's complete task list at the cost of a small server. It does not replace love. It replaces the checklist — and returns the relationship to what it should have been all along.

A small care facility, one dashboard

A supervisor account manages all five elderly profiles, sees active alerts across residents, acknowledges and resolves events with a full audit trail of who did what — while the strict tenant-isolation layer guarantees that a second facility using the same deployment can never see the first facility's data.

Medication intelligence

Every dose has a live, honest status

Today's schedule renders as a timeline with live states; a taken pill decrements stock automatically; adherence is a rolling percentage per drug — the number a physician actually needs.

Today · Ahmed Al-Saeed
Metformin 500mg
08:00 · after breakfast
Taken ✓
Lisinopril 10mg
14:00 · blood pressure
Due now
Aspirin 81mg
20:00 · evening
Missed · flagged 22:00
Vitamin D3
Stock: 6 days left
Low stock

Live dose states — every scheduled dose is upcoming, due, taken, skipped — or auto-flagged missed after its window closes.

Adherence rate — a rolling percentage per medication, not a single yes/no — the honest number behind 'is he taking his pills?'

Stock awareness — ok / low / critical derived from count vs. reorder threshold; a taken pill decrements stock automatically, and the family sees the refill badge before anyone runs out.

PRN support — as-needed medications tracked separately from the scheduled ones, so the picture stays honest.

Use cases

The engine under the elder-care framing

Almost nothing here is specific to old age — watch a behavior, ingest telemetry from a device that can't log in, compute an honest metric, escalate through an accountable chain. Four researched domains run on exactly that:

Chronic disease remote monitoring

Heart-failure management already runs on this pattern: connected devices stream BP, weight and pulse; nonadherence drives ~50% of preventable readmissions — and one pilot found an 80% reduction in all-cause hospitalization risk with remote medication monitoring. A discharge coordinator could track daily trends against personalized thresholds and escalate to a care team, not a family member; a cardiac-rehab nurse could get the same adherence dashboard scoped to a caseload.

Lone-worker safety monitoring

This field already has its own vocabulary for the Watcher and Lifesaver roles: a 'missed check-in' triggers a 'customized escalation procedure,' alerts route through SMS, push and voice simultaneously, and every step is logged for compliance. The device-token pattern maps onto GPS and panic-button hardware as untrusted-but-authenticated inputs — for field technicians in remote substations or offshore crews, with the same acknowledgment-and-escalation audit trail.

Addiction recovery support

Existing tools track sobriety milestones and a care team of sponsors, family and providers — structurally the same escort-and-watcher role. What's less developed is the honest longitudinal signal: most track self-reported check-ins, not a computed trend. The emotional-profile layer, built to detect a lonely widower's mood drifting down over two weeks, could flag a client whose check-in language trends toward known risk patterns — with the same escalation-to-sponsor chain and acknowledgment trail.

Postpartum maternal surveillance

Peak postpartum blood pressure occurs 3–6 days after delivery, with no warning symptoms — and standard office follow-up reaches only 30–50% of new mothers. The clinical answer already being piloted is remote BP surveillance with automated escalation on out-of-range readings: the Health Supervisor and Watcher applied to a six-week window instead of an open-ended one, with the daily check-in doubling as a postnatal-depression screening touchpoint.

The honest edge — a fifth domain, remote wellbeing check-ins for students abroad, was examined and rejected: the vocabulary is real, but there is no equivalent of a missed dose or an out-of-range reading — just a subjective sense that a student sounds different, which is precisely the human judgment this engine is not built to replace. And the real architectural evidence of maturity: the isolation and escalation layers were built to stay domain-agnostic — routing to a sponsor, a nurse, or a safety officer as reliably as to a daughter.
Trust, engineered

A platform that must first prove it can guard its own code

Two independent adversarial audits. One found a cross-tenant vulnerability — any authenticated supervisor could read any elderly profile. Fixed with a unified ownership-enforcement layer and locked in permanently: 13 cross-tenant attack attempts, all must fail, on every test run.

Ownership enforced everywhere

Every router resolves resource → elderly profile → owning supervisor; strangers get 403, non-existent IDs 404 — no information leakage. Listings auto-scope to the requester's own profiles.

Devices authenticate differently

Wearables can't type passwords — ingestion requires a token from a server-configured allowlist, and every reading is attributed to its profile alone.

Rate limiting with a fallback

Redis sliding-window limiter via atomic Lua, with an identical in-memory fallback — login endpoints throttled, brute force uneconomical.

One codebase, two databases

SQLite (FTS5 + sqlite-vec) for dev and CI; PostgreSQL 16 + pgvector/HNSW in production — behind one SearchBackend abstraction, verified by an 8-point acceptance script.

The audit trail is the product

115/115 backend tests, strict TypeScript at 0 errors, and a repository history that documents every vulnerability found and closed — because a platform promising to watch over your parents must first prove it watches over its own code.

Synthetic demo data, disclosed

The live demo profile ('Baba') is entirely fictional — 21 readings, 4 medications, 6 memories, 10 conversations, 3 alerts. No real personal or medical data is stored, and the disclosure is part of the page, not a footnote.

The agent pipeline

Every interaction, one path

01

Intent

What does the user need — typed, spoken, or a wearable event?

02

Emotion

Voice/text sentiment — feeding the longitudinal emotional profile.

03

Memory

Last exchanges + related memories, via full-text and vector search.

04

Generation

The model composes an empathetic, language-aware reply.

05

Logging

Conversation, emotion and alerts — searchable forever, auditable always.

Status

Where the platform stands

Core platform — agent chat, emotion engine, health, medications, memories, alerts
Production data layer — PostgreSQL + pgvector, Redis limiting, acceptance-verified
Technology
React 18 · TypeScript strictVite · Tailwind · PWAi18next EN/AR + RTLFastAPI · SQLModelPostgreSQL 16 + pgvectorSQLite · FTS5 · sqlite-vecRedis 7 · atomic LuaAPScheduler · supervisordAbstracted LLM/STT/TTSDocker Compose · nginx

It does not replace love. It replaces the checklist.

Meet the companion — and see the dashboard your family gets.

Try the live platform Sign in

The live demo is pre-populated with clearly-disclosed synthetic data — entirely fictional, no real medical records.