How kolomfolox-lab/ai_receptionist works
VoiceAI Studio is a multi-agent AI receptionist with browser and Twilio voice entry points plus an authenticated management dashboard. The primary call path receives audio, segments speech, transcribes it, generates a receptionist reply, synthesizes audio, and returns it to the caller; call records feed dashboard statistics. The tree also exposes booking, intake, messaging, recording, transcript, and retention subsystems. The server and voice pipeline excerpts support the main call-flow links; wiring for several additional subsystems is not shown, so those links are omitted.
Main entry points: pipeline.py Voice pipeline · server.py API and sessions · useStore.js API and UI state · database.py Agents and calls
Components 28
Voice runtime
- API and sessions
server.py - Voice pipeline
receptionist/voice/pipeline.py - Speech detection
receptionist/voice/vad.py - Speech recognition
receptionist/voice/stt.py - Receptionist agent
receptionist/agent.py - Speech synthesis
receptionist/voice/tts.py
Management app
- Reception dashboard
frontend/src/App.jsx - API and UI state
frontend/src/store/useStore.js - Agent management
frontend/src/pages/AgentsPage.jsx - Conversation playground
frontend/src/pages/PlaygroundPage.jsx - Analytics
frontend/src/pages/AnalyticsPage.jsx - Call activity
frontend/src/pages/ActivityPage.jsx - Settings
frontend/src/pages/SettingsPage.jsx
Business operations
- Agents and calls
receptionist/database.py - Booking workflow
receptionist/booking/booking.py - Availability lookup
receptionist/booking/availability.py - Calendar client
receptionist/booking/client.py - Intake submissions
receptionist/intakes/storage.py
Call support
- Message dispatch
receptionist/messaging/dispatcher.py - Webhook channel
receptionist/messaging/channels/webhook.py - Call recordings
receptionist/recording/storage.py - Transcript capture
receptionist/transcript/capture.py - Retention sweeper
receptionist/retention/sweeper.py
Other components
- Browser caller
- Phone caller
- LLM service
- Google Calendar
- Webhook receiver
Connections 27
- Browser caller → API and sessions: sends audio
- Phone caller → API and sessions: calls
- API and sessions → Voice pipeline: creates session
- API and sessions → Voice pipeline: feeds audio
- Voice pipeline → Speech detection: segments speech
- Voice pipeline → Speech recognition: transcribes audio
- Voice pipeline → Receptionist agent: handles turn
- Receptionist agent → LLM service: generates reply
- Voice pipeline → Speech synthesis: synthesizes reply
- Voice pipeline → API and sessions: returns audio
- API and sessions → Browser caller: streams audio
- API and sessions → Phone caller: streams audio
- Reception dashboard → API and UI state: reads state
- API and UI state → API and sessions: calls API
- Agent management → API and UI state: uses API
- Conversation playground → API and UI state: uses API
- Analytics → API and UI state: uses API
- Call activity → API and UI state: uses API
- Settings → API and UI state: uses API
- API and sessions → Agents and calls: reads and writes
- Voice pipeline → Agents and calls: loads agent
- Voice pipeline → Agents and calls: logs call
- Calendar client → Google Calendar: queries and updates
- Availability lookup → Calendar client: checks calendar
- Booking workflow → Availability lookup: checks availability
- Message dispatch → Webhook channel: dispatches message
- Webhook channel → Webhook receiver: posts message