Work01 of 06
An assistant that answers as it thinks
A chat interface that renders model output while it streams and shows each tool call as it runs, plus a Python proof of concept for the retrieval pipeline behind it.
| Company | Role | From | To | Stack |
|---|---|---|---|---|
| Venturepact | Associate Software Developer | Jun 2019 | Apr 2021 | TypeScript, Angular, Node.js, Express, MongoDB, Redis |
| Cyzerg | Junior Angular Developer | Apr 2021 | Jan 2024 | TypeScript, Angular |
| Cyzerg | Mid-Level Angular Developer | Jan 2024 | now | TypeScript, Angular, React, Python |
Context
Users needed answers from internal data without leaving the product. A request and response box that waits for the whole answer feels broken when a model takes several seconds, and it hides the work the model does with tools.
Approach
Render the response as it arrives, chunk by chunk, so reading starts immediately. Treat tool calls as first-class parts of the message: each one gets its own block with a pending, running and done state, so people can see what the assistant looked up before they trust the answer.
The pipeline
Alongside the UI I wrote a Python proof of concept for retrieval augmented generation with Model Context Protocol tools, to show what the backend contract for the interface should look like.
What shipped
A streaming assistant UI with tool-call rendering inside the main product, and a working pipeline prototype the team could build the real service from.