Skills Plugins MCP Prompt Model 博客 我的中心

celo-defi

Integrate DeFi protocols on Celo. Use when building swaps, lending, or liquidity applications with Uniswap, Aave, Ubeswap, or other DeFi protocols.

DeepseekModel Curated skill Quality Good · 48 v1.0.0

Get

https://deepseekmodel.com/api/download.php?id=hawwal-osherai-claude-skills-celo-defi-skill-md&format=skill
Download .skill Standard format with system_prompt and model_config, ready for any agent framework
The actual content of the system_prompt field in the .skill file.
name celo-defi description Integrate DeFi protocols on Celo. Use when building swaps, lending, or liquidity applications with Uniswap, Aave, Ubeswap, or other DeFi protocols. license Apache-2.0 metadata {"author":"celo-org","version":"1.0.0"} Celo DeFi Integration This skill covers integrating DeFi protocols on Celo, including Uniswap for swaps, Aave for lending/borrowing, and other protocols. When to Use Building swap functionality with Uniswap or Ubeswap Integrating lending/borrowing with Aave Creating liquidity provision features Building DeFi aggregators DeFi Protocols on Celo Decentralized Exchanges Protocol Description Uniswap V3/V4 Primary DEX with concentrated liquidity Ubeswap Celo-native DEX, mobile-optimized Velodrome Superchain DEX with liquidity mining Carbon DeFi Orderbook-like automated trading Lending & Borrowing Protocol Description Aave V3 Decentralized lending (launched March 2025) Credit Collective On-chain private credit for RWAs PWN Fixed-rate lending DEX Aggregators Protocol Description LI.FI Cross-chain aggregator Liquidity & Yield Protocol Description Steer Protocol Automated liquidity strategies Merkl Liquidity provider rewards Uniswap V3 Integration Contract Addresses - Mainnet (Chain ID: 42220) Contract Address Factory 0xAfE208a311B21f13EF87E33A90049fC17A7acDEc SwapRouter02 0x5615CDAb10dc425a742d643d949a7F474C01abc4 QuoterV2 0x82825d0554fA07f7FC52Ab63c961F330fdEFa8E8 NonfungiblePositionManager 0x3d79EdAaBC0EaB6F08ED885C05Fc0B014290D95A UniversalRouter 0x643770E279d5D0733F21d6DC03A8efbABf3255B4 Permit2 0x000000000022D473030F116dDEE9F6B43aC78BA3 TickLens 0x5f115D9113F88e0a0Db1b5033D90D4a9690AcD3D Multicall2 0x633987602DE5C4F337e3DbF265303A1080324204 Contract Addresses - Alfajores Testnet Contract Address Factory 0x229Fd76DA9062C1a10eb4193768E192bdEA99572 SwapRouter02 0x8C456F41A3883bA0ba99f810F7A2Da54D9Ea3EF0 QuoterV2 0x3c1FCF8D6f3A579E98F4AE75EB0adA6de70f5673 NonfungiblePositionManager 0x0eC9d3C06Bc0A472A80085244d897bb604548824 UniversalRouter 0x84904B9E85F76a421223565be7b596d7d9A8b8Ce Permit2 0x000000000022D473030F116dDEE9F6B43aC78BA3 Simple Swap Example import { createWalletClient, custom, encodeFunctionData } from "viem" ; import { celo } from "viem/chains" ; const SWAP_ROUTER = "0x5615CDAb10dc425a742d643d949a7F474C01abc4" ; const SWAP_ROUTER_ABI = [ { name : "exactInputSingle" , type : "function" , stateMutability : "payable" , inputs : [ { name : "params" , type : "tuple" , components : [ { name : "tokenIn" , type : "address" }, { name : "tokenOut" , type : "address" }, { name : "fee" , type : "uint24" }, { name : "recipient" , type : "address" }, { name : "amountIn" , type : "uint256" }, { name : "amountOutMinimum" , type : "uint256" }, { name : "sqrtPriceLimitX96" , type : "uint160" }, ], }, ], outputs : [{ type : "uint256" }], }, ] as const ; async function swapExactInput ( tokenIn : string , tokenOut : string , amountIn : bigint , amountOutMin : bigint , fee : number = 3000 ): Promise < string > { const walletClient = createWalletClient ({ chain : celo, transport : custom ( window . ethereum ), }); const [address] = await walletClient. getAddresses (); const hash = await walletClient. sendTransaction ({ account : address, to : SWAP_ROUTER , data : encodeFunctionData ({ abi : SWAP_ROUTER_ABI , functionName : "exactInputSingle" , args : [ { tokenIn : tokenIn as `0x ${ string } ` , tokenOut : tokenOut as `0x ${ string } ` , fee, recipient : address, amountIn, amountOutMinimum : amountOutMin, sqrtPriceLimitX96 : 0n , }, ], }), }); return hash; } Ubeswap Integration Celo-native DEX with V2 and V3 support. Contract Addresses - Mainnet Contract Address V3 Factory 0x67FEa58D5a5a4162cED847E13c2c81c73bf8aeC4 V3 Universal Router 0x3C255DED9B25f0BFB4EF1D14234BD2514d7A7A0d V3 NFT Position Manager 0x897387c7B996485c3AAa85c94272Cd6C506f8c8F V2 Factory 0x62d5b84bE28a183aBB507E125B384122D2C25fAE V2 Router 0xE3D8bd6Aed4F159bc8000a9cD47CffDb95F96121 UBE Token 0x71e26d0E519D14591b9dE9a0fE9513A398101490 Aave V3 Integration Contract Addresses - Mainnet Contract Address Pool 0x3E59A31363E2ad014dcbc521c4a0d5757d9f3402 PoolAddressesProvider 0x9F7Cf9417D5251C59fE94fB9147feEe1aAd9Cea5 PoolConfigurator 0x7567E3434CC1BEf724AB595e6072367Ef4914691 Oracle 0x1e693D088ceFD1E95ba4c4a5F7EeA41a1Ec37e8b ACLManager 0x7a12dCfd73C1B4cddf294da4cFce75FcaBBa314C PoolDataProvider 0x2e0f8D3B1631296cC7c56538D6Eb6032601E15ED Collector 0xC959439207dA5341B74aDcdAC59016aa9Be7E9E7 Supported Assets Asset Address aToken USDC 0xcebA9300f2b948710d2653dD7B07f33A8B32118C 0xFF8309b9e99bfd2D4021bc71a362aBD93dBd4785 USDT 0x48065fbbe25f71c9282ddf5e1cd6d6a887483d5e - USDm 0x765de816845861e75a25fca122bb6898b8b1282a - EURm 0xd8763cba276a3738e6de85b4b3bf5fded6d6ca73 - CELO 0x471EcE3750Da237f93B8E339c536989b8978a438 - WETH 0xD221812de1BD094f35587EE8E174B07B6167D9Af - Supply Assets const AAVE_POOL = "0x3E59A31363E2ad014dcbc521c4a0d5757d9f3402" ; const POOL_ABI = [ { name : "supply" , type : "function" , stateMutability : "nonpayable" , inputs : [ { name : "asset" , type : "address" }, { name : "amount" , type : "uint256" }, { name : "onBehalfOf" , type : "address" }, { name : "referralCode" , type : "uint16" }, ], outputs : [], }, ] as const ; async function supplyToAave ( asset : string , amount : bigint ): Promise < string > { const walletClient = createWalletClient ({ chain : celo, transport : custom ( window . ethereum ), }); const [address] = await walletClient. getAddresses (); // First approve the Pool to spend tokens const hash = await walletClient. writeContract ({ address : AAVE_POOL , abi : POOL_ABI , functionName : "supply" , args : [asset as `0x ${ string } ` , amount, address, 0 ], }); return hash; } Borrow Assets const POOL_ABI_BORROW = [ { name : "borrow" , type : "function" , stateMutability : "nonpayable" , inputs : [ { name : "asset" , type : "address" }, { name : "amount" , type : "uint256" }, { name : "interestRateMode" , type : "uint256" }, { name : "referralCode" , type : "uint16" }, { name : "onBehalfOf" , type : "address" }, ], outputs : [], }, ] as const ; async function borrowFromAave ( asset : string , amount : bigint , interestRateMode : number = 2 // 2 = variable rate ): Promise < string > { const walletClient = createWalletClient ({ chain : celo, transport : custom ( window . ethereum ), }); const [address] = await walletClient. getAddresses (); const hash = await walletClient. writeContract ({ address : AAVE_POOL , abi : POOL_ABI_BORROW , functionName : "borrow" , args : [asset as `0x ${ string } ` , amount, BigInt (interestRateMode), 0 , address], }); return hash; } Token Approval Before interacting with DeFi protocols, approve token spending: const ERC20 _ABI = [ { name : "approve" , type : "function" , stateMutability : "nonpayable" , inputs : [ { name : "spender" , type : "address" }, { name : "amount" , type : "uint256" }, ], outputs : [{ type : "bool" }], }, ] as const ; async function approveToken ( token : string , spender : string , amount : bigint ): Promise < string > { const walletClient = createWalletClient ({ chain : celo, transport : custom ( window . ethereum ), }); const [address] = await walletClient. getAddresses (); const hash = await walletClient. writeContract ({ address : token as `0x ${ string } ` , abi : ERC20 _ABI, functionName : "approve" , args : [spender as `0x ${ string } ` , amount], }); return hash; } Fee Tiers (Uniswap V3) Fee Use Case 100 (0.01%) Stable pairs (USDm/USDC) 500 (0.05%) Stable pairs 3000 (0.3%) Most pairs 10000 (1%) Exotic pairs Dependencies { "dependencies" : { "viem" : "^2.0.0" } } For Aave integration: { "dependencies" : { "@bgd-labs/aave-address-book" : "^4.0.0" } } Additional Resources contract-addresses.md - All DeFi contract addresses
Keywords that activate this skill. Click one to copy it.

This skill does not provide trigger words.

The downloaded .skill package contains the following fields.
Field Description
formatFormat tag (skill/v1)
skill_idUnique skill ID
nameSkill name
versionVersion
descriptionDescription
categoryCategories (array)
trigger_wordsTrigger words
tagsTags
sourceSource
source_urlSource URL (this page)
exported_atExported at (set per download)
system_promptSystem prompt body
model_configModel config: provider / model / temperature / max_tokens / top_p
examplesExamples
install_guideImport guide for Coze / Dify / Claude / custom frameworks
The same skill can be exported in different platform formats.
.skill Standard format with system_prompt and model_config, ready for any agent framework Download
.skillpro Enhanced format with scripts, tools, dependencies and hooks Download
.json Plain JSON export with system_prompt and model parameters only Download
Coze Markdown with frontmatter, for Coze platform import Download
Dify Dify DSL, import directly after creating an app Download

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。