okx-growth-competition

okx-growth-competition

热门

列出OKX Agentic Wallet专属交易竞赛,为用户注册比赛,跟踪参与情况和排行榜排名,并领取赢得的奖励。当用户想要列出可用的交易竞赛或交易杯、查看比赛规则/奖池/总奖金、注册或报名或加入比赛、查看排行榜(谁在赢)或自己的排名(我是否在奖金区、我的名次是多少)、询问我是否赢了或查询参与/领取状态、领取已完成比赛的奖励或奖品、查看他们注册时使用的钱包账户,或提交Telegram/微信/电子邮件/推特联系方式以便向顶级获奖者发放奖品时使用。

314Star
60Fork
更新于 2026/7/15
SKILL.md
只读
名称
okx-growth-competition
描述

列出OKX Agentic Wallet专属交易竞赛,为用户注册比赛,跟踪参与情况和排行榜排名,并领取赢得的奖励。当用户想要列出可用的交易竞赛或交易杯、查看比赛规则/奖池/总奖金、注册或报名或加入比赛、查看排行榜(谁在赢)或自己的排名(我是否在奖金区、我的名次是多少)、询问我是否赢了或查询参与/领取状态、领取已完成比赛的奖励或奖品、查看他们注册时使用的钱包账户,或提交Telegram/微信/电子邮件/推特联系方式以便向顶级获奖者发放奖品时使用。

OKX Growth Competition — 交易竞赛

Agentic Wallet专属交易竞赛。完整生命周期分布在以下重点参考文件中:

  • 参与(发现/注册/交易/已注册钱包/导出保护)— references/participation.md
  • 详情(规则/奖池/四个奖励部分)— references/details.md
  • 排名(排行榜/个人排名,含CASE 1/2/3模板)— references/rank.md
  • 领取(奖励状态检查/原子领取/联系方式收集)— references/claim.md
  • CLI参考(命令、参数、返回模式)— references/cli-reference.md

本SKILL.md包含所有参考文件依赖的全局规则(事实、身份不变性、路由、输出规则、时间格式、状态码、错误处理)。请始终先阅读此文件;然后根据用户意图跳转到匹配的参考文件。

关于每个Agentic Wallet竞赛的事实

当用户询问竞赛如何运作时,请将以下内容视为事实性基础。两个与链相关的字段扮演不同且不重叠的角色——切勿混淆:

  • chainId — 单个ID。仅用于领取/奖励链(奖励在此链上支付;其合约地址在此链上)。除非它也出现在participateChainIds中,否则它不是交易链。
  • participateChainIds — 由listdetail端点返回的ID数组。交易链集合。在此列表中任何链上的交易都计入同一竞赛排名。

交易链集合 = participateChainIds。领取链 = chainId 这是两个独立的概念;下面的显示规则绝不合并它们。

  1. 链ID → 显示名称映射。当前支持的竞赛链:1 → Ethereum196 → X Layer501 → Solana
  2. 切勿在未先检查participateChainIds的情况下告诉用户“你的链不计入”。
  3. myRankInfo.userTotal = 0表示用户尚未达到合格门槛,或者后端指标管道尚未捕获其交易——这并不意味着用户的链不受支持。
  4. competition_rank接受单个可选参数wallet。省略时用于查询自己的排名——工具会发送你的accountId(一次调用覆盖participateChainIds中的所有链;无需选择链)。仅在查询他人排名时传递显式地址;地址的链族(EVM 0x... 否则 Solana)必须与活动的首要链匹配,否则工具拒绝调用(不会静默地错误查询链)。

身份解析不变性

competition_rankcompetition_user_status的查询身份是互斥的:后端接受accountId(自己)或walletAddress(跨用户)——两者不能同时存在。对于“你使用了哪个身份?”的答案,根据调用形式确定

调用形式 发送的身份
competition_user_status(任意) accountId — 一次调用覆盖participateChainIds中的所有链
competition_rank 不带wallet accountId
competition_rankwallet=<addr> walletAddress — 工具验证地址的链族(EVM 0x... 否则 Solana)是否与活动的chainId匹配;不匹配则拒绝
competition_claim(预检查) accountId

对于多活动competition_user_status(无activity_name),相同的accountId在所有活动中重复使用——后端通过accountId关联。

强制阅读顺序

在生成任何面向用户的竞赛消息之前,你必须首先在下面的正确参考文件中找到匹配的部分,并遵循其固定模板结构。 不要即兴发挥格式。不要缩短模板。不要删除部分或合并它们。模板是产品强制要求的文案(参与/技能质量措辞、免责声明),不得改写。

模板结构固定语言跟随用户——请参见下面的## Output Language规则。当用户使用中文时,将模板字符串翻译成自然的中文。当用户使用英文时,使用英文原文。占位符(包括来自{supportedChains}的链显示名称)保持不变。

快速路由(用户意图 → 参考文件 + 部分):

