# MEV Bot Environment Configuration Template # Copy this file to .env and fill in your actual values # SECURITY WARNING: Never commit .env files with actual credentials to version control # ============================================================ # ARBITRUM NETWORK CONFIGURATION # ============================================================ # HTTP endpoint for transaction execution (reliable) # Get your own endpoint from: https://chainstack.com or https://alchemy.com ARBITRUM_RPC_ENDPOINT=https://arbitrum-mainnet.infura.io/v3/YOUR_PROJECT_ID # WebSocket endpoint for real-time event monitoring ARBITRUM_WS_ENDPOINT=wss://arbitrum-mainnet.infura.io/ws/v3/YOUR_PROJECT_ID # ============================================================ # RPC RATE LIMITING # ============================================================ # Requests per second to avoid provider rate limits # Adjust based on your provider's tier (free tier: 1-2, paid: 10-50) RPC_REQUESTS_PER_SECOND=2 # Maximum concurrent RPC connections # Lower values reduce rate limit errors but slow down processing RPC_MAX_CONCURRENT=1 # ============================================================ # BOT PERFORMANCE CONFIGURATION # ============================================================ # Number of worker goroutines for opportunity processing BOT_MAX_WORKERS=3 # Buffer size for opportunity channel BOT_CHANNEL_BUFFER_SIZE=100 # ============================================================ # ETHEREUM ACCOUNT CONFIGURATION # ============================================================ # CRITICAL: Replace with your actual private key (without 0x prefix) # Generate with: cast wallet new (foundry) or eth-keygen ETHEREUM_PRIVATE_KEY=0000000000000000000000000000000000000000000000000000000000000000 # Your Ethereum account address (checksum format) ETHEREUM_ACCOUNT_ADDRESS=0x0000000000000000000000000000000000000000 # Gas price multiplier for competitive transaction submission (1.0 = no increase) ETHEREUM_GAS_PRICE_MULTIPLIER=1.2 # ============================================================ # CONTRACT ADDRESSES # ============================================================ # Deploy these contracts first, then update addresses here # See: docs/deployment/contract-deployment.md CONTRACT_ARBITRAGE_EXECUTOR=0x0000000000000000000000000000000000000000 CONTRACT_FLASH_SWAPPER=0x0000000000000000000000000000000000000000 # ============================================================ # SECURITY CONFIGURATION # ============================================================ # Encryption key for keystore (MUST be 32+ characters) # Generate with: openssl rand -base64 32 # CRITICAL: Keep this secret! Losing it means losing access to keys MEV_BOT_ENCRYPTION_KEY=REPLACE_WITH_32_CHARACTER_MINIMUM_RANDOM_STRING_FROM_OPENSSL # Keystore directory for encrypted private keys MEV_BOT_KEYSTORE_PATH=keystore # Audit log path for security events MEV_BOT_AUDIT_LOG=logs/audit.log # Backup directory for key backups MEV_BOT_BACKUP_PATH=backups # ============================================================ # LOGGING AND MONITORING # ============================================================ # Log level: debug, info, warn, error LOG_LEVEL=info # Log format: text, json LOG_FORMAT=text # Enable Prometheus metrics endpoint METRICS_ENABLED=true # Metrics server port METRICS_PORT=9090 # ============================================================ # ENVIRONMENT MODE # ============================================================ # Environment: development, staging, production # Controls which config file is loaded (config/local.yaml, config/staging.yaml, config/arbitrum_production.yaml) GO_ENV=development # Debug mode (verbose logging) DEBUG=false # ============================================================ # BLOCKCHAIN EXPLORER API KEYS (OPTIONAL) # ============================================================ # Arbiscan API key for contract verification and transaction tracking # Get free key from: https://arbiscan.io/apis ARBISCAN_API_KEY=YOUR_ARBISCAN_API_KEY_HERE # ============================================================ # ADVANCED CONFIGURATION (OPTIONAL) # ============================================================ # Allow localhost RPC endpoints (security: only enable for development) MEV_BOT_ALLOW_LOCALHOST=false # Dashboard server port DASHBOARD_PORT=8080 # Security webhook URL for alerts (Slack, Discord, etc.) SECURITY_WEBHOOK_URL=https://hooks.slack.com/services/YOUR/WEBHOOK/URL