Back to skills
SKILL.md
Travel Refund
ASecurity查询订单列表、退票和改签。当用户提到查订单、我的订单、订单列表、退票、退款、改签、改期、改航班、退机票、退火车票、退酒店、取消订单时触发。
- 417 stars
- 0 votes
- 0 copies
- 0 views
- Added November 8, 2026
Works with
Security analysis
100/100Pro scans all 2 files and shows the line behind each finding
npx -y skills add infometa/workbuddyskills --skill travel-refund --agent claude-codeAre you the author of Travel Refund?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/infometa-travel-refund)---
name: travel-refund
description: 查询订单列表、退票和改签。当用户提到查订单、我的订单、订单列表、退票、退款、改签、改期、改航班、退机票、退火车票、退酒店、取消订单时触发。
description_zh: 查询订单列表,支持退票/改签操作。
description_en: Query order list, support refund and rebooking.
version: 1.0.0
author: 梓如商旅
---
# 退票/改签
帮用户查询已有的机票/火车票/酒店订单,并生成退票或改签的 **H5 跳转链接**。用户点击链接后在 H5 页面完成退票或改签操作。
## 与查询、预订的分工
- 只想查班次/舱位/房型、看有哪些选项 → `travel-query`
- 要规划一整段行程 → `travel-plan`
- 已经选定方案、要买 → `travel-booking`
- 要退票/改签已有订单 → 本技能
## 工具总览
| 工具 | 用途 | 什么时候用 |
|---|---|---|
| `ziru_order_list` | 查询当前用户的订单列表 | 用户要退票/改签时,先查订单让用户选择 |
| `ziru_refund_link` | 生成退票 H5 跳转链接 | 用户选定了要退票的订单 |
| `ziru_rebooking_link` | 生成改签 H5 跳转链接 | 用户选定了要改签的订单 |
详细参数与返回字段见 `@references/refund.md`。
## 核心规则
### 1. 先查订单列表,再让用户选择
用户说"退机票"或"改签火车票"时,**先调 `ziru_order_list` 查出订单列表**,把订单展示给用户,让用户确认要退/改哪一个。不要假设订单号。
### 2. 订单列表展示规则
| 订单数量 | 展示格式 |
|----------|----------|
| **1 条** | 纵向键值对(`- 字段名:值`) |
| **2 条及以上** | Markdown 表格 |
**表格模板:**
```
| 序号 | 类型 | 行程 | 日期 | 车次/航班/酒店 | 金额 | 状态 | 操作 | 订单号 |
|:----:|:----:|------|------|----------------|-----:|------|------|--------|
| 1 | 机票 | 北京→上海 | 09-30 | HU7613 | ¥650 | 已出票 | [退票](refundLink) [改签](rebookingLink) | 2609211339... |
| 2 | 酒店 | 上海 | 10-29~10-31 | 锦江都城 | ¥854 | 预订成功 | [退票](refundLink) - | 2609211340... |
```
> 操作列直接使用接口返回的 `refundLink` / `rebookingLink` 字段值作为 URL
> 日期格式:`MM-dd`,酒店显示 `MM-dd~MM-dd`
**操作列展示规则**:
- 使用 `refundLink` / `rebookingLink` 字段生成 **Markdown 超链接** `[退票](url)`
- 字段为空时显示 `-`
- 示例:`[退票](http://...) [改签](http://...)`
### 3. 单独输出链接时用裸 URL
当用户确认要退/改某个订单后,**单独输出**链接时使用裸 URL 格式:
- 退票:`退票链接: <url>`
- 改签:`改签链接: <url>`
**不要**包成 Markdown 超链接,调用方靠识别裸 URL 渲染成可点击入口。
### 4. 退票和改签分别生成
两个不同的操作,分别用不同的工具和链接,**不要合并**。
### 5. 不是所有订单都能退改
订单列表里每个订单带 `refundable`(是否可退)和 `rebookable`(是否可改)标识。不可退/改的订单如实告知用户原因(如"该订单已退票""该订单状态不支持改签"),**不要生成链接**。
**退改时间规则:**
| 业务类型 | 退票规则 | 改签规则 |
|----------|----------|----------|
| 机票 | 起飞时间之前 | 起飞时间之前 |
| 火车票 | 出票完成 + 距离开车时间 5 分钟以上 | 出票完成 + 发车日期当天 23:59:59 之前 |
| 酒店 | 入住日期之前 + 未入住(状态为"已确认"或"预订成功(等待入住)") | ❌ 不支持改签 |
### 6. 后端不执行退票/改签操作
只生成 H5 跳转链接,**不会真正退票或改签**。给用户说明时:
- 用"已为您生成退票/改签链接"
- **禁用**"已退票""已改签""已取消"
### 7. 链接 1 小时内有效
过期需要重新生成。给用户说明失效时间。
### 8. 业务类型要匹配
- 机票订单只能退/改机票,不能改火车
- 火车订单只能退/改火车,不能改酒店
- 酒店订单只能退票,**不支持改签**
`businessType` 只能是 `flight` / `train` / `hotel` 之一。
### 9. 参数不确定就先问
订单号不明确时,先列出订单让用户选择,不要猜测。
---
## 流程
1. 从对话中确定用户要退票还是改签,以及业务类型(机票/火车/酒店)
2. 调 `ziru_order_list` 查询订单列表(可按 `businessType` 过滤)
3. 把订单列表展示给用户,让用户选择要退/改的订单
4. 根据用户选择,调 `ziru_refund_link` 或 `ziru_rebooking_link` 生成链接
5. 输出链接和说明
---
## 典型调用链
**"帮我退掉昨天订的北京到上海的机票"**
```
ziru_order_list(businessType=flight)
→ 列出该用户的机票订单
→ 找到北京→上海的那张
→ 检查 refundable=true
→ ziru_refund_link(orderId=F20260920001, businessType=flight)
→ 输出退票链接
```
**"我的火车票想改签到明天"**
```
ziru_order_list(businessType=train)
→ 列出该用户的火车订单
→ 用户确认是哪一张
→ 检查 rebookable=true
→ ziru_rebooking_link(orderId=T20260919002, businessType=train)
→ 输出改签链接
```
**"退掉上海的酒店"**
```
ziru_order_list(businessType=hotel)
→ 列出该用户的酒店订单
→ 找到上海的那家
→ 检查 refundable=true
→ ziru_refund_link(orderId=H20260918003, businessType=hotel)
→ 输出退票链接
```
---
## 输出示例
### 退票链接输出(机票)
```
已为您生成退票链接(1 小时内有效,点击链接后在页面完成退票操作):
机票订单 2609211339443380a0123771886 北京→上海 2026-09-30 HU7613
退票链接: {前端域名}/#/Air/AirOrderDetail?orderID=2609211339443380a0123771886&t=xxx
本次链接 2026-09-20 18:30 前有效,逾期请重新生成。
```
### 退票链接输出(火车票)
```
已为您生成退票链接(1 小时内有效,点击链接后在页面完成退票操作):
火车票订单 T20260919002 北京南→上海虹桥 2026-09-19 G1 二等座
退票链接: {前端域名}/#/train/order_detail?orderID=T20260919002&t=xxx
本次链接 2026-09-20 18:30 前有效,逾期请重新生成。
```
### 退票链接输出(酒店)
```
已为您生成退票链接(1 小时内有效,点击链接后在页面完成退票操作):
酒店订单 2609211340575980h0139410844 上海·如家酒店 2026-09-15~09-17
退票链接: {前端域名}/#/Hotel/OrderDetail?orderID=2609211340575980h0139410844&t=xxx
本次链接 2026-09-20 18:30 前有效,逾期请重新生成。
```
### 改签链接输出(火车票)
```
已为您生成改签链接(1 小时内有效,点击链接后在页面完成改签操作):
火车票订单 T20260919002 北京南→上海虹桥 2026-09-19 G1 二等座
改签链接: {前端域名}/#/train/order_detail?orderID=T20260919002&t=xxx
本次链接 2026-09-20 18:30 前有效,逾期请重新生成。
```
---
## 异常与鉴权
- 鉴权失败或提示凭据无效时,告知用户**重新填写 Access Token**(在连接表单里点「如何获取访问令牌?」,登录并选择所属公司后复制页面上的 MCP Key),不要反复重试。
- 接口返回失败时,把 message 里的原因如实转达给用户(例如"未找到该订单""该订单状态不支持退票"),不要吞掉或改写成模糊说法。
---
## 不做的事
- 不直接调用退票/改签 API 接口——只生成 H5 跳转链接,由用户点击确认
- 不编造订单号或标识
- 不替用户在 H5 页面上完成退票/改签操作
- 不合并退票和改签链接——两个操作分别生成
- 与用户沟通禁用"已退票/已改签/已取消",统一用"已生成退票/改签链接"
- 不跨业务类型退改(机票订单不能改火车)
Files in this skill
- SKILL.md
- references/refund.md
Attribution
Related skills
View all in documentation →Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.