Multi-tenant · Supabase-native · Bring-your-own provider keys

Build voice AI agents for every one of your customers

Each tenant gets isolated agents, knowledge bases, and callable functions. Plug in Deepgram or Soniox for speech-to-text, ElevenLabs or Unreal Speech for voice, push-to-talk over WebRTC today, telephony via LiveKit/Pipecat next.

Everything a multi-tenant voice agent needs

True tenant isolation

Supabase Auth + Postgres Row Level Security scope every agent, document and conversation to its owning tenant automatically.

Server-side key vault

Deepgram, Soniox, ElevenLabs, Unreal and OpenAI keys live only inside Supabase Edge Function secrets — never in browser JS.

Pluggable providers

Switch STT/TTS/LLM providers per agent from a dropdown. Add new providers by dropping in one Edge Function branch.

Per-agent knowledge base

Paste or upload text; it's chunked, embedded with pgvector, and retrieved live during conversations (RAG).

Intent → API functions

Define a function once (name, description, endpoint, auth) and the agent's LLM calls it automatically when it detects the matching intent.

Push-to-talk WebRTC widget

Embeddable mic widget for instant testing today; LiveKit/Pipecat telephony slots into the same orchestrator next.

Architecture

Static frontend talks only to Supabase Auth, Postgres (via RLS) and Edge Functions. Every third-party API key stays server-side.

Frontend (this site)

  • Supabase Auth (signup/login/session)
  • Dashboard · Agent editor · Knowledge base UI
  • Functions/Tools manager
  • WebRTC push-to-talk widget

Supabase Edge Functions

  • stt-transcribe → Deepgram / Soniox
  • tts-speak → ElevenLabs / Unreal
  • agent-orchestrator → RAG + tool-calling LLM
  • kb-ingest / kb-search, function-executor

Supabase Postgres

tenants · profiles · agents · knowledge_bases · kb_documents · kb_chunks (pgvector) · agent_functions · agent_function_secrets · tenant_provider_keys · conversations · conversation_messages · function_call_logs — all with Row Level Security keyed to the caller's tenant.

Roadmap

LIVE

Push-to-talk WebRTC

Record in-browser, transcribe, run the agent, hear the reply.

NEXT

Streaming STT

WebSocket relay for live, continuous transcription instead of record-then-send.

NEXT

Telephony

LiveKit or Pipecat media server bridges PSTN calls into the same orchestrator/functions.