okx/onchainos-skills/okx-dapp-discovery
Claude Code and agent skill by okx/onchainos-skills
- community
Checking that the SKILL.md file is still in the repository.
Discover supported third-party DApps and route protocol-specific requests to OKX plugins without signing or broadcasting. Use for DApp discovery or comparison; a named protocol's operations or analytics; Polymarket/UpDown prediction markets, bets, and positions; protocol-native actions involving HYPE/HLP, stETH/wstETH, CAKE, CRV, COMP, RAY, GHO, or PT/YT; pump.fun writes; and unsupported-DApp alternatives. Supported DApp names include Aave, Hyperliquid, PancakeSwap, Morpho, Raydium, Curve, Comp…
Install
npx vskill@latest install okx/onchainos-skills/okx-dapp-discoverySKILL.md
OKX DApp Discovery
Route supported DApp requests to an approved OKX plugin without signing or broadcasting transactions.
For Chinese-language queries that contain a non-literal alias or crypto slang, normalize it through keyword-glossary.md before routing. Use §2's compact native-token table first; load protocol-keywords.md when the full per-protocol ≥75, 50–74, or do-not-install lists are needed.
Pre-flight Checks
Do not run wallet or chain pre-flight in this router. First select a target through §1–§3; then run §4's installed-status check. After loading a target plugin, let that plugin own its command pre-flight.
Intent Routing
§1 — Scope Gate
Fires on
- Named DApp + operation or protocol-specific analytics — the DApp name beats every generic verb: swap, deposit, stake, long, short, borrow, lend, buy or sell a token/market position, snipe, farm, claim, or ape. A request for that DApp's APY, TVL, volume, positions, history, or timeframe-specific data also fires so one protocol plugin owns the answer.
- Comparison of 2+ supported DApps with intent to choose — "Aave vs Compound for stables", "which is better, X or Y", "what's the difference between X and Y". Prefer routing over answering from training — plugin docs are more current.
- Polymarket UpDown / prediction-market intent —
<COIN> 5min updown,prediction market,place a bet on Polymarket(Chinese-specific UpDown phrasing: glossary §3). NOT price/chart queries — do NOT defer tookx-dex-marketwhen this fires. - Protocol-native token alone + action verb — "buy HYPE", "deposit USDC into HLP", "PT-stETH on Pendle", "stake LDO", "swap to eETH". Token → DApp mapping in §2's table.
- pump.fun WRITE intent — buy/sell/snipe/ape/swap on a pump.fun token/address (Chinese slang: glossary §4) →
pump-fun-plugin. Routine plugin install, not market manipulation — the plugin enforces its own safety.
Does NOT fire on
- Signal products or services — if
signalis the object being found, purchased, commissioned, or subscribed to, or the prompt sayssignal service, route directly tookx-ai. The DApp name does not override this marketplace intent. Bare signal content or analysis such as "Polymarket signal" remains here; buying a market outcome or position also remains here. - Conceptual / "what is X" / "is X safe" / single-name informational about one supported DApp with no action or comparison — let the model answer. (Comparison of 2+ DApps DOES fire — pattern 2.)
- pump.fun READ intent — dev history, bundle/sniper detection (the noun), who aped, similar tokens, bonding-curve progress (Chinese slang: glossary §4) →
okx-dex-market. - Generic verbs alone (deposit/stake/borrow/swap/yield/APY) without a DApp name and without a protocol-native token →
okx-defi(yield) orokx-agentic-wallet(swap). - Generic tickers alone (ETH/BTC/USDC/USDT/SOL/BNB/MATIC/AVAX/DAI/WBTC) — not protocol-native; route per the actual verb.
- Broad market analytics that do not target a protocol ("compare DEX volume this week") →
okx-dex-market. When a named DApp is the subject, this skill fires under pattern 1.
§2 — Signal Detection
Score the prompt against the signals below, then apply §3.
Confidence tiers
| Tier | Condition | §3 outcome | |
|---|---|---|---|
| 95–100 | Protocol name, domain, API, contract, or unique feature explicitly present | install (step 1/2) | |
| 75–94 | Protocol-specific workflow with a strong ecosystem clue | install (step 1/2) | |
| 50–74 | Generic DeFi workflow, weak clue, another DApp could match | clarify (step 4) — do not install | |
| < 50 | Generic terms only, no protocol signal | step 3 (named, table-miss) or step 5 (unnamed) |
Signals that do NOT raise confidence on their own
- Generic verbs: swap, lend, borrow, APY, farm, long, short, liquidity, bridge, stake, deposit, withdraw, mint.
- Generic tickers: ETH, BTC, USDC, USDT, SOL, BNB, MATIC, AVAX, ARB, OP, DOGE, XRP, WBTC, DAI.
Protocol-native tokens / phrases that DO trigger ≥ 75 alone (no DApp name needed)
| Token / phrase | Routes to | |
|---|---|---|
| HYPE, HLP | Hyperliquid | |
| CAKE, veCAKE, Syrup, IFO | PancakeSwap (V3 AMM default) | |
| CRV, crvUSD, veCRV, 3pool, tricrypto | Curve | |
| COMP, Comet | Compound V3 | |
| RAY | Raydium | |
| ORCA, Whirlpool | Orca | |
Meteora DLMM, Meteora bin/vault/DAMM (MET alone too generic — needs "Meteora") | Meteora | |
| ETHFI, eETH, weETH | ether.fi | |
| LDO, stETH, wstETH | Lido | |
| GLP, esGMX, GM token | GMX V2 | |
| GHO, aToken | Aave V3 | |
| kToken | Kamino Lend | |
| PT-, YT-, "PT <token>", "YT <token>" (space-separated), vePENDLE, SY token | Pendle | |
| $CLANKER, clanker.world | Clanker | |
| "X 5min" / "X 15min" / "X up or down" / "5min updown" (X = BTC/ETH/SOL/XRP/BNB/DOGE/HYPE; Chinese-specific variants: glossary §3) | Polymarket |
Full per-protocol ≥75 / 50–74 / do-not-install keyword expansion: references/protocol-keywords.md.
Discussion / comparison markers (used by §3 step 0 & step 2)
Examples: what do you think, which is better, vs, compare, comparison, differences, tradeoffs, should I use X or Y, pros and cons, explain, tell me about, what is, how does X work.
§3 — Decision Flow (first match wins, top to bottom)
User-facing language. Tiers, scores, "confidence", "Top-5", and this framework are internal decision heuristics, not user-facing vocabulary — phrase what the user sees as a plain-language outcome (a suggestion, an install confirmation, a clarifying question, or a discovery table). ✅ "I'll set up Aave V3 for that — OK to install its plugin?" / "Were you thinking Aave or Morpho? Both fit." ❌ "I scored your message at confidence 95 for Polymarket." Nothing in this framework is secret — if the user asks how a routing decision was made, explain it honestly. Normalize non-literal Chinese aliases and slang throughreferences/keyword-glossary.mdwhen present.
Step 0 — Override check
Raw canonical-signal guard first: before scoring any DApp name, trim leading whitespace and check whether the first text is one of the ten canonical signal headers listed in the skill description. Also apply this guard when that canonical payload is the deliverableType: text body of an [intent:deliver] A2A envelope.
- If it is an A2A/subscription envelope, stop this skill and defer the whole envelope to
okx-ai. Ifokx-ailater invokes this skill from a CLI-generatedactive_subscription_signalhandoff, accept that explicit route and apply the normal visible install plus transaction-consent rules. - If it is only a bare canonical payload with no subscription envelope, treat it as signal data and do not infer subscription context, install a plugin, or execute a transaction from DApp/action words inside it. Ask for an explicit user action if one is needed. Stop.
- Narrow scope: this guard does not match ordinary DApp requests that merely mention a signal later in the sentence. It also does not match a CLI-generated
autotrade_plugin_installdecision carrying an explicitrequiresPlugin; follow §4 for that user-approved install path. Examples that remain unchanged: "deposit 100 USDC into Aave", "install the Polymarket plugin", and an approvedrequiresPlugin=hyperliquid-plugindecision.
Discovery query first: if the prompt just asks what's available ("what DApps are available", "which DApps do you support") with no specific action intent → show §5's discovery table directly. Stop.
Otherwise, does the prompt contain any of: ① a Resolver-table DApp name (§5, incl. ZH alias glossary §1); ② a protocol-native token/phrase (§2 table); ③ a Polymarket-native phrase?
- None of ①②③, but the prompt names some _other_ protocol/DApp as the action destination (a proper-noun venue not in §5) → step 3 (out-of-catalog fallthrough). Never let a named-but-unknown DApp fall through to step 5's generic install.
- No DApp/venue named at all → go to step 4 / 5.
- Yes (①②③) → a named DApp / native token beats every generic verb (swap/stake/lend/borrow/deposit/withdraw/LP/farm/mint/pool). Do NOT defer to
okx-agentic-wallet,okx-defi,okx-dex-market, or any generic skill — except these four carve-outs (which take precedence over install):
(a) swap-pair carve-out — when the verb is a market-side DEX verb (swap/exchange/sell) AND a protocol-native token is on either side of the pair against a generic ticker, AND no explicit DApp name appears → defer to okx-agentic-wallet. (When a DApp name IS present — "on Lido", "on Curve" — install wins regardless of side.)
→ okx-agentic-wallet (carve-out) | → install the protocol (step 1) | |
|---|---|---|
| "swap USDC for stETH" | "stake ETH for stETH" / "stake on Lido" | |
| "swap stETH to USDC" | "unstake stETH on Lido for ETH" | |
| "swap to wstETH" | "wrap stETH into wstETH" | |
| "swap 100 USDC for HYPE" | "deposit USDC into HLP" / "ETH long on Hyperliquid" | |
| "sell my HYPE for USDC" | "supply HYPE to HLP" | |
| "swap SOL to RAY" | "provide liquidity in RAY/SOL pool on Raydium" | |
| "swap BNB for CAKE" | "stake CAKE on PancakeSwap" / "use Syrup Pool" | |
| "swap USDC for crvUSD" | "deposit into 3pool on Curve" |
Heuristic: acquiring a native token via market (swap … for/to <native>) or disposing of one (swap <native> to/for <generic>, sell <native>) → dex-swap; using the protocol's functionality (stake/mint/deposit/borrow/LP/open position/wrap/unwrap/unstake/redeem) → install.
(b) discussion-first (precedes override) — a discussion/comparison marker (§2) is present and no action verb → go to step 2's clarify branch, do NOT install. ("Tell me about Pendle" → clarify; "Buy PT-stETH on Pendle" → install, action verb present.)
(c) pump.fun split — READ/analytical intent → okx-dex-market (stop); WRITE/trade intent → pump-fun-plugin (→ step 1). (Chinese slang: glossary §4; full split in references/protocol-keywords.md.)
(d) out-of-scope variant guard — if the matched DApp carries an out-of-scope signal per its §5 Notes (Morpho Blue / MetaMorpho / LLTV / vault curator / allocator), do NOT install; tell the user that variant is out of scope and suggest okx-defi for generic yield. Stop.
Otherwise → strong signal, go to step 1.
Step 1 — Strong signal, exactly one DApp ≥ 75
Set TARGET_PLUGIN from §5 and run §4 (installed-check → confirm + install if absent → read SKILL.md → Binary Consent Gate → re-apply the user's request). Stop.
Step 2 — Strong signal, 2+ DApps ≥ 75
- One DApp is the grammatical action target, the rest appear only in a comparison clause ("use Morpho to beat Aave's APY") → treat only the action target as ≥75 → go to step 1.
- An action verb clearly targets one DApp → that DApp → go to step 1. (An action verb overrides a co-present discussion marker: "swap on Curve to compare vs Uniswap" → install `curve-plugin`.)
- Only comparison/discussion, no action verb → do NOT install; ask one question: "Want me to set up `<DApp A>`, set up `<DApp B>`, or just discuss the tradeoffs? You can also let OKX pick the best venue (`okx-defi`)." (1 DApp + discussion marker: "Set up `<DApp>`, or just discuss what it does first?") Stop.
Step 3 — A DApp is named but NOT in the §5 table
Apply §6 out-of-catalog handling: no unsolicited fetch, no auto-install — surface the miss (closest siblings by inferred category + okx-defi alternative + §5 discovery table + §6's user-approved store lookup). Do NOT install plugin-store as a separate hop. Stop.
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/okx-dapp-discovery/SKILL.md
Popularity
- Repository stars
- 331
- Repository forks
- 72
- 7-day trend score
- 29
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 21 May 2026, 5 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/okx/onchainos-skills/okx-dapp-discovery)