How vamshipepalla/myvoiceagent-sdk works
MYvoiceagent combines a configuration-driven LiveKit voice-agent SDK, outbound call runner, and local dashboard. The main workflow is browser user → dashboard UI/API → LiveKit room and dispatch → customer agent runtime/session → persisted transcripts and metrics, which the dashboard reads back. A separate CLI path places outbound SIP calls. Inbound agent files exist, but inbound handling is not implemented or verified. Several key relationships are documented or visible in excerpts; unsampled implementation details are omitted rather than inferred.
Main entry points: session.py Session Builder · runtime.py Runtime Orchestration · observability.py Call Observability · App.tsx Dashboard UI
Components 21
Outbound Calling
- Dashboard UI
frontend/src/App.tsx - Dashboard API
myagentrunner/dashboard.py - SIP Dialer
myagentrunner/dial.py - Agent Runner
myagentrunner/runner.py
Agent Runtime
- Outbound Agent
myagentrunner/customer/MyAgent/outbound/agent.py - Config Validation
myagentsdk/config.py - Runtime Orchestration
myagentsdk/runtime.py - Session Builder
myagentsdk/session.py - LiveKit Server Setup
myagentsdk/app.py - Inbound Agent Files
myagentrunner/customer/MyAgent/inbound/agent.py
Dashboard and Data
- Call Observability
myagentsdk/observability.py - Call Metadata DB
myagentsdk/observability.py - Transcript JSONL
myagentsdk/observability.py
Voice Providers
- Deepgram STT
- Google Gemini
- Sarvam TTS
- Silero VAD
Other components
- Developer
- Browser User
- Phone Recipient
- LiveKit
Connections 22
- Browser User → Dashboard UI: uses
README.md - Dashboard UI → Dashboard API: requests data
README.md - Dashboard API → LiveKit: issues room credentials
README.md - Dashboard UI → LiveKit: connects room
README.md - LiveKit → LiveKit Server Setup: dispatches session
README.md - Agent Runner → Runtime Orchestration: creates runtime
myagentrunner/runner.py - Agent Runner → LiveKit Server Setup: registers runtime
myagentrunner/runner.py - Runtime Orchestration → Config Validation: loads config
myagentsdk/runtime.py - Runtime Orchestration → Outbound Agent: loads agent module
myagentsdk/runtime.py - Runtime Orchestration → Session Builder: starts session
myagentsdk/runtime.py - LiveKit Server Setup → Session Builder: sets up plugins
myagentsdk/app.py - Session Builder → Deepgram STT: creates STT
myagentsdk/session.py - Session Builder → Google Gemini: creates LLM
myagentsdk/session.py - Session Builder → Sarvam TTS: creates TTS
myagentsdk/session.py - Session Builder → Silero VAD: loads VAD
myagentsdk/session.py - Runtime Orchestration → Call Observability: records turns
myagentsdk/runtime.py - Call Observability → Call Metadata DB: writes metadata
myagentsdk/observability.py - Call Observability → Transcript JSONL: writes transcripts
myagentsdk/observability.py - Dashboard API → Call Observability: reads call data
myagentrunner/dashboard.py - Phone Recipient → SIP Dialer: receives call
README.md - SIP Dialer → LiveKit: places SIP call
README.md - Developer → Agent Runner: starts worker
README.md