mcpField
G
gate-exchange-pay

gate-exchange-pay

github.com/gate其他48120 次安装18 周前更新
代码仓库

关于 gate-exchange-pay

供已选择 Gate Pay 且准备支付商家订单的用户使用。它会核验订单信息和授权、执行扣款并返回收据;不负责购物或获取付款后的资源。

主要功能

  1. 01核验订单号、金额和币种
  2. 02要求完成 Gate Pay 授权
  3. 03执行商家订单扣款
  4. 04返回本地化收据或失败指引

适用场景

  1. 01选择 Gate Pay 后支付商家订单
  2. 02信息齐备时完成先付款的结账
  3. 03扣款成功后提供收据

MCP 相关

该技能调用 Exchange MCP 工具 cex_pay_create_ai_order_pay,从已授权的 Gate Pay 账户扣除商家订单款项。它只处理扣款,不获取商家资源。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/gate/gate-skills --skill gate-exchange-pay

安装后在 Claude Code 中输入/gate-exchange-pay确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

CHANGELOG.md
README.md
setup.sh
references/
gate-cli.md
mcp.md
scenarios.md

详细介绍

解析 gate-cli(二进制文件路径)

按以下顺序解析 gate-cli:(1) command -v gate-cli 和 gate-cli --version 均成功;(2) 如果 ${HOME}/.local/bin/gate-cli 可执行,则使用它;(3) 如果 ${HOME}/.openclaw/skills/bin/gate-cli 可执行,则使用它。规范规则:exchange-runtime-rules.md §4(或 gate-runtime-rules.md §4)。

gate-exchange-pay — Gate Pay 支付

通用规则

⚠️ 停止 — 继续之前,必须阅读并严格遵守共享运行时规则。 在阅读完所有规则之前,请勿选择或调用任何工具。这些规则具有最高优先级。 → 阅读 gate-runtime-rules.md

  • 只能使用此技能中明确列出的 gate-cli 命令。 即使其他接口提供了此处未记载的命令,在这些工作流中也不得运行。

适用范围和受众

本文档面向最终用户和 Agent:在必须先付款,且用户已经选择支付方式并选定 Gate Pay 的场景中,通过调用 Exchange MCP 工具 cex_pay_create_ai_order_pay 完成扣款并输出收据(gate-cli/cmd/cex 中没有对应的 gate-cli 命令;参见 MCP_LEGACY_TOOL_RESOLUTION.md §二)。

调用此技能之前,用户必须已完成 Gate 账户的支付相关授权。如果尚未完成,应先引导用户完成 Gate 账户授权,再进行扣款。

语言

收据、扣款前摘要、失败提示和简短确认均使用用户所用的语言。如果对话中混用了多种语言,则根据用户提出支付或收据请求时所用的语言回复;除非用户切换语言,否则一份收据只使用一种语言。

适用情形

  • 用户明确表示有意付款(例如付款、确认支付、结账、替我付款)。
  • 必须先付款(例如收到 HTTP 402 后,或在适用时遇到等效的先付款步骤),用户已选择 Gate Pay 作为支付方式,且你不会改用其他渠道。
  • 支付调用所需的所有信息均已具备,并且 cex_pay_create_ai_order_pay 的所有必需参数(gate-cli/cmd/cex 中没有对应的 gate-cli 命令;参见 MCP_LEGACY_TOOL_RESOLUTION.md §二)均已满足(依据 MCP inputSchema);如果缺少任何信息,须在付款前补齐。
  • 此能力不涵盖仅为获取 402 而首次访问受保护 URL 的情形;对话中的其他部分可能会处理此事。用户选定 Gate Pay 且支付信息准备就绪后,使用此能力扣款。

不适用情形

  • 用户仅粘贴了大量原始 API 文本,仍无法可靠确定支付信息 → 不要扣款;请用户根据订单或结账页面补充信息。
  • 寻找商家、比较价格或提供购物建议 → 不在适用范围内。
  • 与使用 Gate Pay 支付特定商家订单无关的现货、合约、充值或链上转账 → 不要使用此能力处理。

领域知识

Gate Pay 概述

Gate Pay 是 Gate 的数字资产支付解决方案,用户可使用 Gate 账户余额支付商家订单。该方案支持先付款流程(HTTP 402 协议),即在访问资源前必须先付款。

授权要求
  • 发起任何扣款前,用户必须完成 Gate 账户支付授权。
  • 授权包括身份验证和授予从支付账户扣款的权限。
  • 如果缺少授权,或授权已过期、无效,应先引导用户完成 Gate 账户授权。
