DEV Community

khushi seth
khushi seth

Posted on

๐ŸŽ™๏ธ VaaniFinance AI

Building a Voice-First Financial Assistant with Murf Falcon & LiveKit

10 Days of Voice Agents โ€” VoiceForBharat Edition

Author: Khushi Seth
GitHub: https://github.com/khushi-seth/VaaniFinance-AI (update if you rename the repository)

๐ŸŒŸ Introduction

When I started the 10 Days of Voice Agents โ€“ VoiceForBharat Edition, my goal was simple:

"Can I build a voice assistant that feels like talking to a real financial advisor instead of a chatbot?"

After 10 days of learning, debugging, and building, I created VaaniFinance AIโ€”a real-time voice assistant that can:

๐ŸŽ™๏ธ Listen to users
๐Ÿง  Understand context
๐Ÿ’พ Remember previous conversations
๐Ÿ› ๏ธ Use tools
๐Ÿ“ž Make outbound phone calls
๐Ÿ‘จโ€๐Ÿ’ผ Escalate conversations to humans
๐Ÿ”„ Transfer to specialist agents
๐Ÿ“Š Track call outcomes

This blog shares my journey, architecture, challenges, and what I learned while building it.

๐Ÿ–ผ๏ธ Project Preview

๐Ÿ“ท Add Screenshot Here

Insert a screenshot of your frontend showing the voice assistant interface.

โ“ Why Build a Voice Financial Assistant?

Financial services can often be confusing.

People struggle with:

Understanding schemes
Filling forms
Eligibility questions
Required documents
Technical financial terms

Instead of making users search through long websites, I wanted them to simply ask:

"Can I apply for this scheme?"

or

"What documents do I need?"

The assistant answers naturally using voice.

๐Ÿ—๏ธ System Architecture
USER
โ”‚
๐ŸŽค Speaks naturally
โ”‚
โ–ผ
Speech-to-Text (STT)
โ”‚
โ–ผ
LiveKit Voice Agent
โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ–ผ โ–ผ โ–ผ
Memory Gemini Tools
(SQLite DB) LLM Financial Functions
โ”‚ โ”‚ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ–ผ
Murf Falcon Text-to-Speech
โ”‚
โ–ผ
๐Ÿ”Š Spoken Response

๐Ÿ“ท Add Architecture Diagram Here

You can recreate the above flow in Canva, Excalidraw, or draw.io and insert it as an image.

๐Ÿ› ๏ธ Tech Stack
Technology Purpose
LiveKit Real-time voice communication
Murf Falcon Fast, natural text-to-speech
Google Gemini Language model
Deepgram Speech-to-text
Twilio Outbound phone calls
SQLite User memory
Python Backend
Next.js + React Frontend
Tailwind CSS UI
โœจ Features
๐ŸŽ™๏ธ 1. Real-Time Voice Conversation

Users talk naturally.

The assistant listens, understands, and replies in real time.

๐Ÿ‡ฎ๐Ÿ‡ณ 2. Indian Voice using Murf Falcon

Voice quality matters.

Using Murf Falcon, the responses sound natural and conversational, making interactions more engaging.

๐Ÿง  3. Persistent Memory

Instead of forgetting every conversation, the assistant remembers returning users.

Conversation 1

User:
"My name is Khushi."

โ†“

Conversation 2

Agent:
"Welcome back, Khushi!"
๐Ÿ› ๏ธ 4. Tool Calling

The LLM doesn't rely only on generated answers.

When required, it can call tools to fetch information before responding.

User Question
โ”‚
โ–ผ
Does it require a tool?
โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”
โ”‚ โ”‚
No Yes
โ”‚ โ”‚
โ–ผ โ–ผ
Answer Tool Call
โ”‚
โ–ผ
Tool Result
โ”‚
โ–ผ
Final Voice Response
๐Ÿ“ž 5. Outbound Calling

I integrated Twilio so the assistant can initiate phone conversations.

User Phone
โ”‚
โ–ผ
Twilio
โ”‚
โ–ผ
LiveKit Agent
โ”‚
โ–ผ
Voice Conversation
๐Ÿ‘จโ€๐Ÿ’ผ 6. Human Escalation

AI shouldn't answer everything.

If a request requires human help, the assistant can escalate.

User
โ”‚
โ–ผ
Voice Agent
โ”‚
โ–ผ
Needs Human?
โ”‚
โ”œโ”€โ”€ No โ†’ Continue
โ”‚
โ””โ”€โ”€ Yes โ†’ Escalate
๐Ÿ”„ 7. Specialist Handoff

Different agents can handle different domains.

Main Agent
โ”‚
โ”Œโ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”
โ–ผ โ–ผ โ–ผ
Loan Tax Insurance
Agent Agent Agent
๐Ÿ“Š 8. Analytics Dashboard

Every conversation is useful.

Tracking outcomes helps understand:

Successful calls
Failed calls
User interactions
Performance
๐Ÿšง Challenges I Faced
LiveKit Authentication

The biggest challenge initially was getting LiveKit configured correctly.

Solution

I verified:

Environment variables
API Keys
Agent startup
LiveKit room connection

before debugging anything else.

Twilio Integration

Connecting browser conversations with phone calls introduced authentication and routing issues.

After several iterations, outbound calling worked successfully.

Debugging

The project taught me an important lesson:

Debug one layer at a time.

Instead of changing everything, I tested:

Environment

โ†“

LiveKit

โ†“

STT

โ†“

LLM

โ†“

Memory

โ†“

Tools

โ†“

Murf Falcon

โ†“

Frontend

This saved hours of debugging.

๐Ÿš€ How to Run the Project

Clone the repository:

git clone https://github.com/khushi-seth/VaaniFinance-AI.git

Install dependencies.

Create:

backend/.env.local

Example:

LIVEKIT_URL=your_livekit_url
LIVEKIT_API_KEY=your_livekit_api_key
LIVEKIT_API_SECRET=your_livekit_api_secret
MURF_API_KEY=your_murf_api_key

Never upload secrets to GitHub.

Run the backend:

uv run python src/agent.py dev

Run the frontend:

pnpm dev
๐Ÿ“ˆ Future Improvements

I would like to add:

๐ŸŒ Better multilingual conversations
โšก Lower latency
๐Ÿ“Š Advanced analytics
๐Ÿค– Smarter specialist routing
โ˜๏ธ Cloud deployment
๐Ÿ“ฑ Mobile support
๐Ÿ“š What I Learned

This challenge completely changed my understanding of AI agents.

Initially I thought:

Speech โ†’ LLM โ†’ Voice

Now I understand that a production-ready voice agent needs:

Speech

โ†“

Reasoning

โ†“

Memory

โ†“

Tools

โ†“

Phone Support

โ†“

Analytics

โ†“

Human Escalation

โ†“

Specialist Agents

Building a voice agent isn't only about making AI speak.

It's about creating a system that can understand, reason, remember, and act.

๐Ÿ“ธ Gallery

Add these screenshots before publishing:

๐Ÿ“ท Homepage of your Voice Agent
๐Ÿ“ท Voice conversation in progress
๐Ÿ“ท Twilio successful call
๐Ÿ“ท LiveKit dashboard
๐Ÿ“ท Analytics dashboard
๐Ÿ“ท Project folder in VS Code
๐Ÿ“ท GitHub repository
๐Ÿ”— Project Links

GitHub

https://github.com/khushi-seth/VaaniFinance-AI

LinkedIn

GitHub - khushi-seth/VaaniFinance-AI | Khushi Seth

๐Ÿš€ 10 Days of Voice Agents โ€” VoiceForBharat Edition COMPLETED! ๐ŸŽ™๏ธ๐Ÿ‡ฎ๐Ÿ‡ณ Iโ€™m excited to share my project VaaniFinance AI โ€” a Voice-First Financial Assistant for Bharat. Over the past 10 days, I built and evolved a voice AI agent using Murf Falcon and LiveKit, with capabilities including: ๐ŸŽ™๏ธ Real-time voice conversations ๐Ÿง  Persistent user memory ๐Ÿ› ๏ธ Tool calling ๐Ÿ“ž Outbound phone calls with Twilio ๐Ÿ‘ค Human escalation ๐Ÿ”„ Specialist handoffs ๐Ÿ“Š Call outcome tracking ๐Ÿ›ก๏ธ Safety guardrails The biggest lesson from this challenge was that building a voice agent isn't just about making AI speak โ€” it's about creating a system that can listen, understand, remember, act, and escalate when needed. I faced plenty of debugging challenges along the way, from LiveKit connections and authentication to Twilio integration and frontend issues. Every problem helped me understand real-world AI agent development better. A huge thank you to Murf AI for organizing 10 Days of Voice Agents โ€” VoiceForBharat Edition and for giving builders the opportunity to explore voice AI with Murf Falcon. ๐Ÿ”— GitHub Repository: https://lnkd.in/dbR8igAt Murf AI #VoiceForBharat #MurfAI #MurfFalcon #VoiceAI #AIAgents #LiveKit #GenerativeAI #BuildInPublic

favicon linkedin.com

๐Ÿ™ Thank You

A huge thank you to Murf AI for organizing the 10 Days of Voice Agents โ€” VoiceForBharat Edition.

This challenge helped me understand how modern voice AI systems are builtโ€”from speech recognition to real-time conversations, memory, telephony, and intelligent agent workflows.

The journey doesn't end hereโ€”this is just the beginning of building better voice experiences for everyone.

VoiceForBharat #MurfAI #MurfFalcon #LiveKit #VoiceAI #AIAgents

Top comments (0)