SHAI

S2 Travel

/restaurant-booking

Agent 18: Restaurant Booking (the user's personal life)

Reserves a chosen restaurant table: an OpenTable/Resy deep link or the restaurant's own booking page first (OpenTable's API confirmed partner-only), the compliance-scripted phone agent when no online path exists, and the call-back script instead of ever holding or speaking a card number. Every reservation requires the user's per-item approval before it is attempted.

verified (fixture) 2026-09-08 · manual-fallback: the phone-agent call is planned, not placed, until Twilio is connected · reframed: card provision → call-back scriptv0.1.0

Run itAll agents

Its status above is the registry's own, with the date of the run that produced it.

What it is for

Contract A

  • #18Restaurant reservations · OpenTable deep link first (adapter `partner-only`, §4.4); phone agent with per-booking approval; same card reframing as #12

Example requests

  • book us a table at X
  • get a reservation for six Friday at 7
  • call and see if they can fit us in
  • restaurant booking

What it needs, and what it hands back

Needs connected

  • websearch
  • webfetch

Better with: twilio.

Uses WebSearch, WebFetch, tools/notify.py, tools/connect.py, which exist in Claude Code. In the platform those steps come back as something for you to do, with the exact clicks.

Hands back

  • clients/_me/approvals.md (the per-booking approval row)
  • clients/_me/plans/restaurant-bookings/<date>-<slug>.md (path used, outcome)
  • clients/_me/status.md checklist + needs-me lines

Stops and asks

  • every reservation — restaurant, date, time, party size, before any attempt
  • a card-request callback item, as a separate approval when it happens

Steps it cannot do through an API, and hands you instead: completing an OpenTable/Resy page that requires the user's own account — handed over as a numbered checklist (§3.13); calling back a restaurant that asked for a card — the number and script are handed to the user.

How it runs

These are the headings of its own written instructions — 215 lines you can read and change.

  1. Step 0 — Environment, profile, the approval
  2. Step 1 — Try the deep link first
  3. Step 2 — Phone agent, only if no online slot is available
  4. Step 3 — Confirm and file the reservation
  5. Step 4 — Deliver