Inspiration

Challenged by Dialogue to design a zero-wait-time virtual care service, we went after the core bottleneck. Traditional triage asks "who should see this patient?" and dumps everyone into the same slow live-video queue. But the clinical encounter is usually fast — the friction lives in everything before the clinician arrives. CareWorkspace shifts the focus from routing to resolution. Instead of booking a 15-minute live slot for a 2-minute request, the system asks: can this case close asynchronously right now, and if not, what's missing to close it?

What it does

The patient files a short structured intake — service type, a set of yes/no red-flag safety questions, and document readiness. Deterministic rules — not the AI — read that intake and assign a lane: any red flag routes the case to a live visit (needs-sync); a missing document parks it as async-pending; an otherwise-clear case becomes async-ready. The AI does one bounded job — it summarizes the patient's intake into a short brief for the clinician — and if it's unavailable, a fallback shows the raw intake so the case can still be handled. On the clinician's dashboard, cases are grouped by type so the clinician reviews like-with-like and isn't context-switching. They review the brief, enter their name, and attest to close — in under a minute. The patient is notified once their case is reviewed.

How we built it

A Next.js + React web app, written entirely in TypeScript, styled with Tailwind CSS, running a custom server via tsx. AI summaries come from Google Gemini through the @google/genai SDK, with a deterministic fallback when AI is off or unavailable. Linting via Biome; scaffolded with create-next-app; designed to deploy on Vercel. Case state is held server-side and the provider queue polls for updates so cases re-classify live as patients supply missing documents.

Challenges we ran into

The hardest design question was how one clinician could safely serve many patients. Our first idea — one clinician on a call with several patients — we scrapped over confidentiality and safety. The resolution was to take the safety decision away from the AI entirely: deterministic rules own every red-flag and routing decision, and the model is confined to writing a summary the clinician reads before attesting. Getting that boundary clean — model assists, rules and humans decide — was the core of the build.

Accomplishments that we're proud of

A working end-to-end loop — structured intake, deterministic safety classification, AI-summarized decision packet, and a named-clinician attestation that closes the case — with safety as the first gate rather than something bolted on. Crucially, the model makes zero clinical or routing decisions: a design choice that keeps the system clinically responsible while still cutting wait time.

What we learned

We learned where the bottleneck in virtual care actually sits — not in the clinical encounter, but in everything before it — and that the safe way to apply AI here is narrow: let it reduce reading time, never let it make the call. Keeping the model out of every safety decision was the principle that shaped the whole design.

What's next for CareWorkspace

Tighter intake summaries from a more specialized model to improve brief quality and lower error margin; letting patients attach medical files directly to cut more dead time; and rules-defined cohorting — reviewing a homogeneous, pre-screened group and attesting once — as the safe path from serving hundreds of cases a day toward thousands.

Built With

Share this project:

Updates