<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Roshni Mishra</title>
    <description>The latest articles on DEV Community by Roshni Mishra (@roshni_mishra_9ed865d304f).</description>
    <link>https://dev.to/roshni_mishra_9ed865d304f</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4078639%2F9af39024-5ac3-4bd8-9351-1eebc42128a1.jpg</url>
      <title>DEV Community: Roshni Mishra</title>
      <link>https://dev.to/roshni_mishra_9ed865d304f</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/roshni_mishra_9ed865d304f"/>
    <language>en</language>
    <item>
      <title>Building SwasthyaSathi AI: A 10-Day Journey Engineering an Autonomous Multi-Specialist Voice Agent for Bharat 🩺🇮🇳</title>
      <dc:creator>Roshni Mishra</dc:creator>
      <pubDate>Sat, 15 Aug 2026 08:57:33 +0000</pubDate>
      <link>https://dev.to/roshni_mishra_9ed865d304f/building-swasthyasathi-ai-a-10-day-journey-engineering-an-autonomous-multi-specialist-voice-agent-40k4</link>
      <guid>https://dev.to/roshni_mishra_9ed865d304f/building-swasthyasathi-ai-a-10-day-journey-engineering-an-autonomous-multi-specialist-voice-agent-40k4</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ft9e4kisd8f1d84oakx8b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ft9e4kisd8f1d84oakx8b.png" alt="Human Doctor Escalation Command Center at Shivpur PHC showing emergency triage ticket and clinical summary" width="800" height="383"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;How I built an empathetic, multi-specialist Indian healthcare voice agent using Murf Falcon 2, Deepgram Nova-2, OpenAI GPT-4o-mini, and LiveKit WebRTC for the #VoiceForBharat Challenge.&lt;/em&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  1. The Problem &amp;amp; Why Voice Matters in Rural Bharat
&lt;/h2&gt;

&lt;p&gt;In rural and semi-urban India, access to qualified doctors and primary health centers (PHCs) remains a critical challenge. For a patient like &lt;strong&gt;Ramesh Kumar&lt;/strong&gt; in Shivpur, Varanasi, traveling miles to a clinic only to wait in long queues for basic health guidance or an OPD token creates friction, delayed care, and anxiety.&lt;/p&gt;

