mcpField
G
gate-exchange-flashswap

gate-exchange-flashswap

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

关于 gate-exchange-flashswap

通过 gate-cli 执行 Gate Flash Swap 加密货币兑换的 Skill,支持单币及多币兑换、查询交易对和限额,并提供执行前预览与确认流程。

主要功能

  1. 01单币兑换为另一种币
  2. 02一种币兑换为多种币
  3. 03多种币合并兑换为一种
  4. 04查询支持的交易对和限额
  5. 05查看兑换订单

适用场景

  1. 01预览 BTC 兑换 USDT
  2. 02用一种币购买多种资产
  3. 03将多种资产合并兑换
  4. 04查询兑换限额或订单状态

MCP 相关

通过 gate-cli flash-swap 命令获取报价、查询支持的交易对、创建兑换订单及查询订单。

安装

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

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

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

包含的文件

除 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 Flash Swap

一般规则

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

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

技能依赖

使用的 gate-cli 命令

查询操作(只读)

  • gate-cli cex flash-swap order
  • gate-cli cex flash-swap pairs
  • gate-cli cex flash-swap orders
  • gate-cli cex flash-swap preview-many-to-one
  • gate-cli cex flash-swap preview-one-to-many
  • gate-cli cex flash-swap preview-v1

执行操作(写入)

  • gate-cli cex flash-swap create-many-to-one
  • gate-cli cex flash-swap create-one-to-many
  • gate-cli cex flash-swap create-v1
身份验证
  • 交互式文件设置: 如果主机上未同时设置 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——绝不要让用户在聊天中粘贴密钥。
  • 权限: Fc:Write
  • 门户: 请在聊天之外创建或轮换密钥:https://www.gate.com/myaccount/profile/api-key/manage
安装检查
  • 必需: 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 来说是等效的有效配置。如果两者均未设置或为空,请提醒操作者运行 gate-cli config init,或在技能库中相应的技能里配置 GATE_API_KEY / GATE_API_SECRET(绝不要让用户在聊天中粘贴密钥)。
  • 健全性检查: 在执行经过身份验证的调用之前,不要继续操作,直到 CLI 行为符合预期(例如 gate-cli --version 或本技能中的只读 gate-cli cex ... 命令);在执行任何修改操作前,确认凭据已成功解析。

执行模式

阅读并严格遵循 references/gate-cli.md,然后执行本技能的 flashswap 工作流。

  • SKILL.md 负责路由和场景边界。
  • references/gate-cli.md 是权威的 gate-cli 执行规范,规定了预览 / 创建顺序、确认关卡和降级处理。

触发条件

当用户的请求符合以下任一条件时,将激活此 Skill:

  • 想要将一种加密货币兑换成另一种
  • 想要一次性使用一种货币购买多种加密货币(例如“用 1u 买 BTC、用 2u 买 ETH”)
  • 想要将多种加密货币卖出并兑换成一种目标货币(例如“卖出 1 BTC、2 ETH,换成 USDT”)
  • 询问哪些货币支持闪兑
  • 询问兑换金额或限额的最低值/最高值
  • 请求查询闪兑订单历史或特定订单详情
  • 使用关键词:“flash swap”“convert”“quick exchange”“swap”“instant swap”

快速入门

常见用法示例:

  1. 一对一兑换:“卖出 1 BTC 换成 USDT”
  2. 购买多种币:“买入 1u BTC、2u ETH、3u SOL”
  3. 卖出多种币:“卖出 1 BTC、2 ETH、3 SOL 换成 USDT”
  4. 查看交易对:“显示支持闪兑的交易对”
  5. 订单历史:“显示我的闪兑订单”

领域知识

闪兑是 Gate 提供的快速加密货币兑换服务。用户可以按照实时汇率,将一种加密货币即时兑换成另一种,无需下单等待撮合。

兑换模式:

  • 一对一:将一种货币兑换成另一种货币(例如 BTC → USDT)
  • 一对多:将一种货币兑换成多种目标货币(例如 USDT → BTC + ETH + SOL)
  • 多对一:将多种货币兑换成一种目标货币(例如 BTC + ETH + SOL → USDT)

