What problem does it solve? LLMs frequently generate outdated ethers.js v5 code with BigNumber, ethers.utils, and ethers.providers patterns that fail against v6. This Skill provides correct v6 patterns for providers, wallets, contract interaction, ABI encoding, event handling, and error management so generated code works on the first attempt. ## Core Features & Use Cases - v5 to v6 Migration Reference: Complete mapping of BigNumber to native bigint, ethers.utils to top-level exports, and Web3Provider to BrowserProvider, with a quick-detection table for identifying version mismatches. - Provider, Signer, and Contract Patterns: Ready-to-use TypeScript examples for JsonRpcProvider, BrowserProvider, WebSocketProvider, FallbackProvider, Wallet creation, ContractFactory deployment, and read-write contract connections. - Error Handling and Troubleshooting: Structured isError-based handling for CALL_EXCEPTION, INSUFFICIENT_FUNDS, NONCE_EXPIRED, and other v6 error codes, plus a debug checklist for common failures like null receipts and gas estimation errors. - Use Case: Build a backend script that reads ERC-20 balances via Multicall3, sends EIP-1559 transactions with gas control, and listens to Transfer events over WebSocket, all using verified v6 idioms. ## Quick Start Ask the agent to write an ethers.js v6 script that connects a Wallet to a JsonRpcProvider and transfers ERC-20 tokens with receipt verification.