关于 gate-exchange-flashswap-assistant
用于 Gate Exchange 闪兑的技能,支持一对一、一对多和多对一资产转换预览与执行。它会检查余额和交易对限额,并在创建订单前要求确认。
主要功能
- 01预览一对一闪兑
- 02预览一对多和多对一闪兑
- 03检查余额及交易对最低限额
- 04查询闪兑订单历史
- 05执行前要求确认
适用场景
- 01预览将资产兑换为 USDT
- 02将一种资产分配到多个目标
- 03将多种资产合并兑换为一种
MCP 相关
命令行流程使用明确列出的 `gate-cli` 命令;使用 Exchange MCP 时,也会涉及 `cex_fc_*` 工具。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ gate/ gate-skills --skill gate-exchange-flashswap-assistant安装后在 Claude Code 中输入/gate-exchange-flashswap-assistant确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
CHANGELOG.mdREADME.mdsetup.shreferences/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-flashswap-assistant
通用规则
⚠️ 停止——继续操作前,必须阅读并严格遵守共享运行时规则。 在阅读完所有规则之前,不得选择或调用任何工具。这些规则具有最高优先级。 → 阅读 gate-runtime-rules.md
- 只能使用此技能中明确列出的
gate-cli命令。 即使其他接口提供了此工作流所需的命令,也不得运行此处未记录的命令。
技能依赖
使用的 gate-cli 命令
查询操作(只读)
gate-cli cex flash-swap ordergate-cli cex flash-swap pairsgate-cli cex flash-swap ordersgate-cli cex flash-swap preview-many-to-onegate-cli cex flash-swap preview-one-to-manygate-cli cex flash-swap preview-v1gate-cli cex spot account getgate-cli cex wallet balance smallgate-cli cex wallet balance small-history
执行操作(写入)
gate-cli cex flash-swap create-many-to-onegate-cli cex flash-swap create-one-to-manygate-cli cex flash-swap create-v1gate-cli cex wallet balance convert-small
身份验证
- 交互式文件配置: 如果主机上未同时设置
GATE_API_KEY和GATE_API_SECRET,请运行gate-cli config init,按照向导完成 API key、secret、配置文件和默认值的设置(参见 gate-cli)。 - 环境变量/标志: 如果凭据已提供,则无需运行
gate-cli config init——例如,主机上已设置GATE_API_KEY和GATE_API_SECRET,或在支持的情况下使用--api-key/--api-secret;切勿要求用户在聊天中粘贴密钥。 - 需要 API Key:是(已通过身份验证的 Gate Exchange MCP)
- 权限: 闪兑写入(使用 Exchange MCP 时的
gate-cli cex flash-swap preview/create、preview-v1/create-v1/多币种变体;MCPcex_fc_*)、现货账户读取、钱包小额余额读取,以及网关要求的兑换权限(配置密钥时遵循最小权限原则) - 门户: 在聊天之外创建或轮换密钥:https://www.gate.com/myaccount/profile/api-key/manage
安装检查
- 必需: Gate(主要);使用基于 CLI 的工作流时需要
gate-cli(适用时通过此技能中的setup.sh安装)。 - 安装(MCP/IDE): Cursor:
gate-mcp-cursor-installer;Codex:gate-mcp-codex-installer;Claude:gate-mcp-claude-installer;OpenClaw:gate-mcp-openclaw-installer。 - 凭据: 如果主机上同时设置了非空的
GATE_API_KEY和GATE_API_SECRET,则不要要求运行gate-cli config init。如果两者均未设置或为空,则提醒操作员运行gate-cli config init,或在技能库中对应的技能里配置GATE_API_KEY/GATE_API_SECRET(切勿要求用户在聊天中粘贴密钥)。 - 基本检查: 在执行闪兑或小额余额相关的写入调用前,确认运行时正常工作(例如运行
gate-cli --version,或执行适用于此技能的只读检查)。
领域知识
此技能涵盖的内容
- 闪兑(fc):先预览再创建,即可即时兑换。提供三种模式:一对一、一对多(一种卖出资产兑换多种买入资产)、多对一(多种卖出资产兑换一种买入资产,用于归集)。
- 流程中的余额检查:仅在此流程中,使用
gate-cli cex spot account get检查卖出方余额(一对多时还需检查 USDT 余额)。此处不要获取完整的投资组合视图。 - 两种不同的“小额余额”处理路径(必须向用户说明):
- 闪兑:受
gate-cli cex flash-swap pairs中每个交易对的sell_min_amount/sell_max_amount限制。如果低于最低金额,不要调用 fc 预览来伪造报价。 - 钱包零头 → GT:
gate-cli cex wallet balance small/gate-cli cex wallet balance convert-small会将平台归类的零头兑换为 GT(不是 USDT)。规则与闪兑最低金额不同;如果用户要求闪兑为 USDT,绝不能默默用此路径替代。
- 闪兑:受
核心概念
- quote_id:来自预览;创建时必需。有效期以响应中的
valid_timestamp为准——绝不要假设固定的 TTL。 - sell_amount / buy_amount:按 API 要求为每一腿使用其中一个;一对多可按目标资产使用各自的
sell_amount或buy_amount;多对一则按来源资产使用各自的sell_amount。 - 订单状态:
status=1表示成功,status=2表示失败——每次创建后都要验证。 - 精度:以清晰的精度显示极小的接收金额;只有在依据充分时,才可选择性地提供粗略的法币参考值。
明确不在此技能工具范围内的内容
- 在此技能中,不要调用
gate-cli cex spot market tickers、gate-cli cex spot market orderbook或gate-cli cex wallet balance total。市场深度、“现在是不是好时机”以及完整资产审计属于其他技能(参见 Judgment Logic Summary)。
监管与风险提示
- 数字资产交易存在重大风险,可能导致投资部分或全部损失。
- 本技能仅面向年满 18 周岁且具有完全民事行为能力的用户。用户必须遵守其所在司法管辖区适用的法律。
- AI 辅助生成的内容和工具结果仅供一般信息参考,不构成投资、金融、税务或法律建议,也不代表 Gate 作出任何陈述或保证。
- 提示词及交易相关输入会被处理,以通过 MCP 调用 Gate API;不要收集不必要的个人数据。
原子化工具调用链(强制)
执行规则: 尽可能将用户请求对应到下方的场景 #1–#21。**遵循列出的工具顺序。**不得跳过关卡(余额检查、sell_min_amount 检查、创建前预览)。
标记说明
[P1] Parallel:在同一轮中调用所列工具(除非后续步骤依赖其输出,否则顺序不限)。→:串行——完成上一步后再开始下一步。[P0] Plan:不调用 MCP——解析金额、拆分比例或限定币种集合(例如,仅使用用户提供的列表)。[Confirm]:展示操作草案;在该分支调用任何写入工具前,等待用户明确回复 Y。(W):写入工具——除非场景明确止于仅预览,否则只有在确认后才能调用。
路由提醒(来自规范)
- 一对多场景 #4、#5、#11:如果用户只使用现货买入 / 市价买入相关表述,且未提及闪兑 / 转换 / 兑换,则改为使用
gate-exchange-trading,而不是 fc 工具。 - #8、#20:仅预览,直到用户选择继续创建。
- #21:不得在未说明产品路径不同的情况下,悄悄将零头→GT 混入“兑换为 USDT”的流程。
基础场景(#1–#8)
| # | 用户意图(意译) | 模式 | 信号 | 原子链 |
|---|---|---|---|---|
| 1 | 将固定数量的资产(例如 1 BTC)兑换为 USDT | 1→1 | S1 | [P1] gate-cli cex flash-swap pairs(卖出资产)· gate-cli cex spot account get(卖出资产)→ 检查可用余额 ≥ 卖出数量,且卖出数量 ≥ sell_min_amount → gate-cli cex flash-swap preview-v1(sell_asset、sell_amount、buy_asset)→ 显示汇率、预计到账金额、有效期 → 操作草案 → [确认] → (W) gate-cli cex flash-swap create-v1(quote_id、对应数量)→ 验证 status → 报告结果 |
| 2 | 将某种资产的全部可用余额兑换为 USDT(例如卖出获利的 SOL) | 1→1 | S1 | [P1] gate-cli cex spot account get(资产)· gate-cli cex flash-swap pairs(资产)→ 设置 sell_amount = 可用余额;检查其 ≥ sell_min_amount → gate-cli cex flash-swap preview-v1 → 操作草案 → [确认] → (W) gate-cli cex flash-swap create-v1 → 验证 status |
| 3 | 充值后,将资产 A 兑换为 USDT | 1→1 | S1 | [P1] gate-cli cex spot account get(A)· gate-cli cex flash-swap pairs(A)→ 确认余额以及最小值/最大值 → gate-cli cex flash-swap preview-v1(A→USDT)→ 操作草案 → [确认] → (W) gate-cli cex flash-swap create-v1 → 验证 status |
| 4 | 将单一来源(例如 3000 USDT)瞬时兑换为多种目标资产,并为每种目标资产设定支出金额(例如各用 1000 USDT 兑换 BTC、ETH、SOL) | 1→N | S2 | [P1] gate-cli cex spot account get(USDT)· gate-cli cex flash-swap pairs(每种目标资产)→ 检查 USDT ≥ 总支出;每个兑换项的 sell_amount ≥ 对应交易对的 sell_min_amount → gate-cli cex flash-swap preview-one-to-many(每个兑换项的参数)→ 显示每个兑换项的报价;突出显示失败项 → 操作草案 → [确认] → (W) gate-cli cex flash-swap create-one-to-many(参数,排除预览失败的兑换项)→ 验证每个兑换项的 status |
| 5 | 按比例将单一来源拆分兑换(例如 1000 USDT:一半兑换 BTC,一半兑换 ETH) | 1→N | S2 | [P0] 根据用户提供的比例计算每个兑换项的 sell_amount → [P1] gate-cli cex spot account get(USDT)· gate-cli cex flash-swap pairs(每种目标资产)→ gate-cli cex flash-swap preview-one-to-many → 操作草案 → [确认] → (W) gate-cli cex flash-swap create-one-to-many → 验证 status |
| 6 | 将指定的多种资产兑换为一种目标资产(例如 BTC、ETH、DOGE → USDT),使用全部余额 | N→1 | S3 | [P1] gate-cli cex spot account get(每种来源资产)· gate-cli cex flash-swap pairs(每种来源资产)→ 剔除余额 < sell_min_amount 或余额为零的兑换项;告知用户跳过了哪些项 → gate-cli cex flash-swap preview-many-to-one(剩余兑换项)→ 操作草案 → [确认] → (W) gate-cli cex flash-swap create-many-to-one → 验证每个兑换项的 status |
| 7 | 查看最近的瞬时兑换历史记录 | 查询 | S4 | [P1] gate-cli cex flash-swap orders(例如 limit=20)→ 格式化为表格:时间 / 卖出 / 买入 / 数量 / status |
| 8 | 仅预览:兑换资产 X(例如 SOL)可获得多少 USDT,稍后再决定 | 1→1 | S1 | [P1] gate-cli cex flash-swap pairs(X)· gate-cli cex spot account get(X)→ gate-cli cex flash-swap preview-v1(全部或部分数量)→ 仅显示汇率、预计到账金额、有效期 → 如果用户选择 Y → 操作草案 → [确认] → (W) gate-cli cex flash-swap create-v1;如果选择 N → 停止(不写入) |
扩展场景(#9–#13)
| # | 用户意图(意译) | 信号 | 原子链路 |
|---|---|---|---|
| 9 | 某种币(如 APT)是否支持闪兑/交易对限额 | S4 | [P1] gate-cli cex flash-swap pairs(币种) → 如果为空:不支持;建议使用现货交易技能 → 如果有行:显示交易对和最小/最大值 |
| 10 | 最近一次闪兑是否成功 | S4 | [P1] gate-cli cex flash-swap orders(limit=1) → 获取最新的 order_id → gate-cli cex flash-swap order(order_id) → 报告 status(1 表示成功/2 表示失败)和成交情况 |
| 11 | 将 USDT 闪兑为目标币的买入数量(如 0.1 BTC 和 1 ETH) | S2 | [P0] 为每个交易腿使用 buy_amount(而非 sell_amount)构建参数 → [P1] gate-cli cex spot account get(USDT) · gate-cli cex flash-swap pairs(每个目标币) → gate-cli cex flash-swap preview-one-to-many → 检查消耗的 USDT 总量是否超过可用余额(例如 total_consume_amount 或等效字段) → 为每个交易腿生成操作草案 → [确认] → (W) gate-cli cex flash-swap create-one-to-many → 验证每个交易腿的 status |
| 12 | 一对一的非 USDT 交易腿(如 2 ETH → BTC) | S1 | [P1] gate-cli cex spot account get(ETH) · gate-cli cex flash-swap pairs(ETH) → 检查余额是否 ≥ 数量且在最小/最大值范围内 → gate-cli cex flash-swap preview-v1(卖出 ETH,买入 BTC,…) → 操作草案(说明是单跳闪兑,而非“通过 USDT”) → [确认] → (W) gate-cli cex flash-swap create-v1 → 验证 status |
| 13 | 将多个指定的山寨币兑换为 USDT;用户可能不知道余额 | N→1 | S3 |
碎余额、金额过小与拆分场景(#14–#21)
| # | 用户意图(释义) | 信号 | 原子链路 |
|---|---|---|---|
| 14 | “金额太小”/可能低于闪兑最低限额(例如 PEPE) | S5 | [P1] gate-cli cex flash-swap pairs(资产)· gate-cli cex spot account get(资产)→ 如果可用余额 < sell_min_amount:不要调用 gate-cli cex flash-swap preview(或任何 preview 变体);显示余额/最低限额/差额 → gate-cli cex wallet balance small → 如果资产在碎余额列表中:说明 S7 的碎余额→GT 路径;否则建议累积余额或现货卖出(交易副驾驶)→ 如果可用余额 ≥ 最低限额:继续执行类似场景 #1 的 S1 链路 |
| 15 | 多对一的小额兑换(例如将 30 USDT 分给 DOGE 和 SHIB) | S2 | [P0] 如果分配不明确,向用户确认每个兑换项的 USDT 分配 → [P1] gate-cli cex spot account get(USDT)· gate-cli cex flash-swap pairs(每个目标资产)→ 确保每个兑换项 ≥ sell_min_amount;如果不满足,请用户调整 → gate-cli cex flash-swap preview-one-to-many → 突出显示失败的兑换项;生成操作草案 → [确认] → (W) gate-cli cex flash-swap create-one-to-many(已确认的参数) |
| 16 | 单一资产金额超过 sell_max_amount(必须拆分批次) | S6 | [P1] gate-cli cex spot account get(资产)· gate-cli cex flash-swap pairs(资产)→ 读取 sell_max_amount;规划每批金额均 ≤ 最大限额 → 对于第 k 批: gate-cli cex flash-swap preview-v1 → 生成操作草案 → [确认] → (W) gate-cli cex flash-swap create-v1 → 验证 status → 执行第 k+1 批之前重新查询 gate-cli cex spot account get → 为下一批生成新的预览(新的 quote_id) |
| 17 | 多种代币兑换为 USDT;“把所有能换的都换掉” | N→1 | S3 |
| 18 | 询问闪兑最低金额以及当前余额是否符合要求 | S4 | [P1] gate-cli cex flash-swap pairs(资产)· gate-cli cex spot account get(资产)→ 报告 sell_min_amount、sell_max_amount、可用余额及是否符合要求 → 如果用户随后表示要全部兑换:执行场景 #1或**#2** |
| 19 | 用户在会话中提供明确的币种列表(粘贴/列出);将其中所有可兑换币种兑换为 USDT | N→1 | S3 |
| 20 | 仅预览极小金额(例如 5 USDT → SAT),不急于成交 | S1 | [P1] gate-cli cex flash-swap pairs(目标资产)· gate-cli cex spot account get(USDT)→ 如果卖出方 USDT < sell_min_amount:走 S5 路径;不进行预览 → 否则调用 gate-cli cex flash-swap preview-v1 → 显示接收金额并注明精度;默认不自动创建 |
| 21 | 将钱包中的碎余额清兑为 GT | S7 | [P1] gate-cli cex wallet balance small() → 显示可兑换的碎余额列表 → 操作草案:说明兑换结果为 GT,并列出 gate-cli cex wallet balance convert-small;确认 currencies 或 is_all → [确认] → (W) gate-cli cex wallet balance convert-small → 可选调用 gate-cli cex wallet balance small-history |
工作流
步骤 1:判断意图并选择信号 S1–S7
首先,尝试匹配原子工具调用链场景 #1–#21,并按原样执行该链(并行与串行、预览关卡,以及写入前确认)。
如果没有匹配项,则进行回退处理:对请求分类。如果请求属于范围之外(参见判断逻辑摘要),则停止并指出合适的技能,不调用 fc 或钱包转换工具。
如果请求在范围内但未列入表格,则分配一个或多个信号:S1 一对一闪兑,S2 一对多闪兑,S3 多对一归并,S4 查询或历史记录,S5 低于最低限额或尘埃余额诊断,S6 拆分超过 sell_max_amount 的金额,S7 尘埃余额转为 GT。
需要提取的关键数据:
signal:S1 | S2 | S3 | S4 | S5 | S6 | S7(允许组合,例如 S5 然后 S1)sell_assets、buy_asset、金额,以及用户是否要求仅预览user_confirmed_flash_language:用户是否使用闪兑/转换/兑换的表述,而非纯现货买入的表述(参见路由表)
步骤 2:并行读取网关数据(闪兑路径 S1–S3、S5、S6)
调用 gate-cli cex flash-swap pairs,并提供:
currency(或 MCP 中等效的筛选参数):每种卖出资产(以及需要时的目标资产)
调用 gate-cli cex spot account get,并提供:
- 读取每种相关币种(卖出侧及一对多场景中的 USDT)可用余额所需的参数
需要提取的关键数据:
- 每个交易对的
sell_min_amount、sell_max_amount available余额- 每条交易腿在预览前是否通过最低限额检查
S5 规则:如果某条闪兑腿的 available < sell_min_amount,则不要为该腿调用 gate-cli cex flash-swap preview(或任何预览变体)。清晰地列出余额与最低限额之间的差额,并可选择调用 gate-cli cex wallet balance small,查看是否适用 S7。
S6 规则:如果金额 > sell_max_amount,则规划为顺序批次;每个批次都需要单独预览、操作草案、Y、创建订单,并在创建后刷新余额,然后才能进行下一次预览。将计划批次数限制在合理上限内(例如 20 批),或在用户取消时停止;不得无限循环。
步骤 3:预览(按模式选择一种预览工具)
一对一(S1)——调用 gate-cli cex flash-swap preview-v1,并提供 sell_asset、buy_asset,以及 sell_amount 或 buy_amount。
一对多(S2)——调用 gate-cli cex flash-swap preview-one-to-many,并提供按交易腿金额构成的 params 数组。突出显示每条交易腿的预览错误。
多对一(S3)——筛除低于最低限额或余额为零的交易腿后,调用 gate-cli cex flash-swap preview-many-to-one,并为剩余交易腿提供 params。展示将执行与已跳过的汇总。
需要提取的关键数据:
- 每条成功交易腿的
quote_id - 汇率、到账金额、
valid_timestamp - 需要向用户突出显示的各交易腿错误
步骤 4:操作草案与明确确认(所有写入操作)
提供一份操作草案,列明卖出/买入资产、金额、有效汇率或预计到账金额、报价有效期以及多腿状态。对于 S7,草案必须说明操作是通过 gate-cli cex wallet balance convert-small 执行的尘埃余额转为 GT,而非 USDT 闪兑。
等待用户明确回复 Y 执行,或回复 N 取消。未收到 Y 时,不调用任何写入工具。
需要提取的关键数据:
user_confirmation:Y | N- 参数是否仍与上次预览一致(如果不一致,则重新预览)
步骤 5:创建闪兑订单(收到 Y 后,每个请求只使用一种创建方式)
必须且只能使用以下其中一种:
调用 gate-cli cex flash-swap create-v1,并提供包含 quote_id 及与预览匹配的卖出/买入金额等字段的请求体。
调用 gate-cli cex flash-swap create-one-to-many,并提供包含每条交易腿 quote_id 和金额的 params——排除预览失败的交易腿。
调用 gate-cli cex flash-swap create-many-to-one,并提供包含每条交易腿 quote_id 和金额的 params——排除预览失败的交易腿。
需要提取的关键数据:
- 每个订单的
status和 ID - API 返回的错误
第 6 步:核实订单结果
对于每笔已创建的订单,读取 status。如有需要,调用 gate-cli cex flash-swap order 并提供订单 ID,以确认详情。
需要提取的关键数据:
- 每个交易方向的成功或失败情况
- 有提供时的最终到账金额
第 7 步:查询与历史记录路径(S4)
调用 gate-cli cex flash-swap orders,并设置适当的 limit / 筛选条件,以查询历史记录或“最新订单”。
当用户需要查看特定 ID 的详情,或你从列表中获取了最新 ID 时,调用 gate-cli cex flash-swap order 并提供 order_id。
对于支持的交易对或最小值 / 最大值相关问题,根据需要使用 gate-cli cex flash-swap pairs 和 gate-cli cex spot account get。
对于零钱历史记录,调用 gate-cli cex wallet balance small-history,并根据 MCP 支持情况设置可选筛选条件。
需要提取的关键数据:
- 易读的表格:时间、交易方向、金额、状态
第 8 步:零钱兑换 GT 路径(S7)
调用 gate-cli cex wallet balance small(根据该工具的功能约定,不可用其他方式替代“列出账户中的所有零钱”)。
展示可兑换列表。操作草案必须准确指定用户确认的 currencies 或 is_all。
用户确认 Y 后,调用 gate-cli cex wallet balance convert-small 并使用已确认的参数。
需要提取的关键数据:
- 兑换结果或错误;可选择后续调用
gate-cli cex wallet balance small-history
判断逻辑摘要
信号定义
| 信号 | 含义 | 主要工具 |
|---|---|---|
| S1 | 一对一闪兑 | gate-cli cex flash-swap pairs、gate-cli cex spot account get、gate-cli cex flash-swap preview-v1、gate-cli cex flash-swap create-v1 |
| S2 | 一对多闪兑(用户指定以闪兑 / 兑换 / 互换为目标,而非单纯现货买入) | gate-cli cex flash-swap preview-one-to-many、gate-cli cex flash-swap create-one-to-many |
| S3 | 多对一归集 | gate-cli cex flash-swap preview-many-to-one、gate-cli cex flash-swap create-many-to-one |
| S4 | 查询:历史记录、支持情况、最小值检查、订单状态 | gate-cli cex flash-swap orders、gate-cli cex flash-swap order、gate-cli cex flash-swap pairs、gate-cli cex wallet balance small-history |
| S5 | 低于闪兑最小值 / 余额易受影响 | 只读操作,直到达到最小值;可选调用 gate-cli cex wallet balance small → 提供 S7 |
| S6 | 金额超过 sell_max_amount | 使用与 S1 / S2 / S3 相同的创建工具系列,但需分批顺序执行,每批都要重新预览并确认 |
| S7 | 零钱兑换 GT | gate-cli cex wallet balance small、gate-cli cex wallet balance convert-small |
范围外意图的路由(不要使用此技能的工具列表)
| 用户意图 | 路由至 |
|---|---|
| 研究、“为什么”、滑点、深度、流动性、图表 | gate-info-research 或 gate-exchange-trading(此处不获取行情报价 / 订单簿) |
| 没有闪兑 / 兑换目标的现货买入 / 卖出需求(市价 / 限价、“买一些”、“定投”、“出价”) | gate-exchange-trading |
| 期货 / 保证金交易 | gate-exchange-trading 或期货 / 保证金领域的技能 |
| 账户间转账(现货 ↔ 期货、子账户) | gate-exchange-transfer |
| 完整投资组合、保证金风险、强平情况 | gate-exchange-assets-manager 或 gate-exchange-assets |
| 理财 / 质押 | gate-exchange-simpleearn 或相关理财技能 |
| 链上 DEX 互换 | DEX 技能(例如 gate-dex-trade) |
模式识别
- 一对一:一种卖出资产和一种买入资产;没有拆分为多种资产的表述。
- 一对多:一种卖出资产、多种买入资产;用户必须明确以闪兑 / 兑换为目标,而非仅仅“买入多种资产”。
- 多对一:多种卖出资产兑换为一种买入资产,或使用“归集”、“将所有资产兑换为 USDT”等表述。
- 如果意图不明确:询问用户想要的是一种来源 → 多个目标,还是多个来源 → 一个目标。
报告模板
闪兑操作草案(执行任何 fc create 之前)
- 模式(一对一 / 一对多 / 多对一)
- 每条交易路径:卖出资产和数量 → 买入资产及预计到账数量(来自预览)
- 报价有效性:参考
valid_timestamp(不要自行编造秒数) - 风险提示:即时执行;最终结果以 API 为准
- 请回复 Y 执行,或回复 N 取消
S5 诊断(无预览)
- 资产、可用余额、
sell_min_amount、差额 - 后续选项:累积资产、通过交易助手进行现货交易,或查看 GT 路径的尘埃资产列表(S7)
GT 尘埃资产操作草案
- 明确说明:操作是小额余额兑换为 GT,不是 USDT 闪兑
- 币种或
is_all必须与用户确认的内容完全一致 - Y / N
执行后
- 每条交易路径的状态和金额
- 提醒:数字资产交易通常不可逆;闪兑会立即成交
安全规则
确认
- 未先提供操作草案并获得明确的 Y,不得调用
gate-cli cex flash-swap create(或create-v1/ 多币种 create 变体),也不得调用gate-cli cex wallet balance convert-small。 - 切勿使用已过期或失效的
quote_id;如果用户延迟了操作,请重新预览。 - 切勿仅为掩盖低于最低限额的余额而调用 fc preview。
按需提供
- 仅向 MCP 工具传入最少必要参数。不要将无关的对话内容作为工具输入。
错误处理
| 情况 | 操作 |
|---|---|
gate-cli cex flash-swap pairs 失败 | 说明限额未知;预览前发出警告;避免猜测最小值或最大值 |
| 预览返回错误 | 不要创建;显示错误消息;建议调整金额或改用现货交易 |
| 创建失败 | 不要自动重试;建议重新预览 |
gate-cli cex spot account get 失败 | 警告余额未知;不要编造余额 |
gate-cli cex wallet balance small 失败 | 不要调用兑换;说明无法获取尘埃资产列表 |
gate-cli cex wallet balance convert-small 失败 | 显示错误;不要静默重试 |
| 用户在草案后回复 N | 停止;不执行写入操作 |
参考
- 映射场景的规范工具调用顺序:上文的原子工具调用链(场景 #1–#21)
- 人类可读的场景和提示词示例:
references/scenarios.md - 共享消歧规则:如果存在,请从你的技能根目录读取
gate-skills-disambiguation.md