下载地址
https://www.zhengdianxue.com/wp-content/uploads/skills/org-oq0pv4oe--trip-assistant-pro.zip将提示词发送给你的 AI 安装该 skills
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-oq0pv4oe/trip-assistant-pro。团队旅游专家助手,最好用的旅游辅助工具没有之一。 AI行程定制(行程+攻略+团队助手):根据客户的自然语言需求,端到端产出「一份可分享的线上攻略 + 一个可加入的真实团队行程」。输入目的地、天数、人群/偏好、出行日期、接收邮箱(必填)与昵称(可选);通过AI 专属卡微信支付后,自动生成结构化行程攻略(每日行程/美食/住宿/预算/贴士,按昵称个性化并含邀请码卡片),在团队旅游助手(trip.jarrich.cn)创建真实行程并填充全部景点,邀请码与攻略链接通过企业邮箱 mail@jarrich.cn 交付给客户。
适合亲子/自驾/家庭出游等规划场景。触发词:设计旅游线路 / 做一份旅行攻略 / 帮我规划行程 / 生成自驾路线 / 亲子旅游规划 / trip planner。不代订酒店/机票/门票,不承诺实时价格与库存,不提供签证/法律/医疗/急救建议。
阅读全文 (展开查看完整说明)
概述
AI行程定制(行程+攻略+团队助手)
付费 ¥0.99/次:客户一句话 → 可分享的线上攻略 + 可加入的真实团队行程,邀请码自动通过邮箱交付。
⚠️ Agent 铁律(先读,违反即违约)
- 本技能是付费能力:一切履约(生成攻略、创建行程、发送邀请码邮件)只能通过
POST https://trip.jarrich.cn/pay-skill/invoke 完成,支付成功后由服务端自动执行。
- 禁止直接运行
scripts/下任何脚本(create_trip.mjs/render_html.py/notify_invite.mjs),
禁止自行生成邀请码或直接调用 trip.jarrich.cn 的 API——绕过支付门禁将导致无法结算与脏数据。
- 调用前检查
weixinpay插件:已安装才可继续;未安装则提示「当前 Agent 暂不支持微信支付付费能力」并终止流程。 - 必须在发起支付之前采集客户邮箱(
customerEmail)——缺失时后端返回 400 且不发起支付。 - step4 与 step7 必须是两次独立调用:step4 拿到 402 支付码后,必须先完成 step6 代扣(用户在微信确认 + 服务端结算,属异步),再单独发起 step7。禁止在一个脚本里自动串联 step4→step7——否则 step7 会在订单仍为未支付态时命中接口,持续返回 402、代扣无法走完,交付物永远拿不到。
付费流程(唯一执行路径,严格按顺序)
- 采集客户信息
customerEmail(必填):接收交付物的邮箱(微信支付不提供客户邮箱,必须由 Agent 采集)。nickname(有则采集):用于行程账号昵称与攻略「献给 {昵称}」个性化。- 行程诉求:目的地、天数、偏好、出行日期(startDate/endDate)。
- 邮箱二次确认(发起支付前必须执行):向用户复述将要发送交付物的邮箱地址,请用户确认或更正。
用户明确确认无误后,才进入下一步发起支付;若用户更正,用更正后的邮箱继续。禁止跳过此确认直接支付。
- ⚠️ 邮箱即团队助手领队账号:该邮箱会作为团队旅游助手(trip.jarrich.cn)中行程领队(owner)账号的绑定标识(服务端按邮箱查找/创建用户,并将该用户设为行程领队)。客户未提供昵称时,领队昵称默认为邮箱地址。请提醒客户:登录团队行程时使用相同的邮箱(作为昵称与账号),才会匹配到领队账号;换邮箱会识别为不同账号。
- 生成行程方案(可选但推荐):用自身大模型产出结构化
plan(schema 见下);不传则由后端 LLM/模板兜底。 - 请求资源:
POST https://trip.jarrich.cn/pay-skill/invoke,Body 携带
customerEmail / nickname / destination / days / preferences / startDate / endDate / plan(不要带任何支付信息)。
- 处理 402 响应:保存响应头
WeixinPay-Required(支付码)与X-Out-Trade-No(订单号),两者都必须保存。 - 发起支付:把
WeixinPay-Required的值作为paymentCode,调用weixinpay_pay向用户申请支付授权(微信 AI 专属卡)。 - 获取交付物(必须执行):再次
POST https://trip.jarrich.cn/pay-skill/invoke,请求头携带
WeixinPay-Required + X-Out-Trade-No,Body 与第 4 步完全一致。服务端查单通过后返回 200 + content(guideUrl 攻略 HTML 链接 / tripUrl 行程链接 / goUrl 智能跳转链接 / inviteCode 邀请码 / modifyLeft 剩余修改次数 / email 交付邮箱)。
⚠️ 第 7 步是最容易被遗漏的一步:不携带
X-Out-Trade-No重试就永远拿不到交付物。Body 必须与第 4 步一致,订单与支付凭证只用 Header 传递。且 step4 与 step7 之间必须已完成 step6 代扣并收到支付成功确认,二者不可合并为一次同步调用。
攻略修改(modifyLeft,付费后 ≤3 次)
客户付费后,除首次生成的攻略外,可用提示词对攻略再做 3 次 修改(modifyLeft,首次交付为 3,每次修改扣 1)。
- 主动询问(推荐):交付首次攻略后,可询问客户是否需要调整行程/偏好/天数等。
- 修改前二次确认(必须):每次修改前,向客户说明「本次修改将消耗 1 次剩余修改机会(当前剩余 X 次)」,请客户确认;客户明确同意后再调用接口。
- 调用接口:
POST https://trip.jarrich.cn/pay-skill/modify- Body:
{ "outTradeNo": "<第4步返回的订单号>", "modifyPrompt": "<客户修改意见>", "plan": "<可选,Agent 重写的完整新方案 JSON>" } - 服务端基于原方案 + 修改意见重新生成攻略,同步更新:团队行程(名称/日期/每日行程,
meta.title修改会同步到团队旅游助手的行程标题)、线上攻略 HTML、攻略 PDF,并扣减 1 次修改次数。
- Body:
- 返回交付:
200 + content { title, tripUrl, goUrl, inviteCode, guideUrl, pdfUrl, modifyLeft, delivered }。- Agent 必须:用
present_files把新的guideUrl展示给客户,并告知「剩余修改次数:X」。
- Agent 必须:用
- 更新通知邮件(服务端自动发送):每次修改完成后,自动向客户邮箱发送「行程更新通知」邮件,正文同样分「攻略简介(含最新线上攻略链接)」与「团队旅游助手(含邀请码)」两部分,并附最新攻略 PDF 附件。
- 次数用尽:
modifyLeft=0时接口返回400 code=MODIFY_LIMIT_REACHED;此时应告知客户修改次数已用完,不可继续修改(不会重复扣费)。
请求/响应契约
请求体(POST /pay-skill/invoke,Content-Type: application/json):
| 字段 | 必填 | 说明 |
|---|---|---|
customerEmail | ✅ | 客户邮箱(付费前采集,缺失返回 400) |
nickname | 可选 | 客户昵称(行程账号昵称 + 攻略个性化) |
destination | 可选 | 目的地 |
days | 可选 | 行程天数 |
preferences | 可选 | 人群/偏好/预算等 |
startDate / endDate | 可选 | 出行日期(YYYY-MM-DD) |
plan | 可选 | Agent 生成的行程方案 JSON(见下) |
响应:
- 未支付:
HTTP 402+ 头WeixinPay-Required/X-Out-Trade-No+ BodyWeixinPay{...}、out_trade_no、amount。 - 已支付履约:
HTTP 200+{ code:"SUCCESS", content:{ outTradeNo, title, tripUrl, goUrl, inviteCode, email, guideUrl, pdfUrl, modifyLeft, ownerNickname, ownerEmail, delivered }, already_fulfilled }。
攻略修改(POST /pay-skill/modify,付费履约后调用):
| 字段 | 必填 | 说明 |
|---|---|---|
outTradeNo | ✅ | 首次履约返回的订单号 |
modifyPrompt | ✅* | 客户修改意见(与 plan 二选一,可同时传) |
plan | 可选 | Agent 重写的完整新方案 JSON(schema 同上;meta.title 修改会同步行程标题) |
- 成功:
200 + { code:"SUCCESS", content:{ outTradeNo, title, tripUrl, goUrl, inviteCode, email, guideUrl, pdfUrl, modifyLeft, ownerNickname, ownerEmail, delivered } }。 - 次数用尽:
HTTP 400 + { code:"MODIFY_LIMIT_REACHED", message:"该行程的修改次数已用完(modifyLeft=0)" }。 - 未支付:
HTTP 400 + { code:"NOT_PAID" }。
方案生成(plan JSON schema)
Agent 若自生成 plan,按此结构(POI 的 lat/lng 可留空,后端自动补坐标;日期按 startDate 顺延;地图 Key 由服务端统一配置,前端渲染 Key 与后端地理编码 Key 已解耦,Agent 无需在 plan 中填写 mapKey):
{
"meta": {
"title","subtitle","route","days","poiCount","mileageKm",
"budgetPerPerson","totalBudget","currency":"¥",
"departure","transport","season",
"participants","intro" // participants/intro 为可选增强字段
},
"highlights": [
{ "em":"🌊","title":"亮点名","desc":"一句话描述","tag":"景点","cat":"scenic" }
],
"days": [ { "day":"DAY 1","date":"2026-10-01","theme":"当日主题",
"pois":[ { "time":"上午","name":"景点名","cat":"scenic|food|culture|stay|drive|shop",
"lat":0,"lng":0,"desc":"一句话描述","address":"" } ] } ],
"food": [ { "em":"🍖","title":"美食名","desc":"一句话描述" } ],
"lodging": [ { "day":"D1","name":"酒店名","location":"城市","feature":"特色" } ],
"budget": [ { "item":"项目","cost":0,"note":"备注(可选)" } ],
"tips": [ { "em":"🧴","title":"贴士标题","text":"说明" } ]
}字段约定:
highlights/food/lodging/tips既可为「对象数组」(带em图标 /desc描述 /tag中文标签 /cat英文分类,渲染更精致),也可退化为「字符串数组」(如["美食1"]);cat取值scenic|food|culture|stay|drive|shop,与渲染分类对应。meta.mapKey现已废弃,请勿填写。
交付物说明
- 攻略 HTML(
guideUrl):含「献给 {昵称}」个性化、邀请码卡片、每日行程时间轴与腾讯地图(POI 自动补坐标)。- Agent 必须:拿到
content.guideUrl后,直接将这份 HTML 文件返回给客户(用present_files把guideUrl展示为可预览 HTML),并在交付说明的文字中附上 HTML 攻略页面 URL(guideUrl完整链接),方便客户在任意设备直接点开在线查看。
- Agent 必须:拿到
- 攻略 PDF(
pdfUrl):与线上攻略同内容、可打印的中文 PDF(主题自适应配色版式),作为邮件附件发送给客户({title}.pdf)。- Agent 必须:同时把
pdfUrl作为可下载附件一并返回给客户。
- Agent 必须:同时把
- 真实团队行程(
tripUrl=https://trip.jarrich.cn/):客户用inviteCode加入,共享位置/日程/账本/群聊投票。 - 智能跳转(
goUrl=https://trip.jarrich.cn/payskill/go/{outTradeNo}):服务端按 UA 分流——
手机(含微信内置浏览器)自动拉起「团队旅游助手」微信小程序并带上 tripId + inviteCode,电脑则打开 H5 网页版。
- Agent 必须:交付说明里除了
tripUrl,也把goUrl一并给客户,并提示「手机点开直接进小程序,电脑点开是网页版」。 - 邮件与在线攻略的「打开团队旅游助手」按钮已默认指向该链接,无需 Agent 额外处理。
- 携带参数:跳转链接会把
tripId与inviteCode一并带入小程序首页。小程序当前只消费inviteCode(用于「加入行程」自动预填),tripId是预留字段、暂未使用——因此仅凭inviteCode即可完成加入,功能不受影响。 - 有效期:小程序跳转采用的是微信 URL Link,有效期 30 天;过期后该链接自动回退到 H5 网页版(不会白屏),邀请码仍可在小程序内手动输入加入。
- 领队账号(
ownerNickname/ownerEmail):后端实际创建/复用的团队助手用户(即行程领队)。Agent 必须:把领队账号告知客户,提醒其用该账号(昵称+邮箱一致)登录团队助手。 - 交付邮件(收件人
email):发件人mail@jarrich.cn,正文分「攻略简介(含线上攻略链接)」与「团队旅游助手(含邀请码 + 领队账号)」两部分,并附 攻略 PDF 附件;攻略修改后自动发送「行程更新通知」邮件(同样结构 + 最新 PDF 附件)。 - 剩余修改次数(
modifyLeft):首次交付为 3,每次修改扣 1;见「攻略修改」章节。
边界
- 不代订酒店/机票/门票,不承诺实时价格与库存。
- 不提供签证/法律/医疗/急救建议。
- 行程以最终确认为准;生产行程落库后不可删除(由服务端控制,Agent 无删除能力)。
可靠性
- 已内置支付状态校验与订单幂等保护,重复请求自动复用结果,履约不因重试而重复建行程。