Command Line Arguments

About the Arguments:

BLOCK_ENGINE_URL, and SHRED_RECEIVER_ADDRESS reference addresses on the mainnetarrow-up-right and testnetarrow-up-right connection pages.

  • --tip-payment-program-pubkey Address of the tip payment program.

    • The tip payment program address can be found here

    • Read more about the program here

  • --tip-distribution-program-pubkey Address of the tip distribution program.

    • The tip payment program address can be found here

    • Read more about the program here

  • --merkle-root-upload-authority Authority that uploads MEV airdrop merkle roots to the validator's MEV "piggy bank".

    • This authority automates the airdrop and claim process, so stakers don't need to manually claim rewards.

    • if you set it to Jito - 8F4jGUmxF36vQ6yabnsxX6AQVXdKBhs8kGSUuRKSg8Xt, Jito will run the airdrop and claim process for you β€” always verify the latest authority address herearrow-up-right

    • If you set it to any other address, you will need to run the claim workflowarrow-up-right yourself.

  • --commission-bps the MEV commission your validator takes (stored in basis points)

  • --block-engine-url Address of the block engine where the validator connects.

  • --shred-receiver-address Address where shreds are sent.

  • --bam-url <BAM_NODE_URL> Optional. URL of the Jito BAM (Block Assembly Marketplace) node to connect to (for Jito-Solana v3.0.14+ and v3.1.16+)

    • Set this flag to opt-in to running the Jito BAM client, which enables your validator to receive pre-sequenced transaction bundles from the BAM Node.

    • Choose a regional endpoint: herearrow-up-right

    • Configure the argument in your startup script: herearrow-up-right

    • NOTE: If you are already running Jito-Solana you can enable BAM without restarting: herearrow-up-right

Mainnet Arguments

Please look at mainnet connection informationarrow-up-right for the values of BLOCK_ENGINE_URL, and SHRED_RECEIVER_ADDRESS and always verify the latest pubkeys and authority herearrow-up-right

Testnet Arguments

Please look at testnet connection informationarrow-up-right for the values of BLOCK_ENGINE_URL, and SHRED_RECEIVER_ADDRESS and always verify the latest pubkeys and authority herearrow-up-right

Changing Command Line Arguments

Several configuration parameters for the Jito-Solana validator can be changed at runtime - including some of the Jito-specific CLI arguments and setting or update the BAM Node url - without the need to restart a running validator. To see a list of validator admin RPC operations for your Solana version, run solana-validator help and examine the list of subcommands.

Test Admin RPC

If you have never used the admin RPC before, we suggest you start with the monitor command to avoid making unwanted changes to your running validator. Run solana-validator monitor --help to see the documentation for the monitor command (same syntax to get other commands help).

After running solana-validator -l <path_to_ledger> monitor, you should see something like the following:

If this doesn’t work, check your ledger path. All admin RPC commands will require the ledger path.

Changing Jito-Specific Config

Currently, there are 3 admin RPC commands to adjust Jito-specific validator configuration, and for versions starting with Jito-Solana v1.14.18, the ability to change identity at runtime is fully supported.

Command
Action

set-block-engine-config

Set configuration for connection to a block engine

set-identity

Set the validator identity

set-shred-receiver-address

Changes shred receiver address

These commands allow you to set (or change) the URLs for Jito connections. E.g., running solana-validator -l <path_to_ledger> set-block-engine-config --block-engine-url https://testnet.block-engine.jito.wtf willl set the block engine URL to point to Jito Labs’ testnet block engine in NY.

Other URLs can be set with similar syntax, as well as a few other flags.

Identity Hotswap

For Jito-Solana 1.14.18 and up, the ability to change identity at runtime is fully supported.

Command
Action

set-identity

Set the validator identity

You can follow standard procedures for changing a validator's identity at runtime. Connections to backend services will be automatically reset and attempted under the new identity. The following 2 guides provide detailed instructions: MVines Guidearrow-up-right

Pumpkin's Guidearrow-up-right

Last updated