[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7CREA7T49WM3CPV3R5T3VKB":3,"skill-same:01M7CREA7T49WM3CPV3R5T3VKB":50},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":28,"commitSha":29,"skillDirectory":30,"forksCount":31,"repositoryHtmlUrl":32,"repositoryHomepageUrl":6,"ownerHtmlUrl":33,"ownerBlogUrl":6,"ownerDescription":34,"updatedAt":35,"install":36,"resources":49},"01M7CREA7T49WM3CPV3R5T3VKB","okx-defi",null,"OKX-aggregated DeFi (no specific DApp named) — product discovery, deposit\u002Fwithdraw\u002Fclaim execution, AND positions viewing. **If the user names ANY third-party protocol\u002FDApp (Aave, Lido, PancakeSwap, Uniswap, Curve, Compound, Morpho, Pendle, Kamino, Raydium, Hyperliquid, Polymarket, …), route to okx-dapp-discovery — NOT here, even for 'show my Aave positions'.** INVEST triggers: 'invest in DeFi', 'earn yield', 'find best APY', 'deposit\u002Fstake for yield', 'search DeFi products', 'redeem\u002Fwithdraw position', 'claim DeFi rewards', 'borrow against asset', 'repay loan', 'add\u002Fremove CLMM liquidity', 'APY\u002FTVL history', 'depth chart', yield farming, lending, staking, liquidity pools. PORTFOLIO triggers: 'check my DeFi positions', 'view DeFi holdings\u002Fportfolio', 'my staking\u002Flending positions', 'DeFi balance', 'DeFi 持仓', '我的DeFi资产'. Do NOT use for: DEX swaps (okx-agentic-wallet), token prices (okx-dex-market), wallet token balances (okx-agentic-wallet).","om-scogo\u002Fskillsh-scraper","om-scogo","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F160466840?v=4","01M79AWB6DFVCQ7RK70CS34B96","Om Achrekar","01M79AWB6ZM9SKR8KDH1WSSM22",0,"MIT","https:\u002F\u002Fgithub.com\u002Fom-scogo\u002Fskillsh-scraper\u002Fblob\u002Fmain\u002Fdata\u002Fskills\u002Fokx-onchainos-skills\u002Fokx-defi\u002Fskills\u002Fokx-defi\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: okx-defi\ndescription: \"OKX-aggregated DeFi (no specific DApp named) — product discovery, deposit\u002Fwithdraw\u002Fclaim execution, AND positions viewing. **If the user names ANY third-party protocol\u002FDApp (Aave, Lido, PancakeSwap, Uniswap, Curve, Compound, Morpho, Pendle, Kamino, Raydium, Hyperliquid, Polymarket, …), route to okx-dapp-discovery — NOT here, even for 'show my Aave positions'.** INVEST triggers: 'invest in DeFi', 'earn yield', 'find best APY', 'deposit\u002Fstake for yield', 'search DeFi products', 'redeem\u002Fwithdraw position', 'claim DeFi rewards', 'borrow against asset', 'repay loan', 'add\u002Fremove CLMM liquidity', 'APY\u002FTVL history', 'depth chart', yield farming, lending, staking, liquidity pools. PORTFOLIO triggers: 'check my DeFi positions', 'view DeFi holdings\u002Fportfolio', 'my staking\u002Flending positions', 'DeFi balance', 'DeFi 持仓', '我的DeFi资产'. Do NOT use for: DEX swaps (okx-agentic-wallet), token prices (okx-dex-market), wallet token balances (okx-agentic-wallet).\"\nlicense: MIT\nmetadata:\n  author: okx\n  version: \"4.2.6\"\n  homepage: \"https:\u002F\u002Fweb3.okx.com\"\n---\n\n# OKX DeFi (experimental merge of okx-defi-invest + okx-defi-portfolio)\n\nMulti-chain, OKX-aggregated DeFi in two capabilities behind one skill. Both wrap the same `onchainos defi` CLI command group.\n\n## Pre-flight Checks\n\n> Read `..\u002Fokx-agentic-wallet\u002F_shared\u002Fpreflight.md`. If that file does not exist, read `_shared\u002Fpreflight.md` instead.\n\n## Intent Routing\n\n| User Intent | Reference |\n|---|---|\n| Discover \u002F search DeFi products, find best APY | [invest.md](references\u002Finvest.md) |\n| Product detail (APY, TVL, accepted tokens) | [invest.md](references\u002Finvest.md) |\n| Deposit \u002F stake \u002F provide liquidity | [invest.md](references\u002Finvest.md) |\n| Withdraw \u002F redeem a position (full or partial) | [invest.md](references\u002Finvest.md) |\n| Claim rewards (platform \u002F investment \u002F V3 fee \u002F bonus \u002F unlocked principal) | [invest.md](references\u002Finvest.md) |\n| APY history, TVL history, V3 depth \u002F price charts | [invest.md](references\u002Finvest.md) |\n| View DeFi positions \u002F holdings overview (持仓) | [portfolio.md](references\u002Fportfolio.md) |\n| Per-protocol position detail (持仓详情) | [portfolio.md](references\u002Fportfolio.md) |\n| Exact parameters \u002F return schemas — invest & charts commands | [invest-cli-reference.md](references\u002Finvest-cli-reference.md) |\n| Exact parameters \u002F return schemas — positions commands | [portfolio-cli-reference.md](references\u002Fportfolio-cli-reference.md) |\n| Errors \u002F failed deposits \u002F expired calldata | [invest-troubleshooting.md](references\u002Finvest-troubleshooting.md) |\n| Errors \u002F empty positions \u002F address-format issues | [portfolio-troubleshooting.md](references\u002Fportfolio-troubleshooting.md) |\n\nTypical flow spans both: view positions (Portfolio) → redeem or claim (Invest). Read both reference files when the request chains them.\n\n## Skill Routing\n\n- For DApp-named investing\u002Flending\u002Fstaking\u002Fpositions (\"on Aave\", \"my Hyperliquid balance\") → use `okx-dapp-discovery`\n- For token price\u002Fchart or token search by name\u002Fcontract → use `okx-dex-market`\n- For DEX spot swap execution → use `okx-agentic-wallet`\n- For wallet token balances → use `okx-agentic-wallet`\n- For broadcasting signed transactions → use `okx-agentic-wallet`\n- For Agentic Wallet login, balance, contract-call → use `okx-agentic-wallet`\n\n## Chain Support\n\nCLI resolves chain names automatically (e.g. `ethereum` → `1`, `bsc` → `56`, `solana` → `501`). Full alias table: `references\u002Fportfolio.md` §Chain Support.\n\n## Step 0: Address Resolution (shared by both capabilities)\n\nWhen the user does NOT provide a wallet address, resolve it automatically from the Agentic Wallet **before** running any defi command:\n\n```\n1. onchainos wallet status          → check if logged in, get active account\n2. onchainos wallet addresses       → get addresses grouped by chain category:\n                                       - XLayer addresses\n                                       - EVM addresses (Ethereum, BSC, Polygon, etc.)\n                                       - Solana addresses\n3. Match address to target chain:\n   - EVM chains → use EVM address\n   - Solana     → use Solana address\n   - XLayer     → use XLayer address\n```\n\nRules:\n- If the user provides an explicit address, use it directly — skip this step\n- If wallet is not logged in, ask the user to log in first (→ `okx-agentic-wallet`) or provide an address manually\n- If the user says \"check all accounts\" or \"all wallets\", use `wallet balance --all` to get all account IDs, then `wallet switch \u003Cid>` + `wallet addresses` for each account\n- Always confirm the resolved address with the user before proceeding if the account has multiple addresses of the same type\n\n## Address-Chain Compatibility (shared — CRITICAL)\n\nThe `--address` and chain parameters must be compatible. EVM addresses (`0x…`) can only query EVM chains; Solana addresses (base58) can only query `solana`. Never mix them — the API will return error 84019 (Address format error).\n\n- `0x…` address → only pass EVM chains: `ethereum,bsc,polygon,arbitrum,base,xlayer,avalanche,optimism,fantom,linea,scroll,zksync`\n- base58 address → only pass `solana`\n- Sui address → only pass `sui`; Tron address (`T…`) → only pass `tron`; TON address → only pass `ton`\n- If the user wants positions across both EVM and Solana, make **two separate calls** with the respective addresses\n\n## Global Notes\n\n- The wallet address parameter for ALL defi commands is `--address`\n- `defi positions` uses `--chains` (plural, comma-separated); `defi position-detail` uses `--chain` (singular)\n- For CLI parameter details, see `references\u002Finvest-cli-reference.md` (invest & charts) and `references\u002Fportfolio-cli-reference.md` (positions)\n","# OKX DeFi (experimental merge of okx-defi-invest + okx-defi-portfolio)\n\nMulti-chain, OKX-aggregated DeFi in two capabilities behind one skill. Both wrap the same `onchainos defi` CLI command group.\n\n## Pre-flight Checks\n\n> Read `..\u002Fokx-agentic-wallet\u002F_shared\u002Fpreflight.md`. If that file does not exist, read `_shared\u002Fpreflight.md` instead.\n\n## Intent Routing\n\n| User Intent | Reference |\n|---|---|\n| Discover \u002F search DeFi products, find best APY | [invest.md](references\u002Finvest.md) |\n| Product detail (APY, TVL, accepted tokens) | [invest.md](references\u002Finvest.md) |\n| Deposit \u002F stake \u002F provide liquidity | [invest.md](references\u002Finvest.md) |\n| Withdraw \u002F redeem a position (full or partial) | [invest.md](references\u002Finvest.md) |\n| Claim rewards (platform \u002F investment \u002F V3 fee \u002F bonus \u002F unlocked principal) | [invest.md](references\u002Finvest.md) |\n| APY history, TVL history, V3 depth \u002F price charts | [invest.md](references\u002Finvest.md) |\n| View DeFi positions \u002F holdings overview (持仓) | [portfolio.md](references\u002Fportfolio.md) |\n| Per-protocol position detail (持仓详情) | [portfolio.md](references\u002Fportfolio.md) |\n| Exact parameters \u002F return schemas — invest & charts commands | [invest-cli-reference.md](references\u002Finvest-cli-reference.md) |\n| Exact parameters \u002F return schemas — positions commands | [portfolio-cli-reference.md](references\u002Fportfolio-cli-reference.md) |\n| Errors \u002F failed deposits \u002F expired calldata | [invest-troubleshooting.md](references\u002Finvest-troubleshooting.md) |\n| Errors \u002F empty positions \u002F address-format issues | [portfolio-troubleshooting.md](references\u002Fportfolio-troubleshooting.md) |\n\nTypical flow spans both: view positions (Portfolio) → redeem or claim (Invest). Read both reference files when the request chains them.\n\n## Skill Routing\n\n- For DApp-named investing\u002Flending\u002Fstaking\u002Fpositions (\"on Aave\", \"my Hyperliquid balance\") → use `okx-dapp-discovery`\n- For token price\u002Fchart or token search by name\u002Fcontract → use `okx-dex-market`\n- For DEX spot swap execution → use `okx-agentic-wallet`\n- For wallet token balances → use `okx-agentic-wallet`\n- For broadcasting signed transactions → use `okx-agentic-wallet`\n- For Agentic Wallet login, balance, contract-call → use `okx-agentic-wallet`\n\n## Chain Support\n\nCLI resolves chain names automatically (e.g. `ethereum` → `1`, `bsc` → `56`, `solana` → `501`). Full alias table: `references\u002Fportfolio.md` §Chain Support.\n\n## Step 0: Address Resolution (shared by both capabilities)\n\nWhen the user does NOT provide a wallet address, resolve it automatically from the Agentic Wallet **before** running any defi command:\n\n```\n1. onchainos wallet status          → check if logged in, get active account\n2. onchainos wallet addresses       → get addresses grouped by chain category:\n                                       - XLayer addresses\n                                       - EVM addresses (Ethereum, BSC, Polygon, etc.)\n                                       - Solana addresses\n3. Match address to target chain:\n   - EVM chains → use EVM address\n   - Solana     → use Solana address\n   - XLayer     → use XLayer address\n```\n\nRules:\n- If the user provides an explicit address, use it directly — skip this step\n- If wallet is not logged in, ask the user to log in first (→ `okx-agentic-wallet`) or provide an address manually\n- If the user says \"check all accounts\" or \"all wallets\", use `wallet balance --all` to get all account IDs, then `wallet switch \u003Cid>` + `wallet addresses` for each account\n- Always confirm the resolved address with the user before proceeding if the account has multiple addresses of the same type\n\n## Address-Chain Compatibility (shared — CRITICAL)\n\nThe `--address` and chain parameters must be compatible. EVM addresses (`0x…`) can only query EVM chains; Solana addresses (base58) can only query `solana`. Never mix them — the API will return error 84019 (Address format error).\n\n- `0x…` address → only pass EVM chains: `ethereum,bsc,polygon,arbitrum,base,xlayer,avalanche,optimism,fantom,linea,scroll,zksync`\n- base58 address → only pass `solana`\n- Sui address → only pass `sui`; Tron address (`T…`) → only pass `tron`; TON address → only pass `ton`\n- If the user wants positions across both EVM and Solana, make **two separate calls** with the respective addresses\n\n## Global Notes\n\n- The wallet address parameter for ALL defi commands is `--address`\n- `defi positions` uses `--chains` (plural, comma-separated); `defi position-detail` uses `--chain` (singular)\n- For CLI parameter details, see `references\u002Finvest-cli-reference.md` (invest & charts) and `references\u002Fportfolio-cli-reference.md` (positions)\n",{"name":5,"license":15,"metadata":24,"description":7},{"author":25,"version":26,"homepage":27},"okx","4.2.6","https:\u002F\u002Fweb3.okx.com","main","8859218955d9504cd18b59e7892100718039d3b4","data\u002Fskills\u002Fokx-onchainos-skills\u002Fokx-defi\u002Fskills\u002Fokx-defi",1,"https:\u002F\u002Fgithub.com\u002Fom-scogo\u002Fskillsh-scraper","https:\u002F\u002Fgithub.com\u002Fom-scogo","SDE-1 @ Scogo ","2026-07-18 12:22:46",{"source":8,"skillName":5,"commands":37,"prompt":47,"zipAvailable":48},[38,41,44],{"tool":39,"command":40},"npx","npx skills add om-scogo\u002Fskillsh-scraper --skill okx-defi",{"tool":42,"command":43},"bunx","bunx skills add om-scogo\u002Fskillsh-scraper --skill okx-defi",{"tool":45,"command":46},"pnpm","pnpm dlx skills add om-scogo\u002Fskillsh-scraper --skill okx-defi","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fom-scogo\u002Fskillsh-scraper\u002Fblob\u002Fmain\u002Fdata\u002Fskills\u002Fokx-onchainos-skills\u002Fokx-defi\u002Fskills\u002Fokx-defi\u002FSKILL.md",true,[],[51,58,63,70,75,82],{"skillNo":52,"name":53,"nameZh":6,"description":54,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":55,"categories":56,"keywords":57,"publishedAt":19},"01M7D6MC9FAAEV4CMNYX8W7JTG","arxiv-search","Search arXiv physics, math, and computer science preprints using natural language queries. Powered by Valyu semantic search.","https:\u002F\u002Fgithub.com\u002Fom-scogo\u002Fskillsh-scraper\u002Fblob\u002Fmain\u002Fdata\u002Fskills\u002Fyorkeccak-scientific-skills\u002Farxiv-search\u002Fskills\u002Farxiv-search\u002FSKILL.md",[],[],{"skillNo":59,"name":53,"nameZh":6,"description":54,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":60,"categories":61,"keywords":62,"publishedAt":19},"01M7D6M85CKKN87TA98VCQV4H7","https:\u002F\u002Fgithub.com\u002Fom-scogo\u002Fskillsh-scraper\u002Fblob\u002Fmain\u002Fdata\u002Fskills\u002Fyorkeccak-scientific-skills\u002Farxiv-search\u002FSkill.md",[],[],{"skillNo":64,"name":65,"nameZh":6,"description":66,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":67,"categories":68,"keywords":69,"publishedAt":19},"01M7D4ZTCS4DR3CE4JY06X84T2","working-with-legacy-code","Safely change and test untested codebases using Feathers' \"Working Effectively with Legacy Code\". Use when the user mentions \"legacy code\", \"no tests\", \"untested codebase\", \"how do I test this\", \"seams\", \"characterization tests\", \"golden master\", \"sprout method\", \"afraid to change this code\", \"monster method\", \"dependency breaking\", or \"inherited a messy codebase\". Also trigger when changing code without tests safely, getting a class under test when constructors, statics, or singletons block it, adding features to tangled modules, or planning incremental test coverage for an old codebase. Covers the legacy-code change algorithm, seams, characterization tests, sprout\u002Fwrap, and dependency-breaking techniques. For refactoring code that already has tests, see refactoring-patterns. For day-to-day code quality, see clean-code.","https:\u002F\u002Fgithub.com\u002Fom-scogo\u002Fskillsh-scraper\u002Fblob\u002Fmain\u002Fdata\u002Fskills\u002Fwondelai-skills\u002Fworking-with-legacy-code\u002Fworking-with-legacy-code\u002FSKILL.md",[],[],{"skillNo":71,"name":65,"nameZh":6,"description":66,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":72,"categories":73,"keywords":74,"publishedAt":19},"01M7D4ZHZKJD2RSNGAF63V14P4","https:\u002F\u002Fgithub.com\u002Fom-scogo\u002Fskillsh-scraper\u002Fblob\u002Fmain\u002Fdata\u002Fskills\u002Fwondelai-skills\u002Fworking-with-legacy-code\u002FSkill.md",[],[],{"skillNo":76,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":79,"categories":80,"keywords":81,"publishedAt":19},"01M7D4ZB4CJBFW5JE67CPH2QRV","web-typography","Select, pair, and implement typefaces for web projects. Use when the user mentions \"font pairing\", \"which typeface\", \"line height\", \"responsive typography\", \"web font loading\", \"type hierarchy\", \"variable fonts\", \"FOUT\u002FFOIT\", \"typographic scale\", or \"the text is hard to read\". Also trigger when choosing between system fonts and web fonts, optimizing font-loading performance, or designing readable long-form content. Covers readability evaluation, CSS implementation, and performance optimization. For overall UI design systems, see refactoring-ui. For dramatic typographic experiences, see top-design.","https:\u002F\u002Fgithub.com\u002Fom-scogo\u002Fskillsh-scraper\u002Fblob\u002Fmain\u002Fdata\u002Fskills\u002Fwondelai-skills\u002Fweb-typography\u002Fweb-typography\u002FSKILL.md",[],[],{"skillNo":83,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":84,"categories":85,"keywords":86,"publishedAt":19},"01M7D4Z4MVYVY3NMJ18BNV6WNA","https:\u002F\u002Fgithub.com\u002Fom-scogo\u002Fskillsh-scraper\u002Fblob\u002Fmain\u002Fdata\u002Fskills\u002Fwondelai-skills\u002Fweb-typography\u002FSkill.md",[],[]]