AI apps

Tech stack for a voice AI agent (2026)

Voice AI receptionist for restaurants, designed by StackPrism from one sentence: 9 components, a reason for each, and the live checks that watch them.

The stack

  • Next.js
  • Supabase
  • OpenAI
  • Inngest
  • PostgreSQL
  • Redis
  • Twilio
  • Sentry
AIVoiceTelephonyUpdated
The idea someone typed
“A voice AI agent that answers phone calls for restaurants: it takes reservations, answers questions about the menu and opening hours, and texts the guest a confirmation. Replies need to feel instant, and owners can read every call transcript.”

Make it yours. Open this stack in the editor to check its health, harden it and hand it to your coding agent. No sign-up, nothing to generate.

Start from this stack
goes down

Select a component to see what it does and what it connects to, or pick one above to see what breaks if it goes down. Pinch or use the buttons to zoom.

Why this stack

Calls come in through Twilio, which hands each one to the real-time voice agent. The agent holds the conversation with OpenAI, keeps live call state in Redis so replies stay fast, and reads the menu, opening hours and reservations from PostgreSQL. After the call, an Inngest job texts the guest a confirmation through Twilio. Owners use the admin portal to read transcripts from PostgreSQL and play back audio kept in Supabase Storage. Sentry reports errors from both sides.

Why each piece

All 9 components on the diagram: what each one does, what it talks to, and what stops if it goes down.

  1. Real-Time Voice Agent

    In Vercel

    Call orchestration. Calls OpenAI, Inngest (triggers), Twilio (sends), Sentry (errors), PostgreSQL (reads/writes) and Redis (reads). Called by Twilio (webhooks).

    If it goes down, 1 of 8 components degrades.

  2. Admin Portal

    In Vercel

    Next.js dashboard. Calls Supabase Storage (loads), Sentry (errors) and PostgreSQL (reads).

    Nothing else on the diagram depends on it.

  3. Supabase Storage

    In Data & Storage

    Audio storage. Called by Admin Portal (loads).

    If it goes down, 1 of 8 components degrades.

  4. OpenAI

    In External Services

    LLM API. Called by Real-Time Voice Agent.

    If it goes down, 1 of 8 components degrades.

  5. Inngest

    In External Services

    Async jobs. Calls Twilio (sms). Called by Real-Time Voice Agent (triggers).

    Nothing else on the diagram depends on it.

  6. PostgreSQL

    In Databases

    System of record. Called by Admin Portal (reads) and Real-Time Voice Agent (reads/writes).

    If it goes down, 2 of 8 components stop working and 1 degrades.

  7. Redis

    In Databases

    Session cache. Called by Real-Time Voice Agent (reads).

    If it goes down, 1 of 8 components degrades.

  8. Twilio

    In External Services

    Telephony and SMS. Calls Real-Time Voice Agent (webhooks). Called by Inngest (sms) and Real-Time Voice Agent (sends).

    If it goes down, 2 of 8 components degrade.

  9. Sentry

    Error tracking. Called by Real-Time Voice Agent (errors) and Admin Portal (errors).

    If it goes down, 2 of 8 components degrade.

When this stack fits

  • The job is narrow: reservations, menu and opening-hours questions, and a text afterwards.
  • Replies have to come fast, so live call state sits in Redis rather than the database.
  • Owners need to check what the agent said on every call.

When to pick something else

  • You stream call audio for faster replies: that runs over WebSockets, which Vercel’s functions can’t hold open, so run the voice agent as a long-running service.
  • You’d rather not build the call loop: hosted voice-agent platforms handle the phone line, speech and turn-taking, and call your API for bookings.

What you need to build this

9 components across 8 areas of the stack.

Build it with your AI agent

Hand the stack to Claude Code, Codex, Cursor or any coding agent as a brief: how it connects, install steps and a build plan.

Frontend1

  • Admin Portal · Next.js

    Next.js dashboard

    npm install next

    Docs

Backend & APIs2

  • Real-Time Voice Agent

    call orchestration

  • Inngest

    async jobs

Data1

  • PostgreSQL

    system of record

    Docs

Cache & queues1

  • Redis

    session cache

    Docs

Email & messaging1

  • Twilio

    telephony and sms

    npm install twilio

    Docs

AI1

  • OpenAI

    llm api

    npm install openai

    Docs

Storage & CDN1

  • Supabase Storage

    audio storage

    npm install @supabase/supabase-js

    Docs

Observability1

  • Sentry

    error tracking

    npm install @sentry/nextjs

    Docs

Install

npm install next twilio openai @supabase/supabase-js @sentry/nextjs

SDKs only. Pick your own database driver or ORM.