Local Development
Run each service individually for development with hot-reload.Prerequisites
- Python 3.10+
- Node.js 20+
- PostgreSQL running locally
- Better Auth credentials and Postgres password in the root
.env. All other provider keys are configured via the dashboard.
Database Setup
Create the database in PostgreSQL:Backend
Frontend
Agent
.env file. On startup it fetches all API keys (LiveKit, Google, Resemble, STT providers) from the backend dashboard. Make sure the backend is running first and provider keys are configured at API Keys.
Troubleshooting
Backend can't connect to database
Backend can't connect to database
- Ensure PostgreSQL is running
- Verify
POSTGRES_PASSWORDin the root.envmatches your PostgreSQL credentials - For Docker: the database takes a few seconds to initialize on first run
Frontend shows 'Failed to fetch' errors
Frontend shows 'Failed to fetch' errors
- Ensure the backend is running at the URL specified in
NEXT_PUBLIC_API_URL - Check CORS:
FRONTEND_URLin backend.envshould match your frontend URL
Agent doesn't connect to calls
Agent doesn't connect to calls
- Ensure the backend is running and all provider keys are configured at API Keys
- Verify LiveKit credentials are set and the URL uses
wss://protocol - Check that at least one STT provider key is configured in the dashboard
- Check the agent terminal for “Injected N keys from backend dashboard” on startup
Migrations fail
Migrations fail
- Ensure PostgreSQL is running and accessible
- Run
alembic upgrade headfrom thebackend/directory with the venv activated - If migrations are out of sync:
alembic currentshows the current state