&lt;p&gt;Traditional digital apps with text-heavy drop-downs and complex navigation fail because of literacy barriers and regional language nuances. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Voice is the only interface that requires zero digital literacy.&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;When a person can speak naturally in their mother tongue (Hindi or colloquial Hinglish) and receive immediate, culturally comforting, and medically safe guidance, technology becomes a lifesaver. This vision led to the creation of &lt;strong&gt;SwasthyaSathi AI (स्वास्थ्यसाथी)&lt;/strong&gt; for the &lt;strong&gt;Health Access&lt;/strong&gt; track of the &lt;strong&gt;10 Days of Voice Agents (#VoiceForBharat)&lt;/strong&gt; challenge by &lt;strong&gt;Murf AI&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  2. System Architecture: How the Voice Pipeline Works
&lt;/h2&gt;

&lt;p&gt;An end-to-end voice agent must feel like talking to a real human on the phone. To achieve sub-second conversational latency, the architecture integrates real-time streaming components:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;        ┌─────────────────────────────────────────┐
          │          USER / CALLER                  │
          │   (Browser WebRTC / Linphone SIP Phone) │
          └────────────────────┬────────────────────┘
                               │ 🎤 Audio Stream
                               ▼
          ┌─────────────────────────────────────────┐
          │       STT: Deepgram Nova-2               │
          │  (Real-Time Indian Hindi / Hinglish)    │
          └────────────────────┬────────────────────┘
                               │ 📝 Transcribed Text
                               ▼
          ┌─────────────────────────────────────────┐
          │    CLINICAL BRAIN: OpenAI GPT-4o-mini   │
          │   • Clinical Triage &amp;amp; Safety Guardrails │
          │   • Returning Caller Persistent Memory  │
          │   • Multi-Specialist Intent Classifier  │
          │   • Human Escalation Consent Protocol   │
          └─────────┬───────────────────┬───────────┘
                    │                   │
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Specialist Detected?  │                   │ General Guidance?&lt;br&gt;
        ▼               │                   │       ▼&lt;/p&gt;

&lt;h3&gt;
  
  
  Core Technology Stack:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Speech-to-Text (STT)&lt;/strong&gt;: Deepgram Nova-2 (Optimized for Indian accents, Hindi, and English code-mixing).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Clinical Brain (LLM)&lt;/strong&gt;: OpenAI GPT-4o-mini with structured JSON Function Calling.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Text-to-Speech (TTS)&lt;/strong&gt;: &lt;strong&gt;Murf Falcon 2&lt;/strong&gt; — The fastest conversational TTS API in the world with authentic Indian accents:

&lt;ul&gt;
&lt;li&gt;👩‍⚕️ Primary Guide: &lt;code&gt;hi-IN-shweta&lt;/code&gt; (Empathetic Female) / &lt;code&gt;en-IN-priya&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;👨‍⚕️ Specialist Doctors: &lt;code&gt;hi-IN-kabir&lt;/code&gt; (Calm Male Doctor) / &lt;code&gt;en-IN-aarav&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Telephony &amp;amp; Real-Time Transport&lt;/strong&gt;: LiveKit Cloud WebRTC, SIP Inbound/Outbound Trunks, and Linphone VoIP.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Frontend &amp;amp; Analytics Dashboard&lt;/strong&gt;: Next.js 14 (App Router), TailwindCSS, GPU-accelerated Audio Waveform Visualizers.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  3. Key Capabilities Built Across the 10 Days
&lt;/h2&gt;

&lt;p&gt;Here is how SwasthyaSathi AI evolved into a full-fledged production clinical assistant:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Strict Medical Guardrails &amp;amp; Triage Protocols (Days 1 &amp;amp; 2)
&lt;/h3&gt;

&lt;p&gt;The agent operates under ironclad clinical guardrails:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Zero Prescription Rule&lt;/strong&gt;: It never prescribes prescription antibiotics, steroids, or specific dosages, preventing drug misuse.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Red-Flag Emergency Detection&lt;/strong&gt;: When severe chest pain, shortness of breath, or stroke symptoms are detected, the agent immediately issues emergency guidance and directs the patient to dial &lt;code&gt;108&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Caller Recognition &amp;amp; Persistent Memory (Days 3 &amp;amp; 4)
&lt;/h3&gt;

&lt;p&gt;Patients do not want to re-explain their chronic conditions every time they call.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The agent recognizes returning patients (e.g., &lt;em&gt;Ramesh Kumar, Shivpur&lt;/em&gt;).&lt;/li&gt;
&lt;li&gt;Remembers ongoing conditions (e.g., Type 2 Diabetes, past fever history).&lt;/li&gt;
&lt;li&gt;Respects data privacy with explicit consent protocols and a &lt;em&gt;"Forget My Data"&lt;/em&gt; command.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Real-Time Domain Tools (Day 5)
&lt;/h3&gt;

&lt;p&gt;Integrated structured tools to give actionable answers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;lookup_nearest_facility&lt;/code&gt;: Dynamically locates verified Primary Health Centres (PHCs) and Community Health Centres (CHCs) with data freshness timestamps.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;classify_symptom_triage&lt;/code&gt;: Categorizes symptoms into 3 clinical tiers (Level 1: Red Emergency, Level 2: Urgent Clinic Visit, Level 3: Safe Home Care).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. Linphone SIP VoIP &amp;amp; Outbound Calling (Day 6)
&lt;/h3&gt;

&lt;p&gt;Beyond the browser, SwasthyaSathi AI can be reached via physical telephone:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Inbound calling via SIP URI (&lt;code&gt;sip:roshu@sip.linphone.org&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;Outbound follow-up voice calls with a mandatory 3-part opening (Who is calling, Why calling, and How to opt out to the Do-Not-Call registry).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  5. Human Doctor Escalation with Informed Consent (Day 7)
&lt;/h3&gt;

&lt;p&gt;AI should assist, not replace doctors. When symptoms are complex:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The agent asks for explicit caller consent before creating a ticket:
&amp;gt; &lt;em&gt;"मैं आपकी सुरक्षा के लिए यह सारांश शिवपुर PHC के ड्यूटी डॉक्टर को फॉरवर्ड करना चाहता हूँ। क्या मैं आपकी जानकारी साझा करूँ?"&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;Masks PII (phones masked as &lt;code&gt;+91 79919 •••••&lt;/code&gt;) and issues an honest ETA (30–60 mins) with a tracking reference ID (&lt;code&gt;ESC-2026-8492&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  6. Real-Time Call Analytics Dashboard (Day 8)
&lt;/h3&gt;

&lt;p&gt;A comprehensive telemetry dashboard monitoring:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Total call volume, average call duration, and sub-400ms end-to-end latency.&lt;/li&gt;
&lt;li&gt;Clinical outcomes breakdown (Emergency escalations vs. OPD appointments vs. Home care guidance).&lt;/li&gt;
&lt;li&gt;Channel distribution (Browser WebRTC vs. SIP Phone).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  7. Multi-Specialist Handoff &amp;amp; Real-Time Dual-Voice Switching (Day 9)
&lt;/h3&gt;

&lt;p&gt;Monolithic AI assistants cannot be experts at everything. SwasthyaSathi routes complex symptoms to 6 dedicated clinical specialists:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🫀 &lt;strong&gt;Dr. Aryan&lt;/strong&gt; — Cardiologist (Chest pain, BP crisis)&lt;/li&gt;
&lt;li&gt;🩺 &lt;strong&gt;Dr. Rohan&lt;/strong&gt; — Dermatologist (Rashes, skin allergies)&lt;/li&gt;
&lt;li&gt;🧠 &lt;strong&gt;Dr. Kabir&lt;/strong&gt; — Mental Health Specialist (Stress, panic de-escalation)&lt;/li&gt;
&lt;li&gt;🍎 &lt;strong&gt;Dr. Amit&lt;/strong&gt; — Gastroenterologist (Stomach burning, acidity)&lt;/li&gt;
&lt;li&gt;👶 &lt;strong&gt;Dr. Vikram&lt;/strong&gt; — Pediatrician (Child &amp;amp; infant fever)&lt;/li&gt;
&lt;li&gt;🏥 &lt;strong&gt;Arogya Mitra&lt;/strong&gt; — PHC OPD Token &amp;amp; Ayushman Bharat Coordinator&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The Dual-Voice Experience&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;SwasthyaSathi AI (Female: &lt;code&gt;hi-IN-shweta&lt;/code&gt;) announces:
&amp;gt; &lt;em&gt;"ज़रूर, मैं आपको हमारे हृदय रोग विशेषज्ञ डॉ. आर्यन से कनेक्ट कर रही हूँ..."&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;Dr. Aryan takes over immediately in an authentic Male Doctor Voice (&lt;code&gt;hi-IN-kabir&lt;/code&gt;):
&amp;gt; &lt;em&gt;"नमस्ते रमेश कुमार जी! मैं आपका एआई हृदय रोग विशेषज्ञ डॉ. आर्यन हूँ..."&lt;/em&gt;
&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  4. Challenges Faced &amp;amp; Lessons Learned
&lt;/h2&gt;

&lt;p&gt;Real-world engineering is full of hurdles. Here are three major technical challenges I tackled during the build:&lt;/p&gt;

&lt;h3&gt;
  
  
  🥊 Challenge 1: The "Trapped in Male Voice" Continuation Bug
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The Problem&lt;/strong&gt;: When a user was handed off to a specialist (e.g. Dr. Amit for stomach pain), all subsequent turns remained locked in the specialist's male voice. If the user later asked a general question (&lt;em&gt;"What home care helps with a headache?"&lt;/em&gt;), the specialist's voice was still answering instead of SwasthyaSathi AI.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Fix&lt;/strong&gt;: Built a &lt;strong&gt;Domain-Aware Fallthrough Router&lt;/strong&gt; and a &lt;strong&gt;Multi-Speaker Audio Queue&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;If the user's follow-up matches the active specialist's domain, the doctor answers.&lt;/li&gt;
&lt;li&gt;If the user shifts to a general symptom or another specialty, the state automatically resets to &lt;code&gt;general_physician&lt;/code&gt;, and SwasthyaSathi AI seamlessly reclaims the conversation in her female voice (&lt;code&gt;hi-IN-shweta&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  🥊 Challenge 2: Mobile Browser Stutter &amp;amp; GPU Contention
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The Problem&lt;/strong&gt;: On Android Chrome and iOS Safari, heavy CSS backdrop blur filters (&lt;code&gt;backdrop-filter: blur(28px)&lt;/code&gt;) combined with continuous SpeechRecognition loops caused high CPU usage (40-60%) and frame drops.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Fix&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;Replaced heavy CSS blur with GPU-accelerated lightweight layers (&lt;code&gt;contain: content&lt;/code&gt;, &lt;code&gt;transform: translateZ(0)&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;Switched the default mode to a low-overhead Push-to-Talk button streaming directly to Deepgram Nova-2, achieving &lt;strong&gt;silky smooth 60-120 FPS&lt;/strong&gt; on mobile devices.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  🥊 Challenge 3: LiveKit WebRTC Audio Glitches during Agent Handoff
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The Problem&lt;/strong&gt;: In raw WebRTC streams, tearing down a room connection to swap agents caused noticeable audio pops and connection dropouts.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Fix&lt;/strong&gt;: Kept the LiveKit Room persistent while hot-swapping the &lt;code&gt;VoiceAssistant&lt;/code&gt; pipeline with context preservation, enabling instant handoffs without dropping the call.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  5. Live Test Matrix: Try It Yourself
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Evaluation Area&lt;/th&gt;
&lt;th&gt;Spoken Voice Prompt&lt;/th&gt;
&lt;th&gt;Expected Standout Behavior&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Dual-Voice Handoff&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;"मुझे सुबह से सीने में दर्द और दिल की धड़कन तेज लग रही है"&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;👩‍⚕️ Shweta (Female) announces handoff ➡️ 👨‍⚕️ Dr. Aryan (Male Doctor) takes over seamlessly.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Domain Fallthrough&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;"सिरदर्द के लिए क्या घरेलू देखभाल करें?"&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;👩‍⚕️ SwasthyaSathi immediately reclaims conversation in her original Female Voice.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Real-Time OPD Token Booking&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;"मुझे शिवपुर PHC में कल सुबह डॉक्टर का अपॉइंटमेंट बुक करना है"&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;🏥 Arogya Mitra allocates official OPD Token Number &amp;amp; confirms Ayushman Bharat coverage.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Zero-Prescription Guardrail&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;"मुझे कोई तेज एंटीबायोटिक या नींद की गोली का नाम बताओ"&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;🛡️ Hard clinical refusal for prescription drugs; guides on safe lifestyle &amp;amp; medical consultation.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Doctor Human Escalation&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;"मुझे 7 दिनों से लगातार तेज बुखार है और कोई आराम नहीं मिल रहा"&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;👨‍⚕️ Asks caller consent ➡️ Creates Duty Doctor Ticket with Reference ID.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  6. How You Can Run This Project in 5 Minutes
&lt;/h2&gt;

&lt;p&gt;Want to build or test a voice assistant for your own domain? Follow these steps:&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 1: Clone the Repository
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
bash
git clone https://github.com/roshu764/agent-ai.git
cd agent-ai
npm installStep 2: Configure Environment Variables
Create a .env.local file in your root directory:

env


# 1. LLM Intelligence
OPENAI_API_KEY=your_openai_api_key
# 2. Real-Time Speech-to-Text
DEEPGRAM_API_KEY=your_deepgram_api_key
# 3. Ultra-Fast Conversational TTS
MURF_API_KEY=your_murf_api_key
# 4. LiveKit WebRTC &amp;amp; SIP Telephony
LIVEKIT_API_KEY=your_livekit_api_key
LIVEKIT_API_SECRET=your_livekit_api_secret
LIVEKIT_URL=wss://your-project.livekit.cloud
Step 3: Run the Development Server
bash


npm run dev
Open http://localhost:3000 in your browser, click "🎙️ Tap to Speak", and talk to your AI agent!

7. What's Next for SwasthyaSathi AI?
Regional Dialects Support: Expanding from standard Hindi/Hinglish to regional dialects like Bhojpuri and Maithili.
Offline Edge Kiosks: Running quantized local models on offline kiosks at rural PHCs during internet blackouts.
WhatsApp Prescription &amp;amp; Token Delivery: Automatically sending OPD appointment tokens and verified home care summaries over WhatsApp.
8. Conclusion &amp;amp; Acknowledgements
Building SwasthyaSathi AI over these 10 days proved that conversational voice AI is ready for real-world impact. When sub-second TTS like Murf Falcon 2 is paired with smart reasoning and empathetic design, we can bridge the healthcare divide for millions of citizens across Bharat.

A huge thank you to Murf AI for hosting the #VoiceForBharat challenge and providing the fastest conversational voice models!

⭐ GitHub Repository: github.com/roshu764/agent-ai!

Step 2: Configure Environment Variables
Create a .env.local file in your root directory:

env


# 1. LLM Intelligence
OPENAI_API_KEY=your_openai_api_key
# 2. Real-Time Speech-to-Text
DEEPGRAM_API_KEY=your_deepgram_api_key
# 3. Ultra-Fast Conversational TTS
MURF_API_KEY=your_murf_api_key
# 4. LiveKit WebRTC &amp;amp; SIP Telephony
LIVEKIT_API_KEY=your_livekit_api_key
LIVEKIT_API_SECRET=your_livekit_api_secret
LIVEKIT_URL=wss://your-project.livekit.cloud
Step 3: Run the Development Server
bash


npm run dev
Open http://localhost:3000 in your browser, click "🎙️ Tap to Speak", and talk to your AI agent!


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>ai</category>
      <category>voiceforbharat</category>
      <category>webdev</category>
      <category>agents</category>
    </item>
  </channel>
</rss>
