PracticeSync
A clinic running on two systems pays for it twice: visits live in Practice Fusion, billing and scheduling in SimplePractice, and someone re-keys every patient by hand daily. PracticeSync drives a dedicated Chrome profile — the operator's logins stay put, no passwords stored — reads each visit, decides the appointment from a doctor roster, and creates it under the correct doctor, with a dry-run mode that plans without booking. The operator teaches each screen once by pointing at elements; a visible cursor then narrates every run. The only AI runs on-device via a three-tier fallback (local Gemma via Ollama → Apple Intelligence → deterministic matcher), and every model output is re-validated so the AI can never invent a billing code.
What Wasn't Working
A mental-health clinic's visits live in Practice Fusion while billing and scheduling live in SimplePractice, so staff re-key every patient by hand daily — slow, error-prone admin work.
How I Fixed It
Playwright drives the operator's own Chrome to read visits, map each to the right doctor and billing codes via on-device AI with deterministic re-validation, and book the coded appointment — narrated by a visible cursor the clinic can watch.