Contender
spam EVM execution nodes over JSON-RPC & run benchmarks
Install / Use
/learn @flashbots/ContenderREADME
Contender
High-performance Ethereum transaction spammer and benchmarking tool.
🚀 Quick Start
Install:
cargo install --git https://github.com/flashbots/contender --locked
Run a simple spam scenario:
contender spam --tps 50 -r $RPC_URL fill-block
Run a bundled scenario from the repo:
contender setup scenario:stress.toml -r $RPC_URL -p $PRIVATE_KEY
contender spam scenario:stress.toml -r $RPC_URL --tps 10 -d 3
See examples for more usage patterns.
Docker Instructions
Fetch the latest image:
docker pull flashbots/contender
Double-check your RPC URL:
export RPC="http://host.docker.internal:8545"
# uncomment if host.docker.internal doesn't work:
# export RPC="http://172.17.0.1:8545"
Run contender in a container with persistent state:
docker run -it -v /tmp/.contender:/root/.local/state/contender \
contender spam --tps 20 -r $RPC transfers
-vmaps/tmp/.contenderon the host machine to/root/.local/state/contenderin the container, which contains the DB; used for generating reports and saving contract deployments.
⚙️ Prerequisites
- Rust toolchain (latest stable)
- SQLite development headers (
libsqlite3-devon Linux) - A JSON-RPC endpoint for the target Ethereum node
📚 Docs
Contender is a high-performance Ethereum transaction spammer and benchmarking tool, built for repeatable load tests against EL clients and live networks. It supports both per-second (TPS) and per-block (TPB) timing, seeded fuzzing for reproducibility, and SQLite-backed state for contracts, runs, and reports.
1. Introduction
2. Getting Started
3. Writing Scenarios
4. Advanced Usage
- Engine API Spamming
- Reports, Database, and Admin Tools
- Using Contender as a Library
- Composite Campaigns
5. Internals
Related Skills
gh-issues
346.8kFetch GitHub issues, spawn sub-agents to implement fixes and open PRs, then monitor and address PR review comments. Usage: /gh-issues [owner/repo] [--label bug] [--limit 5] [--milestone v1.0] [--assignee @me] [--fork user/repo] [--watch] [--interval 5] [--reviews-only] [--cron] [--dry-run] [--model glm-5] [--notify-channel -1002381931352]
node-connect
346.8kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
107.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
Writing Hookify Rules
107.6kThis skill should be used when the user asks to "create a hookify rule", "write a hook rule", "configure hookify", "add a hookify rule", or needs guidance on hookify rule syntax and patterns.