用户意图 参考文件 部分
“列出竞赛/显示可用竞赛” references/participation.md 步骤1 — 发现
“显示详情/显示规则/显示奖池” references/details.md 步骤2 — 查看详情
“注册/加入” references/participation.md 步骤3 — 加入
“为我交易” references/participation.md 步骤4 — 交易(委托给okx-agentic-wallet)
“排行榜/完整榜单/谁在赢” references/rank.md 查看排行榜(完整榜单)
“我的排名/我的名次/我在奖金区吗” references/rank.md 查看用户自己的排名(跨所有排行榜)
“显示已注册钱包” references/participation.md 查询已注册钱包
“导出钱包” references/participation.md 钱包导出保护
“检查我的状态/我赢了吗” references/claim.md 检查参与状态
“领取奖励/领取奖品” references/claim.md 步骤6 — 领取奖励
顶级获奖者联系方式跟进(领取后needContact: true references/claim.md 联系方式收集(仅限顶级获奖者)

如果用户的意图未明确映射到上述之一,请在回复前询问用户意图——不要**发明自由格式。

预检

阅读../okx-agentic-wallet/_shared/preflight.md。如果缺失,阅读_shared/preflight.md

常见错误的跨技能路由

  • not logged in → 引导用户完成okx-agentic-wallet登录流程(邮箱→OTP),然后重试原始操作。
  • 后端状态码(--status过滤器/status/joinStatus/rewardStatus)和错误代码消息(11002/11003/11008/1860402/address limit reached/Sui-chain/区域限制/not eligible):请参见references/cli-reference.md

命令索引

所有MCP工具镜像CLI;MCP变体接受activity_name(服务器解析ID)并从活动会话自动解析accountId/钱包地址。完整标志表和返回形状:references/cli-reference.md

# 命令 认证 描述
1 onchainos competition list [--status 0|1|2] [--page-size N] [--page-num N] 列出竞赛(默认status=0,仅活跃)
2 onchainos competition detail --activity-id <id> 规则、奖池、链、时间线
3 onchainos competition rank --activity-id <id> [--wallet <addr>] --sort-type <type> [--limit N] 排行榜 + 用户排名。参见references/rank.md了解自己/跨用户语义和sort-type发现。
4 onchainos competition user-status [--activity-id <id>] 钱包登录 参与和奖励状态(省略--activity-id则查询所有活动)
5 onchainos competition join --activity-id <id> --evm-wallet <addr> --sol-wallet <addr> --chain-index <chain_id> 钱包登录 为当前账户注册竞赛
6 onchainos competition claim --activity-id <id> --evm-wallet <addr> --sol-wallet <addr> 钱包登录 原子领取——在调用内签名并广播。参见references/claim.md
7 onchainos competition submit-contact --activity-id <id> --contact-type <Telegram|WeChat|Email|Twitter> --contact-value <text> 钱包登录 为顶级获奖者记录联系方式;仅在needContact: true的领取后使用。参见references/claim.md

--status(请求过滤器):0=活跃,1=已结束,2=全部
activityStatus(响应字段):3=活跃,4=已结束 — 与请求过滤器不同

输出规则

仅内部ID与面向用户的显示。 内部数字ID(activityIdchainIndexaccountId)有意在工具响应中返回——它们是在工具之间链式调用所必需的(例如,在competition_join之后,你可能需要调用competition_detail并传入活动ID以填充成功模板)。将它们保留在数据层;切勿在用户可见的消息中呈现它们。

在任何情况下,以任何格式,切勿在为用户生成的消息中包含任何内部ID。 仅通过activityName(如果名称不可用则使用shortName)向用户标识活动。

禁止的用户可见模式(不要产生如下输出):

  • Agentic Trading Contest (#107)
  • #106 (agenticwallettest1)
  • 任何暴露活动ID的列、行或内联引用(例如competition 107ID列、标记为Activity ID的行)——无论标签、形状或语言如何,规则相同。

正确的用户可见模式

  • Agentic Trading Contest
  • 当需要区分两个同名活动时,附加chainName(例如Agentic Trading Contest (Solana)),切勿使用ID。

幕后(允许且预期)

  • competition_user_status/competition_join响应中读取activityId,并将其传递给competition_detail以获取固定模板所需的数据。
  • 任何通过数字ID进行的工具到工具链式调用——只要最终面向用户的消息省略它们即可。

当用户要求对特定活动执行操作时(例如“领取Agentic Trading Contest”),MCP工具competition_claim/competition_join接受activity_name并在服务器端解析ID,因此你也可以直接使用名称而无需自行查找。

输出语言

以用户的对话语言渲染每个固定模板。 模板结构(部分、顺序、编号项、表格列数、占位符位置、{supportedChains}占位符和[Disclaimer: ...]块)是固定的,不得更改。只有内部的自然语言文本会根据用户语言自然翻译。

占位符永不翻译。 {supportedChains}{chainName}{rewardUnit}{txHash}{accountName}等使用API值原样填充——不要本地化它们。链显示名称(例如SolanaX LayerBase)来自规范ID到名称的映射,在所有语言中保持不变。

交付前检查清单

发送前的最终检查——涵盖参考文件中容易在长回复后遗漏的必须项。(前面部分已涵盖的规则——内部ID、participateChainIds*Formatted、语言/模板保真度——不再重复;请通过遵循其所在部分的规则进行验证。)

  • [ ] 成功注册响应后 → 末尾单独一行显示[Disclaimer: Digital asset trading involves risk. ...]。(→ participation.md → 成功注册)
  • [ ] 领取运行时失败(签名/广播/网络)时 → 附加3个要点的失败建议块。预检查拒绝(rewardStatus 0/2/3/4,代码11002,代码11008)时 → 省略建议块。(→ claim.md → 固定失败建议块)
  • [ ] 调用competition_claim之前 → 已渲染领取前预览行(You are about to claim {rewardAmount} {rewardUnit} on {chainName}. Reply "confirm" to proceed.)并且用户已回复明确确认。(→ claim.md → 领取前预览)