关键概念:

  • sell_asset / buy_asset:卖出方和买入方的货币符号
  • sell_amount / buy_amount:指定其中一项,API 会计算另一项。一对多兑换时,对每种目标货币使用 sell_amount;多对一兑换时,对每种来源货币使用 sell_amount
  • quote_id:预览 API 返回的唯一标识符,创建订单时必须提供。确切的有效期由响应中的 valid_timestamp 指明。务必检查此字段,不要假定有效期固定
  • 订单状态:1 = 成功,2 = 失败

API 字段命名:

  • gate-cli cex flash-swap pairs 返回 snake_case 字段:sell_min_amount、sell_max_amount、buy_min_amount、buy_max_amount、currency_pair、sell_currency、buy_currency
  • gate-cli cex flash-swap preview-v1 和多币种预览 API 在某些环境中会返回 camelCase 字段(例如 sellMinAmount)。务必读取响应中的实际字段名,不要假定命名约定固定
  • gate-cli cex flash-swap orders 和 gate-cli cex flash-swap order 返回 snake_case 字段:sell_currency、buy_currency、sell_amount、buy_amount、create_time

数据类型说明:API 响应中的 order_id 以字符串形式返回。quote_id 也为字符串。

MCP 工具清单:

工具类型描述
gate-cli cex flash-swap preview-v1预览一对一兑换报价预览
gate-cli cex flash-swap create-v1创建创建一对一兑换订单(需要 quote_id)
gate-cli cex flash-swap preview-one-to-many预览一对多兑换报价预览
gate-cli cex flash-swap create-one-to-many创建创建一对多兑换订单
gate-cli cex flash-swap preview-many-to-one预览多对一兑换报价预览
gate-cli cex flash-swap create-many-to-one创建创建多对一兑换订单
gate-cli cex flash-swap pairs查询列出支持闪兑的交易对和限额
gate-cli cex flash-swap orders查询查询闪兑订单历史
gate-cli cex flash-swap order查询按 ID 查询单笔闪兑订单

工作流

步骤 1:识别用户意图

分析用户的请求,确定要执行哪种闪兑操作。

意图分类:

用户意图模式预览工具创建工具
将一种币兑换为另一种币(例如“卖出 1 BTC 换成 USDT”)one-to-onegate-cli cex flash-swap preview-v1gate-cli cex flash-swap create-v1
无需单独确认即可一键兑换(例如“直接将 100 USDT 兑换成 GT”)one-to-one-autogate-cli cex flash-swap preview-v1 → gate-cli cex flash-swap create-v1—
使用一种货币购买多种币(例如“买入 1u BTC、2u ETH”)one-to-manygate-cli cex flash-swap preview-one-to-manygate-cli cex flash-swap create-one-to-many
按比例将一种货币拆分兑换为多种币(例如“拆分 1000 USDT,一半换成 BTC,一半换成 ETH”)one-to-many-splitgate-cli cex flash-swap preview-one-to-manygate-cli cex flash-swap create-one-to-many
买入指定数量的多种币(例如“用 USDT 买入 0.1 BTC 和 1 ETH”)one-to-many-buygate-cli cex flash-swap preview-one-to-manygate-cli cex flash-swap create-one-to-many
将多种币卖出并兑换为一种货币(例如“卖出 1 BTC、2 ETH 换成 USDT”)many-to-onegate-cli cex flash-swap preview-many-to-onegate-cli cex flash-swap create-many-to-one
将某些币的所有持仓合并兑换为一种币(例如“将我的所有 BTC、ETH、DOGE 兑换成 USDT”)many-to-one-allgate-cli cex flash-swap preview-many-to-onegate-cli cex flash-swap create-many-to-one
仅预览多币种兑换(例如“我的 BTC 和 ETH 能换多少 GT?”)many-to-one-previewgate-cli cex flash-swap preview-many-to-one—
查询支持闪兑的交易对querygate-cli cex flash-swap pairs—
查询闪兑订单列表querygate-cli cex flash-swap orders—
按 ID 查询单笔闪兑订单querygate-cli cex flash-swap order—
验证最新订单结果(例如“我的兑换成功了吗?”)verify-ordergate-cli cex flash-swap order—

