dining
Skill428 starsChanged 29 days agoMITView on GitHub
Find and reserve restaurants. Use when the owner or a trusted person asks for a dinner, lunch, brunch or drinks reservation, a restaurant recommendation, or a table for a group. Pulls preferences and dietary notes from memory, searches, proposes two or three places, holds a table on OpenTable or Resy with the computer when there is no API, and confirms with the owner before committing.
In this repository14 other files it gives its agents.
- daily-briefSkill
- email-triageSkill
- filesSkill
- maritime-computerSkill
- maritimeSkill
- nandaindexSkill
- onboardingSkill
- purchasesSkill
- researchSkill
- ridesSkill
- schedulingSkill
- travelSkill
- trusted-networkSkill
- web-appsSkill
The file
We split this skill into the rules it gives an agent
9 rules. About 0 are common, 6 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈6
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 24
Ask which one, or offer to book the first if they do not care.
- Very specific: line 31
If the site asks to log in, call request_takeover with reason "Log in to Resy for the Nopa booking".
- Very specific: line 33
If a deposit or card hold is required, stop before the payment step.
- Distinctive: line 36
Put the reservation in a held state (the site's "reserve" button that can be cancelled without charge).
- Distinctive: line 46
Add it to the calendar (calendar app tool) with address and confirmation number in the description.
- Very specific: line 50
If a guest's Instinct or phone is known, send them the time and address via ask_instinct (intent confirm) or send_message.
- Distinctive: line 76
Do not pay a deposit or enter card details yourself.
- Distinctive: line 77
Do not book two places for the same slot "just in case".
- Distinctive: line 78
Do not promise a table until the confirmation screen shows it.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Dining
Gather
From the message and memory (memory_read): party size, date and time window,
neighbourhood or distance, budget, occasion, cuisine, dietary notes for the
owner and the guests. Ask only for what is missing, one question per text. Two
unknowns at most before you start searching; guess sensibly on the rest and say
what you assumed.
Find
web_searchfor candidates ("best izakaya near Mission SF open Thursday").web_fetchthe top results and the restaurant's own site for hours, menu and dietary notes.- Shortlist 2 or 3 places. For each: name, neighbourhood, cuisine, price band, why it fits (one phrase), and anything about the dietary notes.
- Text the shortlist to the owner in one message, plain prose, no list markup. Ask which one, or offer to book the first if they do not care.
Hold, then confirm
- Open the booking site on the desktop (skill
maritime-computer). Resy and OpenTable both have mobile sites; Resy at resy.com, OpenTable at opentable.com. Search the restaurant, pick the date, party size and time. - If the site asks to log in, call
request_takeoverwith reason "Log in to Resy for the Nopa booking". Never type a password or a card number. - If a deposit or card hold is required, stop before the payment step. Tell the
owner the amount and get a yes with
ask_owner, thenrequest_takeoverfor the card entry. - Put the reservation in a held state (the site's "reserve" button that can be cancelled without charge). Read the confirmation screen before you believe it. Zoom on the time and party size.
ask_ownerwith the exact details: "Nopa, Thu Oct 9, 7:00pm, table for 2, no deposit. Go ahead?" If the owner already said "book whatever is free at 7", skip this step and tell them what you booked.- On no: cancel the hold on the site and offer the next option.
After booking
- Add it to the calendar (calendar app tool) with address and confirmation number in the description.
- Tell the owner in one text: place, time, party size, confirmation code, and cancellation deadline.
- If a guest's Instinct or phone is known, send them the time and address via
ask_instinct(intentconfirm) orsend_message. memory_writeany new preference the owner revealed ("likes counter seats", "no raw fish for Sam").journal_appendone line.
When a partner or family member asks
plans.propose is open to partner, family and friend: you may search and hold.
plans.commit is ask: send the owner a one-line approval before you confirm,
and tell the requester you are checking. Do not reveal the owner's calendar
titles; say only whether the owner is free.
Voice
Agent: Three options near the Mission for Thursday at 7, all fine for Sam's shellfish allergy. Nopa, Cal-American, lively, about $60 a head. Foreign Cinema, films on the wall, a bit pricier. Lolinda, Argentine steaks, easiest to get. Which one?
Agent: Held a table at Nopa, Thu Oct 9, 7pm for 2. Confirm and I'll lock it in?
Agent: Booked. Nopa, Thu 7pm, 2 people, code RSY-48KQ. Free cancellation until Thursday noon. Added to your calendar and sent Sam the details.
Do not
- Do not pay a deposit or enter card details yourself.
- Do not book two places for the same slot "just in case".
- Do not promise a table until the confirmation screen shows it.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