支付流程限制
  • 支付成功执行后不可撤销
  • 发起支付前,订单信息(order_id、amount、currency)必须完整
  • 此技能仅处理扣款步骤;从商户获取资源不在范围内
  • 如果返回支付凭证字段,下游步骤可以使用,但不得伪造
Gate Pay 与其他支付方式
  • 此技能仅处理 Gate Pay 支付;其他支付方式(银行卡、其他加密货币钱包)不在范围内
  • 用户必须明确选择 Gate Pay 作为支付方式,此技能才会启用

gate-cli 命令索引

工具名称用途类型
cex_pay_create_ai_order_pay(gate-cli/cmd/cex 中没有对应的 gate-cli 映射;参见 MCP_LEGACY_TOOL_RESOLUTION.md §二)从用户的 Gate Pay 支付账户中扣除商户订单款项写入
身份验证
  • 交互式文件设置:当主机上没有同时设置 GATE_API_KEY 和 GATE_API_SECRET 时,运行 gate-cli config init,按照向导完成 API 密钥、密钥、配置文件和默认值的设置(参见 gate-cli)。
  • 环境变量 / 标志:如果已经提供凭据,则不需要运行 gate-cli config init——例如,主机上同时设置了 GATE_API_KEY 和 GATE_API_SECRET,或在支持的情况下使用 --api-key / --api-secret;绝不要要求用户在聊天中粘贴密钥。
  • 需要 API 密钥:是
  • 需要额外授权:是,必须已完成 Gate Pay 支付授权
  • 注意:此技能通过经过身份验证的 Exchange MCP 工具执行私密支付操作。除了运行时基于 API 密钥的执行能力外,还需要支付授权。

注意:如果没有可用的订单状态查询工具,而用户只询问是否已付款,请说明这一限制;不要以再次扣款代替查询。

安装检查
  • **必需:**通过 CLI 执行的流程需要 gate-cli(如果缺少,请在此技能目录运行 sh ./setup.sh;可选设置 GATE_CLI_SETUP_MODE=release)。
  • 如果按名称调用 gate-cli,请将 $HOME/.openclaw/skills/bin 添加到 PATH(或添加 setup.sh 安装它的目录)。
  • 凭据:当主机上同时设置了非空的 GATE_API_KEY 和 GATE_API_SECRET 时,不要要求运行 gate-cli config init。当两者都未设置或为空时,提醒操作人员运行 gate-cli config init,或在技能库中对应的技能里配置 GATE_API_KEY / GATE_API_SECRET(绝不要要求用户在聊天中粘贴密钥)。
  • **合理性检查:**执行扣款前,确认运行时和支付前置条件;根据需要使用 gate-cli --version 或特定于部署的检查。

执行模式

阅读并严格遵循 references/gate-cli.md,然后执行此技能的 Gate Pay 扣款工作流。

  • SKILL.md 负责支付意图路由、产品边界和面向用户的政策。
  • references/gate-cli.md 是权威的 gate-cli 执行规范,规定扣款输入、确认关卡和失败回退。

工作流

步骤 0:确认支付准备就绪

操作:验证所有前置条件均已满足后再继续。

需要提取的关键数据:

  • 用户已选择 Gate Pay 作为支付方式
  • 所有必需的支付参数均已提供:order_id、amount、currency
  • 用户已完成 Gate 支付授权(如果尚未完成,则暂停并引导用户完成授权)

判断:如果缺少任何必需输入 → 请用户提供完整信息。如果授权尚未完成 → 引导用户完成授权流程。否则继续步骤 1。

第 1 步:确认用户的付款意图

操作:确保用户明确表示要执行付款。

要提取的关键信息:

  • 用户表达了付款意图(例如“付款”“确认付款”“结账”“帮我付款”)
  • 用户尚未拒绝或取消付款

判断:如果用户意图不明确或为否定 → 不要继续付款。如果意图明确 → 继续第 2 步。

第 2 步:展示付款详情(可选)

操作:展示关键费用详情,供用户核实。这仅用于提供信息,无需强制用户明确确认。此操作不能替代第 1 步:调用付款工具仍要求用户已在该步骤中明确表示付款意图(参见安全规则)。

要提取的关键信息:

  • 商户订单 ID
  • 金额和币种
  • 付款方式(Gate Pay)

输出格式:

Planned charge
Merchant order ID: {order_id}
Amount due: {amount} {currency}
Payment method: Gate Pay

判断:满足第 1 步的付款意图门槛后,展示详情并继续第 3 步;可选的展示仅用于提高透明度。

第 3 步:执行付款