需要提取的关键数据:

  • intent:"one_to_one" / "one_to_one_auto" / "one_to_many" / "one_to_many_split" / "one_to_many_buy" / "many_to_one" / "many_to_one_all" / "many_to_one_preview" / "list_pairs" / "list_orders" / "get_order" / "verify_order"
  • sell_asset / buy_asset:涉及的货币
  • sell_amount / buy_amount:用户指定的数量
步骤 2:预先校验兑换数量(在任何预览之前)

调用预览 API 前,根据交易对的最小值和最大值限制校验用户的兑换数量,避免不必要的 API 调用。

调用 gate-cli cex flash-swap pairs,并传入:

  • currency:用户请求中的 sell_asset 或 buy_asset

需要提取的关键数据:

  • sell_min_amount / sell_max_amount:卖出端允许的范围
  • buy_min_amount / buy_max_amount:买入端允许的范围

校验逻辑:

  • 如果用户的 sell_amount < sell_min_amount,告知用户金额低于最低限额,且不要继续预览
  • 如果用户的 sell_amount > sell_max_amount,告知用户金额超过最高限额
  • 如果未找到交易对,则表示该货币不支持闪兑

如果用户明确要求“一键”或“直接”兑换,请跳过此步骤以尽量降低延迟。

第 3 步:预览 — 一对一兑换(如果意图为 one_to_one 或 one_to_one_auto)

调用 gate-cli cex flash-swap preview-v1,并提供:

  • sell_asset(必填,字符串):要卖出的资产,例如 "BTC"
  • buy_asset(必填,字符串):要买入的资产,例如 "USDT"
  • sell_amount(字符串):卖出数量。在 sell_amount 和 buy_amount 中选择一个
  • buy_amount(字符串):买入数量。在 sell_amount 和 buy_amount 中选择一个

需要提取的关键数据:

  • quote_id:创建订单时必需
  • sell_asset / sell_amount:已确认的卖出方
  • buy_asset / buy_amount:计算得出的买入方
  • price:汇率
  • valid_timestamp:报价到期时间

对于 one_to_one 意图:向用户展示预览,并在继续创建订单前征求确认。

对于 one_to_one_auto 意图:用户已通过明确要求“直接”或“一键”执行,预先授权此次兑换。跳过单独的确认提示,立即继续执行第 4 步。这符合安全规则,因为用户的直接请求即为确认。但是:如果预览返回任何错误(code != 0),则不要继续执行第 4 步,立即向用户报告错误。

第 4 步:创建 — 一对一兑换(用户确认第 3 步后,或 one_to_one_auto 自动执行)

前置条件:第 3 步必须返回 code == 0,且包含有效的 quote_id。如果第 3 步失败(任何 code != 0),则不要执行此步骤。切勿捏造 quote_id。

调用 gate-cli cex flash-swap create-v1,并提供 JSON 字符串请求体:

  • quote_id(必填,字符串):来自预览响应,必须是 API 实际返回的值
  • sell_asset(必填,字符串):要卖出的资产
  • sell_amount(必填,字符串):卖出数量
  • buy_asset(必填,字符串):要买入的资产
  • buy_amount(必填,字符串):买入数量

需要提取的关键数据:

  • id:已创建的订单 ID
  • status:1 = 成功,2 = 失败
  • sell_asset / sell_amount / buy_asset / buy_amount:已确认的数量
  • price:执行汇率
  • create_time:订单创建时间戳
  • error.code / error.message:即使 HTTP 状态码为 200,也要检查错误

订单结果验证:创建后,检查 status 字段:

  • 如果 status == 1:告知用户兑换成功,并显示最终收到的 buy_amount
  • 如果 status == 2:告知用户兑换失败,并建议重新预览后再试
  • 如果 error.code != 0:向用户报告具体错误消息
第 5 步:预览 — 一对多兑换(如果意图为 one_to_many、one_to_many_split 或 one_to_many_buy)

