| name | contract-source |
| description | Use this skill when the user asks to "get contract source code", "show verified contract", "fetch source from etherscan", "view smart contract code", or mentions viewing verified source code on blockchain. Requires a contract address and optional chain parameter (ethereum, polygon, arbitrum, optimism, base, bsc). |
| allowed-tools | Bash |
Contract Source Fetcher
Fetches verified smart contract source code from Etherscan (or equivalent block explorer).
Usage
Run the script with address and chain:
${CLAUDE_PLUGIN_ROOT}/scripts/crypto-contract-source.sh <address> [chain]
Arguments
address(required): Contract address in hex format (0x + 40 hex characters). ENS names are NOT supported.chain(optional): Chain name - ethereum (default), polygon, arbitrum, optimism, base, bsc
Supported Chains
| Chain | Aliases | Explorer |
|---|---|---|
| ethereum | eth, mainnet | Etherscan |
| polygon | matic | Polygonscan |
| arbitrum | arb | Arbiscan |
| optimism | op | Optimism Etherscan |
| base | - | Basescan |
| bsc | binance | BSCScan |
Requirements
cast(Foundry) must be installed- API key must be set for the target chain:
ETHERSCAN_API_KEYfor EthereumPOLYGONSCAN_API_KEYfor PolygonARBISCAN_API_KEYfor ArbitrumOPTIMISM_API_KEYfor OptimismBASESCAN_API_KEYfor BaseBSCSCAN_API_KEYfor BSC
Examples
# Get WETH source on Ethereum
${CLAUDE_PLUGIN_ROOT}/scripts/crypto-contract-source.sh 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2
# Get Uniswap Router source on Polygon
${CLAUDE_PLUGIN_ROOT}/scripts/crypto-contract-source.sh 0xa5E0829CaCEd8fFDD4De3c43696c57F7D7A678ff polygon