关于 gate-exchange-candydrop
gate-exchange-candydrop 是用于查看 Gate CandyDrop 活动、规则和进度,以及注册和查询记录的技能。它引导 Agent 执行只读查询,并在注册前要求确认。
主要功能
- 01浏览并筛选 CandyDrop 活动
- 02查看活动规则和奖池
- 03查询已报名任务进度
- 04查询参与和空投记录
- 05注册前先确认
适用场景
- 01查找某代币的进行中活动
- 02查看任务和奖励池详情
- 03报名后检查任务完成进度
- 04查询历史报名和空投奖励
MCP 相关
该技能通过 gate-cli 命令查询 CandyDrop 信息并进行注册,也说明了 Gate MCP/IDE 环境的安装路径。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ gate/ gate-skills --skill gate-exchange-candydrop安装后在 Claude Code 中输入/gate-exchange-candydrop确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
CHANGELOG.mdREADME.mdsetup.shreferences/activities.mdgate-cli.mdmcp.mdprogress.mdrecords.mdregister.mdscenarios.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 CandyDrop
编写语言:本技能的说明和参考文本使用英语编写(Gate 技能标准)。面向最终用户的回复仍须遵循语言适配(匹配用户所在区域的语言)。
通用规则
⚠️ 停止 — 继续之前,必须阅读并严格遵守共享运行时规则。 在读完所有规则之前,不要选择或调用任何工具。这些规则具有最高优先级。 → 阅读 gate-runtime-rules.md
- 仅使用本技能中明确列出的
gate-cli命令。 对于这些工作流,不得运行此处未记录的命令,即使其他接口提供了这些命令也不例外。
技能依赖项
使用的 gate-cli 命令
查询操作(只读,公开)
gate-cli cex launch candy-drop activitiesgate-cli cex launch candy-drop rules
查询操作(只读,需要身份验证)
gate-cli cex launch candy-drop progressgate-cli cex launch candy-drop participationsgate-cli cex launch candy-drop airdrops
执行操作(写入)
gate-cli cex launch candy-drop register
身份验证
- **交互式文件设置:**如果主机上没有同时设置
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;绝不要让用户在聊天中粘贴密钥。 - **权限:**Launch:Write
- **门户:**请在聊天之外创建或轮换密钥:https://www.gate.com/myaccount/profile/api-key/manage
安装检查
- **必需项:**Gate(主程序)、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来说是有效的等效配置。如果两者均未设置或为空,请提醒操作者运行gate-cli config init,或在技能库中与之匹配的技能里配置GATE_API_KEY/GATE_API_SECRET(绝不要让用户在聊天中粘贴密钥)。 - **健全性检查:**进行需要身份验证或会修改状态的调用之前,确认运行时正常工作(例如,运行
gate-cli --version,或执行适合本技能的只读检查);在注册或写入操作之前解决凭据问题。
执行模式
阅读并严格遵循 references/gate-cli.md,然后执行本技能的 CandyDrop 工作流。
SKILL.md负责路由和产品语义。references/gate-cli.md是活动/规则查询、注册确认门槛、进度/记录查询和结果验证的权威gate-cli执行规范。
模块概览
| 模块 | 描述 | 触发关键词 |
|---|---|---|
| 活动列表 | 浏览 CandyDrop 活动,按状态/币种/任务类型筛选 | candydrop、candydrop activities、activity list、ongoing candydrop、USDT candydrop |
| 活动规则 | 查看活动规则、奖池和任务 | activity rules、task rules、prize pool、reward rules、candydrop rules |
| 报名 | 报名参加 CandyDrop 活动 | register、join activity、candydrop register、participate candydrop |
| 任务进度 | 查询已报名活动的任务完成进度 | task progress、completion progress、progress query、task progress |
| 参与记录 | 查询报名/参与历史 | participation records、registration records、history records、participation records |
| 空投记录 | 查询空投/奖励发放记录 | airdrop records、reward records、received records、airdrop records |
领域知识
CandyDrop 概念
| 概念 | 描述 |
|---|---|
| CandyDrop | Gate 的活动平台,用户完成交易、充值等任务即可从奖池中获得空投奖励。 |
活动(currency / activity_id) | 面向特定代币的 CandyDrop 活动。可通过 currency(代币符号)或 activity_id(数字 ID)识别。 |
| 活动状态 | 生命周期:upcoming(即将开始)→ ongoing(进行中)→ ended(已结束)。 |
| 报名状态 | registered(已报名)或 unregistered(尚未报名)。 |
| 记录状态 | 参与记录的状态:ongoing(进行中)、awaiting_draw(等待开奖)、won(已获奖)、not_win(未获奖)。 |
| 奖池 | 每项活动都有一个或多个奖池,每个奖池包含奖励总额(prize_all)、每位用户的上限(prize_limit)以及任务列表。 |
| 任务 | 奖池中的独立挑战(例如现货交易、合约交易、充值、邀请)。每项任务都有名称(task_name)、描述(task_desc)和专属标签(exclusive_label)。 |
| 任务进度 | 用户当前的任务完成值(例如交易量、充值金额)。仅显示已报名的任务(task_status > 0)。 |
时间戳格式
- API 返回的时间字段(例如
start_time、end_time、register_time、airdrop_time)为预格式化的 UTC 字符串,格式为YYYY-MM-DD HH:MM:SS(UTC)。 - 表格/列表:时间为 UTC 时,在列标题中标注
(UTC)。如果标题中已有(UTC)(包括 ASCII 或全角标点变体),则不要在每个单元格中重复标注:从 API 值末尾去掉(UTC),仅显示YYYY-MM-DD HH:MM:SS(例如2026-04-13 04:04:10,而不是2026-04-13 04:04:10(UTC))。如果标题中未标注 UTC,则保留 API 字符串原样,以免丢失时区信息。 - 其他展示场景(例如未带 UTC 标注标题的行内句子):可以保留 API 格式,也可以使用“标题标注时区 + 单元格去除时区后缀”的形式,但同一回复中应保持一致。
- 记录查询参数
start_time/end_time为整数 Unix 时间戳(秒)。正确的计算方式请参见references/records.md中的 时间戳策略。
数字格式
| 类别 | 精度 | 示例 |
|---|---|---|
| 金额(奖励、进度值) | 8 位小数,去除末尾的零 | 1.23 而不是 1.23000000 |
空投 rewards(显示时) | 使用相同的数字格式,然后追加 + 对应行的 currency | 4.02032 ETH 而不是 4.02032 |
| 百分比类字段 | 2 位小数,保留末尾的零 | 5.20% 而不是 5.2% |
双参数解析
活动查询接口支持通过 activity_id 或 currency 定位活动:
currency(例如“USDT”):API 会自动匹配该代币最近的进行中活动。activity_id:按数字 ID 精确查询。- 优先级:优先使用
currency。如果用户同时提供两者,则同时使用。如果只提供activity_id,则直接使用。如果查询规则或进度时两者都未提供,请向用户询问currency。
路由规则
| 意图 | 示例表达 | 路由到 |
|---|---|---|
| 浏览活动 | “显示 CandyDrop 活动”,“正在进行的 CandyDrop 活动”,“USDT CandyDrop” | 阅读 references/activities.md |
| 活动规则 | “显示 CandyDrop 规则”,“这个 CandyDrop 有哪些任务”,“奖池详情” | 阅读 references/activities.md |
| 报名 | “报名参加 USDT CandyDrop”,“加入这个 CandyDrop 活动” | 阅读 references/register.md |
| 任务进度 | “我的 CandyDrop 任务进度”,“查看我的 CandyDrop 任务进度” | 阅读 references/progress.md |
| 参与记录 | “我的 CandyDrop 参与历史”,“报名记录” | 阅读 references/records.md |
| 空投记录 | “我的 CandyDrop 空投奖励”,“查看空投记录” | 阅读 references/records.md |
| 意图不明确 | “CandyDrop” | 请先澄清:浏览 / 规则 / 报名 / 进度 / 记录,然后路由。如果默认选择浏览/列表,则仅回复精简的活动列表(参见 references/activities.md → 活动列表 — 直接作答)。 |
执行
1. 意图和参数
- 确定模块(活动列表 / 活动规则 / 报名 / 任务进度 / 参与记录 / 空投记录)。
- 报名意图:路由到
references/register.md。需要currency(必需),activity_id可选。必须遵循预览-确认流程。 - 记录意图:路由到
references/records.md。提取currency、status、start_time、end_time、page、limit。 - 提取参数:
currency、activity_id、status、rule_name、register_status、limit、offset、page、start_time、end_time。 - 缺失意图:如果用户只说“CandyDrop”而未指定意图,请询问要执行哪项操作,或默认显示活动。如果显示列表,请使用精简输出(标题 + 表格,不含术语表;参见
references/activities.md)。
2. 工具选择
| 模块 | MCP 工具 | 必需参数 | 可选参数 |
|---|---|---|---|
| 活动列表 | gate-cli cex launch candy-drop activities | — | currency、status、rule_name、register_status、limit、offset |
| 活动规则 | gate-cli cex launch candy-drop rules | currency 或 activity_id(至少提供一个) | — |
| 报名 | gate-cli cex launch candy-drop register | currency | activity_id |
| 任务进度 | gate-cli cex launch candy-drop progress | currency 或 activity_id(至少提供一个) | — |
| 参与记录 | gate-cli cex launch candy-drop participations | — | currency、status、start_time、end_time、page、limit |
| 空投记录 | gate-cli cex launch candy-drop airdrops | — | currency、start_time、end_time、page、limit |
- 报名:显示报名预览,等待确认,然后调用
gate-cli cex launch candy-drop register。 - 记录:按照
references/records.md中的时间戳策略计算时间参数。
3. 格式化响应
- 使用所选模块参考文件中的响应模板和字段名称。
- 活动列表:可选的单行标题 + 数据表格;对于浏览或“有哪些活动”这类意图,不要提供教程、字段说明或粘贴任务类型映射表;仅在单元格内本地化
rule_name。字段:currency、total_rewards、start_time、end_time、rule_name、participants、user_max_rewards。 - 活动规则:显示
currency、total_rewards、start_time、end_time,以及每个奖池的prize_all、prize_limit、tasks。 - 注册:显示确认结果(
success)。 - 任务进度:显示
currency、total_rewards、start_time、end_time,以及每个任务的task_name、task_desc、value。 - 参与记录:显示
currency、status、register_time、id(若表格标题已标明 UTC,时间单元格需去掉末尾的(UTC)——参见上文的时间戳格式)。 - 空投记录:仅显示
currency、airdrop_time和带代币单位的rewards({rewards} {currency})——不要显示闪兑金额 / USDT(convert_amount)(参见references/records.md)。
报告模板
每次操作后,输出符合参考文件的简短标准化结果(例如:活动列表、规则、注册确认、进度、记录)。活动列表的回答应保持精简(参见 references/activities.md)。使用 API 字段名称和语义值;参考文件要求本地化的内容(例如**rule_name 任务类型**),应按照 references/activities.md 以用户使用的语言呈现,不要在面向用户的文本中嵌入完整映射表。
语言适配:始终使用与用户输入相同的语言作答。参考文件中的响应模板规定了要展示的结构和字段,而不是固定的输出语言。请将所有显示标签翻译为用户使用的语言。
必须本地化(不属于代码或不应“保留英文”):
- 活动列表中(以及任何显示为“任务类型”的位置)的
rule_name条目:使用references/activities.md中的任务类型映射表——这些字符串描述的是产品任务类别(例如 Futures、Simple Earn),不是代币符号。
不要翻译(无论使用何种语言,均保持原样):
- 产品名称:
CandyDrop - API 返回的币种符号:USDT、GT、BTC、DOGE 等
- 技术 ID 及其值:
id、activity_id(仅供内部使用,除非相关,否则不要显示) - 时间戳格式
YYYY-MM-DD HH:MM:SS,以及在必须保留时使用字面文本(UTC)(例如标题中未标注 UTC);此类情况不得省略时区信息 - API 错误标签:
INVALID_PARAM_VALUE、SERVER_ERROR - 数值、百分比,以及门槛中的单位
USD
其他所有显示标签都应翻译为用户使用的语言。
错误处理
API 错误标签
API 会返回包含 label 字段的结构化错误。按以下方式进行映射:
| API 标签 | 面向用户的消息 |
|---|---|
INVALID_PARAM_VALUE | “请求参数无效。请检查输入并重试。” |
SERVER_ERROR | “系统繁忙,请稍后重试。” |
Activity not found | “未找到活动。请检查币种或活动 ID。” |
currency is required | “请提供币种名称(例如 USDT)。” |
Device token is required | “注册需要设备令牌。请尝试通过 Gate 应用或网站操作。” |
空结果处理
| 场景 | 操作 |
|---|---|
| 活动列表为空 | "没有符合条件的 CandyDrop 活动。请尝试使用其他筛选条件,或稍后再查看。" |
| 参与记录为空 | "你没有 CandyDrop 参与记录。浏览进行中的活动即可开始参与。" |
| 空投记录为空 | "未找到空投奖励。奖励通常会在活动结束后发放。" |
| 合规限制 | "由于合规限制,CandyDrop 在你所在的地区不可用。" |
| API 错误 / 401 | "无法获取 CandyDrop 数据。请登录后重试。" |
安全规则
需要确认
- 注册是一项写入操作。 在调用
gate-cli cex launch candy-drop register前,必须先显示注册预览,并等待用户明确确认。 - 预览格式:活动币种、活动 ID(如已知)。
- 请用户回复“confirm”以继续,或回复“cancel”以取消。
- 只有收到明确确认后才能调用 API。
合规
- 当 API 返回合规或地区限制错误时,显示一条友好提示:“由于合规限制,CandyDrop 在你所在的地区不可用。”不要重试。
数据完整性
- 按照用户提供的内容原样保留
currency和activity_id。 - 不要编造活动数据、奖励金额或任务进度。
- 仅显示实际 API 响应返回的数据。