操作:使用已验证的参数调用 Exchange MCP 工具 cex_pay_create_ai_order_pay(在 gate-cli/cmd/cex 中没有对应的 gate-cli 映射;参见 MCP_LEGACY_TOOL_RESOLUTION.md §二)。

使用以下参数调用 cex_pay_create_ai_order_pay(在 gate-cli/cmd/cex 中没有对应的 gate-cli 映射;参见 MCP_LEGACY_TOOL_RESOLUTION.md §二):

  • order_id:商户订单标识符
  • amount:付款金额
  • currency:付款币种
  • 其他 MCP inputSchema 中要求的字段

要提取的关键信息:

  • 付款状态(成功/失败)
  • 交易时间戳
  • 付款确认详情(order_id、amount、status)
  • 代金券字段(如适用,例如 prepayId),供后续使用

判断:如果付款成功 → 携带成功回执继续第 4 步。如果付款失败 → 携带失败处理结果继续第 4 步。

第 4 步:输出结果

操作:使用用户的语言向其报告付款结果(参见“语言”部分)。

成功路径:按照“报告模板”部分的格式输出回执。

失败路径:向用户提供易于理解的错误说明,不暴露内部错误代码或堆栈跟踪(参见“错误处理”部分)。

判断逻辑摘要

条件状态含义
付款输入完整 + 用户选择了 Gate Pay + 用户意图明确 + 授权有效执行通过 cex_pay_create_ai_order_pay 执行付款(在 gate-cli/cmd/cex 中没有对应的 gate-cli 映射;参见 MCP_LEGACY_TOOL_RESOLUTION.md §二)
缺少 order_id、amount 或 currency阻止请用户从商户订单页面提供完整的付款详情
用户尚未选择 Gate Pay阻止此技能不适用;其他付款方式不在范围内
用户意图不明确或用户拒绝阻止不要发起付款;等待用户明确确认或处理取消
缺少授权、授权已过期或无效阻止引导用户先完成 Gate 账户付款授权
用户仅询问付款状态(没有可用的查询工具)告知说明这一限制;不要通过再次扣款来推断状态
付款 API 返回成功报告输出包含交易详情的成功回执(本地化)
付款 API 返回失败报告使用用户的语言说明失败原因并提供可执行的指引

报告模板

成功回执

使用用户语言的字段标签(参见“语言”部分)。模板格式如下(此处以英文标签为例):

✅ Payment Success

Merchant order ID: {order_id}
Amount paid: {amount} {currency}
Payment status: {status_text_matching_payment_result}
Payment time: {timestamp; include timezone or follow product rules}
Payment method: Gate Pay

⚠️ Important: Digital asset transactions are generally irreversible. Please verify the transaction details above.

代金券处理:如果成功的付款响应包含代金券类字段(最终名称以规范为准,例如 prepayId),后续步骤可使用这些字段从商户处获取资源。此技能不会获取资源;如适用,应保留代金券字段供外部使用。

失败说明

使用用户的语言(参见「语言」部分)。根据错误类型提供具体、可操作的指导:

模板:

❌ Payment Failed

Reason: {user_friendly_explanation}
Suggested action: {actionable_next_step}

请勿:向用户透露内部错误代码、堆栈跟踪或原始 API 响应。

运行时规则

在调用任何与支付相关的工具之前,请遵循本产品随附的 Agent 和 MCP 使用规则,并遵守 exchange-runtime-rules.md。

场景

面向审核人员的场景模板(正常流程、错误、本地化和安全边界)位于此技能目录下的 references/scenarios.md。使用该文件对照此 SKILL 检查一致性;不要将此路径视为 Skills Hub 超链接。

错误处理

错误类型条件用户消息(模板)建议操作
余额不足支付 API 返回余额不足错误“支付失败:您的 Gate Pay 余额不足,无法完成此次支付。请为账户充值后重试。”引导用户存入资金或使用其他支付方式
授权已过期/无效API 指示授权缺失、已过期或无效“支付失败:您的 Gate 支付授权已过期或无效。请重新完成 Gate 账户授权。”引导用户完成 Gate 账户支付授权流程
未找到订单API 指示 order_id 不存在或无法找到“支付失败:订单 ID 无效或已失效。请向商家核实订单详情后重试。”请用户向商家获取有效的订单信息
订单已过期API 指示订单已过期或支付时限已关闭“支付失败:此订单已过期,无法继续支付。请向商家重新下单。”建议用户创建新订单或联系商家更换订单
重复支付业务逻辑检测到对同一订单的重复扣款尝试“此订单已支付。请查看支付记录;如认为有误,请联系支持人员。”不要发起重复扣款;向用户说明此限制
参数无效缺少必填字段或格式无效“无法处理支付:部分必填信息缺失或无效。请提供完整的订单详情(订单 ID、金额、币种)。”请用户提供完整且有效的支付参数
网络/系统错误API 超时、连接失败或未指定的系统错误“支付失败,原因是暂时的系统问题。请稍后重试;如果问题仍然存在,请联系支持人员。”建议稍后重试;不要透露技术错误详情

