About
Token-sensitive.
Babysitter for agentic AI.
Reading the past and the future to work out what to build in the present.
Homelaber. Open source. Self-hosted by default.
Chasing patterns. Worships math.
Hates the current interface — and is building toward the next one.
Happy to struggle, as long as it is electrons, silicon, software, or proofs.
The short version
I build things, self-host them, and take them apart to see why they work. No company has employed me yet, which means every line in the work section exists because I decided it should — a football association needed a league platform, a library needed an API it did not have, a group of couriers needed their pay split without an argument.
That is a smaller claim than a CV and a more checkable one. Everything is public. The commit history is the reference.
Token-sensitive
I spend a lot of time working alongside agentic AI, which means I spend a lot of time watching a very capable system waste effort on things nobody asked for. Context is finite and expensive. So is attention. The habit transfers: say the thing, cut the preamble, do not ship a dependency to solve a problem you could state in four lines.
Babysitting agents is not a joke title. It is genuinely the work — scoping a task tightly enough that a capable system cannot wander, then reading everything it produces as though a stranger wrote it. Several of the repositories here carry a CLAUDE.md, which is what that discipline looks like when it is written down.
Patterns, and the maths under them
The projects that hold my attention are the ones where the interesting part is a function rather than a feature. Forecasting personal finances is a regression problem with an honest confidence interval attached. Splitting delivery income is a proportion, and the formula is printed on the page so nobody has to trust the app. The background of this site in its 2026 era is a closed-form vector field, and the equation is in the corner for the same reason.
Maths is not decoration in any of those. It is the part that makes the answer defensible.
Self-hosted by default
Free tiers are a launch strategy, not an architecture. Every project here is built so that leaving is dull: Postgres rather than a proprietary data store, S3-compatible object storage, migrations in the repository, Docker from the first commit. The league platform runs on Vercel today and is designed to move to a homelab behind a Cloudflare Tunnel without a rewrite.
Self-hosted analytics over a hosted product, for a community organisation's site, was not a performance decision. It was a decision about whose members get tracked.
The interface complaint
Current interfaces are documents pretending to be applications. Every product hands you a map and expects you to memorise it, and each map is arranged slightly differently for no reason that benefits you. Automating your own relationship with your own data usually means scraping, because the institution holding it decided your automation is not their problem.
I do not think the answer is a better map. I think it is not needing one — you state what you want and the surface assembles around the request. This site's last era is a small, deliberately limited argument for that, and it is honest about the fact that nobody has built it properly yet, including me.
What I am looking for
Work where the hard part is actually hard: systems, infrastructure, interfaces that have not settled, or anything where the domain is electrical, electronic, software, hardware, or mathematical. I am happy to struggle inside that space for a long time. Outside it, less so — which seems worth saying in advance.
Credentials
- Full Stack Software Developer Professional Certificate
- IBM · 2024
- Twelve courses. Capstones are in the public repos, not just on a PDF.
- Homelab
- Self-issued
- Docker, Cloudflare Tunnel, self-hosted analytics. Where the projects go to live once the free tier stops being the point.
Elsewhere
- GitHub
- @SanjayKhatiChhetri
- Mastodon
- @sanjaykhatichhetri@mastodon.social
- Bluesky
- @sanjaykhatichhetri.bsky.social
- Discord
- sanjaykhatichhetri
- sanjaykhati1011@gmail.com