sablier-labs/plugin-marketplace/etherscan-verification

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Verify smart contracts on Etherscan-compatible block explorers. This skill should be used when the user asks to "verify contract", "verify on etherscan", "verify on chain scan". Handles standard verification, Etherscan V2 API for unsupported chains on foundry, proxy patterns, and factory-created contracts.

Install

npx vskill@latest install sablier-labs/plugin-marketplace/etherscan-verification

SKILL.md

Overview

Contract verification on Etherscan-compatible explorers using Foundry's forge verify-contract. Covers standard verification, unsupported chains via Etherscan V2 API, proxy patterns, and factory-created contracts.

When to Use

  • Verify deployed smart contracts on Etherscan-compatible explorers
  • Verify proxy contracts (ERC1967, UUPS)
  • Verify factory-created contracts (CREATE2)
  • Extract constructor arguments from deployment data

Prerequisites

RequirementHow to Get
Foundry ≥1.3.6Run forge -V to check version
Contract addressFrom deployment broadcast or user
Chain IDFrom explorer or network configuration
Explorer API keyFrom Etherscan account (works for V2 multi-chain)
Source codeMust match deployed bytecode exactly
Version Check

Before proceeding, verify Foundry version:

bash
forge -V

Stop if version is below 1.3.6.

Verification Methods

Method 1: Standard (Native Support)

For chains Foundry supports natively:

bash
FOUNDRY_PROFILE=optimized forge verify-contract \
<CONTRACT_ADDRESS> \
src/<Contract>.sol:<Contract> \
--rpc-url <chain_name> \
--verifier etherscan \
--etherscan-api-key $ETHERSCAN_API_KEY \
--watch
Method 2: Etherscan V2 API (Unsupported Chains on Foundry)

When Foundry shows "No known Etherscan API URL for chain X":

bash
FOUNDRY_PROFILE=optimized forge verify-contract \
<CONTRACT_ADDRESS> \
src/<Contract>.sol:<Contract> \
--verifier etherscan \
--verifier-url "https://api.etherscan.io/v2/api?chainid=<CHAIN_ID>" \
--etherscan-api-key $ETHERSCAN_API_KEY \
--watch

Supported chains: https://docs.etherscan.io/supported-chains

Method 3: With Constructor Arguments

For contracts with constructor parameters:

bash
FOUNDRY_PROFILE=optimized forge verify-contract \
<CONTRACT_ADDRESS> \
src/<Contract>.sol:<Contract> \
--verifier etherscan \
--verifier-url "https://api.etherscan.io/v2/api?chainid=<CHAIN_ID>" \
--etherscan-api-key $ETHERSCAN_API_KEY \
--constructor-args <ABI_ENCODED_ARGS> \
--watch

Generate constructor args with cast abi-encode:

bash
cast abi-encode "constructor(address,uint256)" 0x123... 1000

Special Cases

Reference: ./references/special-cases.md

Proxy Contracts

Verify implementation and proxy separately. See reference for ERC1967 pattern.

Factory-Created Contracts

Extract constructor args from broadcast initCode using scripts/extract_constructor_args.py.

Library Verification

For libraries, use full path:

bash
src/libraries/<Library>.sol:<Library>

Troubleshooting

Reference: ./references/troubleshooting.md

Common Issues
ErrorCauseSolution
"No known Etherscan API URL"Chain not in FoundryUse --verifier-url with V2 API
"Bytecode does not match"Compilation driftCheckout deployment commit + reinstall deps
"Constructor args mismatch"Wrong/missing argsExtract from broadcast or encode manually
"Already verified"Previously verifiedNo action needed

Output

After successful verification:

  • Contract source visible on explorer
  • ABI available for interaction
  • Constructor args decoded
  • "Contract Source Code Verified" badge

Examples

Reference: ./references/examples.md for real-world verification examples from Monad deployment.

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/sablier-labs/plugin-marketplace/etherscan-verification/badge)](https://verified-skill.com/skills/sablier-labs/plugin-marketplace/etherscan-verification)

Something wrong with this skill or its page? Tell us.