对于 one_to_many_split:用户指定总金额和分配比例(例如“拆分 1000 USDT,一半换 BTC、一半换 ETH”)。调用 API 前,先计算每个目标的 sell_amount。

对于 one_to_many_buy:用户指定每种币的目标 buy_amount(例如“买入 0.1 BTC 和 1 ETH”)。在 params 数组中使用 buy_amount 字段而非 sell_amount,让 API 计算所需的卖出数量。

调用 gate-cli cex flash-swap preview-one-to-many,并提供 JSON 字符串请求体:

  • params(必填,数组):每个元素包含:
  • sell_asset(必填,字符串):源币种(所有项相同,例如 "USDT")
  • sell_amount(字符串):用于兑换此目标的源币种数量
  • buy_asset(必填,字符串):目标币种(例如 "BTC"、"ETH")
  • buy_amount(字符串):可替代 sell_amount

需要提取的关键数据:

  • orders[]:预览结果数组,每项包含 quote_id、sell_amount、buy_amount、price 和 error
  • total_consume_amount:消耗的源币种总量
  • 检查每个订单的 error.code,非零表示该项获取报价失败

展示完整的预览表,并突出显示失败项。征求用户确认。

步骤 6:创建 — 一对多兑换(用户确认步骤 5 后)

重要:排除预览失败的项目(即 error.code != 0 或缺少 quote_id 的项目)。 调用 gate-cli cex flash-swap create-one-to-many,并传入 JSON 字符串作为请求体:

  • params(必需,数组):每个元素包含:
  • sell_asset(必需,字符串):源货币
  • sell_amount(必需,字符串):卖出数量
  • buy_asset(必需,字符串):目标货币
  • buy_amount(必需,字符串):买入数量(来自预览)
  • quote_id(字符串):来自预览响应

需要提取的关键数据:

  • orders[]:已创建订单的数组,每个订单包含 id、status、error
  • total_consume_amount:实际消耗总额
  • 检查每个订单的 error.code,以确认各项目是否失败
步骤 7:预览 — 多对一兑换(如果 intent = many_to_one、many_to_one_all 或 many_to_one_preview)

对于 many_to_one_all:用户希望合并指定货币的全部持仓。预览前,查询用户的现货账户余额,确定每种货币的实际数量。过滤掉余额低于闪兑最低数量的货币(sell_min_amount 来自 gate-cli cex flash-swap pairs)。 调用 gate-cli cex flash-swap preview-many-to-one,并传入 JSON 字符串作为请求体:

  • params(必需,数组):每个元素包含:
  • sell_asset(必需,字符串):源货币(例如“BTC”、“ETH”)
  • sell_amount(字符串):卖出数量
  • buy_asset(必需,字符串):目标货币(所有项目相同,例如“USDT”)
  • buy_amount(字符串):可替代 sell_amount

需要提取的关键数据:

  • orders[]:预览结果数组,包含 quote_id、sell_amount、buy_amount、price、error
  • total_acquire_amount:将收到的目标货币总量
  • 检查每个订单的 error.code——非零表示该项目失败

展示完整的预览表,并突出显示失败项目。

对于 many_to_one_preview:展示预计 buy_amount 总额(所有成功项目之和),且不要继续创建。告知用户这仅为预览。

对于 many_to_one 和 many_to_one_all:继续创建前,请求用户确认。

步骤 8:创建 — 多对一兑换(用户确认步骤 7 后)

重要:排除预览失败的项目。包含失败项目(例如 buy_amount: "0")会导致整个请求因 code: 4 而被拒绝。

调用 gate-cli cex flash-swap create-many-to-one,并传入 JSON 字符串作为请求体:

  • params(必需,数组):每个元素包含:
  • sell_asset(必需,字符串):源货币
  • sell_amount(必需,字符串):卖出数量
  • buy_asset(必需,字符串):目标货币
  • buy_amount(必需,字符串):买入数量(来自预览)
  • quote_id(字符串):来自预览响应

需要提取的关键数据:

  • orders[]:已创建订单的数组,包含 id、status、error
  • total_acquire_amount:实际收到的总额
