How to Plan a Weekend Trip with AI Without a Generic Itinerary
A constraint-first skill for planning a weekend trip with AI. Force hours of daylight, a walking cap, one neighborhood, one reservation, and one empty block so ChatGPT, Claude, or Gemini cannot hand you a tourist medley.
Anyone planning a weekend trip with AI can skip the generic itinerary in 20 minutes: one neighborhood, one reservation, a walking cap, daylight hours, and one empty block. Run it in ChatGPT, Claude, or Gemini before you buy the ticket, not after the model dumps nine "must-see" pins on a map you will never walk.
Generic is not a taste problem. It is a constraint problem. With no cap on distance, time, or choice, every model becomes a brochure.
If you still paste "plan a perfect weekend in Lisbon" into a blank chat, you are collecting a list, not a plan. Turn the loop into a skill. Start from what a skill prompt actually is, then lock the constraints below.
Force five constraints before the weekend trip with AI
1. Hours of daylight, not "morning / afternoon"
Look up sunrise and sunset for that weekend. Paste the clock times. Instruct the model: "You may only schedule outdoor walking between these hours. Indoor stops may sit outside them. Do not use morning, afternoon, or evening as labels."
"Afternoon" is how a 90-minute walk becomes a 4 p.m. hill climb in the dark. ChatGPT will still try it unless the clock is in the prompt.
2. A walking cap in minutes, not steps
Pick a number you will still accept on day two. 90 minutes of walking per day is a plan. 18,000 steps is a flex.
Tell Claude, ChatGPT, or Gemini: "Total walking between stops must stay under N minutes per day, at a 15-minute-per-kilometer pace. If a stop blows the cap, drop the stop. Do not 'optimize the route' back into the cap by inventing a shortcut."
3. One neighborhood, named
Name the neighborhood yourself if you can. If you cannot, ask the model for three candidate neighborhoods that match your walking cap and your one interest, then you pick. The model does not pick.
One interest. Food, or bookshops, or water, or a specific museum. Not "culture." Culture is the brochure word for everything.
4. One reservation
One table, one timed ticket, or one slot. Not a backup list of six. You will not book six.
Give cuisine or type, budget per person, and a time window inside daylight or after it, your choice. Instruct: "Propose one reservation. Include open hours. If you are not sure it is open that weekend, mark it UNVERIFIED and stop. Do not offer alternates until I ask."
Gemini is useful here when you want the constraint pass fast. For a note on using it as a quick agent rather than a poet, see Gemini 3.6 Flash for fast agentic work. Fast still has to obey the one-reservation rule.
5. One empty block
Put a 90-minute hole on one of the two days. Label it EMPTY. No suggestions inside it.
Tell the model: "If you fill EMPTY, you failed. If you 'softly suggest' options for EMPTY, you failed. Print the hole."
Build the itinerary only after the caps
Now ask for a one-page Saturday-Sunday. Four stops max per day, walking minutes listed between them, daylight respected, neighborhood named at the top, reservation in bold, EMPTY on its own line.
Reject any draft that:
- Names a second neighborhood.
- Uses "iconic," "hidden gem," or "no trip is complete."
- Stacks more than one paid timed ticket.
- Puts you in transit for longer than you walk.
Send the rejection as a rule, not a vibe: "You violated the walking cap by X minutes. Drop one stop. Do not replace it."
When the page is clean, save the constraint set. The Promptcrates tools for travel skills are the place to keep the caps so the next city does not reset you to "perfect weekend."
Reusable skill card
Trigger: You are about to ask ChatGPT, Claude, or Gemini to plan a weekend and you can already predict the postcard list.
Input: City, weekend dates, sunrise/sunset, walking cap in minutes, one named neighborhood or one interest, one reservation type and budget, and a 90-minute EMPTY block.
Output: A one-page Sat–Sun plan, four stops max per day, walking minutes between stops, one reservation marked UNVERIFIED until you check it, EMPTY left blank.
Stop: After one constraint-check pass. No alternate neighborhoods. No backup restaurants. No "if you have extra time" appendix.
Takeaways
- Caps first: daylight clock, walking minutes, one neighborhood, one reservation, one empty block.
- ChatGPT, Claude, and Gemini all default to generic without those caps.
- UNVERIFIED on the reservation. You book. The model does not.
- Reject replacements. Dropping a stop is the fix. Adding a new one is the brochure returning.
- Save the constraint set as a skill so the next weekend does not start from "perfect."
Frequently Asked Questions
Can I add a second neighborhood if I have a full Saturday?
No. A full Saturday is still one neighborhood plus transit waste. If you want two areas, that is two trips or a longer stay.
What if ChatGPT insists on a "hidden gem" list?
Reject the list. Hidden gem is a genre, not a place. Ask for one block, one open hour, and a reason tied to your constraint.
Should I use Gemini because it is faster?
Fast is useful for daylight math and open-hour checks. Use Gemini for the constraint pass, then Claude or ChatGPT if you want a tighter prose itinerary. Speed does not excuse a generic list.
Do I need to name a restaurant in the prompt?
Name a cuisine, a budget, and a neighborhood. Let the model propose one reservation, not five. You pick and you book.
What goes in the empty block?
Nothing in the plan. Weather, a second coffee, a nap, a mistake. If you pre-fill it, it is not empty.