Skip to main content

Launch Operator Service V4

With your Vault created and your execution and consensus clients fully synced, let's look at the software that makes it all work.

The Operator Service ↗ is open-source software developed by StakeWise that runs alongside the node infrastructure and automates the day-to-day operations of your Vault. It comes with all batteries included — CLI commands cover the most essential operations from key generation and wallet setup to node installation and monitoring, while optional flags add extra capabilities and let you fine-tune the service to your needs to achieve the most performant setup for your Vault.

The Operator Service connects to your Execution and Consensus nodes to read on-chain state and submit transactions to your Vault contract.

The Operator Service automates the staking workflow end-to-end, but doesn't lock you into any particular setup — generate keys through it or use external tools, store keystores locally or use a remote signer, and disable any automatic operation with a single flag.

IconOperator Service Version

The Operator Service has two versions: the latest V4 and V3. The V4 version supports more features (see Vaults v4.0: Optional Upgrade Now Available ↗ for full details) and is for Vault version 5+ on Ethereum or 3+ on Gnosis. The V3 version is for older Vaults.

Core Functions

The Operator Service handles the following operations automatically once started:

Validator Registration

The Operator Service continuously monitors whether the Vault has accumulated enough ETH for registering new validators (32 ETH minimum). When sufficient balance is available, it prepares the deposit data, obtains approval from the StakeWise oracle network, and submits the registration transaction to the Vault contract.

Validator Funding

Vaults support two types of validators: 0x01 or 0x021. The default type is 0x02. These compound validators can hold an effective balance up to 2048 ETH. When the Vault has available ETH, the Operator Service first tops up existing 0x02 validators — starting with the highest balance — before registering new ones.

Withdrawals

When a user requests to exit their stake, the Operator Service identifies the validators from which to withdraw the assets. It first triggers partial withdrawals for the 0x02 validators, starting with the one holding the largest balance. If partial withdrawals are insufficient, it proceeds with full withdrawals.

Additional Actions

Beyond core staking operations, the Operator Service provides CLI commands for setting up and managing your Vault, and optional flags on the start command that enable additional automation. Each command and flag is covered in detail in the dedicated setup and configuration sections of this documentation.

CLI Commands

The Operator Service provides CLI commands for the initial setup of your Vault — generating validator keys, creating an operator wallet, and configuring a remote signer — as well as ongoing validator management like voluntary exits, performance analytics, and validator consolidations.

Optional flags

The start command accepts a number of optional flags that let you fine-tune the service — disable specific functions like validator registration or withdrawals, enable Prometheus metrics, or adjust gas and deposit and balance thresholds. Two flags extend the Operator Service with capabilities beyond its core staking operations:

Vault State Update

Keeps your Vault synced by calling the updateState function of the Vault contract. This can be configured to run automatically every 12 hours with the --harvest-vault flag, simplifying contract interactions and reducing gas costs for your users. By default, the Vault state sync is included in the transaction whenever the user interacts with the Vault (deposits, withdrawals, etc.).

Automated Fee Claims

By default, the fees earned by the Vault's fee recipient remain locked in the validators. You can enable periodic fee claims through the Operator Service with --claim-fee-splitter flag. In this case, the earned fees will be claimed from the Vault and sent directly to the fee recipients.

IconDeep Dive

For a deeper understanding of how Vaults work under the hood — validator registration, withdrawals, rewards, MEV, and more — see the Concepts → section.

1. 0x01 and 0x02 refer to withdrawal credential types that determine validator capabilities: 0x01 validators (Type 1) use the current 32 ETH limit with automatic sweeps of excess balance, while 0x02 validators (Type 2) support higher effective balances up to 2048 ETH with compounding rewards and partial withdrawals. Converting from 0x01 to 0x02 is irreversible. By default, the 0x02 validators are registered. To register 0x01 validators, add the flag --validators-type=0x01.