- Published on
Meet Chhotu — My AI Assistant Who Does Whatever I Tell Him To
- Authors

- Name
- Gaurav Arora
Every engineering team has that one person who just... does things.
Need a PR summary? They've got it. Need to know why the cron job failed last night? Already checked. Need analytics numbers for the standup in 10 minutes? Here you go.
I wanted that person. But I didn't want to hire them. So I built Chhotu.
The Name
Let's get this out of the way. Yes, I named my AI assistant Chhotu.
For non-Hindi speakers: Chhotu is what you call the kid who runs errands. The guy you holler at when you need chai, when you need something fetched, when you need something done right now without ceremony. No job too small. No question too basic. Just: "Chhotu, yeh kar do."
That's exactly the energy I wanted. Not a sophisticated AI assistant with a sleek name. A reliable, always-available, slightly-overworked helper who just gets things done.
He lives on Telegram. He never sleeps. He never complains. He's perfect.
The Problem That Created Him
I was spending about 90 minutes a day just checking things.
GitHub PRs waiting for review. CleverTap funnels to eyeball. DigitalOcean cron jobs that may or may not have run. Every tool had its own dashboard, its own login, its own mental context I had to load and unload all day long.
I'm a Principal Product Engineer at a logistics tech startup. We run 50+ microservices. There is no shortage of things to monitor. And for a while, I just accepted that context-switching was the tax I paid for working across a complex stack.
Then I thought: what if I just had someone to check for me?
Enter Chhotu.
What Chhotu Actually Does
Here's a typical morning now:
I open Telegram. I type /prs and Chhotu responds with a clean summary of open pull requests across our repos — who's waiting on review, what's been idle for more than 24 hours, which ones have merge conflicts. Not a raw JSON dump. An actual readable paragraph, generated by OpenAI, that I can act on in 30 seconds.
I type /analytics and he pulls the latest CleverTap funnel reports — activation rates, drop-off points, feature engagement — and surfaces the numbers that actually moved since yesterday. No logging into CleverTap. No navigating five tabs. Just signal.
I type /crons and he checks the DigitalOcean cron job logs and tells me what ran, what failed, and what hasn't been heard from in a suspicious amount of time.
Three commands. The 90 minutes became 5.
And honestly? The best part is that Chhotu never judges you for asking the same thing twice.
"Chhotu, Yeh Bhi Kar De"
Here's the thing about building a personal assistant — once he works, you immediately want him to do more.
The name turned out to be prophetic. Every week I find myself saying "Chhotu, yeh bhi handle kar de" and adding another integration. That's the real product insight: when you make something feel like an assistant rather than a tool, the usage pattern completely changes.
With a tool, you ask yourself "is this worth opening?" With an assistant, you just ask.
This is why the Telegram interface matters so much. Not Slack. Not a dashboard. Not a Chrome extension. Telegram — because it's already open, already on my phone, already where I communicate. The friction to ask Chhotu something is effectively zero. That zero-friction loop is what makes him actually useful rather than just impressive.
The Architecture (What's Going On Under the Hood)
Chhotu is deceptively simple. That's intentional.
The interface is Telegram. Bot API, webhook, done. No frontend to maintain, no hosting headaches for a UI, no "remember to check the dashboard" problem.
The brain is OpenAI. Raw API data from GitHub, CleverTap, and DigitalOcean gets fed into GPT as context, with a system prompt that says: "You are a senior engineer summarizing information for a peer. Be concise. Surface what matters." The quality of the output is almost entirely determined by that prompt. I spent more time on prompt engineering than on any other part of the system.
The integrations are thin wrappers. GitHub REST API. CleverTap reporting API. DigitalOcean API for cron history. Small, focused Python functions. No frameworks, no abstractions. Just functions that fetch data and return structured dicts.
The command routing is a switch statement with ambitions. Message starts with /? Route it. Call the handler. Fetch data. Format it as a prompt. Ask OpenAI. Send response. The core loop is maybe 200 lines of code.
The surprising hard part wasn't any of this. It was deciding what Chhotu should refuse to do.
What Chhotu Will Not Do
This is the most important architectural decision I made.
Chhotu reads. He summarizes. He reports. He does not write.
He will not merge your PR. He will not trigger a deployment. He will not send a message on your behalf. He will not delete anything, update anything, or touch production in any way.
This wasn't laziness — it was a deliberate product decision. The moment you give an agent write access to real systems, you've introduced a failure mode that can wake you up at 2am wondering what he did while you were asleep. Read-only Chhotu is a reliable Chhotu. And reliability is the only feature that actually matters in a personal assistant.
Trust is earned. Maybe someday Chhotu graduates to write access. For now, he's the world's most diligent observer.
What I Learned Building Him
The name matters more than you think. Calling him Chhotu — something casual, something relatable — changed how I thought about extending him. If I'd called him "EngineerBot" or "OpsAssistant" I'd have tried to make him formal and complete. Chhotu gets to be scrappy. That scrappiness is a feature.
Latency kills adoption. If Chhotu takes 12 seconds to respond, I stop asking. I optimized the happy path aggressively — caching API responses, batching requests. Sub-3-second responses, most of the time. Fast enough to feel like a real conversation.
Reliability beats features. Every time Chhotu gave me a wrong answer — stale cache, bad prompt — trust eroded a little. I learned to treat accuracy as the top-priority feature. A bot that's right 70% of the time is worse than no bot at all. You start second-guessing every response and you've lost the whole point.
Inspired by, not copied from. I'll be honest: the original idea for this kind of bot came from a colleague, Murali, who built something similar. I looked at it, thought "I need this," and built my own version from scratch to understand it properly. Sometimes the best way to learn a concept is to rebuild it with your own hands. Chhotu is mine — every line of it — but the inspiration had a source, and that source deserves credit.
Where Chhotu Is Going
I'm working on proactive alerts — where Chhotu pings me when something anomalous happens, instead of waiting to be asked. Deployment health reports. Maybe eventually a "morning briefing" that shows up automatically at 9am.
But I'm going slowly. Because Chhotu works right now. And "works right now" is a thing worth protecting.
The real insight isn't technical. It's this: most of us are acting as the glue layer between our own tools — manually compiling information that machines could compile for us. You don't need a big team or a big budget to fix that.
You just need a Chhotu.
What would you make Chhotu do first? Genuinely curious — drop a comment or find me on LinkedIn. Suggestions that are good enough might actually end up in production.
(Chhotu is watching this blog. He'll know if you left feedback.)