EVM Commands

Query EVM chain contract state. These commands are read-only and do not require a private key.

Usage

bridge-cli evm [options] [contract] [method] [args...]

Options:

Option Description
-n, --network <name> Target network (e.g., sepolia, baseSepolia)

Contracts:

  • MultiSigLocker - The main bridge locker contract

List Available Networks

bridge-cli evm networks

Output:

Available Networks:

  sepolia       Ethereum Sepolia (Chain ID: 11155111)
  baseSepolia   Base Sepolia (Chain ID: 84532)

Use: bridge-cli evm --network <name> MultiSigLocker <method>

MultiSigLocker Commands

Interactive Help

When you run the command without a method, the CLI displays available methods:

bridge-cli evm --network sepolia MultiSigLocker

Output:

MultiSigLocker Methods:

Contract Info:
  admin              - Get admin address
  VERSION            - Get contract version
  getImplementation  - Get proxy implementation address

Relayer Management:
  getRelayerSet      - Get all relayers and threshold
  isRelayer <addr>   - Check if address is a relayer

ERC-20 Token Registry:
  getRegisteredTokens    - Get all registered token addresses
  isTokenRegistered <token> - Check if token is registered
  getCasperContract <token> - Get Casper hash for token
  getLockedBalance <token>  - Get locked balance for token

Wrapped Tokens:
  hasWrappedToken <hash>     - Check if wrapped token exists
  getWrappedToken <hash>     - Get wrapped token address
  getCasperTokenHash <addr>  - Get Casper hash for wrapped
  isWrappedToken <addr>      - Check if address is wrapped token

Fee Configuration:
  bridgeFee      - Get current bridge fee
  feeRecipient   - Get fee recipient address

Contract Information

# Get admin address
bridge-cli evm --network sepolia MultiSigLocker admin

# Get contract version
bridge-cli evm --network sepolia MultiSigLocker VERSION

# Get proxy implementation
bridge-cli evm --network sepolia MultiSigLocker getImplementation

Relayer Information

# Get relayer set (addresses and threshold)
bridge-cli evm --network sepolia MultiSigLocker getRelayerSet

# Check if address is a relayer
bridge-cli evm --network sepolia MultiSigLocker isRelayer 0x1234...

Example Output:

$ bridge-cli evm --network sepolia MultiSigLocker getRelayerSet

Relayers (3-of-5):
  1. 0x1234567890abcdef1234567890abcdef12345678
  2. 0xabcdef1234567890abcdef1234567890abcdef12
  3. 0x9876543210fedcba9876543210fedcba98765432
  4. 0xfedcba9876543210fedcba9876543210fedcba98
  5. 0x1111222233334444555566667777888899990000

Token Registry

# Get all registered tokens
bridge-cli evm --network sepolia MultiSigLocker getRegisteredTokens

# Check if token is registered
bridge-cli evm --network sepolia MultiSigLocker isTokenRegistered 0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238

# Get Casper contract hash for token
bridge-cli evm --network sepolia MultiSigLocker getCasperContract 0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238

# Get locked balance
bridge-cli evm --network sepolia MultiSigLocker getLockedBalance 0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238

Wrapped Token Queries

# Check if wrapped token exists for Casper hash
bridge-cli evm --network sepolia MultiSigLocker hasWrappedToken 0xabc123...

# Get wrapped token address
bridge-cli evm --network sepolia MultiSigLocker getWrappedToken 0xabc123...

# Get Casper token hash for wrapped token
bridge-cli evm --network sepolia MultiSigLocker getCasperTokenHash 0x5678...

# Check if address is a wrapped token
bridge-cli evm --network sepolia MultiSigLocker isWrappedToken 0x5678...

Fee Configuration

# Get bridge fee
bridge-cli evm --network sepolia MultiSigLocker bridgeFee

# Get fee recipient
bridge-cli evm --network sepolia MultiSigLocker feeRecipient

Multi-Chain Support

Commands work across all configured EVM chains. Use the --network flag to specify the target:

# Query Sepolia
bridge-cli evm --network sepolia MultiSigLocker getLockedBalance 0x1c7D...

# Query Base Sepolia
bridge-cli evm --network baseSepolia MultiSigLocker getLockedBalance 0x036C...

Each chain has its own:

  • Locker contract address
  • Registered tokens
  • Locked balances
  • Relayer configuration

Examples

Check Contract Status

#!/bin/bash
NETWORK="sepolia"

echo "=== MultiSigLocker Status on $NETWORK ==="

# Get admin
echo "Admin: $(bridge-cli evm --network $NETWORK MultiSigLocker admin)"

# Get relayers
bridge-cli evm --network $NETWORK MultiSigLocker getRelayerSet

# Get fee info
echo "Bridge Fee: $(bridge-cli evm --network $NETWORK MultiSigLocker bridgeFee) wei"
echo "Fee Recipient: $(bridge-cli evm --network $NETWORK MultiSigLocker feeRecipient)"

Query Locked Balances

#!/bin/bash
NETWORK="sepolia"

# USDC on Sepolia
USDC="0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238"

echo "Locked USDC: $(bridge-cli evm --network $NETWORK MultiSigLocker getLockedBalance $USDC)"

Notes

  • All queries are read-only and do not require signing keys
  • The --network flag is required for MultiSigLocker commands
  • For admin operations (register tokens, update relayers), use bridge-cli admin commands
  • Network names are case-sensitive (use sepolia not Sepolia)

results matching ""

    No results matching ""