短途旅行行程规划器
概述
把「去哪玩几天、预算多少、喜欢什么」变成一份当天就能照着执行的行程单:每天只有上午 / 下午 / 晚上三个时间块,每块 1 个主活动 + 至多 1 个顺路活动,配套吃饭地点、交通方式与开销参考,并标注避坑点。
默认直接在对话中输出 Markdown 行程方案;仅当用户明确要求 Word / PDF / 图片卡片 / Excel 行程表时,才转交对应文档技能产出文件。
何时使用
出现以下任一信号即加载本技能:
- 报目的地求行程:「周末去苏州怎么玩」「成都三日游行程」「杭州两天一夜」。
- 带预算和人数:「3 个人 2000 预算去大理」「人均 800 的周末游」。
- 带人群标签:「带爸妈去西安」「带 5 岁孩子去青岛」「情侣周末约会」。
- 带偏好:「主要想逛吃」「想看风景拍照」「想逛街买东西」「美食+拍照」。
- 形态化需求:周末短途、城市周边游、高铁一日游、自驾两日游、citywalk 路线、闺蜜周末游。
以下情况不要套本模板:跨国长线全程排期、签证 / 机票舱位选择、旅行团购或跟团套餐比价、出差差旅报销行程。
强制执行的工作流
按顺序执行五步,缺任何一步都视为未完成。
第 1 步:补齐输入
必须拿到六项信息:目的地、出行天数、出行人数(含老人 / 小孩 / 特殊需求)、预算总额或人均预算、出行人群与偏好标签(美食 / 风景 / 逛街,可多选)、出发地与交通偏好(高铁 / 自驾 / 飞机、是否自驾)。
缺失项按以下默认值补齐并在方案开头注明「已按默认值假设」:
| 缺失项 | 默认假设 |
|---|---|
| 出行天数 | 2 天 1 晚(周末短途) |
| 出行人数 | 2 人 |
| 预算 | 人均 800 元 / 天(舒适档) |
| 出发地 | 用 WebSearch 反查「出发城市 → 目的地」的车程/航班时长;反查不到就留空并在方案里让用户自填返程时间 |
| 交通偏好 | 高铁优先,单程 ≤ 2.5 小时;超过则改判为自驾或飞机 |
| 人群 | 成年人同行、体力正常、无特殊禁忌 |
用 WebSearch 核实目的地基本信息:必去景点、经典动线、季节气候、门票与开放时间的大致区间。不核实就落笔的景点名、店名、价格,就是编造。
第 2 步:定预算档与每日节奏
先跑 scripts/budget_split.py(--city 传目的地城市档、--transport 传往返交通人均),得到三件事:该档位实际需要花多少(need)、与用户预算的差额、五类分摊与人均每天数字。若判定超预算,直接采纳脚本输出的「降档路线」或「删减顺序」,不要自己另编一套。再对照 references/行程编排方法论.md 里的每日景点上限和时间块长度定节奏。
脚本的基准(经济 / 舒适 / 宽松 = 人均每天 300 / 600 / 1200 元,新一线基准)只是估算口径,用于判断预算够不够、每天能花多少;真正要写进方案的物价(住宿、门票、餐厅人均)必须用 WebSearch 核实后填入,不要用脚本基准直接当报价。
关键硬规则:
- 2 天行程:每天 2–3 个主活动,绝不超过 4 个。
- 3 天及以上:每天 2 个主活动为主,最后一天只安排 1 个 + 返程缓冲。
- 每天至少留 1.5 小时自由时间,不把整块时间排满。
- 带老人 / 小孩:每日主活动上限再减 1,午间必须安排 1 小时休息。
- 单日步行量控制在 1.5 万步以内,超出即砍景点。
第 3 步:编排每日上午 / 下午 / 晚上
按「住宿地 → 上午动线 → 下午动线 → 晚上动线」的单中心辐射原则排,避免同一天跨越城市两端往返。
每个时间块写清四件事:几点到几点 / 做什么 / 在哪 / 花多久。上午主攻当日最想去的点(人少好拍、开馆早),下午安排第二主点或商圈,晚上安排夜游、夜市、江边 / 山顶观景或轻松晚餐。
吃饭一律嵌在路线里,不要单列「自己去找」。午餐放在上午与下午动线的交汇处,晚餐放在晚上动线的终点;每餐给出 1 个首选 + 1 个备选,并标注人均价位。
第 4 步:加交通与开销
每次地点转移写明方式 + 时长 + 费用(地铁 X 元 / 打车约 X 元 / 步行 10 分钟)。跨城交通写明班次节奏(高铁多久一班、末班车几点)。最后给出总开销预估表,用「合计约 ¥X(人均 ¥X)」收口,并单独列出省钱做法与超预算时的删减顺序。
第 5 步:汇总注意事项
统一写进「出行避坑 & 注意事项」,来自 references/避坑与核验清单.md,并按目的地实际情况挑出当地特有的 3–5 条(如某山要提前预约门票、某老街晚上 6 点后商户全关、某景区末班索道几点停运)。
输出格式
严格遵守以下结构,标题层级与顺序不得改动:
# 旅行行程方案
目的地:
出行天数:
出行人员:
预算参考:
个人偏好:
## Day1
上午:
下午:
晚餐推荐:
交通提示:
## Day2
(同上)
## 美食推荐清单
(按早餐 / 正餐 / 小吃 / 伴手礼分栏,每条给出店名或「街区 + 招牌 + 人均」)
## 出行避坑 & 注意事项
结构解读与允许的细节级别:
- 头部的「目的地 / 出行天数 / 出行人员 / 预算参考 / 个人偏好」五行必须成对出现,缺项写「待确认」或补上第 1 步的默认值假设。
- 「上午」「下午」内部可以用短横线分条(第一行写时间安排,第二行写地点 + 玩法 + 时长),例如
上午:09:30–12:00 — XX 景区(门票 ¥X,游览 2h)。早餐建议写在上午第一条里,不另开标题。 - 「晚餐推荐」写 1 首选 + 1 备选 + 人均 + 一句话理由(如「本地人多的苍蝇馆子,比景区里便宜一半」)。
- 「交通提示」写当天如何从住宿地/上一处到下一处,含方式、时长、费用、末班车提醒。
- Day 数 = 出行天数;1 行程只有 Day1 一天。
- 方案末尾在「出行避坑 & 注意事项」之后补一行总开销预估表(交通 / 住宿 / 餐饮 / 门票 / 机动 / 合计),属于强制项,结构之外的合理补充不破坏格式。
技能约束(违反即视为交付失败)
- 行程松紧合理:每日主活动数不超过第 2 步的上限,宁可少一个景点,不填满每一分钟。
- 贴合预算:按
scripts/budget_split.py的分摊校验总额,超预算时给出「砍哪个点、换哪家店、降到哪一档」的具体方案,而不是笼统一句「建议控制一下预算」。 - 务实可行,不编造:只写能通过
WebSearch核实的景点、餐厅、展馆、交通班次。核实不到的写成「XX老城区小吃街(本地口碑好,具体店名到店后按排队情况挑)」,并统一标注「价格与开放时间以官方渠道为准」。绝不虚构不存在的景点或餐厅名。 - 可执行:时间、地点、时长、费用四项齐全,用户拿去不用再查第二遍。
参考资源
references/行程编排方法论.md—— 动线设计、时间块标准、景点密度上限、美食与购物嵌入规则。编排每日行程时必读。references/避坑与核验清单.md—— 通用避坑条目(预订、交通、景区、餐饮、随身)与信息核验流程。写注意事项时必读。scripts/budget_split.py—— 预算分摊计算器,支持交通 / 住宿 / 餐饮 / 门票 / 机动五类与三档花法,可输出「超预算删减顺序」。定预算档与总开销时必跑。