About the developer

Chanda Charan Reddy

AI & Automation Engineer · Bangalore, India

I’m an AI engineer who ships production LLM systems — from a Springer-published model that reads chest X-rays well enough for a radiologist to take seriously, to document pipelines that quietly run themselves. Before any of that, I wrote real-time control code for jet engines at DRDO, where a millisecond of lag isn’t a bug — it’s a flameout.

Synthesis is what happens when you point that instinct — don’t trust output you can’t trace — at language models. Most agent demos look like magic in a notebook and fall apart the moment a claim needs a source. This one shows its work: you watch it plan, search, cross-check, and verify every line before it commits.

This is one project. There are 18 more (and a few jet engines) over at charanreddy.dev. Go pull a few threads.

What I learned building this

  1. 01

    Concurrency was the real product.

    A planner fanning out to parallel researchers, each streaming onto its own lane, all draining through one event bus — getting that ordering right over SSE was harder than any single agent prompt. The visualization only feels alive because the plumbing underneath is honest about what's happening when.

  2. 02

    “Cited” means nothing without verification.

    It's trivial to make a model append [3] to a sentence. It's the critic loop — re-reading each claim against the passages it cites and labelling the confidence — that turns citations from decoration into evidence.

  3. 03

    Offline-first kept me honest.

    Every external dependency has a fallback: mock LLM, fixture search, in-memory vectors. The whole multi-agent pipeline runs with no keys and no containers. That constraint forced clean seams between the agents and the infrastructure.

  4. 04

    Streaming is a design problem, not a transport one.

    Tokens arriving in real time is the easy part. Deciding what a person should watch while five agents work in parallel — that's where most of the UI thinking went.

  5. 05

    The boring states are the ones that sell it.

    Empty, loading, error, reduced-motion. Nobody screenshots them, but they're the difference between a demo and something that feels built to last.

Want to build something — or break something interesting? Let’s talk.

Contact

Have an idea? Let’s talk.

Want to build something — or break something interesting? I’m always up for a sharp problem. Book a call, send a note, or use the form.

Crafted with intent.Available for new projects

Or just email charanreddychanda@gmail.com.