Inspiration

Every provider only sees their slice of your history: primary care, specialist, urgent care, pharmacy, labs. The same drug under two names, labs in different units, and drug interactions that no single doctor could catch. I built Concord to merge those silos into one grounded record, then add a "Guardian" that listens during a visit and speaks up only when an order is unsafe against the full picture.

What it does

Concord uploads records from multiple sources, extracts structured facts with source quotes, reconciles them into one patient (identity matching, RxNorm/LOINC coding, unit normalization), verifies provenance, and surfaces cross-provider findings with citations.

Guardian is a point-of-care safety layer: it transcribes the doctor/patient conversation, runs server-side checks against the reconciled record, shows clear/flagged cards on screen, and speaks aloud only on real conflicts.

Live: https://concord-hh.vercel.app

How we built it

  • Frontend: Next.js, React, Tailwind on Vercel
  • Storage: Neon Postgres + Drizzle, Vercel Blob for uploads
  • Pipeline: Grok text models: fast non-reasoning for extract, reasoning for reconcile + analyze (with web search for citations)
  • Guardian: Grok Voice realtime WebSocket for transcription/VAD only; /api/guardian/assess runs classification + safety checks on Grok text; approved warnings go out via force_message
  • Silent by design: client drops all unsanctioned realtime audio. Only whitelisted responses play
  • Demo: /room sim (doctor + patient voice agents) in a second tab; Guardian captures tab audio and assesses orders live.

Challenges we ran into

  • Guardian talking when it shouldn't: realtime models auto-respond; fixed with client-side audio gating + server-written force_message text only
  • Assessments never firing: ASR turn rollovers cleared debounce timers; fixed by flushing pending checks on turn end
  • False positives & duplicates: patient-echo filtering, stable dedupKey per clinical decision, macrolide-switch refinement

Accomplishments that we're proud of

  • End-to-end cross-provider reconciliation with a hero catch (e.g. clarithromycin + simvastatin across urgent care and PCP)
  • Guardian that stays silent through safe orders, flags real conflicts (e.g. amoxicillin + penicillin allergy), and cites source quotes
  • Deployed with persistent uploads, reconciled records, and a repeatable live demo

What we learned

  • Semantic merge (brand/generic, unit conversion) is harder and more valuable than raw extraction
  • Voice demos need engineering around separate steps: listen, reason, and speak

What's next for Concord

  • FHIR export and patient-owned longitudinal record
  • Faster, more deterministic Guardian assessments
  • Real EHR / FHIR ingest instead of synthetic uploads

Built With

Share this project:

Updates