Real-time conversational startup advisor
"Most AI assistants feel like AI assistants. You ask something, you wait, text appears. Heydena was supposed to feel like a person. A real-time voice on the other end that knew your startup, remembered your last conversation, and reached out when you'd gone quiet too long. That was the goal. Getting there was a different problem entirely."
The two cofounders I met through (Scripty) had spent years advising early stage startups. They had a startup course, hours of recorded content, a library of PMF/GTM frameworks, and a methodology that had worked for many founders. They were actively finding the next step to scale their advisory. Although there were only two of them, their students needed guidance at all hours, at the exact moment a question came up.
Dena was a real-time, proactive startup advisor. It's an AI that initiated conversations, ran exercises, pushed founders through the material, and remembered everything about their specific startup from one session to the next. The voice behind it was modelled directly on one of the cofounders, and it was like having that specific advisor available at any moment.
The architecture had three distinct layers that had to work together. The first was retrieval. The course content was chunked, embedded, and stored in Pinecone, and every conversation pulled relevant material at query time. The second was memory. Each user had a structured profile that tracked their problem statement, ICP, and value proposition, alongside persistent conversation history. Dena wasn't starting from scratch each time. It knew where you were in the course, what you were working on, and what you'd said before. The third was proactivity. Dena didn't wait to be spoken to. It reached out after a user finished a video, checked in after a day away, and re-engaged after longer periods of inactivity.
Getting the real-time feel right was its own engineering problem. The LLM streamed its output directly to ElevenLabs, and ElevenLabs streamed the audio back over WebSockets, minimising the gap between response generation and what the user heard. Latency was the enemy. Any noticeable pause broke the illusion that you were talking to a person. Every decision in that pipeline was made to close that gap.
The model itself was usually an open-source model like Qwen or DeepSeek, chosen for cost and the ability to fine-tune. At the scale we were planning, API costs mattered, but the tradeoff was that it occasionally felt underpowered for nuanced advisory conversations, and we explored switching to GPT at points where the quality gap was visible. The tension between cost and capability is one that doesn't go away cleanly, and we sat with it throughout.
Getting the voice just right for different users was especially hard. We had gathered a large set of transcripts, recordings, and written material from the cofounder we were modelling, and used them to fine-tune models on his tone. But tone is harder to pin down than it sounds. Some versions of Dena came out too cautious, hedging on advice that should have been direct. Others were too loose, glossing over things that needed more rigour. Sometimes the model just didn't follow the instructions at all.
The only real solution was iteration with actual users. We worked closely with early founders going through the course, collecting feedback on whether the conversation felt right and provided accurate answers. Was it pushing too hard? Not hard enough? Did it feel like an advisor or a search engine? That feedback loop shaped the system prompt more than anything else. Fine-tuning the personality in a conversational AI is really a process of writing, testing, watching real users react, and rewriting. You can't get it right in a vacuum. You only get it right by watching someone use it and noticing the exact moment it stops feeling human.
What I came away understanding is that the technical layer, the retrieval, the memory, the streaming, is the foundation, but what users actually experience is whether the conversation feels like someone is actually there. Building that feeling at scale, reliably, across different users and different moods and different questions, is the real problem. And it is genuinely hard.