Open source
The same method as the client work, in public: rules where it is audited, AI where it drafts, a person where it decides, and an honest evaluation next to the code. Every project runs on public or synthetic data. None touches a real patient record.
Facts and numbers on this page come from each project’s README, checked on 22 October 2026. All code is on GitHub.
hedis-care-gap-agent
A rules engine finds care gaps, AI drafts the outreach, and nothing goes out until a person approves it.
View on GitHubWhat it does
A deterministic, HEDIS-aligned measure engine decides eligibility, exclusions, verdict and priority for eight measures over synthetic patients. An LLM validator acts only on escalated cases and only in ways code can verify; an LLM drafter writes outreach that code lints; and a stored human decision sits structurally in front of the outbox, so no message can leave without one.
- Eight measures, with every rule element tagged as quoted from public CMS Star Ratings Technical Notes, a stated demo choice, or not representable.
- Keyless CI: the test suite aborts if an API key is present, so every path is proven under fakes or recordings.
- The human-approval step is enforced in the data model, not only in the UI.
What it is not
Demo-grade, HEDIS-aligned, not NCQA-certified. Every patient is synthetic (Synthea). Its perfect engine score on the test split shows that the code follows its written rules over 60 synthetic patients; it is not evidence of clinical validity or of robustness to data the rules never anticipated.
hedis-spec-copilot
Answers questions about public HEDIS-aligned measure guidance and cites the source passage for every factual sentence.
View on GitHubWhat it does
A retrieval-augmented copilot over an exclusively public corpus: the CMS Star Ratings Technical Notes, parsed into per-measure sections. Dense and keyword search are fused, a citation validator checks every answer, and an answer that cannot be cited is refused rather than guessed.
- 89 measures parsed into 1,821 chunks; a 60-item gold set authored against the committed corpus.
- Published retrieval results on the test split: dense-only beats the hybrid search on MRR (0.649 vs 0.613) while hybrid wins recall@8 (0.646 vs 0.621). The README calls the difference mixed, not a slogan.
- Retrieval metrics are recomputed in CI on every push and gated against a measured baseline.
What it is not
Answers summarize public CMS and NCQA-published documents. This is not the NCQA HEDIS technical specification, and not clinical, coding or billing advice. HEDIS is a registered trademark of NCQA; the project is not affiliated with NCQA or CMS.
clinical-agent-evals
A test harness for clinical AI agents where every number is measured, never typed in.
View on GitHubWhat it does
A small Python library that gives clinical LLM agents one evaluation doctrine: typed gold sets with required train/test splits, honest small-sample metrics, injected judges, ratcheted quality gates and byte-identical artifacts. It contains no network code at all, so CI runs with zero secrets.
- Publication from the test split only; a missing split assignment is treated as a publication hazard and refused.
- A patient with no gaps is a legal, load-bearing false-positive probe.
- Extracted from the doctrine first proven inside hedis-spec-copilot, so the honest thing is the default and the dishonest thing needs a visible override.
What it is not
A library for measuring agents, not a clinical product. Its metrics describe performance on the gold sets it is given, which in this portfolio are synthetic.
fhir-feature-service
Turns FHIR patient records into model-ready features that can never see the future.
View on GitHubWhat it does
Ingests synthetic FHIR R4 patient bundles into canonical clinical-event tables, then computes a versioned patient feature record at query time for any as-of date, so a feature can never include an event dated after it. The other projects consume it over HTTP.
- Eight FHIR resource types extracted into canonical rows, loaded per patient in a transaction.
- Point-in-time features for any historical date, which is what makes a prediction model honest about what it could have known.
- Serves four downstream consumers through a documented contract.
What it is not
Synthetic (Synthea) data only. Version 1 binds to localhost on purpose and has no authentication or TLS; it is a foundation for the portfolio, not a deployable service.
HCC Coding Assistant
Clinical language in, validated ICD-10 codes and a CMS-HCC category out, with every number coming from official CMS files rather than the model's memory.
View on GitHubWhat it does
A retrieval-plus-agent application for Medicare risk-adjustment coding. A coder describes conditions in plain language; the assistant retrieves candidate codes from about 8,000 HCC-mapped ICD-10-CM codes, validates them, maps them to CMS-HCC V28 categories and estimates the RAF impact using deterministic tools over public 2026 CMS reference data.
- Retrieval over the official code catalog, because ICD and HCC mappings change yearly and a model's memory is stale and unverifiable.
- The RAF math lives in code; the agent is instructed never to compute coefficients from memory, and every code is looked up before it is shown.
- Inspired by a production coding pipeline, rebuilt as a standalone implementation over public data.
What it is not
A simplified RAF model, stated as such in every answer: it ignores V28 hierarchies, interactions and demographic factors. Public CMS reference data only; not coding or billing advice.
Start with 20 minutes.
Bring one process that eats your team’s day. We’ll talk through what to measure first, and whether automation or AI fits it at all.