Comprehensive guide and reference for implementing advanced sweeping and transaction strategies (Legacy, Factory, Permit, Auth, EIP-7702) using viem v2. Use this skill when you need to implement token sweeping, wallet factories, gasless transfers, or account delegation.
Install
npx skillscat add melonask/viem-sweep-skills Install via the SkillsCat registry.
Viem Sweep
Overview
This skill provides implementation patterns for advanced transaction strategies using viem v2. It covers methods for moving assets from multiple sources to a destination, ranging from simple private key transfers to advanced gas-optimized and signature-based patterns.
Strategy Selection Guide
Choose the appropriate strategy based on your requirements and infrastructure:
1. Legacy Strategy (Direct Transfer)
Best for: General use case with private keys.
- Pros: Works with any ERC20 token; simple logic.
- Cons: High gas cost (requires ETH on every source account); management of dust ETH.
- Mechanism: Admin funds source -> Source sends token.
2. Factory Strategy (CREATE2)
Best for: High-volume deposit addresses (e.g., exchanges).
- Pros: Lowest gas cost; clean address management; no private keys needed (just salt).
- Cons: Requires initial setup (factory contract); addresses must be generated by factory.
- Mechanism: Predict address -> Deploy (if needed) & Flush in one tx.
3. Permit Strategy (EIP-2612)
Best for: Gasless user experiences with compatible tokens (e.g., UNI, DAI).
- Pros: Gasless for user (relayer pays); single batch transaction.
- Cons: Token MUST support EIP-2612; requires private key signature.
- Mechanism: User signs Permit -> Admin submits batch.
4. Auth Strategy (EIP-3009)
Best for: USDC and other tokens supporting TransferWithAuthorization.
- Pros: Gasless for user; single batch transaction; handles non-sequential nonces (USDC).
- Cons: Token MUST support EIP-3009.
- Mechanism: User signs Authorization -> Admin submits batch.
5. EIP-7702 Strategy (Delegation)
Best for: Future-proofing and "upgrading" EOAs to smart contracts temporarily.
- Pros: Allows EOAs to act as contracts (batching, recovery, sponsored gas) without permanent migration.
- Cons: Requires chain support (Prague hardfork+).
- Mechanism: User signs delegation -> Admin executes tx with auth list.
Implementation Details
For detailed code examples, ABI snippets, and deep-dive explanations of each strategy, refer to the Strategies Reference.
The underlying Solidity contract logic can be found in the Contracts Reference.
Usage
When implementing these strategies, ensure you have:
- Viem v2 installed.
- Access to a PublicClient (for reads/simulation) and WalletClient (for signing/sending).
- Relevant ABI definitions (standard ERC20, or your specific Factory/Sweeper contracts).
To request specific implementation details, ask:
- "How do I implement a factory sweep with viem?"
- "Show me the EIP-7702 signing flow."
- "What is the difference between Permit and Auth strategies?"