✓ Verified 💻 Development ✓ Enhanced Data

Cryptowallet

Complete cryptocurrency wallet management for Web3, DeFi, and blockchain applications.

Rating
4.9 (304 reviews)
Downloads
7,508 downloads
Version
1.0.0

Overview

Complete cryptocurrency wallet management for Web3, DeFi, and blockchain applications.

Complete Documentation

View Source →

CryptoWallet

Comprehensive cryptocurrency wallet management for Clawdbot agents. Securely create, manage, and transact across multiple blockchain networks with encrypted local key storage.

Supported Networks

EVM Chains (12 networks)

  • Ethereum, Polygon, BSC, Arbitrum, Optimism, Base
  • Avalanche, Fantom, Gnosis, zkSync, Linea, Scroll

Solana

  • Mainnet and Devnet
Full network details in references/networks.json.

Core Features

1. Wallet Management

Create new wallets or import existing ones:

bash
# Create new EVM wallet
python3 scripts/wallet_manager.py create my-eth-wallet --chain evm --password "secure-password"

# Create new Solana wallet
python3 scripts/wallet_manager.py create my-sol-wallet --chain solana --password "secure-password"

# Import existing wallet
python3 scripts/wallet_manager.py import imported-wallet --chain evm --key "0x..." --password "secure-password"

# List all wallets
python3 scripts/wallet_manager.py list

2. Balance Checking

Query native and token balances:

bash
# Native ETH balance on Ethereum
python3 scripts/balance_checker.py 0xYourAddress --network ethereum

# ERC20 token balance
python3 scripts/balance_checker.py 0xYourAddress --network polygon --token 0xTokenAddress

# Check all EVM networks at once
python3 scripts/balance_checker.py 0xYourAddress --all-evm

# Solana balance
python3 scripts/balance_checker.py YourSolanaAddress --network solana

# SPL token balance
python3 scripts/balance_checker.py YourSolanaAddress --network solana --token MintAddress

3. Token Transfers

Send native tokens or ERC20/SPL tokens:

bash
# Send ETH
python3 scripts/token_sender.py my-wallet 0xRecipient 0.1 --network ethereum --password "password"

# Send ERC20 token
python3 scripts/token_sender.py my-wallet 0xRecipient 100 --network polygon --token 0xTokenAddress --password "password"

# Send SOL
python3 scripts/token_sender.py my-wallet RecipientAddress 1.5 --network solana --password "password"

Security: Password required for every transaction. Private keys never leave encrypted storage unprotected.

4. Smart Contract Interaction

Call contract functions (read and write):

bash
# Read call (view function)
python3 scripts/contract_interactor.py 0xContract functionName --abi contract.json --network ethereum --args '[123, "param2"]'

# Write call (transaction)
python3 scripts/contract_interactor.py 0xContract mint --abi nft.json --network polygon --args '[1]' --write --wallet my-wallet --password "password"

# Payable function (send ETH with call)
python3 scripts/contract_interactor.py 0xContract purchase --abi contract.json --network ethereum --args '[]' --write --wallet my-wallet --password "password" --value 0.05

Security Architecture

Encryption

  • Algorithm: AES-256-GCM with PBKDF2 key derivation
  • Iterations: 100,000 (OWASP recommended)
  • Salt: Random 16-byte salt per wallet
  • Storage: ~/.clawdbot/cryptowallet/ with 0600 permissions

Key Principles

  • Password-protected transactions - Every send/sign operation requires password
  • Encrypted at rest - Private keys never stored in plaintext
  • No key exposure - Keys decrypted in memory only during signing
  • Isolated storage - Each wallet has independent encryption
See references/security.md for complete security documentation.

Common Workflows

Portfolio Management

Check balances across all networks:
bash
python3 scripts/balance_checker.py 0xYourAddress --all-evm

Multi-Chain Operations

Send the same token across different chains:
bash
# Polygon USDC
python3 scripts/token_sender.py wallet recipient 100 --network polygon --token 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174 --password "pwd"

# Arbitrum USDC
python3 scripts/token_sender.py wallet recipient 100 --network arbitrum --token 0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8 --password "pwd"

DeFi Protocol Interaction

Example: Approve and stake tokens
bash
# 1. Approve token spending
python3 scripts/contract_interactor.py 0xTokenAddress approve --abi erc20.json --network ethereum --args '["0xProtocolAddress", "1000000000000000000000"]' --write --wallet my-wallet --password "pwd"

# 2. Stake tokens
python3 scripts/contract_interactor.py 0xStakingContract stake --abi staking.json --network ethereum --args '["1000000000000000000000"]' --write --wallet my-wallet --password "pwd"

Network Configuration

Modify references/networks.json to:

  • Add custom RPCs (Infura, Alchemy, QuickNode)
  • Add new networks
  • Update chain IDs or explorers
Default RPCs are public and may have rate limits. For production, use dedicated RPC providers.

Dependencies

Install required packages:

bash
pip install web3 solana solders eth-account cryptography base58

Troubleshooting

"Incorrect password"

  • Password is case-sensitive
  • No recovery if password is lost (by design)

"Insufficient funds"

  • Check balance includes gas fees
  • On Ethereum: gas can be $5-50+ per transaction

"Transaction failed"

  • Verify network selection
  • Check contract address is correct
  • Ensure enough gas limit for complex operations

RPC errors

  • Public RPCs may be rate-limited
  • Use references/networks.json to configure your own RPC endpoint

Advanced Usage

Custom Network