步骤 9:查询闪兑交易对(如果 intent = list_pairs)

调用 gate-cli cex flash-swap pairs,并传入:

  • currency(可选,字符串):按货币符号筛选
  • limit(可选,数字):返回的最多项目数(默认 1000)
  • page(可选,数字):页码

大型结果集警告:不设置货币筛选时,可能返回数千行。汇总总数,展示 20 个交易对示例,并建议按货币筛选。

需要提取的关键数据:

  • items[]:货币交易对列表,包含 currency_pair、sell_currency、buy_currency、sell_min_amount、sell_max_amount、buy_min_amount、buy_max_amount
步骤 10:查询闪兑订单历史记录(如果意图为 list_orders)

调用前,如果提供了 status 参数,请先验证。有效值仅为 1(成功)和 2(失败)。

调用 gate-cli cex flash-swap orders,并传入:

  • status(可选,数字):1 = 成功,2 = 失败
  • sell_currency(可选,字符串):按卖出币种筛选
  • buy_currency(可选,字符串):按买入币种筛选
  • limit(可选,数字):最大记录数
  • page(可选,数字):页码
  • reverse(可选,布尔值):true 表示最新记录优先(默认值)

需要提取的关键数据:

  • 订单列表及其 id、sell_currency、buy_currency、sell_amount、buy_amount、price、status、create_time
步骤 11:查询单笔订单(如果意图为 get_order 或 verify_order)

调用 gate-cli cex flash-swap order,并传入:

  • order_id(必填,数字):要查询的订单 ID

如果 API 返回 404,请告知用户未找到该订单。

对于 verify_order:获取订单后,检查 status:

  • 如果 status == 1:确认闪兑成功,并显示实际收到的最终 buy_amount
  • 如果 status == 2:告知用户闪兑失败,建议重新预览并下单

需要提取的关键数据:

  • 完整订单详情:id、sell_currency、buy_currency、sell_amount、buy_amount、price、status、create_time
步骤 12:整理并呈现结果

使用适当的报告模板整理结果。对于闪兑操作,始终展示:

  1. 包含报价详情的预览摘要表
  2. 创建后,展示订单 ID、状态以及各项错误(如有)

错误处理

错误场景处理方式
地区/合规限制(code -2)严重:API 返回 {"code":-2,"message":"This service is not supported in your region"}。这意味着该用户所在地区无法使用闪兑。立即停止所有操作,切勿继续创建订单,并告知用户:“由于合规限制,您所在的地区无法使用闪兑。”切勿编造任何结果
预览失败(任何非零 code)严重:如果预览 API 返回任何 code != 0,则操作已失败。切勿继续执行创建步骤。切勿编造 quote_id。向用户报告确切的错误代码和消息。API 返回错误时,绝不可显示“成功”
金额低于最低限额(sell_amount < sell_min_amount)先查询 gate-cli cex flash-swap pairs。如果低于最低限额,告知用户确切的最低限额,且不要调用预览
金额超过最高限额(sell_amount > sell_max_amount)告知用户金额超过允许的最高限额,并显示限额
报价已过期(code 1052)quote_id 已过期。重新运行预览以获取最新报价,然后立即创建订单
无法获取准确报价(code 4 / 400001 / 400007)这些是服务端的报价相关错误。code 4 表示顶层请求被拒绝(通常由包含失败项目导致)。400001 和 400007 是单项错误,表示服务端无法为该交易对或金额定价。建议调整金额、尝试其他交易对,或移除失败项目
多币种创建:整个请求被拒绝(code 4)可能是因为包含了 buy_amount: "0" 的预览失败项目。移除所有预览结果中 error.code != 0 的项目,然后重试
订单状态 == 2(失败)告知用户闪兑失败。建议调整参数后重新预览并重试
未找到订单(404)order_id 不存在。建议验证 ID,或先查询订单列表
MCP 服务连接失败提示用户检查网络或 VPN,并建议稍后重试
未提供 order_id提示用户提供订单 ID,或先查询订单列表
查询结果为空告知用户未找到数据,并建议调整筛选条件
不支持该币种告知用户指定的币种无法用于闪兑
状态值无效状态仅接受 1(成功)或 2(失败)。调用 API 前拒绝其他值
结果集过大(数千行)汇总总数,展示 20 条样例,并建议按币种筛选
many_to_one_all 的余额低于最低限额整合所有持仓时,跳过余额 < sell_min_amount 的币种,并告知用户哪些币种已排除

