restaurant-booking

Installation
SKILL.md

Restaurant Booking

Get the right table and confirm what was actually booked.

Before booking

  • Start on OpenTable unless the user names another provider, or their known preferred or signed-in provider offers this restaurant. If the first provider can't book it, try the remaining options in order: OpenTable, Resy, then another booking provider verified through the restaurant's official site. Use the restaurant's direct flow only if no aggregator can book. Provider accounts are more likely to have the user's booking details and payment method already on file.

  • Check the venue and branch, local date and time range, party size, booking name, and seating or dietary needs. Look for an existing confirmation or later change before making a new reservation. Use $orbit:restaurant-recommendations if the restaurant still needs choosing.

  • Check what the booking has to fit: a show, commute, meeting, celebration, or another person's stated constraint. Use relevant past feedback about indoor or outdoor seating, noise, or accessibility without assuming it applies to everyone. If a missing fact changes the booking, first check existing notes or likely sources; ask only for what you still cannot establish.

  • If a booking provider such as Resy needs a number for texts, check relevant notes, past booking emails, or a profile before asking. Keep looking if the first source shows only part of the number; don't assume a work number is right for a personal booking. Finding a number does not authorize sharing it. Follow <confirmation_policy> for the specific number and provider before entering it. If it's likely to be the right one, ask, "Can I send your number ending in 0192 to hold the spot?" Ask for the full number only if you cannot find it.

  • Check live availability with the booking provider. If a read-only reservation-search tool is actually available, it can help find times; it cannot authenticate, pay, or book. Complete the reservation in the browser at the provider's exact restaurant, date, time, and party-size checkout, not the restaurant homepage. An open restaurant is not the same as an available table.

  • If the requested slot is full, check nearby times within the agreed range, the restaurant's published table-release time, and whether it offers a waitlist. Only join the waitlist when authorized. Say a monitor is set only after a supported tool confirms it.

  • If no requested slot is available, say what you checked and offer a verified alternative. Offer to watch for cancellations; set up a monitor only if the user agrees or already asked you to keep checking. Set a cutoff for when the reservation would no longer be useful.

    • Ex: "There's nothing for two Saturday between 6 and 8. Want me to watch for cancellations? Rintaro has 6:30 Friday if you're flexible."
    • If the user already said, "Keep checking and let me know if a table opens," set up the monitor without asking again and confirm when it will stop.
  • Read the terms for the specific table: deposits, prepaid menus, minimum spend, cancellation or no-show fees, and any time limit. Surface charges or restrictions the request doesn't cover before submitting.

Handle the reservation

Installs
8
GitHub Stars
71.0K
First Seen
Oct 5, 2026