Emergency physician · Vituity partner

I practice medicine.
I build what’s missing.

I’m Michael. These are two products I’ve been building between shifts, starting with problems I knew firsthand.

View the projects

Selected work

01 / Emergency medicine

Independent product

Robin

Your on-shift sidekick.

An ambient clinical assistant that keeps context across the whole shift and offers agentic feedback while you work.

Try the shift demo (opens in a new tab) Robin website (opens in a new tab)
Robin’s synthetic shift demo: a patient board beside clinical feedback and a living note.
Explore the interactive demo with synthetic patients.

Why a whole shift?

An ED shift is one continuous workflow, but most tools reset at the end of an encounter. I wanted Robin to stay ambient, hold context across patients, and offer feedback while there’s still time to act on it.

When a result comes back.

A result can arrive long after you leave the room. The demo shows a note updating as the stay unfolds, with assistance beside the patient board where you can glance at it when it’s useful.

Technical details

My part

Product concept, clinical workflows, AI-assisted development, and iteration across the interface and backend.

The stack

Next.js & TypeScript · Convex · Clerk · Deepgram · Claude via AWS Bedrock · Fly.io

AI in the product

Streaming transcription, persistent clinical context, and assistance that connects documentation with the workflow around it.

02 / Continuing education

Independent product

ClearCME

Keep track of what you still need.

CME hours, license requirements, affordable courses, and the certificates you’ll need if you’re audited.

Explore ClearCME (opens in a new tab)
ClearCME’s live compliance view, showing license requirements, credit progress, and audit export controls.
Inside ClearCME: requirements, progress, and audit exports.

Two licenses started this.

Bioethics here, opioid education there. Keeping track was bothering me every year, and the specter of an audit wasn’t helping. So I brought the requirements, hours, and certificates into one place.

Keeping the information current.

The dashboard depends on the information behind it. A team of agents monitors requirements, checks findings against primary sources, reviews courses, and makes tightly scoped updates.

Technical details & agent team

My part

Product definition, the physician experience, AI-assisted development, and the agent workflows that help keep the underlying information current.

The product stack

Next.js & TypeScript · PostgreSQL & Prisma · Auth.js · Claude · Stripe · Vercel

AI in the product

Claude extracts information from CME certificates so physicians can track their hours and see what’s still missing.

The agents behind the product

Seven agents, separate responsibilities.

Keeping CME information useful means keeping it current. I built an agent system with separate roles for finding changes, checking the evidence, maintaining the product, and keeping me informed.

Vera Monitor
Checks state requirements on a rotating schedule and flags changes or discrepancies.
Roz Verifier
Independently checks flagged requirements against primary sources before they move forward.
Scout Catalog
Reviews course eligibility, hours, cost, and broken links; looks for courses that fill gaps.
COO Maintenance
Rechecks evidence and ships approved updates within a scope limited to requirements and the course catalog.
Pixel UX
Reviews the live site for usability problems and reports what needs attention.
Eva Interface
Provides a Telegram interface with persistent memory and a weekly accuracy digest.
Chief of Staff Oversight
Checks the fleet’s reports against ground truth, handles runbook fixes, and prepares a weekly brief.
MonitorIndependently verifyRecheck & update

The COO must pass typechecking and lint before publishing. Changes are logged with a rollback path; unresolved findings come back to me.

The operating stack

Scheduled Claude Code jobs on a DigitalOcean Ubuntu server, coordinated with cron. Eva uses the Claude Agent SDK, Node.js, and grammY, with systemd keeping the Telegram service running. Deterministic link checks, uptime monitoring, and a fleet watchdog support the agents.

About

Michael Rushton, DO

Emergency physician
Vituity partner

I’ve learned how much I enjoy the product work: finding a bug, being precise about what’s wrong, and working through the fix.

Building Robin and ClearCME has taken me through the frontend and backend, along with all the decisions in between. What should a physician have to remember? Where should feedback appear? What happens when the workflow takes an unexpected turn?

I want to do more of that work with people who care about the details of practicing medicine.

Let’s talk.

I’m interested in clinical product development
and helping teams put AI to use in practice.

michaelrushtonjr@gmail.com