【中秋国庆 VibeCoding】错峰出行决策器:国庆人挤人、机票翻倍?订票前先看红黄绿信号灯,挑出人少又省钱的那几天

体验地址:https://manchuan.me/cuofeng-decide

每年国庆出行都像开盲盒:订票的时候只看了有没有票,到了才发现 10 月 1 日的机票是平日的两倍多,酒店一晚顶平日三晚,景区里人贴着人挪动。同一个目的地,晚走两天,花销和体验可能完全是两个故事。麻烦就麻烦在订票之前没人告诉你哪天贵、哪天挤,只能凭感觉下单,订完再打开比价软件心凉半截。

错峰出行决策器解决的就是这个"订之前两眼一抹黑"的问题。填上出发地、目的地和假期起止日期,中间每一天都会算出一个 0 到 100 的错峰指数,配红黄绿三个信号灯:60 往上是绿灯,属于错峰优选;40 到 60 是黄灯,体验一般;40 以下是红灯,拥挤避开。哪天出发、哪天返程,看灯做决定就行。

这个工具能做什么

打开页面先填四个格子:出发地、目的地、出发日期、返程日期。出发地和目的地都带城市联想,输两个字就弹出候选列表,热门城市还标了档次。出发地和目的地填成同一个城市会被拦下来,日期倒挂也不行,区间最长支持 20 天。

提交之后页面分成几块。最上面是总览:一个环形图显示整个区间的平均指数,旁边直接给出推荐日和避开日,比如"放心去 10 月 4 日"“尽量避开 10 月 1 日”,还会算出最佳错峰窗口——平均分最高的那连续两三天。中间是每天的卡片,除了指数和信号灯,还有当天机票预估价和它相当于平日的几倍、高铁余票紧张度、酒店每晚价格、客流热度、真实天气,外加一句直白的话:“人少价又低,错峰黄金日,核心景点放这天”“人从众高峰,机票酒店双双翻倍,能改期就改期”。下雨天会提醒带伞,下雪天提醒保暖和路况。


想玩得更细可以接 AI 策略:填一个 OpenAI 兼容接口的地址、密钥和模型名,工具会把整段日期的错峰数据整理好喂给模型,换回一份总体策略加逐日安排加避坑提示。配置存在本地浏览器里,下次打开不用重填。



最后是分享。点分享按钮,Canvas会画一张的竖版卡片,大标题是"上海 → 西安"这样的路线名,配上日期区间和每天的信号灯,存成图片直接丢朋友圈或者家庭群,家里人看图就明白为什么非要 4 号再走。

指数是怎么算出来的

这里得说实话:市面上没有公开的全网比价接口,所以机票和酒店价格是模拟的,但模拟得很有原则。每条线路、每个日期用一个确定性算法生成价格——同样的出发地、目的地和日期,不管刷新多少次,算出来的数字永远一样,不是每次打开都变着花样的假随机。机票和高铁按"出发地 → 目的地"这条线路来算,从上海去西安和从成都去西安是两个价;酒店只看目的地。规则全部摆在明面上,数字当参考用,真实票价以购票平台为准。

天气是接的真数据,走 Open-Meteo 的免费接口,不用注册也不用密钥,晴天雨天直接影响当天的分数。

单日指数由四块加权合成:客流热度占 35%,机票和酒店价格相对平日的倍数占 30%,天气占 20%,高铁余票紧张度占 15%。权重是拍脑袋定的,但拍得有理由——错峰错峰,核心是躲人,其次才是省钱。

实际跑一组数据感受一下:上海出发去西安,10 月 1 日到 8 日。1 号机票预估三千多,是平日的 2.5 倍,酒店每晚七百九,客流热度顶到 90 多分,红灯亮起;往后翻到 4 号,指数开始往上爬,5 号和 6 号进了绿灯,最佳错峰窗口落在 4 号到 6 号这三天。晚走两天,机票酒店的价格档位完全是另一回事。

20261001201135_rec_

用 TraeCode 做的过程

整个项目在 TraeCode 里从空文件夹写到能跑,React 19 加 TypeScript,头一天就把第一版页面跑了起来,信号灯、每日卡片、天气这些核心东西全都在。


过程里来回折腾过几件事。一开始只做了单城输入,后来想明白"机票价格不看出发地根本不对",回头把计价模型改了:价格的种子从城市名换成"出发地 → 目的地"整条线路,顺手加了同城校验和城市联想。AI 策略功能刚接上的时候踩过一个挺典型的坑——模型返回的 JSON 里带了个尾逗号,页面直接报 “Expected ‘,’ or ‘}’ after property value in JSON at position 235”。后来在解析这一步加了容错:先按原文解析,失败就把尾逗号清掉再试一次,还不行就给一句中文提示,让人点重新生成。这些活儿全是在 TraeCode 对话框里描述现象改出来的,报错截图直接贴进对话框,改完热更新立刻能看效果。

打包也省事了:构建配置里加了 vite-plugin-singlefile,整个应用——代码、样式、图标——全部内联进一个 284 KB 的 index.html,双击就能打开,不需要任何服务器。家人朋友想用,把这个文件发过去就行。

体验地址:https://manchuan.me/cuofeng-decide

写在最后

这个工具不神秘,指数也不是什么黑魔法,做的事情其实很简单:把"哪天人少、哪天便宜、哪天下雨"摊开在一张时间轴上,让人做决定的时候不用再靠猜。TraeCode 的对话式开发对这种小工具太合适了,从一个模糊的念头到能跑、能分享的东西,中间只隔几轮对话。国庆假期还剩几天,如果票还没订,不妨先看看灯再下手。

3 个赞

新增Ai功能

2 个赞