Agent skill

base

Query Base (Ethereum L2) blockchain data with USD pricing — wallet balances, token info, transaction details, gas analysis, contract inspection, whale detection, and live network stats. Uses Base RPC + CoinGecko. No API key required.

Stars 56,643
Forks 7,481

Install this agent skill to your Project

npx add-skill https://github.com/NousResearch/hermes-agent/tree/main/optional-skills/blockchain/base

Metadata

Additional technical details for this skill

hermes
{
    "tags": [
        "Base",
        "Blockchain",
        "Crypto",
        "Web3",
        "RPC",
        "DeFi",
        "EVM",
        "L2",
        "Ethereum"
    ],
    "related_skills": []
}

SKILL.md

Base Blockchain Skill

Query Base (Ethereum L2) on-chain data enriched with USD pricing via CoinGecko. 8 commands: wallet portfolio, token info, transactions, gas analysis, contract inspection, whale detection, network stats, and price lookup.

No API key needed. Uses only Python standard library (urllib, json, argparse).


When to Use

  • User asks for a Base wallet balance, token holdings, or portfolio value
  • User wants to inspect a specific transaction by hash
  • User wants ERC-20 token metadata, price, supply, or market cap
  • User wants to understand Base gas costs and L1 data fees
  • User wants to inspect a contract (ERC type detection, proxy resolution)
  • User wants to find large ETH transfers (whale detection)
  • User wants Base network health, gas price, or ETH price
  • User asks "what's the price of USDC/AERO/DEGEN/ETH?"

Prerequisites

The helper script uses only Python standard library (urllib, json, argparse). No external packages required.

Pricing data comes from CoinGecko's free API (no key needed, rate-limited to ~10-30 requests/minute). For faster lookups, use --no-prices flag.


Quick Reference

RPC endpoint (default): https://mainnet.base.org Override: export BASE_RPC_URL=https://your-private-rpc.com

Helper script path: ~/.hermes/skills/blockchain/base/scripts/base_client.py

python3 base_client.py wallet   <address> [--limit N] [--all] [--no-prices]
python3 base_client.py tx       <hash>
python3 base_client.py token    <contract_address>
python3 base_client.py gas
python3 base_client.py contract <address>
python3 base_client.py whales   [--min-eth N]
python3 base_client.py stats
python3 base_client.py price    <contract_address_or_symbol>

Procedure

0. Setup Check

bash
python3 --version

# Optional: set a private RPC for better rate limits
export BASE_RPC_URL="https://mainnet.base.org"

# Confirm connectivity
python3 ~/.hermes/skills/blockchain/base/scripts/base_client.py stats

1. Wallet Portfolio

Get ETH balance and ERC-20 token holdings with USD values. Checks ~15 well-known Base tokens (USDC, WETH, AERO, DEGEN, etc.) via on-chain balanceOf calls. Tokens sorted by value, dust filtered.

bash
python3 ~/.hermes/skills/blockchain/base/scripts/base_client.py \
  wallet 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045

Flags:

  • --limit N — show top N tokens (default: 20)
  • --all — show all tokens, no dust filter, no limit
  • --no-prices — skip CoinGecko price lookups (faster, RPC-only)

Output includes: ETH balance + USD value, token list with prices sorted by value, dust count, total portfolio value in USD.

Note: Only checks known tokens. Unknown ERC-20s are not discovered. Use the token command with a specific contract address for any token.

2. Transaction Details

Inspect a full transaction by its hash. Shows ETH value transferred, gas used, fee in ETH/USD, status, and decoded ERC-20/ERC-721 transfers.

bash
python3 ~/.hermes/skills/blockchain/base/scripts/base_client.py \
  tx 0xabc123...your_tx_hash_here

Output: hash, block, from, to, value (ETH + USD), gas price, gas used, fee, status, contract creation address (if any), token transfers.

3. Token Info

Get ERC-20 token metadata: name, symbol, decimals, total supply, price, market cap, and contract code size.

bash
python3 ~/.hermes/skills/blockchain/base/scripts/base_client.py \
  token 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913

Output: name, symbol, decimals, total supply, price, market cap. Reads name/symbol/decimals directly from the contract via eth_call.

4. Gas Analysis

Detailed gas analysis with cost estimates for common operations. Shows current gas price, base fee trends over 10 blocks, block utilization, and estimated costs for ETH transfers, ERC-20 transfers, and swaps.

bash
python3 ~/.hermes/skills/blockchain/base/scripts/base_client.py gas

Output: current gas price, base fee, block utilization, 10-block trend, cost estimates in ETH and USD.

Note: Base is an L2 — actual transaction costs include an L1 data posting fee that depends on calldata size and L1 gas prices. The estimates shown are for L2 execution only.

5. Contract Inspection

Inspect an address: determine if it's an EOA or contract, detect ERC-20/ERC-721/ERC-1155 interfaces, resolve EIP-1967 proxy implementation addresses.

