Prism · healthcare AI · clinical trial matching
Matching cancer patients to clinical trials,
with AI that cites the chart.
Prism matches cancer patients to clinical trials using OncoLLM™ - an AI that reads the chart the way a coordinator would. I designed it for three years, holding one rule: no clinician ever takes the AI's word for anything.
- Role
- Senior Product Designer · flows, screens & states
- Team
- 2 design · 12 eng · 2 PM · Triomics
- Timeline
- 2023 → now · in production
- Tools
- Figma · Claude · Figma Make · usability walkthroughs
Cited
Every answer, evidenced
Each AI claim links to the source line in the patient's chart.
7,000
Patients screened monthly
Every patient visit at the flagship academic center - 100% coverage.
70% ↓
Eligibility screening time
The manual chart-review hours cut by more than two thirds.
95.5%
Top-3 match accuracy
Peer-reviewed in Nature Digital Medicine · presented at ASCO 2025.
live at Memorial Sloan Kettering, Yale Cancer Center, Mount Sinai & 10+ NCI-designated centers
Context
Trial matching is still manual chart review. Coordinators read charts against hundreds of trial protocols, patient by patient.
Matching one patient means reading a several-hundred-page chart against every open protocol. Sites screen a fraction of their patients. My brief: make eligibility a question the chart can answer.
01 · The work
Hundreds of criteria per patient
Dozens of requirements per protocol, dozens of open trials - the combinations outgrow any team.
02 · The stakes
A missed trial is a missed option
For many patients a trial is a treatment option. A screening gap is an option never offered.
03 · The people
Coordinators buried in charts
Clinically trained staff re-read the same charts against every new protocol, week after week.
04 · The math
7,000 visits a month
One center sees more visits in a month than a team can hand-review in a year.
Users
Three users, one product. An oncologist, a research nurse, and a trial coordinator - different questions, asked of the same engine.
Dr. Arjun Mehta
Medical oncologist
“I have seven minutes between consults. Tell me what changed, and what fits.”
Needs from Prism
A cited five-minute recap of the patient, and a flag when a new trial fits - without opening the raw chart.
20+ consults a day · reads the AI summary first
Sarah K.
Research nurse
“Every patient on my panel deserves to know their trial options.”
Needs from Prism
Ranked study recommendations with reasons on every status, so yesterday's decisions carry their context forward.
The platform's daily driver · owns the review queue
Miguel R.
Trial coordinator
“Sponsors ask for numbers on Monday. I can't say we're still reading charts.”
Needs from Prism
The trial-side views: who fits, who almost fits, which criteria cut people out, and feasibility before a protocol activates.
Lives in the Studies tab · watchlists borderline patients
My role
I designed Prism's flows, screens, and states. From the first patient-trial matching flow to the platform running today.
01 · What I designed
The platform, flow by flow
Matching flows, criteria states, cited AI summaries, cohort views - hundreds of iterations.
02 · The bet
Evidence over verdicts
Never show a score a clinician can't check. That one rule shaped every screen.
03 · The constraints
Clinical, regulated, unforgiving
Zero patience for errors, PHI everywhere, workflows that already existed. Prism had to fit oncology.
Map the real workflow
How screening actually happens - visits, protocols, the order of checks - before any screens.
Prototype in code
Clickable flows in hours, with Claude and Figma Make - debates happen against something real.
Validate through pilots
Feedback from US pilot sites steered every cycle.
Ship, watch, revise
From the first matching flow to what runs at 10+ centers today.
The shift
The AI answers every eligibility criterion first. Coordinators verify cited answers instead of reading whole charts against whole protocols.
Before
manual screening
Protocol · NCT-04821 · 27 criteria
read
~12 charts a day per coordinator · a fraction of visits screened
After
pre-answered · cited
Eligibility · NCT-04821 · auto-answered
① “…ECOG PS of 1 at last visit” · Progress note, Jun 12
every visit screened, every night · evidence one click away
The engine: OncoLLM
How Prism actually reads a chart. A small team of AI models, working in a pipeline, that feed the screens clinicians use.
01 · Models
The AI workers
Onco-Chunker
Breaks long notes into readable parts
Onco-Retriever
Finds the chart lines that matter per criterion
Onco-Generator
Answers each trial requirement, one by one
Onco-Summarizer
Pulls a short clinical picture for the doctor
02 · Pipeline
How a chart gets read
Strips noise from raw notes, faxes, and PDFs.
Breaks the chart into readable, searchable sections.
Retrieves the lines relevant to each criterion.
Judges every requirement: fit, not fit, or check.
Orders open trials by how well the patient matches.
03 · Outputs
What clinicians see
Criteria answers
Every inclusion and exclusion criterion answered against the chart, with its evidence attached.
Ranked matches
Every open trial the patient could enter, ordered by match strength - never a verdict, always a shortlist.
Cohorts
Saved groups of patients for feasibility, planning, and reporting to sponsors.
The product
01 · For oncologists
“Which trials fit this patient?”
Per-patient view. Prism checks every open trial against the chart and gives a clear answer for each requirement.
02 · For trial teams
“Who fits this trial?”
Trial-side view. Find every patient in the hospital who could enrol, ranked by how well they match.
03 · For research ops
“What does our patient base look like?”
Cohort view. Save groups of patients for planning, feasibility, and reporting to sponsors.
Flow 01 · Patient trial matching
I mapped the nurse's morning first: visit list to a decision on every trial.
01 · AI-recommended studies
Every patient opens with the trials they might fit.
Shadowing nurses taught me a bare ranking gets ignored - so every status chip carries its reason. The AI proposes and ranks; the person decides.
02 · studies in a patient
Where every trial stands, at a glance.
Handoffs kept breaking in pilots. One list, every trial in play, its review state - the page answers 'where did we leave off?' before anyone asks.
03 · inclusion / exclusion criteria
Every requirement gets an answer: met, not met, or unknown.
I gave every criterion three answers - Met, Not met, Unknown. Admitting ambiguity is what makes the other two believable.
Flow 02 · Cohort analysis
I split cohorts into two paths: the weekly work, and the blank page.
04 · cohort analysis
From one patient to the whole population.
Basic: change a filter, watch results move. Advanced: AND/OR logic for power users. Any count opens down to its patients, any patient down to the chart.
Flow 03 · For trial teams
Then I flipped the flow: pick a trial, see the whole hospital.
05 · trial-side screening
Who fits, who almost fits, and which criteria cut people out.
Same engine, opposite direction. The hard problem was who almost fits - and which single criterion cuts the most people out.
Design decisions
The key design decisions, and why I made them.
01 · Decision
Every answer links to its evidence
A clinician who can't check an answer won't act on it. And shouldn't.
02 · Decision
The AI is allowed to say “needs review”
Abstaining cost us polish in demos - and bought trust. Nobody has caught Prism pretending.
03 · Decision
Matches are ranked; decisions stay human
A shortlist, never a verdict. Recommend, reject, and watchlist are human clicks.
04 · Decision
Nothing changes state silently
Every status change is deliberate, visible, and reversible. Silent state changes are bugs.
Impact
What changed in a coordinator's day.
For clinicians
70% ↓
Screening time. Hours of chart re-reading became minutes of verification.
For sites
7,000
Patients screened monthly - 100% visit coverage at the flagship center.
For the evidence
95.5%
Top-3 match accuracy · Nature Digital Medicine · ASCO 2025.
Reflection
What this project taught me about earning clinicians' trust in AI.
Clinicians act on AI answers only when the evidence is one click away. Building on a live LLM changed how I work: prototype in code, test against the model, treat uncertainty as a first-class UI state. The screens matter less than the receipts.