Documentation Index
Fetch the complete documentation index at: https://docs.vorel.ai/llms.txt
Use this file to discover all available pages before exploring further.
The restaurant pack tunes Vorel’s voice + chat agent for sit-down restaurants. It seeds an agent persona, the slots the agent collects on every reservation, the catalog attributes for slot/section combinations, the handoff triggers, and a few prompt-level overrides — all without code.
Persona defaults
| Field | Value |
|---|
| Agent name (English) | Nadia |
| Agent name (Arabic) | نادية |
| Business framing | ”restaurant” / “مطعم” |
| Target customer | ”diners” |
| Appointment noun | ”reservation” / “حجز” |
| Tone | warm and gracious, hospitality-first; concise on details (party size, time, dietary) without rushing the guest |
Signature phrases (used at most once per call)
delighted to help · let me get that sorted for you · بكل سرور · خلّيني أرتّب لك الحجز
Forbidden phrases (the agent will never say)
guaranteed seating · best table in the house · we never run out · you'll love everything · مضمون لك أحسن طاولة
These defend against over-promising in a setting where seating, menu items, and special requests are all subject to operational constraints.
What the agent qualifies
Sourced verbatim from config/verticals/restaurant.json prompt_overrides.qualification_extra_rules:
Capture party size, target date / time, and service period (lunch vs dinner) before searching availability. ALWAYS ask about dietary restrictions and any allergies in the party — the kitchen needs lead time and an undisclosed allergy is a safety incident. For occasions (birthday, anniversary), capture the celebrant’s name + whether they want a cake or surprise note; route to the FOH manager via handoff if the request needs prep. Large parties (8+) and private-room bookings: confirm minimum spend, set menu requirement, and deposit policy at booking time, NOT at the table. For walk-in or same-day asks past peak window, offer the next-available slot or the bar; never suggest holding a table without a confirmed booking.
Lead attributes captured
| Slot | Type | Notes |
|---|
party_size | number | Number of guests |
occasion | string | regular · birthday · anniversary · business · celebration · first_visit |
dietary_requirements | string[] | vegetarian · vegan · halal · kosher · gluten_free · nut_allergy · shellfish_allergy · dairy_free |
seating_preference | string | indoor · outdoor · private_room · bar · window · no_preference |
high_chairs_needed | number | High chairs / kids needing seats |
regular_status | string | new · returning · regular · vip |
Offering catalog attributes
Bookable slot-section combinations stored as Vorel offerings:
| Attribute | Type | Examples |
|---|
service_period | string | breakfast · brunch · lunch · dinner · late_night · afternoon_tea |
duration_minutes | number | Slot duration |
max_party_size | number | Hard cap for the slot |
section | string | indoor · outdoor · terrace · private_room · bar · chefs_table |
min_spend_aed | number | Minimum spend per guest (e.g. for terrace / private room) |
set_menu_only | boolean | Slot requires the set menu |
kid_friendly | boolean | Section accommodates kids / high chairs |
Handoff triggers (defaults)
- On complaint — service grievances route to FOH manager.
- On negotiation — pricing / minimum-spend negotiations escalate.
- On explicit request — “let me speak to the manager”.
- On stuck — if the agent can’t make progress in two turns, hand off.
on_compliance is OFF — restaurants rarely have compliance escalations on the inbound channel.
Worth knowing
- Allergies are a safety boundary. The qualification prompt explicitly tells the agent that an undisclosed allergy is a safety incident — so it captures dietary requirements + allergies on every booking, not just for the celebrant. Add tenant-specific dietary categories (e.g. religious + cultural restrictions) via the dashboard.
- Occasion + cake / surprise note. When the caller mentions birthday / anniversary, the agent captures the celebrant’s name and asks whether they want a cake or surprise note. If prep is needed, the agent routes to a human (FOH manager) so the kitchen has lead time.
- Large parties + private rooms — terms confirmed at booking. The agent confirms minimum spend, set-menu requirement, and deposit policy at booking time, not at the table. This protects against the “we showed up and only then learned about the AED 500/head minimum” pattern.
- No held-table-without-booking. The agent is explicitly told never to suggest holding a table without a confirmed booking — even for walk-in / same-day asks past peak window. Instead it offers the next-available slot or the bar.
- Post-confirmation copy. The pack’s
booking_post_confirm_hint instructs the confirmation to include the restaurant address with parking / valet notes, reservation name + party size, held seating section, slot duration, and any minimum-spend or set-menu terms. For dietary requests, it confirms the kitchen has been notified. For occasions, it confirms whether a cake / note has been arranged.
Per-tenant tuning
- Append signature / forbidden phrases — your brand voice phrases on top of the pack defaults.
- Replace prompt overrides per-key — e.g. fine-dining-specific qualification rules vs. casual-dining vs. delivery-first hybrids.
- Full prompt edits — for deeper rewrites,
tenant_prompt_overrides replaces individual sub-agent prompts.