Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Multi-chain wallet and trading tools for AI agents. Provides 27 tools for: wallet management (create, balance, export keys), token swaps with flexible amounts ($100, 50%, max), cross-chain bridges, DEX market data (trending, volume, gainers/losers), token launches with tiered market caps, and fee management. Supports Solana and EVM chains. Use when agents need to interact with wallets, execute trades, research tokens, or launch tokens.
Multi-chain wallet and trading tools for AI agents. Provides 27 tools for: wallet management (create, balance, export keys), token swaps with flexible amounts ($100, 50%, max), cross-chain bridges, DEX market data (trending, volume, gainers/losers), token launches with tiered market caps, and fee management. Supports Solana and EVM chains. Use when agents need to interact with wallets, execute trades, research tokens, or launch tokens.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Multi-chain wallet and trading toolkit for AI agents with 27 tools.
You must install the npm package before using any tools: npm install @loomlay/openclaw-wallet-plugin This installs the plugin and all its dependencies. No additional packages needed. Authentication is automatic. On first use, the plugin auto-registers for an API key and saves it to ~/.loomlay/credentials.json. No manual setup required. To use a specific API key instead of auto-registration: export LOOMLAY_API_KEY=agent_your_key_here
IMPORTANT: After installing the plugin, you must set up a wallet before using trading/wallet tools. On first interaction with a user (or when the skill is first loaded), run this setup sequence: const { wallet_get, wallet_create } = require('@loomlay/openclaw-wallet-plugin'); // 1. Check if a wallet already exists const existing = await wallet_get(); if (!existing.success) { // 2. No wallet yet โ create one const created = await wallet_create(); if (created.success) { // 3. Show the user their new wallet // IMPORTANT: The seed phrase is shown ONCE. Tell the user to save it. // "Your wallet has been created:" // " Solana: <solanaAddress>" // " EVM: <evmAddress>" // " Seed phrase: <seedPhrase> (save this securely โ it won't be shown again)" } } else { // Wallet exists โ show addresses // "Your wallet:" // " Solana: <solanaAddress>" // " SOL balance: <balance>" } Always run this check before any wallet or trading operation. If wallet_get() fails with UNAUTHORIZED, the API key may need to be re-registered โ delete ~/.loomlay/credentials.json and retry.
All 27 tools are exported as flat async functions from the plugin package. Use them in Node.js like this: const { wallet_get, swap_quote, swap, dex_trending, token_search } = require('@loomlay/openclaw-wallet-plugin'); // Check wallet balance const wallet = await wallet_get(); // wallet.data.balances.solana.sol // Get trending tokens const trending = await dex_trending({ chain: 'solana', limit: 10 }); // trending.data.pairs[...] Every tool returns a standardized response: { success: true, // or false data: { ... }, // result data (when success is true) error: { // error info (when success is false) message: "...", code: "RATE_LIMITED", retryAfter: 30 // seconds (for rate limits) } } Always check result.success before using result.data.
For any action involving funds: Get a quote first โ show the user what will happen Get user confirmation โ never execute without approval Execute โ run the transaction Verify โ check the result and new balances const { swap_quote, swap } = require('@loomlay/openclaw-wallet-plugin'); // Step 1: Quote const quote = await swap_quote({ inputToken: 'SOL', outputToken: 'USDC', amount: '$100' }); // Tell user: "You'll swap ~1.2 SOL for ~$99.50 USDC" // Step 2: User confirms โ Step 3: Execute const result = await swap({ inputToken: 'SOL', outputToken: 'USDC', amount: '$100' }); if (result.success) { // Show txHash and new balance }
Never log seed phrases โ wallet_create() returns it once, tell user to save it offline Never execute without user confirmation โ always quote first Never guess token addresses โ use token_search() to find them Never hardcode API keys โ use environment variables
Trading tools accept flexible amounts: FormatExampleMeaningDecimal"1.5"Exact token amountUSD"$100"Dollar value (auto-converts)Percentage"50%"Half of balanceMax"max"Entire balance
const { wallet_create, wallet_get, wallet_export_keys } = require('@loomlay/openclaw-wallet-plugin'); // Create new wallet (returns seed phrase ONCE) await wallet_create() // โ { wallet: { solanaAddress, evmAddress }, seedPhrase, message } // Get wallet addresses and balances await wallet_get() // โ { wallet: { solanaAddress, evmAddress }, balances: { solana, evm } } // Export private keys (requires seed phrase) await wallet_export_keys({ seedPhrase: '12 word phrase here' }) // โ { solanaPrivateKey, evmPrivateKey }
const { swap, swap_quote, transfer, bridge, bridge_quote } = require('@loomlay/openclaw-wallet-plugin'); // Swap tokens await swap({ inputToken: 'SOL', outputToken: 'USDC', amount: '$100', chain: 'solana', slippage: 1 }) // โ { success, txHash, inputAmount, outputAmount } // Get swap quote (no execution) await swap_quote({ inputToken: 'SOL', outputToken: 'USDC', amount: '$100' }) // โ { inputAmount, outputAmount, minOutputAmount, priceImpact, route } // Transfer tokens await transfer({ token: 'SOL', amount: '1.5', to: 'recipient_address' }) // โ { success, txHash, amount, token, to } // Bridge cross-chain await bridge({ inputToken: 'SOL', amount: '1', sourceChain: 'solana', destinationChain: 'base' }) // โ { success, sourceTxHash, destinationTxHash, status } // Bridge quote await bridge_quote({ inputToken: 'SOL', amount: '1', sourceChain: 'solana', destinationChain: 'base' }) // โ { inputAmount, outputAmount, fee, estimatedTime }
const { token_search, token_price, token_details, token_chart } = require('@loomlay/openclaw-wallet-plugin'); // Search tokens by name/symbol await token_search({ query: 'BONK' }) // โ { tokens: [{ address, symbol, name, price, safetyScore }] } // Get token price await token_price({ token: 'SOL', chain: 'solana' }) // โ { token, price, chain } // Get detailed token info await token_details({ address: 'token_mint_address' }) // โ { token, market, safety } // Get OHLCV chart data await token_chart({ address: 'token_mint_address' }) // โ { data: [...] }
const { portfolio_get, portfolio_history } = require('@loomlay/openclaw-wallet-plugin'); // Get combined portfolio across all chains await portfolio_get() // โ { positions: [...], totalUsdValue: number } // Get transaction history await portfolio_history({ chain: 'solana', limit: 50 }) // โ { transactions: [...] }
const { dex_trending, dex_volume, dex_gainers, dex_losers, dex_new, dex_pumpfun, dex_query } = require('@loomlay/openclaw-wallet-plugin'); // Trending pairs await dex_trending({ chain: 'solana', minLiquidity: 10000, limit: 10 }) // โ { pairs: [...], pagination } // Top volume pairs await dex_volume({ chain: 'solana', minLiquidity: 10000, limit: 10 }) // Top gainers (24h) await dex_gainers({ chain: 'solana', minLiquidity: 10000, limit: 10 }) // Top losers (24h) await dex_losers({ chain: 'solana', minLiquidity: 10000, limit: 10 }) // Newly created pairs (< 24h) await dex_new({ chain: 'solana', minLiquidity: 5000, limit: 10 }) // Pumpfun trending (Solana only) await dex_pumpfun({ maxAge: 6, maxProgress: 80, limit: 10 }) // Advanced query with custom filters await dex_query({ chain: 'solana', timeframe: 'h24', rankBy: 'volume', order: 'desc', minSafetyScore: 80, limit: 10 })
const { tokenize_launch, tokenize_info } = require('@loomlay/openclaw-wallet-plugin'); // Launch a token (one per account) await tokenize_launch({ name: 'My Token', symbol: 'MYT', tier: '100k', // 10k, 100k, 1m, 10m imageUrl: 'https://...' }) // โ { success, launchId, tokenMint, poolAddress, dexscreenerUrl } // Get your launched token info await tokenize_info() // โ { hasToken, launchId, tokenMint, poolAddress, dexscreenerUrl }
const { fees_status, fees_claim } = require('@loomlay/openclaw-wallet-plugin'); // Check fee status await fees_status() // โ { totalFeesGeneratedSol, beneficiaryFeesUnclaimedSol, canClaim, feeForfeitsAt } // Claim fees (platform pays gas) await fees_claim() // โ { success, amountSol, txSignature }
const { rpc_call, rpc_chains } = require('@loomlay/openclaw-wallet-plugin'); // Direct RPC call await rpc_call({ chain: 'solana', method: 'getBalance', params: ['address'] }) // โ { result, error } // List supported chains await rpc_chains() // โ { chains: [...] }
ChainSwapsBridgesRPCSolanayesyesyesEthereumyesyesyesBaseyesyesyesArbitrumyesyesyesOptimismyesyesyesPolygonyesyesyesBSCyesyesyes
const result = await swap({ inputToken: 'SOL', outputToken: 'USDC', amount: '1' }); if (!result.success) { switch (result.error?.code) { case 'RATE_LIMITED': // Wait result.error.retryAfter seconds and retry break; case 'BAD_REQUEST': // Invalid parameters break; case 'UNAUTHORIZED': // API key issue โ check LOOMLAY_API_KEY or ~/.loomlay/credentials.json break; case 'INSUFFICIENT_BALANCE': // Not enough funds break; default: // General error break; } }
references/wallet-operations.md - Wallet creation, security, key export references/trading-guide.md - Swaps, transfers, bridges with amount formats references/market-analysis.md - DEX data, trending, filtering references/token-launch.md - Tokenize workflow, tiers, fee structure references/error-handling.md - Error types, recovery patterns, retries references/amount-formats.md - Flexible amounts explained references/chain-reference.md - Supported chains and behaviors
workflows/first-time-setup.md - Installation โ wallet creation โ first trade workflows/token-launch-playbook.md - Complete token launch guide
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.