Kycha Blog.
I write about AI engineering and agent-assisted software development.
If you are building an AI agent that needs to show more than plain text, you will quickly run into a UI problem. In this post, I break down how I approached AI agent UI widgets, the options I evaluated, and why I chose a custom implementation based on tool calling, structured outputs, and React component rendering instead of locking into an early framework.

More Stories
Case Study: Secure Authentication for AI Agents Running Scheduled Tasks
If your AI agent schedules a task for tomorrow but your access token expires in one hour, the job will fail unless you design authentication for execution time instead of login time. This guide walks through a production-ready pattern using refresh tokens, encryption, scoped permissions, and background workers.

Beyond the Chatbot: How to Build Software Using AI Agents and Skills in 2026
I used to fight a painful copy-paste workflow - jumping between the agent and my editor until everything drifted. That changed when I switched to spec-driven development + real project context. The new 2025 AI Agent Skills standard turns chatbots into teammates that can plan, spec, and ship features predictably.

Inside the AI Harness: Engineering Techniques for Predictable and Deterministic AI
AI is not magic. Behind every AI feature you see in a product there is a harness - a structured set of components that consistently turn a model into something useful and reliable. If you only have a model and a prompt, you do not have a production AI feature.

Setting Up Grafana Loki and Alloy for Docker: A Practical Guide From My Recent Battle
I recently had to implement logs collection for one of my applications, and I expected it to be one of those plug-and-play DevOps chores. It was not. Grafana has a pretty extensive documentation on the matter, but it's definitely not beginner friendly so I spent more time debugging my setup than I anticipated.

A Practical Guide to Multi-Agent RAG Design
Many examples of RAG systems on the internet focus on a single agent: one model that reads your prompt, looks up some documents, and produces an answer. That setup works well for simple tasks, but as soon as your product grows, you start hitting real limitations.

How to Build a Chatbot With Your Own Data: A Practical Guide to Chatbot System Design
So, your team just asked you to build a chatbot that actually knows about your company's internal data — and you're staring at a blank screen wondering where to begin? Been there. And in this post, I’ll walk you through how I would approach building a chatbot with your own data, step-by-step — using a simple but powerful chatbot system design.

Ever Heard of This Mysterious Thing Called RAG?
Have you ever sat in a meeting where someone casually drops the term RAG, and everyone just nods like it’s common knowledge? Meanwhile, you're sitting there thinking, “Wait… what is RAG?” Yeah, that was me too. So I did some digging — and now I'm here to share what I found.

How I Fixed a Weird Flexbox Bug (and Saved My Sanity)
Have you ever spent hours trying to figure out why your Flexbox layout is completely falling apart? Same here. Just yesterday, I hit a wall trying to make a simple layout work—and what I found might save you from the same headache....

How to write good React code?
I was debugging `useEffect` hooks in the app I developed a long time ago. I saw an evil mixture of one-mile long dependency array, coupled logic, and repetitive code created by some crazy alchemist (me from the past). It shouldn't be like that, we can do better!

How to scope Tailwind CSS rules?
The other day, I was working on my React Chatbot Widget and realized there was something I didn't account for. Of course, I needed to scope all the Tailwind CSS classes right from the beginning!











