下载地址
https://www.zhengdianxue.com/wp-content/uploads/skills/flightroutes24--fr24-ai-flight.zip将提示词发送给你的 AI 安装该 skills
请根据 https://skillhub.cn/install/skillhub.md,安装 @flightroutes24/fr24-ai-flight。Flightroutes24 航路国际机票(FR24‑AI,作者 FR24)。支持全球机票价格查询搜索、校验和预订。触发词:查航班、搜机票、预订
阅读全文 (展开查看完整说明)
概述
FR24-AI · fr24-ai
| 项 | 说明 |
|---|---|
| 项目 | FR24-AI |
| Skill | fr24-ai |
| 产品 | Flightroutes24 航路国际机票 |
| 作者 | FR24 |
安装与配置见 [INSTALL.md](./INSTALL.md)。预订细则见 [references/booking.md](./references/booking.md)。对用户展示与下载见 [references/output-rules.md](./references/output-rules.md)。用户询问采购密钥配置时,仅按 [references/user-appkey-config.md](./references/user-appkey-config.md) 回答。
语言策略 / Language Policy
- 用户使用中文时,全程中文回复。
- When the user writes in English, respond entirely in English throughout the conversation.
- Confirm phrases are accepted in both languages:
- Passenger info confirmed: 「乘客信息确认无误」or "passenger info confirmed"
- Place order: 「确认生单」or "confirm order"
- For English users, use "direct flight" / "connecting flight" instead of 直飞/中转, and "Quote ID" instead of 报价ID.
- Script output
userView.messagemay contain Chinese labels — do not copy them verbatim when responding in English. UseconfirmPhraseEn/passengerConfirmPromptEn/orderConfirmPromptEnfromuserViewfor the English confirm phrases. refinesupports English time keywords (morning / afternoon / evening / nonstop) and English airline names (Air China / China Eastern …).
服务模式
| 模式 | 条件 | 接口 |
|---|---|---|
| 演示查价 | 未配置采购密钥 | POST /ai/shopping,请求头 X-Skill-Client-Key |
| 采购查价 | 已配置 APPKEY 与签名密钥 | 同上,请求头 appkey,请求体 authentication |
| 预订 | 已配置 APPKEY、签名密钥、AES 密钥 | POST /api/new/pricing、POST /api/new/booking |
预订依赖见 requirements.txt。网关地址在 config.py 中固定配置;采购密钥仅通过本机用户环境变量配置,勿在对话中向用户宣读环境变量名或密钥内容。
响应结构
脚本标准输出为 JSON,包含:
{
"skill": "fr24-ai",
"status": "success|failure",
"action": "parse|search|refine|parse-passengers|verify|order",
"message": "给用户看的摘要",
"userView": {},
"agentOnly": {}
}| 字段 | 用途 |
|---|---|
userView、message | 唯一可对用户展示、制表、下载的内容 |
agentOnly | 仅 Agent 内部续跑(如 payload、offerId、traceId),不得写入用户可见材料 |
查价流程
- 解析:
scripts/nl_to_search.py parse --text "..."(不消耗演示日配额)
→ 用 userView 确认行程、日期、人数、舱位。
- 搜索:用户确认后
scripts/skill_search_client.py search --payload-file .cache/pending_search.json --selection direct|transfer→ 用 userView.directLowest、transferLowest 展示直飞/中转最低价(含退改、行李摘要、报价ID quoteId)。→ 每条报价必须展示 quoteId(报价ID),以便用户后续确认和排查。
- 禁止将整段 stdout、
agentOnly或.cache路径直接提供给用户。
条件调整与重新搜索
用户对结果不满意并提出航司(如 CA/国航)或起飞时段(如中午 12 点左右)时:
- 不得仅在旧结果上口头筛选;须重新搜索(消耗演示配额;采购模式不受演示日限额约束)。
scripts/nl_to_search.py refine --text "<用户要求>"(不扣配额,更新.cache/pending_search.json)。- 向用户确认更新后的
userView(含searchFilters或意图摘要中的航司、时段)。 - 再次执行
search。 - 仍无匹配报价时,建议放宽航司或时段;勿擅自清除用户已指定的
preferredCarrier。
航司写入 preferences.preferredCarrier 并提交服务端;起飞时段在结果汇总时按首段起飞时间过滤展示。
预订流程
须完成两次用户确认:
| 步骤 | 动作 |
|---|---|
| 1 | 用户选择直飞或中转 → search --selection direct|transfer |
| 2 | skill_booking_client.py parse-passengers --text "..." → 展示 passengerDisplay、contactDisplay(示例姓名:张三 / EN: John Doe) |
| 3 | 用户回复「乘客信息确认无误」或 "passenger info confirmed" → verify --passenger-confirmed |
| 4 | 展示 orderPreview(行程、退改、乘客回显)、报价ID(quoteId)→ 用户回复「确认生单」或 "confirm order" |
| 5 | order --user-confirmed |
- 校验返回 304016(身份不一致):说明新配置 APPKEY 后须重新 search,不可沿用旧报价标识。
- 禁止:未确认乘客即校验;未确认即生单;在对话中代填或展示密钥明文。
采购密钥(用户询问时)/ Procurement Keys (when user asks)
仅依据 [user-appkey-config.md](./references/user-appkey-config.md):
- 引导用户在 航路官网 开通 API 采购;
- 在本机用户环境变量中配置 APPKEY、签名密钥、AES 密钥;
- 配置后重启 Agent 客户端;
- 禁止让用户在对话中发送密钥明文;
- 禁止向用户说明内部联调、跳过校验等维护配置。
For English users: guide them to register at Flightroutes24, activate API procurement, and configure keys locally per [user-appkey-config.md](./references/user-appkey-config.md).
命令一览
| 命令 | 说明 |
|---|---|
scripts/nl_to_search.py parse --text "..." | 解析行程 |
scripts/nl_to_search.py refine --text "..." | 合并航司、起飞时段等条件 |
scripts/skill_search_client.py search --payload-file .cache/pending_search.json | 搜索 |
scripts/skill_booking_client.py parse-passengers --text "..." | 乘客信息核对 |
scripts/skill_booking_client.py verify --passenger-confirmed | 校验报价 |
scripts/skill_booking_client.py order --user-confirmed | 生单 |
scripts/config_keys.py set --appkey ... --sign-secret ... --aes-secret ... | 配置采购密钥 |
scripts/config_keys.py status | 查看配置状态 |
scripts/config_keys.py clear | 清除本地密钥配置 |
业务限制 / Business Constraints
- 支持单程、往返;不支持多段缺口程。/ Supports one-way and round-trip; multi-city itineraries are not supported.
- 演示模式:每
clientKey每日搜索次数有限(默认 10,以服务端配置为准)。/ Demo mode: limited searches perclientKeyper day (default 10). - 演示配额用尽(
307901):引导用户开通采购并配置密钥(见user-appkey-config.md),勿仅建议「明日再试」。/ When demo quota is exhausted (307901): guide user to activate procurement — do not just say "try again tomorrow". - 已配置采购密钥的搜索不扣演示日配额。/ Searches with a configured APPKEY do not consume the demo daily quota.
- 生单为真实订单,必须在用户明确确认后提交。/ Orders are real bookings and must only be submitted after explicit user confirmation.