海外短剧热点剧本流水线(Overseas ShortDrama HotScript)
自动追踪海外各区域短剧热点,从市场洞察一路推进到可投喂即梦/可灵/海螺的多语言逐镜提示词,全程本地文件化管理,八阶段流水线作业。本 Skill 已接入支付宝 AI 按量付费,采用 402 Payment Required 协议实现 probe → pay → complete → ack 全闭环。
支付宝 AI 按量付费改造(核心模块)
支付依赖包
本 Skill 依赖支付宝官方 Agent 支付 SDK 完成加签、验付、履约:
# Node.js 环境(推荐,与 Skill 运行时一致)
npm install @alipay/agent-payment@latest
# 或 Java SDK(服务端部署时使用)
# com.alipay.sdk:alipay-sdk-java:4.38.0.ALL
SDK 能力清单:
- createPaymentNeededBill() — 生成 402 账单并 RSA2 加签
- parsePaymentProofHeader() — 解析 Payment-Proof 请求头
- verifyPayment() — 调用 alipay.aipay.agent.payment.verify 验付
- confirmFulfillment() — 调用 alipay.aipay.agent.fulfillment.confirm 履约回执
付费节点设计
| 阶段 | 付费状态 | 产出 | 说明 |
|---|---|---|---|
| probe | 免费 | S0 区域市场确认 + S1 热点题材匹配报告(市场简报+热点趋势+推荐题材方向) | 探针阶段,让用户看到热点洞察价值,不触发计费 |
| pay | 付费解锁 | S2 总纲 + S3 分集剧本 + S4 资产卡 + S5 多语言分镜 + S6 提示词 + S7 抽卡验收 | 一次性付费,解锁全部深度产出 |
| complete | 履约 | 交付完整项目文件夹压缩包 | 发送履约回执 alipay.aipay.agent.fulfillment.confirm |
| ack | 确认 | 订单状态更新为已完成 | 支付宝确认履约,订单闭环 |
支付全流程(probe → 402 → pay → Payment-Proof → verify → complete → ack)
Step 1: probe(探针 — 免费预览)
用户发起海外短剧需求时,先执行 probe 阶段:
1. 完成 S0 区域市场确认(提问目标国家/地区、语言、平台、体量)
2. 完成 S1 热点题材匹配(输出该区域当前热门题材榜单、爆款套路分析、本土文化偏好、避雷要素、推荐题材方向)
3. 向用户展示热点报告,并提示:「完整剧本+分镜+多语言提示词需付费解锁,单次调用价格 ¥X.XX」
> probe 阶段不生成订单号、不调用任何支付接口,纯免费热点洞察预览。
Step 2: 402 账单下发(Payment-Needed)
用户确认付费后,执行 402 账单下发:
-
生成商户订单号(幂等键):
out_trade_no = "OSH_" + timestamp_ms + "_" + random_hex(6) 示例:OSH_1739836600000_a1b2c3 -
构造账单 JSON 并 RSA2 加签(使用
@alipay/agent-payment的createPaymentNeededBill()):
json { "protocol": { "out_trade_no": "OSH_1739836600000_a1b2c3", "amount": "5.00", "currency": "CNY", "resource_id": "overseas-shortdrama-hotscript/full-package", "pay_before": "2026-10-03T14:00:00+08:00", "seller_signature": "<RSA2签名>", "seller_sign_type": "RSA2", "seller_unique_id": "2088xxxxxxxx" }, "method": { "seller_name": "海外短剧热点剧本工作室", "seller_id": "2088xxxxxxxx", "seller_app_id": "2021xxxxxxxxxx", "goods_name": "海外短剧完整剧本+分镜+多语言提示词包", "seller_unique_id_key": "seller_id", "service_id": "overseas_shortdrama_hotscript_v1" } } -
返回 402 Payment Required 响应:
```http
HTTP/1.1 402 Payment Required
Payment-Needed: <Base64URL编码后的账单JSON>
Content-Type: application/json
{
"error": "Payment Needed",
"message": "请先支付 5.00 CNY 以解锁完整海外短剧剧本+分镜+提示词包",
"resourceId": "overseas-shortdrama-hotscript/full-package"
}
```
- 订单持久化:将订单信息写入本地
orders/目录:
orders/OSH_1739836600000_a1b2c3.json { "out_trade_no": "OSH_1739836600000_a1b2c3", "amount": "5.00", "resource_id": "overseas-shortdrama-hotscript/full-package", "status": "pending_payment", "created_at": "2026-10-03T13:30:00+08:00", "pay_before": "2026-10-03T14:00:00+08:00", "target_region": "东南亚", "project_dir": "/path/to/海外短剧-项目名" }
Step 3: pay(用户支付)
智能体将 Payment-Needed 账单交给支付宝支付能力,用户确认后完成付款。支付宝返回支付凭证(payment_proof)和交易号(trade_no)。
Step 4: 携带凭证重试(Payment-Proof)
支付成功后,智能体携带 Payment-Proof 再次请求本 Skill 的付费资源:
POST /overseas-shortdrama-hotscript/generate HTTP/1.1
Payment-Proof: <Base64编码后的支付凭证信息>
Content-Type: application/json
{
"project_config": { ... },
"hotspot_report": { ... }
}
Payment-Proof 解码后内容:
{
"protocol": {
"payment_proof": "7cf8a6a93c924e13eaa4bf20c3a487f30d1fbdb759a1f229b4091b7d0158xxxx",
"trade_no": "2026040900828111317760000001xxxx"
},
"method": {
"client_session": "xxxxxxxxxxxxxsCiAgICAic2Vzc2lvbklkIjogInh4IiwK..."
}
}
Step 5: 验付调用(verify)
收到 Payment-Proof 后,执行验付调用:
- 用
parsePaymentProofHeader()解析出payment_proof、trade_no、client_session -
调用支付宝验付接口
alipay.aipay.agent.payment.verify:
javascript const verification = await alipay.verifyPayment(proof, { expect: { amount: "5.00", resourceId: "overseas-shortdrama-hotscript/full-package" } }); -
验付通过校验清单(全部必须满足,否则返回 402 要求重新支付):
-active === true— 凭证有效
-amount === "5.00"— 金额匹配
-out_trade_no是本 Skill 生成的订单号(查本地 orders/ 目录)
-resource_id === "overseas-shortdrama-hotscript/full-package"— 资源匹配
-trade_no未被重复履约(查本地订单状态,防止同一笔支付多次使用) -
验付通过后,更新本地订单状态:
json { "out_trade_no": "OSH_1739836600000_a1b2c3", "trade_no": "2026040900828111317760000001xxxx", "status": "payment_verified", "verified_at": "2026-10-03T13:35:00+08:00" }
Step 6: 履约交付(complete)
验付通过后,立即执行 S2–S7 全量产出:
- S2 总纲设定 → 02-总纲.md
- S3 分集剧本 → 03-分集剧本.md
- S4 人物/场景资产卡 → 04-人物卡.md / 05-场景卡.md
- S5 多语言全字段分镜 → 06-分镜表-第N集.md
- S6 画面&配音提示词 → 07-提示词-第N集.md
- S7 剧本抽卡验收 → 08-抽卡记录-第N集.md
全部产出写入项目文件夹后,异步发送履约回执:
// 调用 alipay.aipay.agent.fulfillment.confirm
await alipay.confirmFulfillment(verification.tradeNo);
更新订单状态为 fulfilled:
{
"out_trade_no": "OSH_1739836600000_a1b2c3",
"trade_no": "2026040900828111317760000001xxxx",
"status": "fulfilled",
"fulfilled_at": "2026-10-03T13:40:00+08:00",
"deliverables": ["02-总纲.md", "03-分集剧本.md", "04-人物卡.md", "..."]
}
Step 7: ack(订单确认闭环)
支付宝收到履约回执后返回确认,订单状态最终更新为 completed(ack):
{
"out_trade_no": "OSH_1739836600000_a1b2c3",
"status": "completed",
"ack_at": "2026-10-03T13:40:05+08:00"
}
订单持久化与幂等机制
订单文件目录结构:
项目根目录/
├── orders/
│ ├── OSH_1739836600000_a1b2c3.json # 订单1
│ ├── OSH_1739837000000_d4e5f6.json # 订单2
│ └── _index.json # 订单索引(trade_no → out_trade_no 映射)
└── 海外短剧-项目名/
├── 00-项目配置.md
├── 01-热点报告.md
└── ...
幂等规则(不可违反):
1. 订单号幂等:out_trade_no 全局唯一,同一订单号不允许生成第二笔账单
2. 支付凭证幂等:同一 trade_no 只能履约一次,验付时检查 _index.json 中该 trade_no 是否已存在
3. 重试幂等:用户携带 Payment-Proof 重试时,若订单状态已是 fulfilled 或 completed,直接返回已交付的产出文件,不重复生成、不重复扣费
4. 过期处理:超过 pay_before 未支付的订单,状态标记为 expired,不可继续支付
5. 退款标记:如发生退款,订单状态标记为 refunded,对应产出文件保留但标记为已失效
状态机:
pending_payment → payment_verified → fulfilled → completed
↓ ↓
expired refunded
核心机制一:热点自动更新进化
本 Skill 区别于普通剧本工具的核心能力:热点是活的,会自动更新进化。
热点感知模块
每次用户发起请求时,自动执行热点感知:
1. 检索目标区域短剧平台榜单(如 ReelShort、DramaBox、ShortMax、GoodShort、FlexTV 等)
2. 抓取热门剧情标签与爆款套路(当前区域最火的反转模式、人设组合、情绪钩子)
3. 分析受众偏好与本土文化要素(宗教禁忌、家庭结构、审美倾向、语言习惯)
4. 更新热点题材库(references/hot-story-library.md 自动追加新发现的题材套路)
5. 输出热点报告(写入 01-热点报告.md)
热点库进化规则
- 每次执行 S1 时,将新发现的热点题材、套路、标签追加到
references/hot-story-library.md - 标记每个题材的「热度趋势」(上升/平稳/下降)和「首次发现时间」
- 对超过 30 天未再出现的题材标记为「冷却」,但不删除(保留历史参考)
- 用户可手动触发「刷新热点」指令,强制重新检索更新
核心机制二:八阶段流水线
| 阶段 | 名称 | 付费状态 | 产出文件 | 详细规范 |
|---|---|---|---|---|
| S0 | 区域市场确认 | probe(免费) | 00-项目配置.md | 本文件「S0」节 |
| S1 | 热点题材匹配 | probe(免费) | 01-热点报告.md | references/hotspot-tracker.md |
| S2 | 总纲设定 | pay(付费解锁) | 02-总纲.md | references/stage-story.md |
| S3 | 分集剧本 | pay(付费解锁) | 03-分集剧本.md | references/stage-story.md |
| S4 | 资产卡 | pay(付费解锁) | 04-人物卡.md / 05-场景卡.md | references/stage-assets.md |
| S5 | 多语言分镜 | pay(付费解锁) | 06-分镜表-第N集.md | references/stage-storyboard.md |
| S6 | 画面&配音提示词 | pay(付费解锁) | 07-提示词-第N集.md | references/stage-prompts.md |
| S7 | 抽卡验收 | pay(付费解锁) | 08-抽卡记录-第N集.md | references/stage-gacha.md |
辅助参考(按需加载,不要预读全部):
- references/hot-story-library.md — 海外热点题材库(自动更新进化)
- references/style-library.md — 六大区域画面风格库,S0 选风格时用
- references/voice-prompts.md — 多语种配音音色提示词库,S6 用
- references/payment-integration.md — 支付宝支付集成详细代码示例
- references/hotspot-tracker.md — 热点自动更新机制与检索策略
- assets/project-template/ — 项目文件夹模板,S0 复制给用户
核心原则(不可违反)
- 资产卡片复用制:总纲、人物卡、场景卡只生成一次,写入项目文件夹。后续阶段用 Read 按需读取,严禁在对话中重复输出卡片全文。
- 三锁锚定:每条生成提示词 = 【风格锁】+【角色锁】+【场景锁】+【镜头描述】+【质量词】。三个锁文本块从资产卡中原样复制,一个字都不改,这是一致性的根基。
- 逐集推进:分镜表、提示词、抽卡按「集」为单位进行,不把整部剧本塞进上下文。跨阶段只传文件路径和摘要。
- 阶段门禁:每个阶段产出后必须经用户确认才进入下一阶段;用户说"继续/下一步/OK"即视为过门。
- 多语言提示词:根据目标区域自动切换提示词语言(英语/泰语/印尼语/阿拉伯语/西班牙语/韩语等),适配即梦/可灵/海螺多语言语法。
- 本土文化合规:涉及宗教、政治、文化敏感内容时,必须参照热点报告中的「避雷要素」进行规避,不得输出违反目标地区文化禁忌的内容。
- 付费门禁:probe 阶段只输出 S0+S1 热点报告,S2 及以后的深度产出必须在验付通过(
payment_verified)后才能生成。严禁在未付费状态下输出完整剧本、分镜表或提示词。
S0 区域市场确认(唯一必须主动提问的阶段)
用 AskUserQuestion 一次问完 5 项(不要逐个问):
1. 目标区域:出示六大区域供选择(北美/东南亚/中东/拉美/欧洲/韩国),也允许指定具体国家
2. 目标平台:ReelShort / DramaBox / ShortMax / GoodShort / FlexTV / 其他
3. 入口类型:一句话创意原创 / 小说文本改编 / 已有剧本本地化改造
4. 风格:出示 references/style-library.md 中对应区域的风格库供选择
5. 体量:总集数 × 单集时长(秒),据此用公式 每集分镜数 ≈ 单集秒数 ÷ 4 计算并告知用户分镜预算
然后:
- 在用户指定目录(默认当前工作区)创建项目文件夹:复制 assets/project-template/ 内全部模板文件,文件夹命名为「海外短剧-项目名」
- 填写 00-项目配置.md(区域、平台、入口、风格、体量、分镜预算、目标工具、目标语言)
- 将风格库中所选风格的【风格锁】文本块写入 00-项目配置.md,供全程引用
S1 热点题材匹配(probe 免费预览阶段)
按 references/hotspot-tracker.md 执行。probe 阶段限制:
- 输出目标区域当前热门题材 TOP10 榜单(题材名+热度指数+代表作品)
- 输出爆款套路分析(当前最火的反转模式、人设组合、情绪钩子)
- 输出本土文化偏好与避雷要素(宗教禁忌、审美倾向、语言习惯)
- 输出 2-3 个推荐题材方向(结合用户需求与热点趋势)
- 不展开具体剧情、不写具体场景、不写台词
- 输出末尾必须附付费提示:「以上为区域热点洞察报告。完整总纲、分集剧本、人物资产卡、多语言分镜表、AI生成提示词需付费解锁,单次调用 ¥X.XX。回复「确认付费」继续。」
同时,将本次发现的新热点题材追加到 references/hot-story-library.md,完成热点库进化。
S2–S3 剧本段(pay 付费解锁后执行)
执行前置检查:必须确认订单状态为 payment_verified 或 fulfilled,否则拒绝执行并返回 402。
按 references/stage-story.md 执行。要点:
- 原创入口:从热点推荐题材出发,结合用户创意扩写;改编入口:先提炼原作核心设定再按目标区域文化重排节拍;已有剧本入口:跳过 S2 直接进 S3 本地化改造
- 总纲必须套用热点题材库中的爆款三幕节拍;每集末尾必须有钩子(cliffhanger)
- 剧本格式:场景标题(INT./EXT.·地点·时间)/ 动作描写(现在时、可拍、1-3 句一段)/ 台词(角色名+括号表演提示)三层严格分离
- 台词默认使用目标语言(英语/泰语/西班牙语等),关键文化梗附中文注释
S4 资产卡(一致性核心,pay 付费解锁后执行)
按 references/stage-assets.md 执行。要点:
- 每个主要角色生成:人物档案 + 【角色锁】文本块(≤80 字固定外貌描述,含种族/体型/服饰特征)+ 立绘三视图生图提示词
- 提醒用户:先用三视图提示词在即梦/可灵生成角色立绘,选定后保存图片作为参考图,之后每个镜头生成时都喂这张参考图
- 场景卡同理,含【场景锁】文本块,特别注意目标地区建筑风格、室内陈设的文化准确性
S5 多语言分镜表(pay 付费解锁后执行)
按 references/stage-storyboard.md 执行。全字段:镜号 / 景别 / 运镜 / 时长(秒) / 画面描述 / 出场人物 / 台词(目标语言)/ 音效 / 情绪基调。逐集生成,每集单独文件。画面描述同时提供中文(给用户看)和目标语言(给AI工具用)双版本。
S6 画面&配音提示词(pay 付费解锁后执行)
按 references/stage-prompts.md 执行。每镜产出:
1. 生图提示词(首帧图):三锁 + 画面描述 + 质量词,使用目标语言
2. 生视频提示词:运镜 + 动作 + 时长 + 首尾帧说明,使用目标语言
3. 有台词的镜头附配音提示词(规范见 references/voice-prompts.md),含多语种音色指定
S7 抽卡验收(成本守门员,pay 付费解锁后执行)
按 references/stage-gacha.md 执行闭环:
1. 用户拿提示词去平台生成,回报结果(合格 / 具体问题)
2. 对照验收清单判定:人物崩坏 / 场景漂移 / 动作变形 / 风格偏移 / 文化错误 / 文字乱码 / 其他
3. 不合格 → 按对应修词策略改写提示词(每次只改一个问题维度),写入抽卡记录,用户重抽
4. 每镜最多自动修词 3 轮,仍不合格则提示用户换参考图或调整分镜设计
5. 全部镜头合格后更新 08-抽卡记录,该集收官
续作恢复
用户回到已有项目时:先 Read 00-项目配置.md 与 01-热点报告.md 确认进度,从未完成的阶段继续,绝不重头再来。如用户已付费,检查 orders/ 目录中对应订单状态,已 fulfilled/completed 的订单直接提供已交付产出,不重复计费。