MedAgentSim

Ward A · Diagnostic Simulator
SIM Ready claude
TURN
Doctor Patient Measurement
Awaiting first patient.

Experience Replay

Correct diagnoses are stored locally and retrieved as few-shot context for the doctor agent when a similar case arrives — the "self-evolving" loop in the MedAgentSim paper. Memory lives in your browser; nothing leaves this page.

About this artifact

A one-page reproduction of MedAgentSim (Almansoori & Kumar, MICCAI 2025) — a multi-agent doctor / patient / measurement simulation for evaluating clinical diagnostic reasoning. The original ships a Django + Phaser hospital-game frontend backed by 70B open-source LLMs served over vLLM. This artifact keeps the essential loop and pixel-hospital feel, and swaps the LLM backend for the viewer's own Claude via window.claude.use("sample").

Agents

DoctorRuns on Claude. Each turn returns a JSON {action}: ask a question, order a specific exam, or commit to a diagnosis.
PatientRuns on Claude (quick tier). Given the hidden HPI, replies only to what is asked. Never reveals the diagnosis.
MeasurementBundled ground-truth lookups for the case's tests; falls back to Claude for tests outside the case pack.

Cite

@inproceedings{almansoori2025medagentsim, title = {MedAgentSim: Self-Evolving Multi-Agent Simulations for Realistic Clinical Interactions}, author = {Mohammad Almansoori and Komal Kumar and Hisham Cholakkal}, booktitle = {MICCAI}, year = {2025} }

Notes

  • Bundled cases are inspired by NEJM / MedQA style but are not verbatim from either.
  • Diagnostic verdict is a case-insensitive substring / alias match against the ground truth.
  • This is a research / educational demo — not a diagnostic tool.