A Rust executable for manufacturing active addresses on EVM networks, lightly optimized for resilience, speed, and efficiency.
AI used extensively, don't blame me for bad code.
- Parallel wallet operation execution with dependency management
- Automatic transaction retry with exponential backoff
- Comprehensive tracing for logging and terminal progress updates
- [INSECURE] plaintext wallet backup and management
- Custom cache for gas prices to avoid spamming the eth_gasPrice RPC method
- Detailed execution statistics and error impact analysis
- Progress tracking with estimated time remaining
- Support for complex operation trees with parent-child dependencies
The library is organized into several key components:
WalletManager: Main entry point for wallet operationsTransactionManager: Handles transaction building and sendingExecutionManager: Manages parallel execution of operationsProgressManager: Tracks and reports execution progressCacheLayer: Caches RPC responses to reduce API calls
The application is configured through environment variables. Copy .env.example to .env and adjust the values:
RPC_URL: Desired network RPC URL (required)PRIVATE_KEY: Private key for the root wallet (required)ADDRESS_COUNT: Number of addresses to activate (required)GAS_BUFFER_MULTIPLIER: Multiplier for gas buffer (default: 2)MAX_RETRIES: Maximum number of retry attempts for failed transactions (default: 3)RETRY_BASE_DELAY_MS: Base delay between retry attempts in milliseconds (default: 1000)RUST_LOG: Log level (default: info)SPLIT_LOOPS_COUNT: Number of parallel operation loops (default: 2)AMOUNT_PER_WALLET: Amount of ETH to send to each new wallet (default: 1)
- Set up your environment variables in
.env - Run the application:
cargo run --releaseThe application will:
- Load configuration from environment variables
- Connect to the specified Ethereum network
- Execute wallet operations with automatic retry on failure
- Generate detailed execution statistics and logs
The library provides comprehensive error handling:
- Automatic retry for transient failures
- Detailed error impact analysis
- Transaction receipt verification
- Gas price caching to handle RPC rate limits
- Progress tracking with failure reporting
Logs are written to both:
- Terminal: Real-time progress updates and statistics
- File: Detailed JSON-formatted logs in the
logsdirectory