安全规则

  • 绝不伪造结果:如果任何 API 调用返回错误(code != 0),必须向用户报告实际错误。绝不伪造成功响应、虚构订单 ID、quote_id 或交易结果。这是最重要的安全规则
  • 预览失败后绝不继续:如果预览 API 返回任何错误(code != 0,包括地区限制错误 code -2),必须立即停止。不要调用创建 API。不要虚构 quote_id(例如“ AUTO-GT-001”)。如实报告错误
  • 创建前始终先预览:每笔兑换都必须先经过预览步骤。对于标准流程,向用户展示报价,并等待明确确认后再调用创建 API。仅在 one_to_one_auto 模式下:用户已明确要求直接兑换(例如“直接兑换”或“一键兑换”),这视为预先授权的确认——预览后无需单独请求确认,立即继续创建
  • 未经确认不得执行写入操作:除非(a)用户已明确确认预览结果,或(b)用户明确要求一键兑换/直接兑换,否则绝不要调用任何创建/下单 API。查询操作(列出交易对、列出订单、获取订单)无需确认
  • 排除预览失败的项目:创建多币种订单时,只包含预览成功的项目(error.code == 0)
  • 不要泄露敏感信息:绝不要输出 API Key、Secret 或身份验证令牌
  • 按原样显示金额:不要对 API 响应中的金额进行四舍五入或修改
  • 大额金额警告:如果兑换总额超过等值 10,000 USDT,提醒用户再次核对
  • 处理过期确认:如果用户确认了先前的预览,请检查当前时间是否已超过该预览响应中的 valid_timestamp。如果已过期,则自动重新预览以获取新报价,然后再创建

判断逻辑摘要

条件操作工具
用户想将一种币兑换成另一种币先预览一对一兑换,确认后再创建gate-cli cex flash-swap preview-v1 → gate-cli cex flash-swap create-v1
用户说“直接”或“一键”兑换自动预览并创建,无需单独确认gate-cli cex flash-swap preview-v1 → gate-cli cex flash-swap create-v1
用户引用之前的 quote_id 进行确认使用所引用的 quote_id 创建订单gate-cli cex flash-swap create-v1
兑换金额小得可疑预览前根据交易对的最小金额进行预校验gate-cli cex flash-swap pairs
用户想用一种货币购买多种币先预览一对多兑换,再创建gate-cli cex flash-swap preview-one-to-many → gate-cli cex flash-swap create-one-to-many
用户想按比例拆分一种货币(例如“各一半”)计算每个目标币种的 sell_amount,然后预览一对多兑换gate-cli cex flash-swap preview-one-to-many → gate-cli cex flash-swap create-one-to-many
用户指定购买数量(例如“买 0.1 BTC 和 1 ETH”)在 params 中使用 buy_amount,预览一对多兑换gate-cli cex flash-swap preview-one-to-many → gate-cli cex flash-swap create-one-to-many
用户想将多种币兑换成一种货币先预览多对一兑换,再创建gate-cli cex flash-swap preview-many-to-one → gate-cli cex flash-swap create-many-to-one
用户想归集某些持仓的“全部”资产查询余额,按最小金额筛选,预览多对一兑换,再创建gate-cli cex flash-swap pairs → gate-cli cex flash-swap preview-many-to-one → gate-cli cex flash-swap create-many-to-one
用户询问“不执行的话能换到多少”仅预览多对一兑换,汇总 buy_amounts,切勿创建gate-cli cex flash-swap preview-many-to-one
预览返回 error.code != 0 的条目警告用户,创建前排除失败的条目—
预览返回代码 -2(区域限制)立即停止。切勿创建。告知用户其所在区域无法使用闪兑—
预览返回任何非零代码停止。切勿创建。切勿伪造 quote_id。向用户报告确切错误—
创建返回代码 1052(报价已过期)重新运行预览以获取最新报价预览工具
创建返回单项错误(400001/400007)报告失败的条目,并建议调整金额—
多币种创建因代码 4 被拒绝移除预览失败的条目并重试创建工具
创建后订单状态 == 2告知用户兑换失败,并建议重试—
用户询问“我的兑换成功了吗?”按 ID 查询订单,并检查 status 字段gate-cli cex flash-swap order
用户询问支持的交易对或限额查询交易对列表gate-cli cex flash-swap pairs
用户查询订单历史查询订单列表gate-cli cex flash-swap orders
用户按 ID 查询特定订单查询单个订单gate-cli cex flash-swap order
未找到订单(404)告知用户,并建议检查 ID—
用户提供无效的状态筛选值拒绝请求,并告知有效值为 1 或 2—

