Live system · soloJan 2026 – present
Production Chat Agent
The agent you can talk to on this site
A FastAPI and React agent that answers questions about my work. It streams over SSE, gates off-topic questions before the expensive call, reads a pasted job post, and keeps chatting when memory, database or tracing are down.
83% of claims checked verbatim95 tests, CI eval gate
- Every sentence of an answer is stamped checked, inferred or unknown: a fast model proposes a verbatim profile quote, code confirms it and checks every number. First run: 52 claims, 83% checked verbatim, none unknown.
- Replaced Google's SDK with raw async HTTP/2 after it hung the server, and traced a silent production hang to a cache deadlock by bisecting with diagnostic endpoints.
- Oct 2026: found it had been silently down for months (retired model, closed billing); wrote the post-mortem, made model IDs configuration, added a health probe that makes a real call, a fallback model, signed sessions, quotas and an MCP interface.
Open source · soloOct 2026
mcp-trust-monitor
Open-source guard for MCP tool calls
A Python SDK and CLI that holds an agent's MCP tool calls when a server's tool definitions change, until an operator approves the new revision.
2 alpha releasesMIT licensed
- Protected calls check approval, current metadata, launch identity and session freshness before dispatch. A changed definition, failed observation or quarantine blocks the call.
- Background monitoring, a local operator console and decision-record export for audits.
YC × Cactus × DeepMind hackathon · team of 4Apr 2026
HVAC Copilot
On-device voice and vision agent for AR glasses
A field assistant for HVAC technicians running Gemma 4 E4B fully on-device. One runtime serves three clients: Chrome, iPhone Safari and Rokid AR glasses over WebRTC.
TTFT 217 ms bare vs 3.9–4.5 s loaded6 tools, on-device
- Built the assistant runtime and a six-tool function-calling surface, with the on-device/online boundary enforced in the dispatcher, not just the prompt.
- Wrote a streaming sanitizer for Gemma 4's three tool-call formats so raw tool syntax never reaches the user.
- Profiled the latency end to end and traced the 4 s first token to CPU prefill of the system prompt and tool schemas.
Hackathon · built end to endFeb 2026
FunctionGemma Hybrid Router
2nd place, Cactus × Google DeepMind hackathon
Routes function calls between FunctionGemma-270M on-device and Gemini Flash-Lite in the cloud, deciding before inference because the small model reports high confidence even when it's wrong.
0.99 F1548 ms average70% on-device
- Pre-routing difficulty scoring, a validation gate that catches hallucinated tool names, and deterministic argument extraction for the 270M model's broken integers.
- Proved that on-device beats a perfect cloud answer once local F1 passes 0.48 under the contest's scoring, and built around that.
BigThink × World Labs hackathon · soloMar 2026
Auto-Eval3D
Winner, Best Scientific & Engineering Application
Scores whether a generated 3D world stays consistent across viewpoints: prompt to World Labs Marble world, four inside-out views, then structured multi-view reasoning in Gemini.
Track winner4 views, 1 score, full trace
- Built the inside-out WebGL camera rig and a three-phase reasoning prompt that flags Janus artifacts, warping, scale shifts and floating geometry.
- After the win I re-audited the traces. The demo's 1/10 score was judging a badly placed camera, not a bad world, so I rewrote the capture rig.
Take-home · solo · code on requestApr 2026
Top-K k-NN kernel for the Cerebras WSE-2
Take-home, written in CSL
A distributed Top-K nearest-neighbour kernel across a grid of processing elements on the wafer-scale engine simulator: vectorized distance compute, a bounded heap per element, then a merge.
6/6 grader cases2.68× fewer cycles
- 2.68× fewer cycles than my first correct version, with bit-identical results on all six cases.
- Measured a radix-sort variant at +24% cycles and rejected it.
Code on request
UMD study · 3 authors · my methodMar – May 2026
LLM inference config tuning
An LLM agent that tunes vLLM serving configs
Multi-objective tuning of LLM serving: throughput, time to first token and time per output token. I designed and built the LLM-agent method, one of five compared head to head against Bayesian optimization on shared benchmark infrastructure.
9 vLLM knobs4 GPU allocations5 methods compared
- Same quasi-random warm start as the Bayesian baselines, so the comparison is fair by construction. Then one model call per trial, seeing the full sorted benchmark history, proposes the next config.
- Every LLM-proposed config passes type coercion, schema repair and a hallucinated-key guard before it reaches a GPU. Benchmarked on Slurm.
Report on request
MedBill
Anthropic × Maryland hackathon · solo · Apr 2026
Redacts patient information on-device, then uses Claude on the redacted text to find overcharges and draft a dispute letter. A deterministic gate, not the model, decides No Surprises Act claims.
RegSentinel and SDS Intake Agent
Prototypes · solo · May 2026
A chemical-compliance agent on the Claude Agent SDK and an MCP server, with cited answers and human escalation for high-risk calls, plus a Safety Data Sheet extractor where code verifies what the model extracts. Built as prototypes of 3E's problem space before I applied. The offer followed.
PathGuard
UMD × Ironsite hackathon · team lead of 3 · Feb 2026
An on-device vision-language model describes the scene and drives zero-shot hazard detection (Grounding DINO, SAM2, Depth Anything V2) inside the worker's walking path, with audio alerts.
Retail Catalog Voice AI
Product build · solo · Apr 2026
Voice in, spoken answer out, grounded in the catalog with no invented bottles: local parsing of the shopper's constraints filters the catalog before Gemini sees it.
English2SQL
Team project · backend and RAG · 2024
Natural language to SQL over Postgres with schema-aware prompting, evaluated on execution accuracy (+9% on a 120-query set).