Validator Setup
Step-by-step instructions for integrating your validator with shMonad.
Order of Operations
For new validators joining shMonad, follow this sequence:
- Get onboarded to shMonad - A coinbase contract will be deployed for you
- Update beneficiary address - Change your
node.tomlbeneficiary to the coinbase contract address and restart monad-bft - Run the sidecar - Install the MEV Sidecar via Rootless Docker or Podman to earn MEV rewards
Following the correct order of operations is important to ensure no funds are lost during the transition.
Configure Dedicated Fullnodes
Add FastLane's fullnode identities to your node.toml to enable MEV transaction routing to your validator.
If your node.toml already has an empty assignment like [fullnode_dedicated] identities = [], you must remove or comment out that line before adding the entries below. The TOML array-of-tables syntax ([[fullnode_dedicated.identities]]) is different from the empty inline assignment.
# Remove this line if it exists:
# [fullnode_dedicated] identities = []
# Add FastLane fullnode identities:
[[fullnode_dedicated.identities]]
secp256k1_pubkey = "<FastLane Node 1 pubkey>"
[[fullnode_dedicated.identities]]
secp256k1_pubkey = "<FastLane Node 2 pubkey>"
Both FastLane nodes should be added. After saving, apply the changes without restarting:
monad-debug-node --control-panel-ipc-path /home/monad/monad-bft/controlpanel.sock reload-config
You will receive the specific pubkey values during onboarding. Contact the shMonad team if you haven't received them.