报告模板

时间戳格式:所有 {timestamp} 占位符均使用 ISO 8601 格式:YYYY-MM-DD HH:mm:ss UTC。

一对一预览报告
## Flash Swap Preview (One-to-One)

**Quote ID**: {quote_id}
**Valid Until**: {valid_timestamp}

| Sell | Amount | Buy | Amount | Rate |
|------|--------|-----|--------|------|
| {sell_asset} | {sell_amount} | {buy_asset} | {buy_amount} | {price} |

Proceed with this swap? (Yes/No)
一对一订单报告
## Flash Swap Order Created

**Order ID**: {id}
**Status**: {status_text}
**Created At**: {create_time}

| Sell | Amount | Buy | Amount | Rate |
|------|--------|-----|--------|------|
| {sell_asset} | {sell_amount} | {buy_asset} | {buy_amount} | {price} |
多币种预览报告(一对多 / 多对一)
## Flash Swap Preview ({mode})

**Total {direction}**: {total_amount} {currency}

| # | Sell | Sell Amount | Buy | Buy Amount | Rate | Quote ID | Status |
|---|------|-------------|-----|------------|------|----------|--------|
| {n} | {sell_asset} | {sell_amount} | {buy_asset} | {buy_amount} | {price} | {quote_id} | {status} |

{failed_count} item(s) failed to get a quote and will be excluded from the order.
Proceed with {success_count} successful item(s)? (Yes/No)
多币种订单报告
## Flash Swap Orders Created ({mode})

**Total {direction}**: {total_amount} {currency}

| # | Order ID | Sell | Sell Amount | Buy | Buy Amount | Status | Error |
|---|----------|------|-------------|-----|------------|--------|-------|
| {n} | {id} | {sell_asset} | {sell_amount} | {buy_asset} | {buy_amount} | {status_text} | {error_message} |

{success_count}/{total_count} orders succeeded.
交易对列表报告
## Gate Flash Swap Supported Pairs

**Query Time**: {timestamp}
**Filter**: {currency filter or "None"}

| Pair | Sell Currency | Buy Currency | Sell Min | Sell Max |
|------|---------------|--------------|----------|----------|
| {currency_pair} | {sell_currency} | {buy_currency} | {sell_min_amount} | {sell_max_amount} |

Total: {total} pairs.
订单列表报告
## Gate Flash Swap Order History

**Query Time**: {timestamp}
**Filters**: Status={status}, Sell={sell_currency}, Buy={buy_currency}

| Order ID | Sell | Sell Amount | Buy | Buy Amount | Status | Created At |
|----------|------|-------------|-----|------------|--------|------------|
| {id} | {sell_currency} | {sell_amount} | {buy_currency} | {buy_amount} | {status_text} | {create_time} |

Total: {total} records.
订单详情报告
## Gate Flash Swap Order Details

| Field | Value |
|-------|-------|
| Order ID | {id} |
| Sell Currency | {sell_currency} |
| Sell Amount | {sell_amount} |
| Buy Currency | {buy_currency} |
| Buy Amount | {buy_amount} |
| Exchange Rate | {price} |
| Status | {status_text} |
| Created At | {create_time} |

评论

支持 Markdown