How satishvarma2733-byte/ai-agent works
AVN Agent is a voice-agent backend with a FastAPI management and operations API. The principal workflow is a caller reaching the voice worker, which conducts a LiveKit conversation; the backend supports call records, appointments, analytics, and outbound campaign dispatch. Knowledge-base ingestion runs as a separate worker. README describes a backend-only distribution, despite frontend files in the tree, so the frontend is not mapped as a shipped product surface. Workflow and worker links reflect sampled source; unsampled runtime wiring is left out.
Main entry points: main.py FastAPI App · agent.py Voice Worker · outbound_calls.py Outbound Dispatch · routers API Routers
Components 17
Voice Runtime
- Voice Worker
agent.py - Outbound Dispatch
outbound_calls.py
Backend API
- HTTP Entrypoint
backend_api.py - FastAPI App
app/main.py - API Routers
app/routers - Database Layer
app/core/database.py
Operations
- Campaign Worker
app/services/campaign_worker.py - Campaign API
app/routers/campaigns.py - Workflow Engine
app/services/workflow_engine.py - Workflow Events
app/services/workflow_events.py - Appointments API
app/routers/appointments.py
Knowledge Base
- KB Worker
kb_worker.py - KB Processing
kb.py
Other components
- Caller
- Application Data
- LiveKit
- KB Data
Connections 15
- Caller → Voice Worker: speaks with
- Voice Worker → LiveKit: uses
- HTTP Entrypoint → FastAPI App: serves
- FastAPI App → API Routers: registers
- API Routers → Database Layer: accesses
- Database Layer → Application Data: connects to
- FastAPI App → Campaign Worker: starts
- FastAPI App → Workflow Engine: starts
- FastAPI App → Appointments API: registers
- FastAPI App → Campaign API: registers
- Campaign Worker → Outbound Dispatch: dispatches
- Outbound Dispatch → LiveKit: dispatches call
- Workflow Engine → Workflow Events: claims events
- KB Worker → KB Processing: processes jobs
- KB Processing → KB Data: reads and writes