AI engineer building LLM agents and the tests and evals that keep them honest. Forward Deployed Engineer at Navayuvak Entrepreneurs · founder of Vigil · B.E. AI & Data Science, Mumbai (2027).
Portfolio: tanmay-ts.github.io
- Vigil: brand-reputation SaaS that asks ChatGPT, Gemini and Perplexity what they say about a brand and flags crises early. Solo build (Next.js, FastAPI, Supabase); code is private. Grew out of NeuroChain, top 5 of 5,000 teams at Mumbai Hacks 2025.
- driving-seat: a Claude Code skill that keeps the developer in control of the decisions that matter. Claude turns the goal into something measurable, asks before significant choices, and logs every choice it made without asking.
- The Tireless Hand: an LLM agent injects realistic bugs into a drone flight cockpit, and a deterministic Playwright harness with no LLM calls in the test loop has to catch them. Zero false alarms; the bugs it missed are written up too.
- Highlight reel pipeline: turns raw MMA gym footage into 9:16 reels. Motion and audio heuristics find moments, GPT-4o vision scores them, ffmpeg renders. Ran on GitHub Actions; paused because of the API cost.
- Execution Divergence Metric: LLM evaluation paper on the gap between how well a model explains a rule and how well it follows it (900 preregistered instances, Llama 3.1 and Gemini 2.0 Flash). Under review at ACL Rolling Review.
- existence-master/Sentient#476: memory saves the user's name instead of "the user" (merged)
- existence-master/Sentient#486: activity timeline finds a tool call's details by its id, not its timestamp (merged)
- liliu-z/stashbase#225: scheduled-task run results, missed days, Windows test fixes (merged)
- j-haacker/CryoSwath#52: pixi support and install docs (merged)
- aws-powertools/powertools-lambda-python#8617: wrap
GetParametersclient errors inget_parameters_by_name(open) - existence-master/Sentient#479: an OpenAI-compatible API so other apps can chat with Sentient, with its approvals still in place (open)