一般规则:

  • 所有错误消息均使用用户的语言(参见「语言」部分)
  • 不要向用户透露内部错误代码、堆栈跟踪或原始 API 响应
  • 针对每种错误提供可操作的后续步骤
  • 如果错误类型不明确,请提供中立建议,提示用户重试或联系支持人员

数据隐私与收集

此技能通过 Gate MCP 处理用户支付数据。所有数据都会直接传输至 Gate API 以执行支付。

数据处理声明:

  • 数据收集:此技能会按支付执行所需,收集订单信息(订单 ID、金额、币种)和用户支付授权凭证
  • 数据存储:此技能不会在本地存储任何用户数据。所有支付交易均由 Gate 的安全支付基础设施处理并记录
  • 数据传输:支付数据仅传输至 Gate API 端点,不涉及任何第三方服务
  • 数据保护:所有数据传输均使用符合 Gate 安全标准的加密通道
  • 用户控制:用户可通过 Gate 官方平台查看支付历史记录。交易记录按照 Gate 的数据保留政策保存

年龄限制:此技能面向年满 18 周岁且具有完全民事行为能力的用户,符合 Gate 平台要求。

风险免责声明

⚠️ Gate Pay 用户重要须知:

  1. 损失风险:使用数字资产支付涉及财务风险;如果订单或商家信息有误,您可能会损失已扣款项。授权扣款前,请核实所有细节。

  2. 交易不可撤销:数字资产交易通常不可撤销。Gate Pay 支付成功执行后,无法撤销。确认支付前,请仔细核实所有订单详情(商家、金额、币种)。

  3. 非投资建议:此技能仅提供支付执行功能。任何支付决定均由用户自行负责。这不构成投资、财务、税务或法律建议。

  4. 遵守法规:用户必须确保其使用 Gate Pay 的行为符合其所在司法管辖区的适用法律法规。Gate 在多个司法管辖区持有运营许可。用户有责任了解并遵守当地支付和数字资产法规。

  5. 商家责任:Gate Pay 为向第三方商家付款提供便利。Gate 不对商家的产品、服务、配送、退款或争议负责。付款前,用户应核实商家的合法性。

  6. AI 输出免责声明:AI 辅助支付处理仅为方便用户,不构成 Gate 对支付是否成功、商家是否可靠或交易结果的任何陈述、保证或担保。

安全规则

确认要求

此技能采用简化的支付执行确认模式:

  1. 确认用户意图:用户必须明确表达支付意图(例如“付款”“确认支付”“结账”)
  2. 参数核验:可显示支付详情(订单 ID、金额、币种)供用户核验,但只要用户已明确表达支付意图,就无需额外强制确认
  3. 单次确认:每次支付意图仅可使用一次。如果参数或商家详情发生变化,则必须重新确认意图
  4. 无意图不执行:用户未明确表达支付意图时,此技能仅以查询/信息模式运行
授权保护措施
  • 执行前检查:调用 cex_pay_create_ai_order_pay 前(gate-cli/cmd/cex 中没有对应的 gate-cli 映射;参见 MCP_LEGACY_TOOL_RESOLUTION.md §二),确认用户已完成 Gate 支付授权
  • 授权验证:如果缺少授权、授权已过期或无效,则暂停支付,并引导用户完成授权流程
  • 不得绕过:在任何情况下,支付执行都不得绕过授权要求
防止重复付款
  • 交易追踪:在同一对话上下文中,不得对同一个 order_id 重复收费
  • 状态查询限制:如果用户询问「我付款了吗?」,应说明查询限制,而不是通过发起重复收费来推断状态

安全要求

  1. 不得捏造订单信息、付款状态、时间戳或付款凭证。
  2. 如果输入不完整,或用户未选择通过 Gate Pay 付款,不得发起收费。
  3. 如果收费未成功,不得输出成功收据,也不得声称付款成功。
  4. 同一笔业务交易不得重复收费。
  5. 不得捏造支付 API 未返回的凭证字段。
  6. 不得在面向用户的消息中暴露敏感数据(API 密钥、内部错误代码、系统架构详情)。
  7. 调用支付 API 前,验证所有输入参数,以防止注入攻击或格式错误的数据攻击。

评论

支持 Markdown