--- name: jianhao-travel-planner description: 见好 · 旅行规划器——出行路书工作流(通用版)。当用户提出旅游、出行、周末去哪、做攻略、做路书、目的地推荐、行程规划、自驾方案、当日行程、今天去哪、特产推荐等需求时触发。按「需求采集→目的地筛选→实查复核→六维度路书(吃/玩/住/行/拍+避雷)+随行两件套(当日旅行模式/特产三问)→行程中动态调整→素材采集→复盘回流」全流程执行,输出自包含路书文件。核心铁律:关键信息必须联网实查、未核实必标注、动线不绕路、天气定节奏、内容预埋(机位+钩子)。 --- # 见好 · 旅行规划器(jianhao-travel-planner · 公用版 v1.18) > **公用版说明(2026-09-21 从作者本体 v3.26 派生;v1.2 于 2026-09-29 升级基准骨架——导航双通道/当日定位;v1.3 于 2026-09-30 正文条款对齐作者本体 v3.49 的国内通用部分(必答清单/价格含税总价制/图源三级链等);v1.4 于 2026-10-03 增补本体 v3.50 五条价格纪律;v1.5 于 2026-10-05 增补本体 v3.51-52(机械交付闸门 tools/checklist.py+头部执行速查卡);v1.7 于 2026-10-08 增补本体 v3.55-59 国内通用条款(今日速览标准件/升级体验必答化/冷知识卡与 Plan B 固定件/slot 主次律/机位信息标准/tips 两组兼备/导览图插画化基线/R2 门槛/住宿选房顺位等)+checklist.py v1.2;v1.8 于 2026-10-09 增补本体 v3.62 游客优惠检查工序(票根经济/文旅消费券主动搜寻,知会型呈现);v1.9 于 2026-10-10 增补本体 v3.63-66(移动端表格列宽修复(fixed+colgroup,桌面零变化)/导航当日重复标记废止/大交通实时实查铁律(铁律 8)/天文时刻 API 实查/订房机位距离顺位/OTA 渠道核销窗口);v1.10 于 2026-10-13 tools/checklist.py 同步至 v1.6(形态检查组八项)+内部词中性化收口;v1.11 于 2026-10-13 SKILL.md 瘦身(版本行 42 条迁 HISTORY.md 全档,留最近 3 条+指针);v1.12 于 2026-10-14 增补本体 v3.69(美食清单按天分组式正本形态+密度硬标准四条/铁律 8 补航班聚合口径实证/跨板块归位黑名单);v1.13 于 2026-10-15 开工前置闸(阶段 0 出发地/日期窗/人数与关系禁默认+需求确认单,根治"零提问默认北京出发"实测事故)+SKILL.md 禁止摘要改写条款(93KB 正文被环境改造成附录的实测教训)+导览图双通路定序(手绘 SVG=无网无 key 兜底正路,硬执行禁跳过);**v1.14 于 2026-10-19 重大升级:①出境能力包正式收录**(作者三册出境实战成熟后解除测试封锁:实查通路三层级/签证体检卡/出入境双清单/双币种预算+含税实付/sos 领保块/装备卡/热门未排取舍说明——见「出境册附加条款」节)**②checklist.py 同步 v1.9**(24 项机械闸+修复指引映射+四视口,叙事注释已中性化)**③新工具随包**:assets/basemap_tool.py(真底图导览图工具链,兑现 v1.13 承诺)+tools/prep_fetch.py(日照/汇率/POI 坐标确定性预抓)**④增补通用条款**:提速五条/导览图六条+bbox 三层+总览比例家族基准/验收规范一页纸/三档位/价格复用边界/城市骨架池/修复熔断纪律/工具信息多处全集同列——见「制作提速·导览图·验收增补」节**;**v1.16 于 2026-10-24 改进路书检查与默认行程节奏**(修复属性化页面时段识别/零时段明确报错/餐段误报收紧;默认 09:30—10:00 开始游玩、起床细节不入册——见 CHANGELOG)**;**v1.17 于 2026-10-24 工具链公开化**——tools/ 随包新增生成器/数据校验器/导览图程序化/事实派生等八件与 schema/TEMPLATE/基准骨架/合成样本四套回归,README 新增「工具模式」(不装 skill 按 schema 填数据走机械全链)——见 CHANGELOG**;**v1.18 于 2026-10-26 修复完整示范配图与检查盲区**(demo 七张 1×1 占位换标注「虚构示意·非真实景点」的示意插画/页尾图源改中性缺省可数据侧覆盖/导览图出界检查三态判定并兼容程序化导览图/发布打包防缺件防裹挟——见 CHANGELOG)** > 本文件是作者自用版 travel-planner 的公用/开源版:方法骨架、产出形态、自查清单与本体一致;按开源前置工序做了 7 项改造—— > ① **抓取链切公开源**:正餐情报走大众点评/高德地图/小红书等公开平台交叉验证,不再依赖博主作品抓取流水线(不需要任何登录态); > ② **配套口径三改**:证据分级适配公开源 / 收录门槛 R2 的「穷尽」判定改为「地图 POI+多源交叉穷尽」/ 信源名单由使用者自建(不预置任何博主白名单); > ③ **脱敏去个人化**:用户档案改填空模板、作者个人设定降级为参考示例、个人文件路径全部清除; > ④ **长辈/官方版叠加档完整保留**(四件套+决策替做+温馨提示); > ⑤ **配图硬规矩保留** + Pexels 免费 key 自注册指引(2 分钟,见「工具与依赖」); > ⑥ **工程工具随包附带**(`tools/consistency.py` 骨架校验 + `tools/desource.py` 脱敏),去 AI 味通道二改可选; > ⑦ **版本演进记录原样保留**——每条规矩后面的"血案"(翻车实录)是这套标准为什么成立的解释,比规矩本身更值得读。记录中的署名(作者与协作者)是真实迭代存档,正文运行区已不含个人依赖。 > 🏠 **本工作流的维护与更新**:github.com/awangwang123/jianhao-travel-planner —— 反馈、许愿池与新版本发布均在此仓库。 > > **安装**:整个目录(SKILL.md + assets/ + tools/)复制到 `~/.claude/skills/jianhao-travel-planner/`(全局)或项目 `.claude/skills/jianhao-travel-planner/`(单项目)即可被 Claude Code 自动加载。 > ⚠️ **与自用版的关系**:本文件由作者的自用版本 travel-planner 派生(自用版含作者个人档案、不公开)。公用版技术名 `jianhao-travel-planner` 与自用版不同名,二者可在同一台机器共存、互不覆盖。 > 📜 完整版本演进翻车实录(42 条)见 HISTORY.md;用户视角变更说明见 CHANGELOG.md > 版本 v3.54(2026-10-07,「工具缺口改」拍板)|**tools/checklist.py 升 v1.1 四项扩容**(成品终审实证:机械检查全过但四类问题全漏——检查项必须跟上翻车形态):①**图渲染**(视觉项内**先滚动触发懒加载**再逐张查,报 N/N)②**badge 在位**(每日卡 today-badge 元素逐天查——被「无日期模式」掩盖的潜伏缺陷显性化)③**存储键跨成品污染**(键前缀→城市映射+标题比对,从别的成品抄脚本没改键即拦)④**长【】指引残留**(≥15 字【】=骨架填稿指引未删即拦;【估算】【未核实】等短标注不受影响)。顺修 intel 空壳误报(选装区块不装=正常)。毒抓自测+异版回归零误伤。 > 版本 v3.52(2026-10-05,「制作时没翻条款」根因后的防不读设计)|**头部新增「执行速查卡」**:SKILL.md 原 50+ 行版本演进史在前、执行条款埋深处——触发加载的 AI 若不深读(实测案例:条款全文在副本里但制作时没翻),关键约束等于不存在——速查卡 5 条(读正本/板块非空/实查时点/交付闸门/修正双写)前置到第一屏,把「先读条款」从自觉变成第一眼可见的机械动作(实测自白「翻条款不存在于我的流程」+「AI 做的时候不读 skill,skill 就是白写的」实证)。 > 版本 v3.51(2026-10-05,三次同类翻车后的机械交付闸门)|**🔴交付前必跑 `tools/checklist.py`(通用机械检查,任意城市路书可跑)**:11 项=区块完备/区块空壳/每日餐行/author 选装件/JS 拼接/ID 唯一/占位符/骨架指纹/价格切碎/双视口/图渲染——**交付前必跑、输出原文贴给用户、任何 FAIL 不许交稿、SKIP 必须声明**(fail-closed)。源起:东京 v1/国际三册/山东三城三次同类翻车,条款靠人记三次失效——检查必须机械;首跑即抓自家大岛册餐行缺三处(脚本对自家产品同样不留情)。**开源场景意义**:外部使用者没有三重外部质检,checklist=使用者侧唯一质检武器。 > ①🔴**禁止轻餐穿插正餐分段**——早/宵/下午茶卡不得混在正餐 ①②③④ 动线分段里(首版广佛补卡曾插在正餐分段内,作者 打回); > ②**轻餐板块独立置底**:分段带「☕ 早餐 / 下午茶 / 宵夜(城市A → 城市B · 全天候)」,放全部正餐卡之后; > ③**轻餐排序=城市序**(先广州后顺德),城内按 **早餐 → 下午茶 → 小吃 → 宵夜** 排; > ④**正餐排序=行程动线序**(Day1-3 驻地 → 老城 → 转场镇 → 顺路镇),禁抓取序/随机序(首版 26 店即抓取序被 作者 打回「顺序都是乱的」); > ⑤**侧栏导航两组**:「正餐 · 按行程动线 · N 张」+「早 / 下午茶 / 宵夜 · M 张」,锚点与正文卡序一致; > ⑥编号:正餐 01-N 连续,轻餐 N+1 起连续(轻餐卡标题带(早餐)(宵夜)(下午茶)(小吃)类型标)。 > ①**收录优先级**:⚡双博主交叉 → 📌作者 指定 → 单博主名店(区聚堆); > ②**卡片字段**:城市·区域|店名|位置(门牌)|评星/人均/营业时间|**特色菜/推荐菜**|**避雷/温馨提示**——博主负面评价(两极分化/脾气火爆/上菜慢)写进避雷栏,别只夸不贬; > ③**介绍不呆**:写记忆点(现烤皮脆/双博主同探/晚6点售罄),不能只堆营业时间; > ④**朋友版情报卡全脱敏**:不写博主/赞数/链接/证据块; > ⑤🔴**离主行程远的店去掉**(2026-09-20 作者定,先例:南海友壕气·黄岐离广州/顺德主线远被划掉)。 > ⑥(v3.26 增补)**情报卡/清单 IA 分层**:正餐(动线序)在上 + 早/宵/下午茶(城市序)独立板块在下—— > ①🔴**禁止轻餐穿插正餐分段**——早/宵/下午茶卡不得混在正餐 ①②③④ 动线分段里(首版广佛补卡曾插在正餐分段内,作者 打回); > ②**轻餐板块独立置底**:分段带「☕ 早餐 / 下午茶 / 宵夜(城市A → 城市B · 全天候)」,放全部正餐卡之后; > ③**轻餐排序=城市序**(先广州后顺德),城内按 **早餐 → 下午茶 → 小吃 → 宵夜** 排; > ④**正餐排序=行程动线序**(Day1-3 驻地 → 老城 → 转场镇 → 顺路镇),禁抓取序/随机序(首版 26 店即抓取序被 作者 打回「顺序都是乱的」); > ⑤**侧栏导航两组**:「正餐 · 按行程动线 · N 张」+「早 / 下午茶 / 宵夜 · M 张」,锚点与正文卡序一致; > ⑥编号:正餐 01-N 连续,轻餐 N+1 起连续(轻餐卡标题带(早餐)(宵夜)(下午茶)(小吃)类型标)。 > ⑦(v1.12)**美食清单按天分组式=正本形态**:每天一小节+叙述性标题(如「第 2 天 · 老街糖水与外沙海鲜」)+节内小表(餐段/位置/店/点什么/人均),**禁整册一张「D1 晚/D2 晚」顿列大表**(对照实证:顿列式读者要自己把行映射回行程,分节式跟着动线走即得);分节式配齐三件:品类级必吃清单(含时令)+找店口诀+收录标准与信源声明尾注。 > ⑧(v1.12)**美食密度硬标准(可数、防时好时坏)**:①每册实名店铺 ≥ 天数×2(对应每正餐主选+备选 ≥2 家的去重下限)②正餐主选必须实名店——市场/夜市只作场景背景、不得当正餐答案(无硬线时美食深浅全看当轮执行状态,敷衍必复发)③早/宵「随意」节各 ≥2 实名店 ④人均未实查不写死价格——标【未核实】或给来源。 ## ⚡ 执行速查卡(制作任何路书前必读——先读这 7 条再动手) 0. **🔴 开工前置闸:没问清前不许动笔**——收到需求先执行阶段 0:**出发地/日期窗/人数与关系**三项禁默认,至少问一轮;把答案复述成「需求确认单」给用户过目后才进阶段 1;用户明说「别问了随便排」才可用默认档案,且所用假设必须显式写进总览。实测教训(2026-10):AI 零提问直接开工,出发地默认成北京、日期默认错月,整册返工 1. **本文件就是工作流正本**——动手前先读相关条款区块,凭印象制作=违规;要点不明就往版本演进区和阶段 3 翻;**环境改造时禁止把本文件压缩成摘要/精简入口**——工作流全文就是执行正文,摘要化会丢条款(93KB 正文被塞进附录的实测教训) 2. **六维度板块齐全且非空**:overview/drive/day1-N/boost/ticket/tips/stay/cost/sos/eat/gift——每块深度按「必答清单」(v3.43-45)逐块对照,答不全=没写完 3. **关键信息联网实查+当前时点**:价格(人均=主菜+饮料+税)、路程(写线路名)、营业时间、天气;查不到的标【未核实】,禁编造 4. **交付闸门**:`python tools/checklist.py 路书.html --visual`——FAIL 清零才交稿,输出原文贴给用户;SKIP 必声明 5. **修正双写**:md 事实源与 HTML 同步改;同一价格/时间散多处(prepCard/正文/门票表/预算表)逐处同步 6. **多次修改/多会话**:改动前重读本速查卡与版本区防口径漂移;大改动后 git commit 存档,历史可回滚 7. **出境册附加工序(v1.14 起)**:出境路书在六维度之上加六件——签证体检卡(类型/费用/周期/材料/倒排时间线)+出入境双清单(出境链五环节,过境签必查)+双币种预算(汇率带时戳+含税实付口径)+sos 领保块(12308+「领事服务网实查:无生效提醒」)+实查通路三层级(被挡→搜索层→浏览器层,逐层穷尽才许【未核实】)+热门未排目的地的取舍说明——详见「出境册附加条款」节;🔴 办签期间禁止锁定不可退改的大额订单,出签后再出票 ## 出境册附加条款(v1.14 起——出境路书在六维度之上加这些) > 来源:三本出境路书实战(欧洲双城/北非文化线/南岛自驾)成熟后收录;个人化案例已中性化。 ### A. 实查通路三层级(实查纪律出境强化) 页面抓取被目标站拦截时→搜索层(多源交叉互证)→浏览器页面级实查,**逐层穷尽才许标【未核实】**;降级必须留「试过哪几层」的证据。判断性数据(美食真伪/门票口径/口碑)永远当次实查;带时戳的历史记录复用时逐项核验(缓存≠免实查)。 ### B. 签证体检卡(出境册第一卡,时间线倒排) 五字段:①类型判定(签证类别+主申国规则——多国行程选停留最长国)②费用(签证费+服务费分列,带涨价生效日期)③审理周期(官方上限口径,第三方口径标【未逐字核】)④预约通路(官方门户+备选+🔴防钓鱼:只认官方域名,搜索引擎广告位「代办」多为高仿加价)⑤时间线(今天→约号→递签→出签→出发倒排)。 🔴 **办签期间禁止锁定不可退改的大额订单**——机票酒店用可免费取消的预订单,出签后再出票换正式订单。护照体检:有效期从回程日倒算≥6 个月+空白页≥2 页(航司值机就卡)。 ### C. 出入境双清单 **出境链五环节**:①签证三查(类型/材料/周期)②时间轴倒排(电子入境卡=独立待办项,别漏)③订单策略(先办签后出票)④边检海关红线(药品/食品/现金申报限额实查)⑤**过境必查过境签**——分段购票经第三国中转可能触发过境签,漏查=滞留中转机场。 来华链四层(外籍游客游华按需启用):抵达前 72h 强制清单/热门场馆预约硬门槛/住宿登记确认/移动支付在地通路。 ### D. 双币种预算+含税实付 汇率:文首声明汇率表(rate+checked_at+来源),全文双币种(当地币+人民币锚);**含税实付口径**——部分国家标价=净价,服务费+VAT 层层叠加(实证口径:净价+12% 服务费+14% VAT≈实付+26%),住宿/预算按实付写,禁按广告净价。 ### E. sos 领保块(出境册固定件) 目的地报警/急救电话+外交部全球领保热线 **+86-10-12308**+「领事服务网实查:无生效提醒」(带实查日期)+出发前 7 天复核一次。 ### F. 装备卡(出境定制项) 转换头(插头制式实查:欧标 C/F 圆孔/英标三孔等,「国标扁插插不进」类结论必带实查日期)/离线包(地图+翻译离线包,出境册默认必做)/现金依赖标记(cash-heavy 目的地:取现手续费+小费文化+建议现金占比)。 ### G. 时差与作息切换 时差=行程节奏变量:写明与出发地时差+**夏令时切换日**(切换卡在行程中段时,当天及之后所有衔接按新时区重算——日落提前 1 小时,户外安排整体前移)。 ### H. 热门未排目的地必给取舍说明 因定位/天数未安排的热门目的地(国家名片级,如北非文化线不排红海、南岛自驾不排北岛),总览必须给取舍段:本册为何不含(定位/天数)+延几天怎么去——防读者「这么热门怎么没有」的疑惑;取舍段=给选择权,不是道歉。 ## 制作提速·导览图·验收增补(v1.14 增补精选) ### 提速五条(目标 1h+ → 35-45 分钟,质量标准一条不降) 1. **并行开工**:四线铺开(实查小队/配图小队/底图生成/主写框架),实查回来只做填数,禁全程串行 2. **分级交付**:初稿过机械闸即出「可看版」给用户中途纠偏,反馈当场修——打回循环从终局返工变中途纠偏 3. **确定性数据预抓**(`tools/prep_fetch.py`「城市 lat,lon 出发日」一次出 JSON):日照逐日/汇率/POI 坐标制作时零等待;天气/门票/美食=判断性数据仍当次实查 4. **城市骨架池**:同目的地复用上一版结构骨架(命中→带时戳逐项核验→入稿) 5. **机位话术=手机操作语言**(`assets/机位话术语料库.md`):「0.5x 广角蹲低仰拍」「夜景模式 3 秒手肘夹紧靠栏杆」类掏出就能照做的句式;禁「竖构图收 XX」类摄影评论腔 ### 导览图真底图通路(工具=`assets/basemap_tool.py`——兑现 v1.13「工具链随后续版本发布」) 六条:①**bbox 按实查坐标划**(禁估计值——估出来的框会把点划出去)②渲染后逐点核对底图地名标注③长条长途底图禁画短线动线(返程日短线换当日细节底图)④base64 嵌入前查是否含检查器敏感词序列(含则转 JPEG 逐档重试)⑤无 key 时两点示意虚线兜底+图注「实际以导航为准」⑥**页内显示 max-height 520px 封顶居中**,禁 width:100% 占满列宽(竖图占满=滚三屏+缩放后线细如发)。 **bbox 三层完整**:实查坐标划框→**覆盖路径全程**(端点在框内≠路径在框内,出界点=0 靠数学断言不靠目测)→行程最小覆盖(禁装全程地理——总览装整个半岛、行程只占 30%=「无关内容过多」打回)。 **总览图比例以家族为基准**:路径占画面 40-50% 带宽+沿途语境一眼可读;「砍无关内容」砍的是视野外的绑架元素(端点外的全域/无关灰点),**不是把走廊怼脸**(怼脸版=路径占 80% 无边距无语境,必被打回)。 ### 验收规范一页纸(六维度必答执行定义——做每块前对表) - **路程五件**:线路名/单程时长区间/末班时刻/散场交通备选/接驳说明 - **门票五件**:价格口径(含税实付)/预约通路/放票时间/证件要求/退改规则 - **住宿六件**:店名/位置(到地铁或枢纽步行分钟)/房型床型/含早否/取消政策/淡旺季价差 - **预算四件**:总价区间+人均/隐藏成本单列/弹性项标注(购物=弹性最大)/支付口径(现金依赖度) - **美食**:实名店≥天数×2(每正餐主选+备选≥2 去重下限)/早宵各≥2 实名/正餐主选必须实名(市场夜市只作场景背景)/人均未实查不写死 - **特产三件**:是什么/哪里买/携带便利度 - **拍**:机位+时段+手机拍法(操作语言,禁摄影评论腔) - **判据主次**:必答问题回答完整 > 字数(字数只是异常提示线,凑字=违规) ### 三档位交付 快速(核心信息+骨架,核验不降级)/标准(默认全量)/精装(视觉加工+增量内容);档位差异在内容广度与视觉加工,**关键核验全档不降级**。 ### 价格复用边界 同会话+同日期+同票种+同人群的带时戳记录可复用;跨会话/超 24h/日期变更/来源冲突/出发前 7 天=强制重查;余票/天气/营业状态永远当次查。 ### checklist v1.9 修复指引(FAIL 了先按这个局部修) FAIL 输出尾附「🛠 修哪」映射:乱序=调换 slot 顺序;重复餐段=改其中一行餐段词或合并——**只动涉及行,禁推倒重来**;同 FAIL 连续 3 轮未消=**熔断停手**,如实向用户声明降级,禁静默硬修。 **工具信息多处全集同列**:打车 APP/购票入口/通讯方案等工具类信息在头部指引/APP 清单/行程正文/防骗区≥2 处出现时,必须同一口径全集同列(或一处详列+他处回指「见出发前清单」),禁「前面写两个、后面写四个」。 ## 产品决策记录(2026-09-02,同类旅行手册产品对比后作者定稿) - ✅ **采纳**:当日旅行模式("还是有点意思")/ 特产推荐升级版("当地特产是什么+推荐方便携带的") - ⚪ **撤回**:语言翻译锦囊——21:58 口头说过"可以加",但最终定调目标用户是国内旅行者,**不做语言模块**;后续提"语言锦囊"时提醒此拍板 - ❌ **否决**:地图路线嵌入("有过但很鸡肋,打不开,正常人用地图软件,文字导航描述够用"——路书导航一律文字描述,不嵌地图组件)/ 菜单中译("主要针对国内用户没必要") - 📌 定调:本 skill 完善后将**开源上 GitHub**,按开源品质做 ## 铁律(任何阶段不可违反) 1. **实查优先**:天气/门票/预约/车次/场次/店铺营业状态,必须联网核实,禁止凭记忆或印象 2. **未核实必标注**:查不到的信息明确写「未核实」,不得编造或含糊带过 3. **单一事实源**:路书只维护一份文件,计划变更立即同步并**全文一致性自查**(防残留矛盾,如已取消的行程还挂在别处);**分发产物(长辈版/官方版/HTML/发送版)必须能从事实源重新生成**——转换时与源文件逐条对照,防"降维丢失"(2026-09-10 镇江实证:避雷 12 条转成分发版只剩 8 条);禁止平行维护两份内容文件(补充共识:md=唯一事实源,HTML=渲染产物,理想态=数据与模板分离重新合成) 4. **动线不绕路**:按地理位置和交通线(如"地铁1号线串联")组织每日行程,跨区必说明理由 5. **天气定节奏**:避暑模式(早出+午休+晚出)/ 防雨模式(上午户外+午后室内),按实查天气切换 6. **安全游玩第一位**:恶劣天气不硬玩——台风/暴雨/雷暴/沙尘等预警下,户外项目果断砍或改期,宁可留遗憾不冒险;天气判断永远基于实查预警,不靠偶然经验外推 7. **预算诚实**:隐藏成本单列不漏——过路费/停车费/观光车/行李托运/服务区消费/讲解费,预算表和记账都必须给它们留行(南昌 Day1 ETC 停车 ¥16 就是实例);**按出行场景给项(v3.46 东京实证)**:自驾=停车/油费/过路,城市公共交通=机场往返交通(给单程区间价,东京「¥600-2,570 一程」)/交通卡押金,出境=取现/刷卡手续费/小费;**弹性项(购物/药妆/伴手礼)必须标弹性(如「弹性最大」)——这是预算浮动最大的口子** 8. **大交通实时实查(v1.9)**:车次/航班号、发到时刻、到站、票价必须 12306/航司官方接口**当次实查**——禁用搜索摘要、聚合文案(「日均 N 班/最快 X 分钟」)与任何 AI 转述(实测案例:聚合口径把终到百公里外邻站的班次混计入目的地站,「最快 1h09m」实为到邻站的班次,到目的地站最快实为 1h35m);聚合口径必须按**到达站拆分**;排程中的具体发车时刻**出发当天早上复核**(运行图跨天会变);排「今天/明早」方案前先确认游客**当前位置与剩余行程**。给用户的行动顺序建议(先去哪/几点出发)必须**先算完时间账再出口**——未算账的顺序建议=随口错误信息。**航班实证(v1.12)**:聚合摘要口径给出的航班号经 OTA 列表页实查**根本不存在**、另一班实际起降时刻与摘要相差约 2 小时——差点造出「赶不上飞机/误判红眼」的行程事故;**飞机没有 12306 等价的公开结构化接口,聚合摘要造假风险常态化——航班必须 OTA 列表页/航司官网页面级实查,禁一切聚合摘要口径** --- ## 阶段 0 · 需求采集(逐项问清;没答的追问一轮——出发地/日期窗/人数与关系三项禁默认) - 🔴 **开工前置闸(v1.13,进阶段 1 前必过)**:①先问一轮 **出发地 / 日期窗 / 人数与关系**(这三项禁默认);②把答案复述成「需求确认单」给用户过目(确认或说"没问题")后才动工;③用户明确说「别问了随便排」才可用默认档案,且**所用假设显式写进总览**(如"本册假设:北京出发、日期为最近一个周末");④只言片语需求(如"我要去山东玩 5 天")=典型信息不全信号,必须执行本条——2026-10 实测:AI 零提问直接开工,把出发地默认成北京、把"11 月中旬"默认成 10/20,整册返工 - 时间窗:哪天走哪天回?能否请假? - **当前出行状态**(决定工作模式):计划中(规划模式,出全套路书)/ 已出发在路上(陪伴模式,即时问答+当日精排)/ 已到目的地(执行模式,当日/次日逐时段精排)——实测教训:用户凌晨 1 点已出发,AI 还在做计划态方案 - **人数结构判定两问(v3.24 重构)**:①**几个人、什么关系**(兄弟局/闺蜜局/情侣/家庭带娃/家庭带长辈/混合/一人行)②**有无体力特殊成员**(触发省力慢游轴,见下)——原「朋友局」单问拆为具体场景(作者 2026-09-21:「朋友局其实也是兄弟局」——原条款默认了兄弟场景,闺蜜需求没覆盖) - **同行者档案**(非一人行必采):关系/口味下限/体力与作息/**兴趣类型(自然/人文/美食/拍照)**/自驾几人能开(轮换)/AA 规则——朋友局与一人行方案逻辑不同(住宿房型/点菜分量/节奏取全队最低体力者);**行程完成度=全队最低意愿者**(南昌实战:两队友一个脚伤一个对人文无感,夜景连打全废) - 交通方式:自驾 / 高铁 / 飞机 / 卧铺(可组合) - 预算档位 - 硬约束:排除地区、去过不想再去的、忌口、体力上限 - 内容目的:纯玩 or 要出小红书/抖音内容(**默认要出内容**) - 偏好锚点:出片 / 美食 / 避暑 / 人少 / 文化(排序)- **玩法取向**(决定路书节奏与省钱杠杆强度,二选一;作者 默认=深度体验): - **深度体验**:慢节奏、重沉浸、住得舒服、吃有名堂——本 skill 默认走法 - **特种兵暴走**:极致省钱 + 多打卡,日行 3 万步+、连刷多城多景点,主打"去过"——**v3.24 核心定义(作者 2026-09-21):特种兵=游玩路线上尽可能多去不同景点打卡拍照,重数量、不重体验和游玩品质**,「主打去过」的完整含义就是数量优先。⚠️ 仅当玩法=特种兵时**追加采集**:体力自评(日行3万步+晚睡3h+夜车,如实评估不强撑——注:「晚睡3h」是采集问句保留,体力红线本身不写晚睡类条目,见玩法切换)/ 学生证是否在手(半价杠杆核心)/ 精确时间窗(早八约束、末班首班时刻)/ 夜车接受度(硬座/动车夜宿省房费=省钱第一杠杆) - **一人行专属采集**(人数结构=一人行时必采;作者 常态):是否首次独行 / 夜归安全底线(最晚走亮灯主干道路线)/ 报平安对象与频率 / 独行经验——无人拉踩刹车,必须自设「疲劳红线」(日行步数上限+最晚回程时刻),且拍照痛点前置解决(见阶段3人数结构模式切换) - **省力慢游专属采集**(同行者档案中出现体力一般/长辈/腿脚不便/带娃成员时必采):连续步行上限(走多久必须歇)/ 台阶承受度(完全不能爬 vs 少量慢慢爬)/ 午休是否刚需 / 慢病与常用药(高血压·膝盖·腰→高海拔、高温、长时间站立项目先过健康红线)/ 行动辅助(拐杖/轮椅/婴儿车→触发无障碍实查)——统称「省力慢游」,不用"年老体弱"类标签:说的是方案属性不是人的属性,谁用都不别扭。**称呼同行者用自然口语词**:长辈/老人/爸妈/孩子——不用「祖辈」「老人家」这类生硬 AI 腔(2026-09-12 作者定) - **作息情况采集**(v3.0 新增,所有行程必采):**只问事实,不给人定型**(同「省力慢游」哲学——说的是方案匹配人的状态,不是人的标签)——问法就四句(第 4 句 v3.15 加):"全队一般几点起?有人能起早吗?有人晚上精神吗?**有没有一定要在特定时段做的事(夜爬/拍星空/看日出/夜景亮灯/逛早市/赶海)?**"。三代同游作息必不同步,**主线就低不就高**:能起早的去冲晨雾日出(入备选),主线按最晚起的排。**用户没答时 作者 默认=睡到自然醒**(西北行/南昌实证) **默认档案(作者)**:武汉出发;典型时间窗=周五晚~周一上午;内容必出(小红书+抖音);玩法=深度体验;人数结构以一人行为常态(西北行15天一人实证)、朋友局为辅 ## 阶段 1 · 目的地筛选(先给方向,拍板后再做详细方案) - 列 3-5 个候选,每个查:①极端天气(台风/暴雨/高温/雷电预警)②季节适配 ③交通耗时 ④出片度 ⑤特色度 ⑥**当季限定**(时令景观/节庆/开渔/流星雨等,联网实查"当季有什么",不内置静态表——会过期) - 输出:**1 首选 + 1-2 备胎 + 明确劝退项**(附一句话理由) - 用户拍板前不做详细路书(避免白做工) **B 案激活流程**(主案执行不了、切备胎时): 1. **退票 checklist**(按损失从小到大处理):门票/预约(公众号取消,免费无损失,爽约有限约风险)→ 酒店(免费取消期内立即退)→ 火车票(开车前 24-48h 扣 10%,越早退越省)→ 机票(能改签优先改签,退票按舱位规则) 2. 原路书保留并标注「未成行-可复用」,在用户档案去过清单记录(如"潮汕⏸路书 v1.1 已备未成行") 3. 新方案继承用户档案+经验沉淀+已核实避雷,只重做目的地差异部分 ## 阶段 2 · 实查复核(详细方案前必做) - 天气:目的地行程期间**逐日预报 + 关键日逐时段预报**(午后雷阵雨窗口/日落前后/夜间)——午后雷阵雨≠全天不能玩,喷泉/夜景/户外项目按逐时段决策;另查极端天气历史 - 门票/预约:官方渠道、放票时间、闭馆日、**是否必须预约**;🔴 **价格实时性铁律(v3.25,作者 2026-09-21 定:最新、最准、最真实=按当前询问时间检索)**:①**检索时点=当下**——出票务信息那一刻联网查,不许沿用本次会话早前的查询结果、更不许沿用历史路书/记忆里的价格(门票有淡旺季/节假日浮动,1 个月前都可能过期;v2.9"超 1 年补查"对门票不够严,本条收紧为"当次实时")②**官方源优先序**:景区官网/官方公众号 > 官方 App 公告 > OTA 在售页(美团/携程)> 游客攻略(攻略只能当线索)③**每条价格带时戳**:`¥350(2026-09-21 13:00 查·长隆官方公众号)`——查的时刻与来源写死在路书里 ④**查不到官方源的处置(作者 原话口径)**:如实写「官方渠道未查到,请自行比价」并给出比价指引——**官方公众号/小程序/大众点评/高德/抖音直播间**搜寻门票,看哪个优惠更多,🔴 **但要比对好日期别搞混**(不同渠道挂的可能是不同日期档的票——平日票/周末票/指定日票价格不同,直播间优惠常限特定日期)。网页价与官方价不一致的**并列写出**,不擅自取其一;**高热度需预约景点一律按「提前 5 天」倒排预约节点**(放票日即设提醒,如陕历博/省博/莫高窟类);**多档价格先拆清结构再算账**——单票/联票/含车票并列时逐档核对官方在售商品名(联票含不含景交/观光车),防重复计价;老人/儿童优惠票同口径写明含不含车(2026-09-13 丽水仙都实证:联票 90 已含景交,另算景交 20×4 重复报 80 元,预算虚高 50 元) - 交通:车次/航班时刻、末班车衔接、**换乘留 ≥1 小时** - 店铺:营业状态、人均、招牌菜、排队情况 - 景区彩蛋:免票政策(如背《滕王阁序》免票)、延时开放、刚恢复开放等 - **游客优惠检查(v1.8)**:路书定稿前主动搜「目的地+游客优惠/文旅消费券/票根经济」,有就写进路书。凭证口径三类:**交通票根**(机票/高铁票,多为 7 日内抵达——青岛「一张票根游青岛」:上传票根解锁 850+ 商户权益,崂山/海底世界等门票 5 折)、**身份证件**(外地身份证/学生证,部分城市凭身份证即享)、**其他凭证**(演出票/赛事票/电影票根——烟台《八仙!》电影票根联动近 20 家景区);此类政策已在全国常态化(广西/四川/江苏/广东等省市均有版本)。**呈现=知会型**:政策名+玩法+在哪领(官方小程序/公众号)说清即止,不逐项抠折扣数字(权益以官方小程序内实际为准);行程中有匹配景点顺带标注 🎫;**没有如实不写、不硬凑**。线索源=政务网/文旅局通稿,权益正本=官方小程序,活动带截止日的标注时效 - **移动端表格排版(v1.9)**:窄屏下表格首列易被长文本列挤压成逐字竖排——移动端媒体查询 `.tb{table-layout:fixed}`+断词兜底,成品按列型给 `colgroup` 定列宽百分比(如 景点|门票|备注=26/22/52、餐段|位置|店|点什么|人均=13/17/24/28/18;**列宽要按最长单元格值校准**),`@media (min-width:901px){.tb col{width:auto!important}}` 还原桌面自动布局——**桌面排版零变化**;基准骨架已含修复,旧派生成品按此补丁迁移 - **导航当日标记废止(v1.9)**:当日标识由正文「今天」徽章独家承担,导航**不再注入**「· 今天」文字或圆点标记(同一信息两处+长标签折行);导航当日高亮交给滚动联动承担 - **天文时刻与票务核销(v1.9)**:①**日落/日出时刻=sunrise-sunset.org API 实查**(纬度+经度+日期参数,返回 UTC+8 换算),机位「日落前 30 分钟占位」的时刻以此为准,不用搜索摘要(口径漂移实证:API 17:23 vs 摘要 17:25)②**OTA 渠道票核销时间窗线上查不出**(不同渠道票各有限用起止时段,官方「9 点开票」可能只是开发票时间)——涉渠道票的行程留「到现地售票处确认班次与核销」提醒;景区挂牌价以官方现价为准(线上旧价≠现场价实证:搜 69 vs 现场 99) - **特种兵专属实查**(仅玩法=特种兵时必做):①学生证半价政策(景区门票+车票,逐点核实)②夜车车次时刻与余票(硬座/动车卧铺,省钱第一杠杆)③目的地末班车/首班车衔接时刻(决定"夜攻"可行性)④免费机位与免费开放点密度(免费馆/免费观景台/citywalk 串联)——省钱杠杆全靠这几项 - **省力慢游专属实查**(启用省力慢游时必做,逐项联网核实):①**每景点代步工具全查清**——缆车/索道/观光车/接驳车/电梯扶梯的票价+运营时间+**末班时间**+排队时长+是否直达核心观景点 ②台阶数与坡度(搜"景点+台阶/爬山强度"近期游记,台阶多直接换替代点)③无障碍通道(轮椅/婴儿车能否全程)④休息点密度(座椅/凉亭/茶馆)与厕所位置 ⑤上下山替代:全程车 or「车上+缓坡步行下」——下楼梯伤膝盖,宁可都坐车 - **实查纪律**(v2.9 作者批评固化,四条): 1. **止损点**:同一信息自动搜索/抓取**最多 2 轮**(含换源换路径),仍无结果→标「未查到」+给用户人工选项(如"App 内主页放大镜搜 X"),**禁止循环重试死磕**;遇验证码/风控弹窗**一次即停手换路径**(缙云任务反例:同一目标连跑 4 版脚本) 2. **时效标注**:每条关键信息标"哪年的"(门票/营业状态/表演场次);**营业类信息超 1 年必须补查现状**(正例:老鲍农家乐 2023 视频→补查 2025 爆满在营) 3. **用户线索双向校验**:用户给的线索("某博主有某地作品")可能记错或过时——核实结果与用户记忆不符时,如实回告"你说的 X 没找到、找到的是 Y",**不硬凑用户期待** 4. **AI 摘要不可作证据**:搜索引擎返回里的 AI 生成摘要(非网页原文)只当线索——写结论前必须落到具体视频/页面实锤(庞师缙云幻觉案例,详见 MEMORY search-one-by-one) 5. **收录完备性差集核查(v3.50)**:交付前找 1-2 份同目的地第三方热门路线(小红书/攻略站高赞)做**差集对照**——对方有而自己全册无的点,逐个判定「不合适收录」还是「漏了」;核验体系查「写的对不对」,差集查「该写而没写」(国王谷/Kua Bay 缺失由使用者对照小红书发现实证) ## 阶段 3 · 路书输出(六维度结构) 文件命名:`路书_<目的地>_v1.md`,存项目目录。结构: 1. **头部**:人员/时间/天气实况/核心节奏 + **地理归属一句话**(目的地行政区划与方位亮出:如"丽水=地级市,本次玩它下辖的莲都区+缙云县"——不假设用户知道目的地行政关系,v2.9) 2. **倒计时行动清单**:所有时间敏感动作按 T-N 天倒排——**T-5 高热度景点预约**(放票日设提醒)/ T-3 普通预约+抢票窗口(如莫高窟 A 类)/ T-1 天气终判(去/改期/切备胎)/ 退改截止提醒(火车票 24-48h 内扣 10%,越早退越省)。**重点提醒项必须加粗+警醒标志**(⚠️/🚨,v3.1):需提前预约的景点/项目、抢票窗口、天气终判、旺季紧俏动作(如早订房)——读者扫一眼就该知道哪几条不做会出事 3. **预约状态表**:什么要约、什么不用约、放票时间/**预约截止日(高热度景点按提前 5 天倒排)**、取消规则、约满兜底方案 4. **逐日行程**(每天按四块拆): - **吃**:**美食选择池**——定档(路书正文)+备选池(附录)两层;备选池按场景分层给足(知名正餐/夜宵名店/本地宝藏苍蝇馆子/早餐小吃/酒店周边),知名店保稳定出品、宝藏店保本地里子,**都要推,选择权交给用户**;每家给地址+招牌+人均+排队提示;附"找店三看"(看食客/看年头/看评价)+**抖音探店信源**:优先搜使用者档案配置的探店博主「目的地+博主名」(名单与博主档案在用户档案区维护、不随包分发;抖音搜「目的地+探店」可等效起步);**每位博主单独搜一次,禁止多博主多城合并搜**(关键词互相稀释会漏结果——2026-09 镇江实证:合并搜漏掉唐仁杰 4 条镇江探店;辅助路径:抖音主页内搜关键词→B 站官方 API 查视频简介→评论区找"课代表"),搜不到明说"没探过此地"不编造;纯流量网红店需交叉验证防充值(评论区本地人评价+高德/大众点评复核);现场挑选原则(就近/看势头/量力而行);**呈现必须两层**——日程卡每餐精简内嵌(1-2 家,只给名字+吃什么)+ 独立「美食清单」板块(🔴 **板块名固定写「美食清单」**——作者定,2026-09-15 重述;**不要写「吃饭清单」**,出稿时 grep 一遍「吃饭清单」必须为 0。主排序=行程日、餐段做标注、宵夜跨日放末行,给足选择;早餐如实写:民宿含早就说含早,不含就给推荐店——2026-09-13 丽水实证:只内嵌不成板块,早餐两天空缺、宵夜无、画乡店名零实查);**探店博主多线取用(v3.9)**——逐位单搜后按线用透:交叉验证最强(多博主/多源同探一家=优先推)、按线取用(实操中端/专业高端/本地文化/本地活地图,按预算+场景匹配)、进正文三匹配门槛(价位+菜品+位置匹配才进清单行,差一条进备注)、搜到即用透(禁止搜完只在备注提一句——宁波 v1 失误实证);🔴 **收录分级门槛(v3.21;优先于「搜到即用透」)**——**R1**:店名+门牌已核→收录 ✅;**R2**:店名查不到但有确切位置引导(乡镇/码头/「凌晨 4:30 开在菜场旁」类)→收录 📌+给认店口诀,**仅限信源穷尽后**(封面大字/门头/声明贴纸/账单等画面物证帧精读+多源交叉后仍无店名——南昌臻记模式,不是绕过精读的捷径);**R3**:既无店名又无位置、或有负面评价→不收录(不进情报卡/美食清单/备选池,不挂「待补」)。;**收录优先序(v3.28)**:使用者本地点名店=最高优先(成稿标「本地人推荐」徽章)>默认博主作品店>指定博主>公开攻略补品类空缺;**口碑分档(v3.28)**:早餐/宵夜只推好评店,正餐可少量口碑分歧名店(标争议双方观点)+「先看差评,差评能接受才去」方法论进成稿;找店心法名片款:「不必非吃固定哪家,人多的一般没错」(安心条款非军令状);年份口碑店如实标特性(无招牌/卖完收摊/只按导航找);点单口诀保留原话(照抄不出错);**每日三餐行完整性(v3.29 机械钩)**:每日必须有早/午/晚三行,交付前逐日 grep 报数;**「升级体验」子表(v3.46 檀香山实证)**——美食清单主表(时间线+平价日常线)之外,目的地存在「值得多花一点」的体验型餐饮(景观餐位/跨界吃法/仪式感场景)时,主表后加「升级体验」小表:三列(店/特色/人均),**特色列写体验点不写菜名**(「日落露台+Mai Tai」「早午餐变晚餐」),价格出境双币种;档次=人均约主表 2-4 倍的「偶尔奢侈」,1-3 行不喧宾夺主(檀香山实证:主表刨冰 $5-8/乌冬 $8-12,升级表 Duke's 日落露台 $40-60/Koko Head $30-50);与预算「体验平价/品质表」分工:预算管钱的档位、升级体验管吃的进阶,店可重合、视角不同;**餐饮人均口径(v3.50)**:人均=主菜+饮料+税(不含小费须注明)——🔴单菜价≠人均,不得拿旧攻略单价充数;现地实测负评必须如实标注(收录不删但警示);出品方菜单更新日期(官网「MENU UPDATED」)优先于旧攻略价;**「升级体验」子表=必答标配(v1.7 增补)**:收录硬标准=价格/菜品/服务/环境四项满足 ≥3 项才收(不能只是贵),1-3 家封顶不为加而加,无合格候选如实写「无」——宁缺毋滥本身即用心;**R2 店收录门槛(v1.7 增补)**:无店名目标不进清单正文,给同档平替;评论区+网搜 2 轮未锁定=如实放弃定位,禁硬编坐标 - **玩**:景点怎么逛(动线/重点/时长/讲解建议);**热度配比 6:3:1(v3.8)+偏好优先(v3.9)**——6 成热门保底+3 成冷门惊喜(实锤的游记私藏/本地人聚集地)+1 成弹性(亲历口碑/新开彩蛋);6:3:1 是默认,采集时主动问偏好,用户说"想热闹/想人少"即动态调;禁止全热门(中规中矩攻略架)或全冷门(拿行程冒险);**特种兵模式(v3.24)**:动线按「能串尽串」排——每点 20-40 分钟(核心位拍照即走)、单点不恋战,6:3:1 配比不适用,改为最大化不同景点数量;⚠️ 数量优先≠瞎排——打卡点之间仍守动线不绕路铁律+实查纪律 - **住**:先选**住宿形态**再选区域——形态按人群场景给选项:兄弟局=电竞房(3人一间,能玩能睡能兼顾工作=数字游民场景,南昌实测)/民宿套间;一人行=性价比连锁/青旅;家庭=套房/民宿;内容向=特色民宿(体验感+出片,搜"目的地+特色民宿"看实拍评价);再定区域+理由(近动线/近美食)+价位;**价格淡旺季口径(v3.48,凯悦现地实查实证)**:住宿参考价给「平季 X / 旺季 Y」双档或标当前季档+查证日期;🔴**另收项必须点破**(destination fee/度假村税/停车费——美国酒店 $40-70/晚 常见,裸房价≠实付价,统一给「实付=房价+费+税,预订页看总价别看每晚起」口径);大档期(圣诞新年/暑假/黄金周)按上浮 30-50% 预估;**无实查依据的低价不得入册**(宁可加宽【估算】区间也不给失实下限);餐饮人均旺季标「以现场为准」 - **住宿选房顺位(v1.7 增补;v1.9 补④)**:①位置顺行程路线(第一位,不为特色酒店多通勤)②预算口径 ③电竞房/海景/特色=加分项非主导——加分项服从①② ④**当晚日落/夜景机位距离**:订在机位 1.5km 内=「先酒店放包」与「赶上日落」两不误——订房位置决定当天傍晚顺序,订前查一眼机位距离 - **行**:大交通精确时刻+市内交通(**哪天开车哪天地铁**,进城停车难则地铁优先);**自驾/多点位行程必须出「全程路程时间总表」**(每段里程+正常耗时+节假日路况预留,短驳段估算的标【估算】),并在逐日「行」里落到当段(v2.7 新增,镇江路书反响验证——读者最关心"这段开多久");**交通方式分支(v3.1 作者定)**:自驾/租车人群→**停车信息逐日落地**(每天卡片底部固定 🅿️ 停车条:停车场位置/收费/是否白天禁行需换景交/旺季到位时间/当日里程);**非自驾人群必须给公共交通方案**(高铁站/机场→景区的班车·公交·打车费、景区间衔接车次、**末班时间**、散场打车难度)——停车条只针对自驾租车人群,别的人群要给对应出行方案,不能默认人人自驾。**多册自包含纪律(v3.47)**:🔴多册各自独立自包含、禁止跨册引用——「见 ×× 册」禁用,分发的路书可能单独流转,跨册关联也是脱敏口径;**路程时长口径(v3.50)**:同名起终点多线路必须先写线路名再给时间;**标【估算】不豁免实查**——【估算】=实查不了的诚实标注,不是不查的借口,地图工具基线(v3.44)是义务;册内同一路段多处提及必须同口径 - **拍**:机位清单+最佳时间+**光线逻辑(建筑朝向决定顺逆光)**+**特殊场景参数手册**(夜景/雨景/日出夕阳/星空/博物馆/美食,分 iPhone 和安卓给具体参数与技巧,如"镜头贴玻璃消反光""实况转长曝光拍喷泉") - **拍·机位审美筛选线(v3.28)**:机位信源≥3 源交叉(官方文旅十大/市府官微/摄影攻略,不吃单一爆款图文);**「大开大阖」大场景优先**(江桥楼湖同框/天际线/日落蓝调),纯市井杂乱类剔除——烟火气归美食线管,机位线只管大片;几何/未来感建筑也收(大智无界型);先搜当地摄影圈验证过的封神点位再入库;**夜景灯光秀专项**:基建强市必查灯光秀时间锚+烟花秀等节点预约渠道(节假日以官方发布会通稿为准);机位补充包工作法:爆款图文→去重→三档归入(主动线/当日延伸/自选加拍) - **🔴 游玩体验为主体,机位是顺路提示(v3.29 武汉实证,作者:行程围着机位转=主次颠倒)**:每日动线的主体=**逛什么/感受什么/吃什么**(玩家逻辑),机位是「📷 到了别忘拍一张」级别的顺路标注,**禁止把机位串成独立时间块占用行程主体**(武汉 v1 把 6 机位串成 3h 徒步线当整个上午=打回重写);相邻两天禁同一主景点重复(武汉 D2 引桥/D4 大桥步行连续两天上桥=读者视角「我来武汉就是看桥的?」);自检法:把每日行程读一遍,问「这是一个游客的一天,还是一个摄影师的一天?」 - **机位信息标准(v1.7 增补)**:每条机位=**位置+最佳时段+拍法三条全**(「顺路能拍」一行罗列废止);层次五级=速览白底绿边条→slot 浅绿底(主角)→机位灰字小字(配角)→Plan B 米黄→冷知识绿底 - **🔴 地理集群原则(v3.35,东京实战:朋友判「秋叶原该跟浅草一天、筑地银座分 D1/D3 不合理」——原版跨城横穿被现地一票打回)**:多日行程按**地理集群分天**(老城/现代/湾岸/郊区……按城市实际分区),同一天只待一个集群,从酒店出发一条线走完、不横穿城市;跨集群远点挪备选或单独半天;**每日动线图必须画出验证**——≥3 天的行程 SVG 总数 ≥ 天数+1(总览 1 张+每天 1 张动线图),在图上核对不走回头路;图是给读者核对动线用的,不是装饰(东京 v2 实证:4 张 SVG 逐张画出后 D1「太重」与集群归属一目了然) - **⏰ 作息排程规则**(v3.0;**v3.15 按人群模式重构为两条轴**):**① 家庭游 / 自由行(默认轴)**:**出发日「10 点前后」**(v3.6 作者定:家庭出游睡饱第一——堵车和行程压力用「预留时间」解决,不压缩睡眠解决;丽水 6:30 出发拿"躲高峰"正当化仍被朋友吐槽实证。航班/火车硬时刻除外,写明理由即可;🔴**但「硬时刻除外」不得滥用(v3.14,2026-09-15 广州实证)**:车次/航班是**自己挑的**,属可调项——4 小时高铁不等于"必须坐早班车",改成 10:00 发车、14:00 到场一样成立;**只有当当天全部可选班次都早于锚点时才叫真硬时刻**;凡出现"选 07:00-09:00 发车那几趟"这类句式,一律视为把自己的排程包装成客观限制,回炉重排);**游玩日主线也取「10 点前后」**(v3.0 默认 8:00 那种偏早——丽水 8:00 坐船被吐槽过);🔴**但这是软目标、不是闸门(v3.15 作者 明确:「说了上午 10 点左右,不是要求卡那么死」)**:**9 点多出发、10 点半开玩都算达标**——为了动线顺提前半小时、或落在 09:30 都不用回炉;真正要拦的是「6-8 点档起床赶路」那个量级。**别把锚点当 KPI 卡到分钟**;**默认节奏锚(v1.16)**:默认 **09:30—10:00 开始游玩**,路书不写起床/洗漱细节、不校验起床时刻;早餐/交通按实际行程需要列出、可在此前(接驳合理不赶场属制作判断);日出晨雾等早间玩法列可选建议,用户明确选择后才入主案;**② 大学生特种兵 / 打卡暴走(另一根轴,不套 10:00 锚点)**:**可提前、可夜排、可连续暴走**——凌晨机位、夜车过夜、夜爬、夜市宵夜、跨城连刷都算正常排法,**按玩法需要排满即可,不必迁就睡眠**(v3.15 作者定:「大学生特种兵玩法可以按你的想法拍,甚至可以晚上还可以排一点」)。三条底线不破:**恶劣天气铁律、安全底线(夜归/独行)、实查纪律**。启用条件见「玩法取向模式」与「特种兵暴走」逐维度切换表;**③ 早起包 / 夜游包标准件(v3.6 立,v3.15 补夜游包)**:作息敏感型项目**一律不进主线**,但**必须落成两个包**——「🌅 早起的人(自愿,谁起谁去)」=民宿步行圈内晨间体验(晨雾/晨景/表演头场/早点铺)+ 回店集合早餐时间;「🌙 夜游包(自愿,谁去谁回)」=夜景亮灯/夜拍机位/夜市宵夜/深夜温泉,写清「几点出、几点回、谁去」。两个包都要标注作息代价(「需 5:30 起」/「回酒店 23:00」),谁去谁起、主线人员照常;家庭成员作息不同步时主线就低不就高(丽水反例:三代同游游玩日主线排 6:30 晨雾被 作者 打回)。**④ 🔴 特殊时段玩法必须主动提出(v3.15 作者定,硬要求)**:凡「**有最佳时段、错过就废**」的玩法,**不许因为默认晚起就静默砍掉**——必须在路书里显式交代四件事:**①项目 ②为什么非得那个点 ③作息代价(几点起/几点回)④归入哪个包 + 不去拿什么补**。已固化清单(**任何目的地都要先过一遍**):**夜爬(泰山类)/拍星空·银河(必查月相+月落时间,满月前后一周直接放弃)/日出·日落/晨雾/云海/城市夜景·亮灯时刻/灯光秀·烟火/早市·赶集/赶海·涨落潮/观鸟·动物活跃期/夜汤温泉/深夜食堂·夜市**。配套:与「拍」维度的**特殊场景参数手册**(夜景/星空/日出夕阳)**互相引用**——手册里给了星空参数,行程里就得有星空的位子;只写参数不排位子=这项没落地。**备选落位(v3.47):boost 板块加「⏰ 特殊时段玩法」组**——两列表(项目/时点与口径),每条=项目+最佳时点+渠道口径(免费与否/抢票规则);主线已排的标注「主线 D× 已排」给读者定位,未排的=这就是它的位子;特殊时段玩法不进「如果还有时间」逻辑(时点专属、错过就废),独立成组不混排**⑤ 日夜交界型家庭游也能排**:日落→亮灯→夜拍串成傍晚动线(江边/桥/高层观景台),属**正常主线、不是熬夜**(家庭版广州实证:17:00 广州塔看日落与夜景、19:30 珠江夜游),跟「早起」是两回事,别混为一谈。 5. **避雷表**:必须"真实场景+应对"式(❌"注意防晒" ✅"遗址区无遮挡,观光车必坐否则热死");**措辞分群体(2026-09-10 作者定)**:面向老年人/官方群体的输出物称「温馨提示」,其他群体仍称「避雷」。;**内容必须两组兼备+标题标准(v1.7 增补)**:eyebrow=「真实场景 · 提前知道」+标题=「提示与避雷」,内容=避雷组(⚠️ 真实坑+应对:宰客套路/收费陷阱/短斤缺两)+提示组(贴身提醒)——纯温馨提示不配这个标题 6. **预算表**:逐项+人均 7. **应急表**:每个关键环节给 Plan B(错过车/暴雨/约满/肠胃) 8. **景区示意图**(条件触发:分散型多景点/需换乘的大景区必出,单点景区可不出)——手绘 SVG 嵌对应日程板块,规范=v3.5 版本头(信息层六要素+表现层插画化清单),标注「示意非等比」+数据来源日期;**画幅与插画化基线(v1.7 增补)**:day 图 720×400、总览 780×440(小画幅废弃);多色动线语义固定=红=步行/打车、蓝=地铁、金=夜游;插画化=渐变水系/手绘地标/罗盘指北针/投影城市卡,emoji 地标与裸胶囊废止;DEFS 渐变 id 按图加后缀防重复 id;**方位本身就是信息**——各点按真实相对位置排布,禁挤一角 9. **装备清单**(按场景勾选)——**必须与本趟行程实时匹配,禁止通用模板直接套**(v3.1 作者定):按**目的地×季节×天气×温度×环境**五要素定制,每趟先列「本趟特有项」再补通用项(例:丽水中秋=溪边玩水洞洞鞋+晨雾清晨 15-18°C 外套+山区蚊虫驱蚊液+白天近 30°C 防晒;西北=沙漠鞋套密封袋;冬游=暖宝宝触屏手套): - 通用:身份证/充电宝/常用药(蒙脱石散+藿香正气+创可贴+碘伏) - 高温:防晒/速干衣/大水 - 雨天:折叠伞/防水鞋套或洞洞鞋/手机防水袋/便携雨衣(骑车比伞实用) - 沙漠戈壁:手机相机密封袋/鞋套(买贵一档,差价小体验差大)/干粮+大水(大景区中午必错过饭点)/物理防晒可现场买 - 夜骑提醒:视线差路段提前减速(西安城墙摔车教训) **玩法模式切换(深度体验 ↔ 特种兵暴走)**:路书六维度按玩法取向切换侧重点,其余铁律(实查/预算诚实/安全第一位/自查9项)两种模式通用。 - **节奏**:深度=早出+午休+晚出(避暑/防雨);特种兵=连续暴走无午休,但**恶劣天气铁律仍生效**——雷暴/台风/高温红色预警下砍户外不硬玩,宁可留遗憾;🔴 **体力红线(v3.24 作者 口径)**:**日行 3 万步=特种兵标准强度参照**(排程标尺非上限承诺——按 3 万步的量排行程,超出要预警);**连续暴走 2 天后第 3 天必须排半天缓冲**(睡到自然醒或半天室内),防练报废;❌ 红线不写「晚睡」类条目(作者 明确不用加) - **住**(维度切换最大):深度=选住宿形态(电竞房/民宿/特色民宿);**特种兵=尽量省掉住宿**——夜车过夜(硬座/动车卧铺)把房费压到 0,确需落脚选青旅/钟点房/24h 快餐店休整 - **吃**:深度=知名店+宝藏苍蝇馆子两层慢吃;**特种兵=高频低价小吃快速扫街**——路边/早餐/夜市优先,顺路出片,不坐大餐,单顿控 15–30 元 - **行**:两种都重地铁串联;**特种兵额外强调「夜车 + 末班车衔接 + 清晨首班」三段式赶场**,跨城靠夜间车次 - **拍**:深度=机位+光线逻辑+参数手册;**特种兵=打卡照/合照/铁证照为主**,器材轻,重「证明来过」与集齐感,机位逻辑可简化 - **预算**:深度=分项+隐藏成本;**特种兵加「省钱杠杆」列**——夜车省住宿/学生证半价/免费机位/citywalk 串免费点/周末错峰(消费对半打折) - **避雷**:深度=真实场景+应对;**特种兵新增专属风险**——体力透支、夜车睡过站坐过站、凌晨到站城市安全、错过末班车、过度赶场误车 **人数结构模式切换·六模式矩阵(v3.24 作者拍板重写)**:人员结构 × 玩法取向(深度/特种兵)× 体力结构(常规/省力慢游)**三轴正交、任意叠加**——如「闺蜜局+特种兵」=一天八机位换装打卡(真实存在需求)、「兄弟局+省力慢游」=长辈随行的家族旅行。 | 模式 | 核心突出点 | 住 | 吃 | 拍 | 节奏 | |---|---|---|---|---|---| | **兄弟局** | 玩得爽+性价比 | 电竞房/标间拼房 | 大排档/烧烤/夜宵,酒水放开 | 随手拍,打卡照为主 | 可叠加特种兵,深夜局常态化 | | **闺蜜局** | **出片+氛围**(提案待实测) | 双床房/民宿美学房(分开睡但要好看) | 下午茶/网红店/甜品权重高;**拍照好看的店 ≥ 好吃的店** | **互拍是核心需求**,机位密度加倍,穿搭×场景搭配建议 | 慢节奏,预留购物时间 | | **情侣** | 两人时光(提案待实测) | 大床/景观房/温泉房是**加分项**(住宿体验本身是行程的一部分) | 氛围餐厅权重高,人均档可上调 | 互拍+合照;日落/夜景/蓝调时段优先 | **浪漫时段 > 打卡数量**,不赶场 | | **家庭带娃** | 娃的体验决定行程成败 | 家庭房/亲子酒店 | 儿童餐/软食友好 | 娃的状态抓拍 | 午睡刚需,就低不就高(省力慢游既有条款保留) | | **家庭带长辈** | 省力+舒适 | 电梯房低楼层+含早 | 就近清淡 | 观景台机位优先 | 叠加省力慢游轴(既有条款保留) | | **一人行** | 独立自主+安全(既有细则全保留,见下) | 青旅/安全连锁 | 一人食友好 | 三脚架/延时自拍 | 自设疲劳红线 | **一人行既有细则(实战验证,原样保留)**: - **节奏**:自己说了算但无人踩刹车,需自设疲劳红线(日行步数上限+最晚回程时刻),到点强制收,防透支 - **住**:青旅(挑有前台+电梯监控的安全连锁)/ 性价比连锁;不订偏僻无前台民宿 - **吃**:小吃/快餐/商场食阁扫街最稳,专找"一人食友好"店(吧台/单人套餐/半份),错峰避包间大桌尴尬;点菜难→改轻食或拼碗 - **行**:重地铁串联;无人分摊,共享单车+地铁最优;夜归走亮灯主干道/24h 店路线;行李寄存(车站/商场)解放双手冲景点 - **拍(一人行核心痛点·没人帮拍)**:三脚架+手机延时/自拍杆/八爪鱼支架是刚需;合照用延时或礼貌请路人(提前给构图+焦点交代清楚);夜景人像自拍杆+补光;把"如何独自成片"写进每条机位 - **避雷**:深夜独行偏僻处(走亮灯主干道)、只叫平台车不路边黑车、住宿查安全评价、设报平安节奏、一人不适无人照顾(常用药+旅行险必备) **体力结构模式切换(常规 ↔ 省力慢游)**:省力慢游与玩法取向、人数结构均正交,可叠加(如"家庭+深度体验+省力慢游")。触发条件=同行者档案中有体力一般/长辈/腿脚不便/带娃成员。六维度切换侧重点: - **节奏**:半天一个点 + 午休刚需;日行步数按其上限的 70% 排(留余量防透支);出发不赶早 - **玩**:代步工具写进动线——**能坐车绝不爬山**;经典路线改"省力版"(缆车/观光车直上 → 核心观景 → 车下或缓坡步行下);台阶多的点给替代点而非硬爬 - **行**:门口到门口优先(打车/自驾),地铁换乘 ≤1 次;景区之间预留回酒店午休窗口 - **住**:电梯房/低楼层 + 近地铁口或景区 + 含早(省早出门找早餐) - **吃**:就近优先于名店——名店排队久站 = 直接换备选池近店 - **拍**:代步工具可达机位优先,观景台 > 徒步机位 - **预算**:代步费用单列一行(缆车/观光车对体力一般成员是刚需,不是可省项) - **避雷新增**:无座椅长排队区、台阶陡坡段、厕所远、正午无遮挡段——省力慢游三大隐藏雷 **交付前自查清单(逐项打勾才可交付)**:①信息全文一致(无已取消项残留)②天气已分时段③门票放票时间+预约截止已标④店铺有地址+营业状态已核⑤动线无回头路⑥预算闭合且隐藏成本有行⑦避雷全是"真实场景+应对"⑧应急 Plan B 覆盖关键环节⑨版本号/日期已更新⑩**随行两件套已出**(当日模式页/特产三问,见阶段3.5)⑪**页面/HTML 类产物已渲染截图亲验**(真机视口桌面+手机各至少一张,防自嗨式设计缺陷——2026-09-10 镇江 HTML 手机工具条遮挡实证;Playwright 可 channel='msedge' 驱动系统 Edge 零下载)⑫**文案去 AI 味复核**(v3.1 作者定;**v3.25 升级为双通道**):**通道一 grep 高频词**(进行/值得注意/本质/仿佛/映入/众所/首先其次/综上/绝绝子/震撼/为您/不仅…而且/此外/标志着)+ 通读标题与各板块——称谓口语化(长辈/娃,不用祖辈老人家)、无 ≥3 句书面排比、无"不像人话"的句子;**出境版加一道翻译润色(v3.41)**:英文专名首次出现用中文+括注英文(恐龙湾 Hanauma Bay)、后文统一中文称,禁英文专名连排成句、禁括号注套括号注——机翻味主源就是专名堆叠与直译语序(国际版三册 作者 实证);**通道二 humanizer-zh skill 全文过一道**(协作环境已装则用,未装则跳过通道二)——重点是破折号滥用/粗体堆砌/三段式排比/通用积极结尾这类 grep 抓不到的结构性问题;🔴 **路书是给普通人执行用的,不是给读者欣赏的——像朋友交代攻略的口吻,不是旅游杂志文案**;方法源自 jhjs-script 去AI味禁忌表,适用于路书全部文案(含 HTML 版全部可见文本) ⑬**HTML 入场动效两态实测**——动效禁裸 opacity:0(必须 html.js 门控+兜底脚本),门控规则与 .in 显示规则**配对同前缀**(防 CSS 特异性倒挂);自查时 JS 禁用/启用两态都实测、内容两态全可见(2026-09-13 丽水实证:裸 opacity:0 依赖 IntersectionObserver,JS 挂→83% 内容不可见;首轮修复门控特异性反压 .in 规则致正常态不可见,两态实测才抓出) ⑭**六维度板块齐全**——吃/玩/住/行/拍/避雷逐项问"呈现在哪":允许融合呈现(避雷→温馨提示)、不允许无板块(吃→日程卡零散带过=漏维度,2026-09-13 丽水实证) ⑮**景区示意图**(大园区必出时):信息层六要素齐+表现层插画化过一遍(地标图标/地形渲染/胶囊标签/动线序号/图例)+手机视口截图亲验缩放可读 ⑯**作息锚点**——出发日与游玩日主线都取**「10 点前后」的软目标**(**9 点多~10 点半都算达标,别卡死**),硬时间项目不入主线(入早起包/夜游包/备选);有老人/早起者时每天有「🌅 早起包」条(2026-09-13 丽水 6:30 出发+8:00 坐船被朋友吐槽实证);(v1.16:默认 09:30—10:00 开始游玩,路书不写起床细节) ⑰**博主店用透自查**——命中博主探过的每家店,吃饭清单或备选池里必须有它自己的行(进不了动线的也要带店名+必点+人均/未核实标注入备选池),禁止只躺在情报档里(2026-09-15 广州顺德再犯 v3.9 半条固化) ⑱🔴**每日配图齐全(HTML 交付)**——**数 `
` 个数 ≥ 行程天数**(**每日张数=2 或 4,禁 3 张**——.photos 是 2 列网格,3 张=2+1 不对称,作者 2026-09-30 定规);每张 base64 内嵌、亲验真渲染(`naturalWidth>0 && rect.width>50`)、四档视口(320/390/768/1280)无横向溢出;非本趟实拍的已标「(示意)」且页脚写明"实景/示意 + 图源"。**这一项必须出数字,不许凭印象说"有图"**(2026-09-13 丽水立规 → 2026-09-15 广州首版 0 张又漏,连漏两次;.photos 的 CSS 一直在一所以看 CSS、跑⑪⑬都发现不了) ⑲**停车信息已查**(自驾/租车时)——每天卡片底部 🅿️ 专条齐:停车场位置/收费/是否需换乘景交/旺季几点前有位,查不到标"以现场为准"不许留空 ⑳**同一决策点全文同步**——动一个时间/场次/价格/店名之前,先 grep 出该决策点在全文的**所有落位**(准备清单·速览·时段卡·示意图 SVG·门票表·tips/避雷·预算表·应急),一处改就全部改,**判据=旧值在「活条款」里归零;**判「行程外景点」必须 grep 槽位完整正文——截断窗口(只取前 30 字)本身就是误报源(汉阳造误删实证)****(⚠️**例外:版本史/备注里对旧写法的引用要保留**——2026-09-15 实测:把「是否 ≥ 10:00」改掉后全文仍命中 1 次,就是版本史引用了旧写法,属正当保留、别删;**所以断言要锚到活条款原句,别拿裸值/裸词当判据**,同踩坑 14);另加一条作息复核:把每天**第一个非交通时段**打出来看一眼——**落在 9 点多~10 点半之间即达标,不卡分钟**;只有出现「6-8 点档起床赶路」才算没过(2026-09-15 广州实证:马戏 16:30 场散在 6 处,改 5 处漏 1 处即前后矛盾) ㉑**特殊时段玩法已主动提出**(v3.15 作者定)——过一遍特殊时段清单(夜爬/拍星空/日出日落/晨雾/夜景亮灯/灯光秀/早市/赶海/夜市),凡命中就必须在路书里显式交代「项目+为什么非得那个点+作息代价+归入早起包/夜游包+不去拿什么补」,**不许因默认晚起而静默砍掉**;家庭游/自由行若确实要排早,必须写明代价并征得点头,不许默默排 ㉒**家族对齐 diff(产物类交付前置闸门,v3.27 立)**——交付前把家族中最接近的成品**全文逐段 diff**(Playwright 抽 innerText 或直接读文本对照区块措辞表),措辞/结构/文案逐项对齐,diff 出的差异逐条修或注明不修理由,报告随交付;🔴**数指标(几个区块几张图)不算对比**(2026-09-25 象山版实证:指标全对齐仍漏页脚/表头/措辞等 7+ 处) ㉓**fail-closed 终审(v3.35,GitHub 拆解反哺,条款原创)**:**「未核实 = 失败,不是通过」**——检查项查不到结果就标 FAIL/未核实,禁止当 PASS 放行;**「无法执行的检查必须声明未执行」,禁止报 0 假装通过**;grep 命中的「异常」必须看上下文结构再定性(东京实证:正文无一处 480,8 处命中全在 base64 图片数据里——命中≠异常,看命中落在什么结构里) ㉔**跨集群折返检查(v3.35)**——每日动线对照动线图读一遍:同一天内不得跨地理集群往返;相邻两天禁同一主区域重复覆盖(对齐 v3.29「相邻两天禁同一主景点」的区域版) ㉖**SVG 数量检查(v3.35)**——≥3 天行程 svg 总数 ≥ 天数+1(总览+每日动线),每张六要素齐(指北针/地标胶囊/动线序号/图例/非等比标注/文字不压线);🔴(v1.13)**导览图双通路定序**——①**手绘 SVG=兜底正路**:零外部依赖(无网无 key 也能画),任何环境必须完成,禁止因"没工具"整册跳过(2026-10 实测:无网络环境下 AI 一张导览图都没出);②真底图动线图(地图瓦片底图+真实路径线)=进阶通路,工具链随后续版本发布,落地前一律以手绘为准 ㉘**信息归位与作者资格(v3.37)**——①抽 2-3 个高频信息(防晒/门票/预约类)grep 全文落区数:同一信息在 ≥2 个叙事区整句重复=打回归位;②成稿若含 author/推荐区块:核对作者对该目的地确有推荐资历,无资历=删区块+删导航项(资格制见阶段 3) ㉙**价格类全落位扫描(v3.50)**——改任何价格(门票/活动/餐饮/住宿),先 grep 该价格在 prepCard/正文 slot/门票表/预算表的**全部落位**逐处同步(大岛册观星团价散 4 处改一漏三、cost 表漏网被终验 gate 拦下实证) ㉚**机械交付闸门(v3.51)**——交付前必跑 `tools/checklist.py <路书.html> --visual`,输出原文贴给使用者;FAIL 不许交、SKIP 必声明 - **板块丰富度自检(v1.7 增补)**:交付前对照好版标杆逐区块字数(参考线:备选≥400/门票≥350/应急≥250/特产≥300),偏薄即扩 - **对外分享成稿脱敏(v1.7 增补)**:HTML 展示层剥内部信息(研究记录/信源工作列/内部路径),背书留在 md 事实源——双写分层 - **成品存放惯例(v1.7 增补)**:一行程一文件夹统一命名「XX_朋友版/自用版路书.html」+事实源 md;开工建目录前先查已有成品惯例 - **家族对齐 diff 实操(v1.7 增补)**:交付前拿家族最近成品逐项对照 sections/nav/eyebrow/title/footer/存储键——肉眼自检不可靠 ## 阶段 3.5 · 随行两件套(路书交付时同步产出,2026-09-02 拍板定稿) 路书之外必附的两个"旅行中真正会打开"的随行件,与路书同文件或独立 HTML 均可: 1. **当日旅行模式**(每个出行日自动生成"今天页") - 内容=今日动线(时间+地点+交通方式)+ 天气与穿衣 + 今日提醒(预约截止/加满油/带装备)+ 出片建议 + 顺路可买 - **日期未定行程的 TRIP 占位(v1.7 增补)**:start/end 填 `9999-12-31` 占位即可让「今天」判定永不命中、倒计时区常亮为默认态——零 JS 改动,档期确定后只改这两个值 - 按 `TRIP.start` 日期自动算今天:今天高亮、已过天变灰;用户说「今天去哪」直接切当日视图,不再翻全篇路书 - 数据全部复用路书,不重写;作者 教训:凌晨已出发时 AI 还在做计划态方案——当日模式=陪伴模式的默认视图 2. **特产三问卡**(每项回答三问:是什么/哪里买/好不好带) - 只推**方便携带**的(真空小包/密封礼盒/轻量装);带携带条件的高亮警示(如青稞酒仅托运、散装肉制品别买) - 附比价提示(景区出口 vs 市区超市常差三成);价格水分大的品类(黑枸杞)标注"认准产地直供,别买天价礼盒" - **作者 偏好**:旅行购物以文创为主,特产按"值得带的少数几样"给,不铺清单 > 实现参考:`作者留存的去野工作台成品`(当日模式+特产三问已实装的单文件 HTML,深色 Linear 风格,含导出 JSON/当日自动对齐)。开源准备:模板 `_v3_build.py` 与数据 TRIP 对象分离,换行程只改数据重新合成。 3. **长辈/官方 HTML 分发版四件套**(2026-09-10 镇江定稿,双 AI 窗口复盘共识;面向老年人/官方群体的 HTML 路书必带) - **当日模式**:按今天日期自动高亮并滚动到当日行程卡(行程期外则高亮"出发前清单") - **大字三档**:字号 A−/A/A+ 可调,localStorage 记忆 - **清单勾选**:出发前清单+装备单可打勾,localStorage 持久 - **打印样式**:@media print 一键纸质化(隐藏导航与按钮,卡片防跨页撕裂) - 参考实现:`作者留存的镇江扬州长辈版成品`(CODEX 风格全令牌+功能双清单;风格产物规则=**风格令牌+功能清单全带,禁止只抄视觉皮**) - 配套原则「**决策替做**」(补充共识):面向长辈/官方/执行型读者,分支决策提前替读者做完,输出指令式文本("到了先看几点:中午前到→先吃面再玩…"),**不输出选项让读者选**——选项是给策划者的,指令才是给执行者的 4. 🔴 **每日配图 —— HTML 交付必带(2026-09-13 丽水约定 → 2026-09-15 广州又漏,连漏两次)** - **🔴 今日速览标准件+每日固定件(v1.7 增补)**:①「🧭 **今日速览:**上午=X;下午=Y;傍晚=Z」三件事式**紧贴 day-head 之后、photos 之前**,样式=白底+绿色左边条引用块风(与浅绿 slot 区分防粘连)②每日 slot 按 HH:MM 升序、餐行禁重复 ③**每日冷知识卡=固定件**:💡+「你知道吗:」+一条真·冷知识(禁编造须实查),放当天 Plan B 之后 ④**「当天 Plan B」=固定保留件**(任何新形态路书不得省略)⑤**slot 主次律**:slot 浅绿底为主(行程是主角),机位=灰字小字紧随其后,机位独立底色卡=反客为主;「今日拍法」类日汇总卡废止 - **每一天都要有图**:`
` 放在 `.day` 里、`.day-head` 之后,外层 `
`(双列)或 `
`(单列)——**家族 CSS 本来就带 `.photos` 全套 8 条规则**。 - 图必须 **base64 内嵌**(单文件断网可开);**逐张眼见亲选剔错图**,别信文件名;**非本趟实拍的一律标「(示意)」**,并在页脚写明「哪些是实景 / 哪些是同题材示意 + 图源」。 - **图源三级链(v3.42 定稿;2026-09-15 的「Commons 不可达」结论已推翻——当时网络工具未开属环境误判,2026-09-26 起直连或本地网络环境自行解决实测全程可达,武汉/东京/国际三册 16 张图全 Commons 实抓)**:①**Commons=地标实拍首选**(免 key):直连或本地网络环境自行解决访问(本机代理端口),按地标名精准检索;纪律=v3.30 挑图三坑(核对拍摄对象+年份,古画/在建/重滤镜跳过)+逐张导出亲验 ②**Pexels=氛围空镜备用**(免费可商用):key 存作者本地 .env(免费自注册 2 分钟,配 pexels_fetch.py 脚本);地标覆盖差、小众景点基本没有,适合海滩/日落类氛围图 ③**AI 生图兜底**:同题材+标「(示意)」,页脚注明「AI 生成示意」。 → **首选改 Pexels**(作者 2026-09-03 已固化「主动调用、不等提醒」):key 在 作者留存的爆款分析工具配置,或直接打 API `https://api.pexels.com/v1/search?query=<词>&per_page=4&orientation=landscape`(带 `Authorization: `;**沙箱内可达,实测 200**)。Pexels 免费可商用。 - **选图纪律**:地标类优先挑**真在当地的**(广州实测命中很准:Canton Tower / Pearl River / Liede Bridge / Foshan 都是真景);本地小众景点(清晖园、逢简水乡、长隆各园)Pexels 没有 → **同题材素材 + 标「(示意)」**,**绝不用别处照片冒充当地实景**。 - 🔴 **验收要出数字,不能靠肉眼**:`document.querySelectorAll('.photos img')` 逐张查 `naturalWidth>0 && rect.width>50` 才算真渲染;再跑四档视口(320/390/768/1280)确认 `scrollWidth-clientWidth==0`(base64 大图最容易在窄屏撑破)。 - 🔴 **反例就是本坑**:广州顺德版首版 **0 张图(96KB)**,而镇江 8 张(1.23MB)、丽水 5 张、宁波 4 张——`.photos` 的 CSS **一直在**,只是生成脚本从没产出 `
`,于是「骨架在、内容缺」,**看 CSS 或跑原四检都发现不了**。→ **交付前直接数 `
` 个数 ≥ 行程天数**(进自查清单)。 5. **停车信息必查**(2026-09-13 丽水同批约定):自驾/租车人群,每天卡片底部给 🅿️ 专条,写清**停车场位置 / 收费 / 是否需换乘景交 / 旺季几点前有位**;查不到就如实标「以现场为准」,别留空。 6. **✅ 打卡清单(v3.24 第三件套,玩法=特种兵时必出、其他模式不出)**:特种兵专属产出物——每个打卡点一行:`地名 + 核心机位/拍什么 + 预计停留分钟数`;按动线顺序排列(不按类别),总行数=本趟计划打卡点总数(**数量本身就是特种兵的爽点,要显性给数字**:如「本趟打卡 23 个点」);复刻「集齐感」设计:预留勾选框(HTML 版可点,与勾选记忆同机制);收官行给「已完成 ___ / 计划 ___」计数位 6. 🔴 **路书 HTML 骨架 —— 固化基准(2026-09-15 作者 质问「每一个地方的攻略都是大同小异没有一致性」后立规)** - **背景(实测数据,别重犯)**:盘上 11 份路书 = **7 个 CSS 指纹 / 4 套 IA 命名 / 8 套导航集合**。陕甘宁两版是另一套极简模板(CSS 888 字符、无 token)、广州 是第三套(4586 字符、**无侧栏**、区块叫 `ov/cd/trip`)。**根因:骨架从来没写进过 skill**——旅行 skill 里 `id="overview"`/`区块`/`IA`/`侧栏` 的出现次数**全是 0**,只有「六维度」内容要求。于是每趟要么"抄上一份"(越抄越漂:镇江差 56 字符、广州无版本标识版差 641 字符),要么从零做(直接另起模板)。 - 🔴 **硬规矩:新路书一律从基准骨架复制,不许另起模板、不许抄上一份成品。** - 🔴 **「特殊版」同样适用(2026-09-15 深夜 作者:「特殊版也要在最新版的框架生成啊」)**:**长辈版 / 亲子版 / 特种兵版 / 单人版**等特殊版**不是免死金牌**——同样只从基准骨架派生。差异**只准**落在 ①正文层 ②同一 `