Let me save you an observation you were already forming: yes, building a multi-agent AI system to answer questions about my resume is objectively unnecessary. A system prompt and a markdown file would have done the job.
But here's the thing - I work in agentic AI. My website says "AI Solutions Architect." My case studies talk about production agents with tool-use orchestration. If the AI assistant on my own portfolio site is just a chatbot with a personality, that's not a portfolio. That's a contradiction.
The Problem With Portfolio Chatbots
Every AI engineer's portfolio site now has a little chat bubble in the corner. You click it. You ask "what's your experience?" It responds with a suspiciously well-formatted paragraph that was clearly pasted into a system prompt three weeks ago.
There are no tools. No retrieval. No agent routing. No decisions being made. It's a text-in-text-out loop wearing a blazer and calling itself an "AI assistant."
The model doesn't know anything. It recites. It's a parrot with good posture.
So I Over-Engineered It. Deliberately.
The assistant on this site runs a genuine multi-agent pipeline. Not because answering "what certifications do you have?" requires three agents - but because showing the architecture is the point.
Here's what happens when you ask a question:
1. Router Agent (Claude Haiku) Your message hits a fast, cheap classifier that categorizes your intent into one of 8 types. Experience question? Skills? Asking how the assistant works? The router decides in milliseconds and hands you off to the right specialist.
This is the part most "agent" demos skip. They have one model doing everything. That's not orchestration. That's a monolith with a chat interface.
2. Knowledge Agent (Claude Sonnet) For substantive questions, the Knowledge Agent activates with access to 5 tools:
search_knowledge_base- searches my profile, expertise docs, and case studiesget_career_timeline- returns structured career datalist_certifications- all my professional certificationsget_expertise_domains- my 6 core expertise areas with descriptionsget_research_areas- ML/AI research focus areas
The agent decides which tools to call. It doesn't follow a script. Ask about my knowledge graph work and it'll call search_knowledge_base and get_expertise_domains. Ask about my certifications and it calls list_certifications. The model reasons about tool selection - that's what makes it an agent, not a workflow.
3. Meta Agent (Claude Sonnet) Ask "how does this assistant work?" and the Meta Agent activates to explain its own architecture. It's self-aware in the most useful sense - it can describe the pipeline you're currently inside.
4. Conversation Agent (Claude Haiku) Greetings and off-topic messages get the lightweight treatment. No point burning Sonnet tokens on "hello."
The Trace Panel Is the Real Flex
Click the "Agent Trace" tab while talking to the assistant. You'll see every step in real-time:
- Which agent the router selected
- What tools the Knowledge Agent decided to call
- The tool inputs and results
- When the final response starts streaming
This is the part that separates it from a chatbot. You can watch the orchestration happen. The agent makes decisions you can observe. It's not a black box generating text - it's a pipeline with visible moving parts.
If I were hiring an AI architect and their portfolio had this, I'd pay attention. Not because it's complex for the sake of complexity - but because it demonstrates the exact thing they claim to know how to build.
The Uncomfortable Part
Total build time: one session. Total lines of orchestration code: about 200. The tools, the routing, the trace events, the streaming - none of it is particularly hard in isolation.
The hard part was the same thing that's always hard in agentic AI: making the model pick the right tool, handling the conversation flow when tools return unexpected results, and designing the system so it fails gracefully instead of hallucinating an answer when it doesn't have one.
These are the problems I solve at work. This is just a smaller version of them, running on my personal website, available for anyone to test.
The Cost
Haiku routing: ~$0.001 per call. Sonnet with tools: ~$0.02-0.03 per response. A full conversation costs about $0.15. My $5 in API credits will last months at portfolio traffic.
If your portfolio chatbot costs more than a coffee per month, you've either gone viral or you have a bug.
Is It Overkill?
Obviously. But "overkill" is just another word for "demo that actually demonstrates something." The alternative was a system prompt that says "you are Arman's helpful assistant" and a knowledge base that's really just a markdown file stapled to the context window.
I build multi-agent systems for a living. The least I can do is put one on my website.
Go click the chat button. Ask it something. Then check the trace. That's the portfolio.