bash
python3 ~/.hermes/skills/blockchain/base/scripts/base_client.py \
  contract 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913

Output: is_contract, code size, ETH balance, detected interfaces (ERC-20, ERC-721, ERC-1155), ERC-20 metadata, proxy implementation address.

6. Whale Detector

Scan the most recent block for large ETH transfers with USD values.

bash
python3 ~/.hermes/skills/blockchain/base/scripts/base_client.py \
  whales --min-eth 1.0

Note: scans the latest block only — point-in-time snapshot, not historical. Default threshold is 1.0 ETH (lower than Solana's default since ETH values are higher).

7. Network Stats

Live Base network health: latest block, chain ID, gas price, base fee, block utilization, transaction count, and ETH price.

bash
python3 ~/.hermes/skills/blockchain/base/scripts/base_client.py stats

8. Price Lookup

Quick price check for any token by contract address or known symbol.

bash
python3 ~/.hermes/skills/blockchain/base/scripts/base_client.py price ETH
python3 ~/.hermes/skills/blockchain/base/scripts/base_client.py price USDC
python3 ~/.hermes/skills/blockchain/base/scripts/base_client.py price AERO
python3 ~/.hermes/skills/blockchain/base/scripts/base_client.py price DEGEN
python3 ~/.hermes/skills/blockchain/base/scripts/base_client.py price 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913

Known symbols: ETH, WETH, USDC, cbETH, AERO, DEGEN, TOSHI, BRETT, WELL, wstETH, rETH, cbBTC.


Pitfalls

  • CoinGecko rate-limits — free tier allows ~10-30 requests/minute. Price lookups use 1 request per token. Use --no-prices for speed.
  • Public RPC rate-limits — Base's public RPC limits requests. For production use, set BASE_RPC_URL to a private endpoint (Alchemy, QuickNode, Infura).
  • Wallet shows known tokens only — unlike Solana, EVM chains have no built-in "get all tokens" RPC. The wallet command checks ~15 popular Base tokens via balanceOf. Unknown ERC-20s won't appear. Use the token command for any specific contract.
  • Token names read from contract — if a contract doesn't implement name() or symbol(), these fields may be empty. Known tokens have hardcoded labels as fallback.
  • Gas estimates are L2 only — Base transaction costs include an L1 data posting fee (depends on calldata size and L1 gas prices). The gas command estimates L2 execution cost only.
  • Whale detector scans latest block only — not historical. Results vary by the moment you query. Default threshold is 1.0 ETH.
  • Proxy detection — only EIP-1967 proxies are detected. Other proxy patterns (EIP-1167 minimal proxy, custom storage slots) are not checked.
  • Retry on 429 — both RPC and CoinGecko calls retry up to 2 times with exponential backoff on rate-limit errors.

Verification

bash
# Should print Base chain ID (8453), latest block, gas price, and ETH price
python3 ~/.hermes/skills/blockchain/base/scripts/base_client.py stats

Expand your agent's capabilities with these related and highly-rated skills.

NousResearch/hermes-agent

agentmail

Give the agent its own dedicated email inbox via AgentMail. Send, receive, and manage email autonomously using agent-owned email addresses (e.g. hermes-agent@agentmail.to).

56,643 7,481
Explore
NousResearch/hermes-agent

solana

Query Solana blockchain data with USD pricing — wallet balances, token portfolios with values, transaction details, NFTs, whale detection, and live network stats. Uses Solana RPC + CoinGecko. No API key required.

56,643 7,481
Explore
NousResearch/hermes-agent

one-three-one-rule

Structured decision-making framework for technical proposals and trade-off analysis. When the user faces a choice between multiple approaches (architecture decisions, tool selection, refactoring strategies, migration paths), this skill produces a 1-3-1 format: one clear problem statement, three distinct options with pros/cons, and one concrete recommendation with definition of done and implementation plan. Use when the user asks for a "1-3-1", says "give me options", or needs help choosing between competing approaches.

56,643 7,481
Explore
NousResearch/hermes-agent

fastmcp

Build, test, inspect, install, and deploy MCP servers with FastMCP in Python. Use when creating a new MCP server, wrapping an API or database as MCP tools, exposing resources or prompts, or preparing a FastMCP server for Claude Code, Cursor, or HTTP deployment.

56,643 7,481
Explore
NousResearch/hermes-agent

qdrant-vector-search

High-performance vector similarity search engine for RAG and semantic search. Use when building production RAG systems requiring fast nearest neighbor search, hybrid search with filtering, or scalable vector storage with Rust-powered performance.

56,643 7,481
Explore
NousResearch/hermes-agent

nemo-curator

GPU-accelerated data curation for LLM training. Supports text/image/video/audio. Features fuzzy deduplication (16× faster), quality filtering (30+ heuristics), semantic deduplication, PII redaction, NSFW detection. Scales across GPUs with RAPIDS. Use for preparing high-quality training datasets, cleaning web data, or deduplicating large corpora.

56,643 7,481
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results