Install
openclaw skills install ace-tripWhen a user mentions watching tennis, Grand Slam travel, or planning a trip to the Australian Open, French Open (Roland Garros), Wimbledon, or US Open, activate this skill. It combines the Grand Slam calendar with flyai travel APIs to generate a complete "match-chasing" itinerary — including flights, hotels near the venue, local attractions, and event tickets — all organized around the tournament schedule. Not for general travel planning without a tennis event context.
openclaw skills install ace-tripPlan a complete trip around any of the four tennis Grand Slam tournaments. This skill turns a simple intent like "I want to watch Wimbledon" into a fully structured itinerary with flights, stadium-adjacent hotels, match-day schedules, and pre/post-tournament sightseeing.
npm i -g @fly-ai/flyai-cliflyai keyword-search --query "tennis"Ask the user which tournament they want to attend (or infer from context).
Read references/grand-slam-calendar.md to get:
If the user only says "the next Grand Slam", use date +%Y-%m-%d to determine
the current date and find the nearest upcoming tournament from the calendar.
Collect (ask if missing):
| Parameter | Example | Required |
|---|---|---|
| Departure city | "Shanghai" / "Beijing" | Yes |
| Which rounds | "Quarter-finals and on" | No (default: full tournament) |
| Budget tier | "mid-range" / "luxury" | No (default: mid-range) |
| Extend for tourism | "Yes, 2 extra days" | No (default: no extension) |
Map budget tier to price caps per references/travel-tips.md.
Read references/flyai-commands.md for exact CLI syntax, then run:
flyai search-flight \
--origin "{departure_city}" \
--destination "{slam_city}" \
--dep-date {arrive_date} \
--back-date {leave_date} \
--sort-type 3
Arrival rule: Plan arrival 1 day before the user's first target round. Departure rule: Plan departure 1 day after the user's last target round (or after the tourism extension).
Prioritize proximity to the venue. Run:
flyai search-hotel \
--dest-name "{slam_city}" \
--poi-name "{venue_name}" \
--check-in-date {arrive_date} \
--check-out-date {leave_date} \
--sort distance_asc \
--max-price {budget_cap}
flyai keyword-search --query "{slam_name} tickets {year}"
flyai keyword-search --query "{slam_city} tennis experience"
flyai search-poi --city-name "{slam_city}" --category "{category}"
Select categories appropriate to the city from references/grand-slam-calendar.md.
Use the template in assets/itinerary-template.md to produce the final output.
Read references/travel-tips.md for city-specific advice (transport, food,
visa, weather gear) to include as practical tips.
The itinerary must follow this structure:
[Book now]({jumpUrl}) or [Book now]({detailUrl}) for hotels--max-price and retry