Projects
A hand-picked few, grouped by theme. Each says what it does and why it's built that way. The rest are on GitHub.
On-device AI
Runs on Apple Silicon with MLX. Your files never leave the Mac.
Private document and meeting intelligence that runs entirely on a Mac. IBM Granite models on MLX transcribe meetings, convert documents, extract forms and answer questions with citations, and Granite Guardian checks that each answer is supported by its sources. The only network traffic is the one-time model download.
Turns multi-page PDFs into Markdown and lossless DoclingDocument JSON, with charts as CSV data, tables as CSV and HTML, and key-values filled in against a JSON Schema. Granite Docling and Granite Vision run locally on MLX, at about 10 pages a minute in under 7 GB of model memory on a 16 GB Mac.
Agents
Agent systems on Deep Agents and Claude that cite their evidence and leave the arithmetic to tools.
A planning agent that reads your own bank and brokerage exports, projects savings and retirement scenarios, and compares debt payoff strategies. The model never does the math. Every figure comes from a tested, deterministic tool, because a plausible but wrong compound-interest number is impossible for a reader to spot.
Finds funding opportunities and drafts proposals. Every fit verdict quotes its evidence, and the score is computed from those verdicts, never asserted by the model. Unknown facts become [NEEDS INPUT] markers instead of inventions, and final files can wait for human approval.
Healthcare AI
Clinical tools built around review, sign-off and privacy.
Clinical transcription with Deepgram Nova-3 Medical and Pharma. It has OIDC sign-in, flags low-confidence words so review starts where the model was least sure, and locks export until a clinician signs off. The audit trail records who did what, but never a filename, transcript or keyterm. A reference implementation, not certified for clinical use.
Retrieval
Search and question answering over your own documents, measured.
Retrieval-augmented generation over your own documents, with Voyage AI embeddings and reranking, MongoDB Atlas Vector Search and Claude, behind a CLI and a Streamlit chat app. Its eval scores retrieval, correctness and grounding on 50 questions about a deliberately confusable fictional corpus, with Claude as the judge.
More on GitHub →