Back to work

AI booking platform

Amfion

A white-label, multi-tenant booking product with Claude streaming, server-side scheduling tools, tenant context, Cal.com, Stripe, Supabase, Redis, and BullMQ.

Live and operational Next.jsReactFastifySupabaseRedisBullMQ

Problem

Scheduling assistants need conversational flexibility, but booking actions need verified state and explicit control.

System

Amfion keeps the model inside a bounded workflow. The assistant can reason conversationally, but availability and booking actions come from server-side tools.

Highlights

  • Bounded tool-use loop for service info, availability, booking creation, lookup, update, cancellation, and rescheduling.
  • Tenant-specific prompt context built from services, FAQs, policies, business hours, timezone, and selected slot state.
  • Booking reliability through Redis availability caching, idempotency, locks, per-email limits, and signed customer management tokens.

Key decisions

  • Use current Cal.com tool results as the source of truth before showing or confirming times.
  • Keep tenant context explicit so each assistant reflects the right services, policies, hours, and timezone.
  • Use queues, locks, idempotency, and signed management tokens around operational workflows.

Evidence

  • Multi-tenant data model with tenant-scoped resolution and Postgres RLS.
  • Admin dashboard, embeddable widget, self-service signup, webhooks, workers, and billing paths.
  • Tests around shared utilities, availability handling, tokens, date logic, and error helpers.