---
name: route-optimization
license: MIT (adapted from ErlebnisW/travel-planner, skills/trip-architect/instructions.md; complete terms in LICENSE.txt)
description:
  按地理位置给景点分组、设计每日行程动线，减少来回奔波，同时兼顾开放时间、
  季节因素和人群构成。Use when 用户说"帮我排一下行程""这几天怎么安排比较
  顺路""行程会不会来回跑冤枉路""这个季节去合不合适"。产出的是带理由的
  逐日路线，不是一份不解释为什么这么排的景点清单。
metadata:
  origin: 景点分级体系(必去/推荐/可选/踩雷)、逐景点实用信息清单、路线优化
    原则(地理就近分组、兼顾开放时间与人群构成)、季节感知(旺季/淡季/季节性
    限定体验)、每条推荐必须附理由的输出要求，改编自
    ErlebnisW/travel-planner 的 skills/trip-architect/instructions.md（MIT）
---

# Skill: route-optimization

行程不是"这几天分别去哪"，是"怎么走最顺、最不浪费时间"。这个技能负责研究
目的地的景点，按地理位置和开放时间设计逐日路线，每条推荐都附上理由。

## 景点分级

把研究到的景点按下面四类分级，而不是笼统地列一堆"推荐去的地方"：

| 分级 | 说明 |
|---|---|
| 必去 | 标志性、普遍推荐、代表这个目的地 |
| 推荐 | 评价很高但不是必去 |
| 可选 | 小众兴趣，时间充裕的话值得去 |
| 踩雷预警 | 名气大但被高估/性价比低（说明为什么） |

## 每个景点要有的实用信息

- 开放时间和闭馆日
- 门票价格和购票渠道（优先官方链接）
- 最佳游览时段（上午vs下午、工作日vs周末）
- 预计游览时长
- 无障碍设施说明（如果相关）

## 路线优化原则

设计逐日路线时：

- **地理就近分组**：同一天安排地理位置相近的景点，减少往返路程。
- **兼顾开放时间**：不要把闭馆日安排上，也不要让路线依赖某个景点的
  特定开放窗口却没留够时间。
- **松紧搭配**：一天高强度游览之后，安排一天相对轻松的内容，不要连续
  排满高强度行程。
- **人群构成适配**：带娃的行程要考虑儿童友好度和体力消耗；商务/独自
  出行可以排更紧凑的节奏。

## 季节感知

针对具体的出行月份，说明：
- 当季的节庆、活动、特展
- 天气对户外行程的影响
- 旺季/淡季的人流差异
- 只有这个季节才有的体验（不要放到淡季安排里）

## 拍照点位

如果用户对摄影感兴趣，标出：
- 最佳光线的时间段
- 具体的取景点位
- 当月的日出日落时间

## 周边一日游

研究从落脚城市出发可行的一日游：
- 交通方式和耗时
- 值不值得去的判断
- 是全天还是半天行程

## 输出要求

- **每条推荐都要附理由**——不能只列"去这个地方"，要说明"为什么推荐这个"。
- 引用信息来源（有网址的附网址）。
- 用用户指定的语言输出。
- 考虑用户说明的人群构成（比如家庭出行要标注哪些活动对儿童友好）和
  兴趣、节奏偏好。

## 和其他技能的配合

预算相关的细节（门票价格加总、每日预算分配）交给 `budget-allocation`，
这个技能只负责路线本身，不做费用汇总。

## 边界

- 不臆造具体的开放时间/票价——这类信息时效性强，用 `web_search`/
  `web_fetch` 实际检索确认，检索不到就明确说"建议出行前再核实一次"，
  不要凭训练知识里的印象给出可能已经过时的具体数字。
- 不忽略用户说明的约束（预算、体力、带娃）硬塞一个"标准最优路线"——
  路线要适配这次出行的实际情况。
