技能创建器
skill-creator
创建、改进和评估自定义技能,把专业流程转化为可重复使用的 AI 能力。
plan-tour-route【数据与研究】Plan a multi-stop tour route with waypoint optimization, drive/walk time estimation, and POI discovery along the route using OSM data. Covers geocoding, nearest-neighbor and TSP-based ordering, time/distance matrix calculation, and itinerary generation with points of interest. Use when planning a road trip or walking tour with multiple destinations, …
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
為多停靠點之行程規劃並最佳化路線,附時間估算、距離計算與沿途之興趣點。
蒐集並結構化行程必含之全部停靠點。
Waypoint Schema:
┌──────────┬────────────────────────────────────────────┐
│ Field │ Description │
├──────────┼────────────────────────────────────────────┤
│ name │ Human-readable label for the stop │
│ address │ Street address or place name │
│ lat/lon │ Coordinates (if known; otherwise geocode) │
│ duration │ Time to spend at this stop (minutes) │
│ priority │ Must-visit vs. nice-to-have │
│ hours │ Opening/closing times (if applicable) │
│ notes │ Parking, accessibility, booking required │
└──────────┴────────────────────────────────────────────┘
將順序固定之停靠點(如起末旅館)與可重排者分開。
預期: 一份結構化清單,至少含名稱與一處地址或座標。
失敗時: 若停靠點含糊(如「那座城堡」),以 WebSearch 解析為具體地點。若需座標但僅有名稱,俟步驟二行地理編碼。
將所有停靠點轉為經緯座標,並驗證可達。
Geocoding Sources (in preference order):
1. Nominatim (OpenStreetMap) - free, no key required
https://nominatim.openstreetmap.org/search?q=QUERY&format=json
2. Overpass API - for POI-type queries
https://overpass-api.de/api/interpreter
3. Manual coordinates from mapping services
對每一停靠點:
預期: 每一停靠點皆有有效之經緯座標,所有點皆於合理之地理區域(無誤落他洲之離群點)。
失敗時: 若地理編碼無結果,嘗試替代拼寫、加入區域/國家修飾,或搜鄰近地標。若停靠點位於 OSM 覆蓋稀疏之偏遠區域,以 WebSearch 自旅遊部落格或觀光網站尋座標。
判定能縮短總行進時間或距離之造訪順序。
Optimization Strategies:
┌─────────────────────┬────────────────────────────────────────┐
│ Strategy │ When to use │
├─────────────────────┼────────────────────────────────────────┤
│ Fixed order │ Stops must be visited in given sequence│
│ Nearest neighbor │ Quick approximation for 5-15 stops │
│ TSP solver │ Optimal ordering for any number │
│ Time-window aware │ Stops have opening hours constraints │
│ Cluster-then-route │ Stops span multiple days/regions │
└─────────────────────┴────────────────────────────────────────┘
最近鄰啟發式:
多日行程,先依地理鄰近性將停靠點分群,再於各日內最佳化。
預期: 一個有序之停靠序列,路線無顯著折返。停靠點少於 10 處時,總距離應於理論最佳之 20% 以內。
失敗時: 若最近鄰結果出現顯著折返(後段停靠點較近於前段),嘗試反向;或用 2-opt 改良:對換邊對,若可縮短則保留。對含時間窗約束者,驗證各停靠點之抵達時間落於營業時間內。
為路線之每一段計算行進時間與距離。
Time Estimation Methods:
┌──────────────┬────────────┬────────────────────────────────┐
│ Mode │ Avg Speed │ Notes │
├──────────────┼────────────┼────────────────────────────────┤
│ Highway │ 100 km/h │ Varies by country/road type │
│ Rural road │ 60 km/h │ Add 20% for winding roads │
│ City driving │ 30 km/h │ Add time for parking │
│ Walking │ 4.5 km/h │ Flat terrain; reduce for hills │
│ Cycling │ 15 km/h │ Touring pace with luggage │
│ Hiking │ 3-4 km/h │ Use Munter formula for accuracy│
└──────────────┴────────────┴────────────────────────────────┘
對連續每對停靠點:
預期: 一張各段之時間/距離矩陣,含累進時間(涵蓋行進與停留)。徒步行程之總長不應超出可用日照。
失敗時: 若估時不合理(如 10 km 市區駕車估 2 小時),檢視迂迴係數是否適當。山路調至 1.6-2.0;大眾運輸宜以 WebSearch 查實際時刻表,不以推估代之。
將最佳化後之路線整理為含沿途興趣點之完整行程。
POI Discovery (Overpass API query pattern):
[out:json];
(
node["tourism"="viewpoint"](around:RADIUS,LAT,LON);
node["amenity"="restaurant"](around:RADIUS,LAT,LON);
node["amenity"="cafe"](around:RADIUS,LAT,LON);
);
out body;
Recommended search radius:
- Along route corridor: 500 m for walking, 2 km for driving
- At waypoints: 1 km radius
製作行程文件:
預期: 一份完整、含時間預算之行程文件,含合理時程、各停靠點之 POI 建議與實務行政資訊。
失敗時: 若 POI 查詢結果過多,依評分或相關性過濾。若行程超出可用時間,將低優先停靠點標為可選或拆為更多日。若偏遠區無 POI,註記之並建議旅人現場再查。
create-spatial-visualization —— 將所規劃路線渲染至互動地圖generate-tour-report —— 將行程編成格式化之 Quarto 報告plan-hiking-tour —— 行程內徒步段之專門規劃assess-trail-conditions —— 為任何步行/徒步段查條件