A family health companion that notices meaningful changes, checks in with your parent, and tells you when you're needed.
Agents own the execution. Families retain judgment and control.
Important
KinKeep is not a medical diagnostic tool. All health signals and care scenarios in this demo use synthetic fixtures. Care branching, escalation stages and approval gating are auditable code โ never model output. No clinic or emergency service is contacted. Family messages are never sent automatically: KinKeep can open a pre-filled WhatsApp handoff, but the user must choose the recipient and press Send.
Every family has a kinkeeper โ the one who remembers the pills, makes the daily call, coordinates everything. Apple Health can already share Mum's heart rate with her. But numbers are not care: they don't ask how Mum's knee feels, don't notice that she slept two hours less and walked only 320 steps and skipped breakfast on the same morning, and don't tell a busy daughter whether today is a day that needs her.
KinKeep closes that loop:
Personal change detection Conversational check-in One decision for the family
multi-signal, vs HER own โ in her language, she just โ first round of care completed;
baseline โ never one number answers, never initiates humans keep the judgment
The elder gets a companion that talks like a person. The family gets silence when all is well โ and a completed first round of checks plus one clear decision when it is not.
KinKeep predates OpenAI Build Week: an earlier prototype was created during BUIDL_QUESTS 2026, which has now concluded. The current submission and development focus is OpenAI Build Week 2026. Because Build Week allows builders to extend an existing project, this repository preserves a clear before-and-after boundary instead of presenting the whole product as new.
- A bilingual parent conversation and family dashboard
- A simulated Apple Watch morning summary and personal-baseline trends
- Basic symptom check-ins, consent prompts, approval/audit UI, and a synthetic wandering/escalation demo
- Optional server-side OpenAI companion replies, meal-photo analysis, and voice transcription
- The vinext/Cloudflare deployment scaffold, production build, lint, and SSR tests
- A complete Care Episode Loop: visible health-data review โ proactive bilingual inquiry โ evidence and uncertainty โ three care options โ family approval โ named owners and deadlines โ follow-up โ recorded outcome
- Shared cross-surface episode state so the parent's consent and check-in become the family's notification, decision, task plan, and resolved follow-up
- Consent-led family contact that asks the parent who to contact, creates one clear alert for that person, and lets the family acknowledge and call back
- Safer, more accessible check-ins with time-aware meal prompts, knee/stomach/dizziness danger checks, Singapore emergency and NurseFirst guidance, and optional read-aloud advice
- Submission-quality consistency and verification: unified synthetic fixtures, responsive card fixes, expanded rendered-output assertions, and end-to-end demo rehearsal
I used Codex to implement, refactor, debug, test, and prepare the working demo. I remained responsible for product scope, safety rules, review, integration, and every consequential care boundary.
| Evidence | Reference |
|---|---|
| Last commit before OpenAI Build Week opened | 10970be |
| Core Build Week Care Episode Loop | d1d1c74 |
| Consent-led contact refinement and expanded tests | 6cdac5a |
Current final Build Week source on main |
5ca6f83 โ merged through PR #2 |
| Full Build Week diff | 10970be...main |
| Archived preโBuild Week prototype snapshot | judged-2026-07-12 |
| Archived prototype build timeline | docs/BUILD_LOG.md |
The current main includes the final Build Week source through PR #2; the history above separates it from the preโBuild Week baseline.
Keep the story on one completed care episode:
- On
/, sync the simulated health summary. - Choose My knee hurts โ A few days โ None of those.
- Show that KinKeep asks permission before contacting family, then choose Yes, please.
- Switch to
/familyand open Today's follow-up. - Show the four evidence items, the visible uncertainty, and the three care options.
- Approve Ask family to call and show the generated owner, deadlines, follow-up, and escalation rule.
Voice, meal-photo analysis, WhatsApp handoff, and wandering monitoring are supporting capabilities. Mention them briefly; do not spend the core three minutes demonstrating them.
Try it live: kinkeep-family-health.leini9591.chatgpt.site โ parent at /, family at /family. Bilingual (EN / ็ฎไฝไธญๆ) everywhere, switchable at runtime.
| ๐ฌ Conversation-first | No dashboard, no charts. Quick-reply chips instead of typing โ she answers, she never has to initiate |
| โ Watch summary in the chat | Tap-to-sync Apple Watch morning card: sleep โ1h ยท steps low ยท vs her own usual (simulated stream today) |
| ๐ฉบ Structured check-ins | Time-aware bilingual prompts for knee pain, stomach pain, sleep, appetite, and dizziness, with danger-sign checks before routine follow-up |
| ๐ Accessible safety guidance | Read-aloud Singapore guidance plus explicit choices for whether and how a family member should be contacted |
| ๐ Real meal-photo analysis | Server-side OpenAI vision: calorie range, macros, fibre/sodium/veg, portion, visible uncertainty, one practical suggestion |
| ๐๏ธ Real voice input | In-browser recording โ server-side transcription (zh/en), browser speech recognition where supported |
| ๐ "I need help" | Offers immediate guidance, then lets the parent choose the nearby responder David, Elena, or no family contact |
| โ "Is Mum okay?" answered | One sentence with plain-language reasoning โ evidence bullets, not raw data |
| ๐ฅ Relationship-aware profiles | Mum ยท Dad ยท self ยท brother โ each with a scoped permission level, not one feed for everyone |
| ๐ Trends & evidence | 7-day activity / sleep / resting HR / routine-match, each drawn against her personal range band, with "why today was flagged" |
| ๐ค Approval gate | High-impact actions (e.g. suggesting telehealth) pause with evidence + the matched policy reason; approve/decline both produce honest outcomes |
| ๐๏ธ Care schedule & roles | Family + companion tasks on one timeline; weekly assignments across Elena, brother, and the companion |
| ๐ Audit & access | Who viewed, who decided, what the system did โ including "Mum approved sharing this reply": consent runs both directions |
| ๐จ Escalation awareness | The selected channel and acknowledgement state sync across both surfaces, with synthetic location/HR/battery context for the wandering fixture |
Most agent demos show how far autonomy can go. KinKeep focuses on where autonomy must stop in family care.
| Agents do autonomously | Pauses for a human |
|---|---|
| Read wearable summary; compare vs personal baseline | Choosing whether and which family member to contact โ the elder decides |
| Initiate routine check-ins and prepare follow-ups | Contacting a family member โ the parent chooses who receives the alert |
| Structured symptom triage and record-keeping | Sharing the elder's reply with the family circle โ logged authorization |
| Meal understanding + one practical suggestion | Third-party data sharing, care-plan changes |
| Family summaries, options, tasks, and audit entries | Care-plan approval and emergency response โ human acknowledgement, never auto-dial |
Requires Node.js โฅ 22.13.
npm install
npm run devParent and family experiences run from the same server. Optional โ for live meal vision and voice transcription, create an ignored .env.local:
OPENAI_API_KEY=your-key
# Optional override; defaults to gpt-5.6-terra
OPENAI_MODEL=gpt-5.6-terra
# Optional: international-format digits only, used to open the selected family chat
KINKEEP_ELENA_WHATSAPP=6591234567
KINKEEP_DAVID_WHATSAPP=6597654321
If a family WhatsApp number is not configured, KinKeep still opens WhatsApp with the message pre-filled, but the elder must select the recipient. The browser cannot press WhatsApp's final Send button on the user's behalf.
No OpenAI key? Everything else is deterministic and works offline โ the demo never depends on a model to stay safe.
npm run lint
npm test # production build + server-rendered assertions for both surfaces- Application: Next.js 16 App Router ยท React 19 ยท TypeScript ยท Tailwind 4
- Runtime and deployment: vinext/Vite on Cloudflare Workers, deployed through OpenAI Sites
- GPT-5.6: OpenAI Responses API with
gpt-5.6-terrafor short, grounded companion replies and schema-constrained meal-photo understanding; requests are server-side withstore: false - Voice: OpenAI Audio Transcriptions with
gpt-4o-mini-transcribe; optional browser speech synthesis reads safety guidance aloud - Deterministic safety layer: typed state machines control symptom branching, consent, escalation channels, approvals, owners, deadlines, and follow-up status โ model output cannot bypass them
- Cross-surface demo state: typed
CareEpisodeandCareEscalationrecords persist in local storage and dispatch browser events so parent and family views stay aligned without pretending the demo has production clinical infrastructure - Structured uncertainty: meal analysis uses strict JSON Schema output with confidence and assumptions instead of false precision
- Codex development workflow: milestone planning, code generation and refactoring, regression tests, debugging, responsive verification, and deployment preparation, with human review and final product judgment
- OpenAI Build Week scope and evidence: this README and the
10970be...maindiff - Three-minute feature pitch and click script: docs/OPENAI_BUILD_WEEK_3MIN_PITCH.md
- Archived preโBuild Week prototype timeline: docs/BUILD_LOG.md
Real mobile push & notification ladder โ real wearable ingestion (HealthKit / rings) โ dialect voice (Cantonese ยท Hokkien ยท Teochew ยท Tamil) validated with real elders โ Singapore hawker-food nutrition depth โ Care Provider Console: one care professional, supported by agents, coordinating wellness for dozens of seniors.
OpenAI Build Week 2026 ยท built with Codex + GPT-5.6
Synthetic demo data ยท Non-diagnostic ยท Consent-first ยท Humans decide high-impact actions
KinKeep โ notices the change, checks in first, tells you when you're needed.