Skip to main content

Start Operator

After completing Validators Manager → setup, you're ready to start the Operator Service to begin automated validator registrations.

Start Operator Service

You are ready to run the Operator Service using the start command, passing your Vault address and consensus and execution endpoints as flags.

IconRequired Flags
  • --vault - Your Vault address
  • --consensus-endpoints - Consensus client API endpoints
  • --execution-endpoints - Execution client API endpoints

There are several ways to run the Operator Service, depending on how you store private keys.

Local Keystores

By default, the Operator Service runs with locally stored keystores created during key creation.

./operator start \
--vault=0x834F27bC8670491b75af512d943f01D5383F87Cf \
--consensus-endpoints=https://consensus-node \
--execution-endpoints=https://execution-node
IconExternal Key Management

For alternative key management methods (Remote Signer, HashiCorp Vault, API Mode), see the Alternative Key Management → section.

Running Options

Depending on your installation method, use the appropriate command format:

Using Binary

./operator start \
--vault=0x834F27bC8670491b75af512d943f01D5383F87Cf \
--consensus-endpoints=https://consensus-node \
--execution-endpoints=https://execution-node

Optional Flags

FlagDescription
--keystores-dirThe directory with validator keys in the EIP-2335 ↗ standard. Required if you didn't use Operator Service to generate keys. The folder must contain either a single password.txt password file for all keystores or separate password files for each keystore with the same name as keystore, but ending with .txt (e.g., keystore1.json, keystore1.txt)
--keystores-password-fileAbsolute path to the password file for decrypting keystores. Required if you didn't use Operator Service to generate keys
--wallet-fileAbsolute path to the wallet. Default is the file generated with create-wallet command
--wallet-password-fileAbsolute path to the wallet password file. Default is the file generated with create-wallet command
--verboseEnable debug mode, prints full output on error
--log-levelLogging detail level, value can be one of: 'ERROR', 'WARNING', 'INFO', 'DEBUG'
--min-deposit-amount-gweiThe minimum amount (in Gwei) that must accumulate in the Vault to trigger validator registration or a top-up. Minimum allowed: 1,000,000,000 Gwei (1 ETH/GNO). Default: 10,000,000,000 Gwei (10 ETH/GNO)
--vault-min-balance-gweiThe amount of assets (ETH/GNO) in Gwei that should be kept in the vault and not sent for staking. Default: 0
--max-validator-balance-gweiThe maximum balance (in Gwei) a validator can have before it is no longer eligible for top-ups. Default: 1945000000000 Gwei (1945 ETH) for Ethereum, 1800000000000 Gwei (1800 mGNO) for Gnosis
--max-withdrawal-request-fee-gweiThe maximum fee (in Gwei) for submitting a withdrawal request per validator. Default: 1000 Gwei
--min-deposit-delayThe minimum delay that must pass between validator registration or top-up transactions. Adjust this to control the frequency of registration transactions. Default: 3600 seconds (1 hour)
--max-fee-per-gas-gweiThe maximum fee per gas for transactions. Adjust it if you want to limit the maximum gas fee you're willing to pay. Default: 10 Gwei for Ethereum, 2 Gwei for Gnosis
--validator-typeSet to 0x01 if you want to register 0x01 validators. Default: 0x02 validators are registered
--harvest-vaultKeeps your Vault synced by calling the updateState function of the Vault contract every 12 hours. This simplifies contract interactions and reduces gas costs for your users. By default, the Vault state is also updated whenever users interact with the Vault (deposits, withdrawals, etc.)
--claim-fee-splitterClaims fees periodically to the addresses of the shareholders. See Fee Claiming → for details
--disable-withdrawalsDisables submitting partial and full withdrawals. This reduces gas costs but increases withdrawal times for users. Oracles will instead submit the exit signatures received from the Operator Service during validator registration
--disable-validators-registrationDisables registering new validators
--disable-validators-fundingDisables topping up existing 0x02 validators
--concurrencyNumber of processes in a pool
IconPerformance Optimization

For optimal performance, set --concurrency to half your CPU cores (e.g., --concurrency=4 for 8-core systems) to prevent overloading during keystore operations.

IconSetup Complete

Congratulations 🎉! Your Operator Service is now running and ready to trigger validator registrations within your Vault. Monitor the logs to ensure validators are being registered successfully.

Next Steps

Continue to Additional Actions → to explore optional configurations and integrations to enhance your Operator Service setup, including validator performance tracking with Rated Network.