evm-walletSelf-sovereign EVM wallet for AI agents. Use when the user wants to create a crypto wallet, check balances, send ETH or ERC20 tokens, swap tokens, or interact with smart contracts. Supports Base, Ethereum, Polygon, Arbitrum, and Optimism. Private keys stored locally — no cloud custody, no API keys required.
Install via ClawdBot CLI:
clawdbot install surfer77/evm-walletRequires:
Self-sovereign EVM wallet. Private keys stored locally, no external API dependencies.
NEVER expose your private key!
~/.evm-wallet.json with anyoneThe private key file (~/.evm-wallet.json) should only be accessed directly via SSH on your server.
Detect workspace and skill directory:
SKILL_DIR=$(ls -d \
~/openclaw/skills/evm-wallet \
~/OpenClaw/skills/evm-wallet \
~/clawd/skills/evm-wallet \
~/moltbot/skills/evm-wallet \
~/molt/skills/evm-wallet \
2>/dev/null | head -1)
If code is not installed yet (no src/ folder), bootstrap it:
if [ ! -d "$SKILL_DIR/src" ]; then
git clone https://github.com/surfer77/evm-wallet-skill.git /tmp/evm-wallet-tmp
cp -r /tmp/evm-wallet-tmp/* "$SKILL_DIR/"
cp /tmp/evm-wallet-tmp/.gitignore "$SKILL_DIR/" 2>/dev/null
rm -rf /tmp/evm-wallet-tmp
cd "$SKILL_DIR" && npm install
fi
For all commands below, always cd "$SKILL_DIR" first.
Generate a wallet (only needed once):
node src/setup.js --json
Returns: { "success": true, "address": "0x..." }
The private key is stored at ~/.evm-wallet.json (chmod 600). Never share this file.
When user asks about balance, portfolio, or how much they have:
# Single chain
node src/balance.js base --json
# All chains at once
node src/balance.js --all --json
# Specific ERC20 token
node src/balance.js base 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 --json
Always use --json for parsing. Present results in a human-readable format.
When user wants to send, transfer, or pay someone:
# Native ETH
node src/transfer.js <chain> <to_address> <amount> --yes --json
# ERC20 token
node src/transfer.js <chain> <to_address> <amount> <token_address> --yes --json
⚠️ ALWAYS confirm with the user before executing transfers. Show them:
Only add --yes after the user explicitly confirms.
When user wants to swap, trade, buy, or sell tokens:
# Get quote first
node src/swap.js <chain> <from_token> <to_token> <amount> --quote-only --json
# Execute swap (after user confirms)
node src/swap.js <chain> <from_token> <to_token> <amount> --yes --json
eth for native ETH/POL, or pass a contract address--slippage ⚠️ ALWAYS show the quote first and get user confirmation before executing.
When user wants to call a smart contract function:
# Read (free, no gas)
node src/contract.js <chain> <contract_address> \
"<function_signature>" [args...] --json
# Write (costs gas — confirm first)
node src/contract.js <chain> <contract_address> \
"<function_signature>" [args...] --yes --json
Examples:
# Check USDC balance
node src/contract.js base \
0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 \
"balanceOf(address)" 0xWALLET --json
# Approve token spending
node src/contract.js base \
0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 \
"approve(address,uint256)" 0xSPENDER 1000000 --yes --json
node src/check-update.js --json
If an update is available, inform the user and offer to run:
cd "$SKILL_DIR" && git pull && npm install
| Chain | Native Token | Use For |
|-------|-------------|---------|
| base | ETH | Cheapest fees — default for testing |
| ethereum | ETH | Mainnet, highest fees |
| polygon | POL | Low fees |
| arbitrum | ETH | Low fees |
| optimism | ETH | Low fees |
Always recommend Base for first-time users (lowest gas fees).
0x833589fCD6eDb6E08f4c7C32D4f71b54bdA029130x42000000000000000000000000000000000000060xA0b86a33E6441b8a46a59DE4c4C5E8F5a6a7A8d00xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2~/.evm-wallet.jsonnode src/setup.js --json firstGenerated Mar 1, 2026
Users can manage crypto assets across multiple EVM chains, check balances, and execute token swaps via DEX aggregators. This skill enables automated portfolio rebalancing and yield farming strategies, ideal for DeFi enthusiasts seeking self-custody without API dependencies.
Businesses can send and receive payments in ETH or ERC20 tokens like USDC across supported chains such as Base and Polygon. This facilitates low-cost, fast transactions for e-commerce, freelancing, or remittances, with built-in security confirmation steps.
Developers can interact with smart contracts for reading data or executing functions, useful for testing dApps on chains like Base with low fees. It supports contract calls and approvals, streamlining development workflows without external API keys.
New users can create wallets, check balances, and perform small transactions on Base to learn crypto basics safely. The skill emphasizes security warnings and confirmation steps, making it suitable for educational platforms or onboarding tools.
Traders can integrate this skill into bots to execute token swaps using Odos aggregator for best rates across DEXs. It handles quotes and confirmations, enabling automated trading strategies on EVM chains with local key storage for security.
Offer basic wallet functions for free, then charge for advanced features like multi-signature support, tax reporting, or integration with additional chains. Revenue can come from subscription fees or one-time purchases for power users.
Partner with DEXs, DeFi platforms, or wallet services to earn commissions on swaps or transactions facilitated through the skill. Integrate referral links or incentives for users to adopt specific tokens or chains, generating affiliate revenue.
License the skill to companies for internal use in payment systems, supply chain tracking, or smart contract automation. Provide custom support, enhanced security features, and SLA guarantees, with revenue from licensing fees and service contracts.
💬 Integration Tip
Ensure users always confirm transactions before executing and recommend Base chain for low-fee testing to avoid errors and build trust.
Connect Claude to Clawdbot instantly and keep it connected 24/7. Run after setup to link your subscription, then auto-refreshes tokens forever.
ERC-8004 Trustless Agents - Register, discover, and build reputation for AI agents on Ethereum. Use when registering agents on-chain, querying agent registries, giving/receiving reputation feedback, or interacting with the AI agent trust layer.
Autonomous crypto trading on Base via Bankr. Use for trading tokens, monitoring launches, executing strategies, or managing a trading portfolio. Triggers on "trade", "buy", "sell", "launch", "snipe", "profit", "PnL", "portfolio balance", or any crypto trading task on Base.
Deploy ERC20 tokens on Base using Clanker SDK. Create tokens with built-in Uniswap V4 liquidity pools. Supports Base mainnet and Sepolia testnet. Requires PRIVATE_KEY in config.
Query DeFi portfolio data across 50+ chains via Zapper's GraphQL API. Use when the user wants to check wallet balances, DeFi positions, NFT holdings, token prices, or transaction history. Supports Base, Ethereum, Polygon, Arbitrum, Optimism, and more. Requires ZAPPER_API_KEY.
Interact with Solana blockchain via Helius APIs. Create/manage wallets, check balances (SOL + tokens), send transactions, swap tokens via Jupiter, and monitor addresses. Use for any Solana blockchain operation, crypto wallet management, token transfers, DeFi swaps, or portfolio tracking.