The Starknet Staking v2 validator
The easiest way to get started is by downloading pre-compiled binaries from the release page.
1. Visit the releases page
2. Download the appropriate binary for your operating system
cd $HOME
wget https://github.com/NethermindEth/starknet-staking-v2/releases/download/v0.2.9/starknet-staking-v2_v0.2.9_Linux_x86_64.tar.gz
tar -xzvf starknet-staking-v2_v0.2.9_Linux_x86_64.tar.gz
3. Make the binary executable (on Unix systems):
chmod +x validator
mv validator /usr/local/bin/validator
4. Create validator config.json
mkdir -P $HOME/.validator
nano $HOME/.validator/config.json
{
"provider": {
"http": "http://127.0.0.1:6060/v0_8",
"ws": "ws://127.0.0.1:6061/v0_8"
},
"signer": {
"operationalAddress": "0x0...",
"privateKey": "0x0..."
}
}
5. Create Validator service
sudo tee /etc/systemd/system/starknet-validator.service > /dev/null << EOF
[Unit]
Description=Starknet Attestation Validator
After=network-online.target
[Service]
User=$USER
ExecStart=$(which validator) \
--metrics --metrics-host "0.0.0.0" --metrics-port "9091" \
--config $HOME/.validator/config.json \
--log-level trace
Restart=always
RestartSec=5
LimitNOFILE=50000
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable starknet-validator
sudo systemctl start starknet-validator
journalctl -fu starknet-validator -o cat
6. Check the logs:
22:19:07.550 19/10/2025 +07:00 INFO validator/dispatcher.go:261 successfully attested to target block {"target block hash": "0x1f8cbee03e13e0f88cbd
8371da2a4cf66b74ca10d1b2148782cf09c3e3b2c0e"}
22:19:07.550 19/10/2025 +07:00 DEBUG metrics/metrics.go:207 RecordAttestationConfirmed