I build systems that observe, reason, and act.
AI agent architect working across mobile automation, developer tooling, and retrieval-augmented systems — designing the reasoning loops and letting agents do the observing, deciding, and acting.
About me
I'm Prajwalsingh Kalwad, currently in my final year of a BCA (Bachelor of Computer Applications). Everything on this page was built outside of coursework — driven by wanting to actually understand how autonomous agents and automation systems work under the hood, not just study the theory of them.
I'm open to internships, full-time roles, freelance work, or just talking with people building similar things — whatever gets me closer to working on systems like these for a living.
How I actually build these
I design the architecture — the state machines, the data flow between components, the protocol each system speaks internally, and the trade-offs behind decisions like using Git's low-level data API instead of a wrapper, or building a backend as an orchestrated workflow instead of a hand-written server. That thinking is mine, end to end.
For implementation, I lean heavily on AI coding agents — the same way most engineers now reach for a framework instead of hand-rolling everything from scratch. I read, understand, and take responsibility for what ships. But I'm not going to pretend every line was typed by hand when it wasn't — if you want to know exactly how something works, ask me. I can walk through any part of these systems.
What I've built
Built as a feature-first Flutter app talking to a Cloudflare Worker backend, which routes AI requests to Gemini or Groq with automatic fallback if one provider is degraded or rate-limited. GitHub sync is built directly on the Git Data API — blobs, trees, commits, branch refs — rather than a simplified wrapper, which gives precise control over exactly what gets pushed.
It's in active daily use today. The next milestones are expanding automated test coverage and a dedicated security-hardening pass ahead of any wider release.
A single script tag embeds the whole widget — no framework, no build step. The backend runs entirely as an orchestrated n8n workflow instead of a hand-written server: webhook intake, vector search, and Gemini generation are all built as an inspectable pipeline rather than custom backend code.
It's live today, answering real questions on a real documentation site. The immediate priority is hardening request validation and rate limiting now that it's public.
A thin-client / server-brain design: the Android app only observes the accessibility tree and executes actions, while a Python server handles all reasoning through Gemini and LangGraph's plan → execute → verify loop. Keeping reasoning off the device means it isn't structurally tied to Android specifically.
This is a working prototype, not a released product — the current focus is validating reliable end-to-end task completion before expanding further.