Introducing Geth Sealer

Geth Sealer is a Geth extension that allows building blocks externally for faster iteration of building strategies

Streamline your block building workflow

Most available block building tools are integrated into execution clients like Geth, forcing the user to restart the client and rebuild the mempool in order to roll out changes and test new code. This Geth Sealer eliminates that hassle, enabling a more efficient workflow for block building, speculative transaction execution, and backtesting.

Uses

The sealer takes private and global mempool transactions, constructs a block, and submits it to specified relay(s)—all external to Geth. This allows faster iteration for building and searching strategies.

After passing private transactions, the sealer can optionally fill the block from the public mempool up to the gas limit. While building a block, the sealer can also return call traces of the included transactions, allowing further inspection and analysis. These traces can be used to pre-filter transactions prior to block submission if desired: This is useful when a destination relay is known to apply filtering criteria to transactions.

Geth Sealer also enables speculative execution and backtesting. Speculative execution allows users to simulate outcomes of potential transactions prior to building and submitting a block, while backtesting can show how strategies would have performed with historical mainnet data—both crucial insights for optimizing one’s block building.

Getting started

Find Geth Sealer and documentation on Manifold’s GitHub.

@sambacha

What challenges are there to building similar types of extensions for the other EL clients? I’m sure there are very good engineering related reasons why Geth still dominates but I continuously worry about EL client diversity. It has gotten somewhat better but practically speaking, nearly all of MEV-related block building (aka non-local building) is effectively Geth

1 Like

We’re working on Erigon and Nethermind implementations of the same RPC

2 Likes

That’s great thanks. Will be interesting to see how all 3 implementations perform in prod when they’re all live.

1 Like