Add to references/networks.json:
json
{
  "evm": {
    "your-network": {
      "name": "Your Chain",
      "chain_id": 12345,
      "rpc": "https://rpc.yourchain.com",
      "explorer": "https://explorer.yourchain.com",
      "native_token": "TOKEN"
    }
  }
}

Batch Operations

Use shell loops for batch transactions:
bash
for addr in $(cat recipients.txt); do
  python3 scripts/token_sender.py wallet $addr 1 --network polygon --password "pwd"
done

Smart Contract ABIs

Generate ABIs from verified contracts on block explorers, or from your Solidity project's artifacts/ folder.

Limitations

  • Solana SPL transfers: Basic implementation (may need token account creation)
  • Hardware wallets: Not supported (encrypted file storage only)
  • Multi-sig: Not supported
  • Gas estimation: Uses fixed limits (may fail for complex contracts)

Best Practices

  • Test on devnet/testnet first before mainnet transactions
  • Use separate wallets for different purposes (trading, DeFi, cold storage)
  • Backup wallet files and store passwords securely
  • Verify addresses - blockchain transactions are irreversible
  • Monitor gas prices - wait for lower congestion on Ethereum
See references/security.md for comprehensive security guidelines.

Installation

Terminal bash

openclaw install cryptowallet
    
Copied!

💻Code Examples

python3 scripts/wallet_manager.py list

python3-scriptswalletmanagerpy-list.txt
### 2. Balance Checking

Query native and token balances:

python3 scripts/balance_checker.py YourSolanaAddress --network solana --token MintAddress

python3-scriptsbalancecheckerpy-yoursolanaaddress---network-solana---token-mintaddress.txt
### 3. Token Transfers

Send native tokens or ERC20/SPL tokens:

python3 scripts/token_sender.py my-wallet RecipientAddress 1.5 --network solana --password "password"

python3-scriptstokensenderpy-my-wallet-recipientaddress-15---network-solana---password-password.txt
**Security:** Password required for every transaction. Private keys never leave encrypted storage unprotected.

### 4. Smart Contract Interaction

Call contract functions (read and write):

python3 scripts/contract_interactor.py 0xContract purchase --abi contract.json --network ethereum --args '[]' --write --wallet my-wallet --password "password" --value 0.05

python3-scriptscontractinteractorpy-0xcontract-purchase---abi-contractjson---network-ethereum---args----write---wallet-my-wallet---password-password---value-005.txt
## Security Architecture

### Encryption
- **Algorithm:** AES-256-GCM with PBKDF2 key derivation
- **Iterations:** 100,000 (OWASP recommended)
- **Salt:** Random 16-byte salt per wallet
- **Storage:** `~/.clawdbot/cryptowallet/` with 0600 permissions

### Key Principles
1. **Password-protected transactions** - Every send/sign operation requires password
2. **Encrypted at rest** - Private keys never stored in plaintext
3. **No key exposure** - Keys decrypted in memory only during signing
4. **Isolated storage** - Each wallet has independent encryption

See `references/security.md` for complete security documentation.

## Common Workflows

### Portfolio Management
Check balances across all networks:

python3 scripts/balance_checker.py 0xYourAddress --all-evm

python3-scriptsbalancecheckerpy-0xyouraddress---all-evm.txt
### Multi-Chain Operations
Send the same token across different chains:

python3 scripts/token_sender.py wallet recipient 100 --network arbitrum --token 0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8 --password "pwd"

python3-scriptstokensenderpy-wallet-recipient-100---network-arbitrum---token-0xff970a61a04b1ca14834a43f5de4533ebddb5cc8---password-pwd.txt
### DeFi Protocol Interaction
Example: Approve and stake tokens

python3 scripts/contract_interactor.py 0xStakingContract stake --abi staking.json --network ethereum --args '["1000000000000000000000"]' --write --wallet my-wallet --password "pwd"

python3-scriptscontractinteractorpy-0xstakingcontract-stake---abi-stakingjson---network-ethereum---args-1000000000000000000000---write---wallet-my-wallet---password-pwd.txt
## Network Configuration

Modify `references/networks.json` to:
- Add custom RPCs (Infura, Alchemy, QuickNode)
- Add new networks
- Update chain IDs or explorers

Default RPCs are public and may have rate limits. For production, use dedicated RPC providers.

## Dependencies

Install required packages:

pip install web3 solana solders eth-account cryptography base58

pip-install-web3-solana-solders-eth-account-cryptography-base58.txt
## Troubleshooting

### "Incorrect password"
- Password is case-sensitive
- No recovery if password is lost (by design)

### "Insufficient funds"
- Check balance includes gas fees
- On Ethereum: gas can be $5-50+ per transaction

### "Transaction failed"
- Verify network selection
- Check contract address is correct
- Ensure enough gas limit for complex operations

### RPC errors
- Public RPCs may be rate-limited
- Use `references/networks.json` to configure your own RPC endpoint

## Advanced Usage

### Custom Network
Add to `references/networks.json`:

}

.txt
### Batch Operations
Use shell loops for batch transactions:
example.sh
# Create new EVM wallet
python3 scripts/wallet_manager.py create my-eth-wallet --chain evm --password "secure-password"

# Create new Solana wallet
python3 scripts/wallet_manager.py create my-sol-wallet --chain solana --password "secure-password"

# Import existing wallet
python3 scripts/wallet_manager.py import imported-wallet --chain evm --key "0x..." --password "secure-password"

# List all wallets
python3 scripts/wallet_manager.py list

Tags

#web_and-frontend-development #web

Quick Info

Category Development
Model Claude 3.5
Complexity One-Click
Author gnufoo
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install cryptowallet