For a complete list of contract addresses used in this guide, see the Contract Addresses page.

1. Register as EigenLayer Operator

Before you register into Taiyi protocol, you need to register as an EigenLayer operator first. Please follow the EigenLayer Operator Registration Guide to register as an EigenLayer operator.

2. Register as Taiyi Validator AVS Operator

After register as an EigenLayer operator, register yourself into the Taiyi protocol as an Taiyi Validator AVS Operator. This step establishes your operator identity in the taiyi validator avs protocol.

Source: EigenLayer AVS Book - Operators

taiyi-cli register-validator-avs \
  --execution-rpc-url https://ethereum-holesky.publicnode.com \
  --salt 0x0000000000000000000000000000000000000000000000000000000000000000 \
  --avs-directory-address <AVS_DIRECTORY_ADDRESS> \
  --taiyi-avs-address <TAIYI_VALIDATOR_AVS_ADDRESS> \
  --private-key <PRIVATE_KEY> 

You can find the Holesky deployed addresses in Contract Addresses:

  • AVS Directory: 0x055733000064333CaDDbC92763c58BF0192fFeBf
  • Taiyi Validator AVS: 0x366C3A3adcB7a6442B1A93Ddf1bAE039652A72b7

This command:

  1. Creates a registration signature with the AVS Directory
  2. Registers your operator address with Taiyi AVS
  3. Links your stake to the Taiyi service

3. Register Validators

After registering as an Operator, you can register your validator keys to the Taiyi service. This allows your validator to participate in the preconf game.

taiyi-cli register-validators \
  --execution-rpc-url https://ethereum-holesky.publicnode.com \
  --private-key <YOUR_PRIVATE_KEY> \
  --taiyi-validator-avs-address <TAIYI_VALIDATOR_AVS_ADDRESS> \
  --validator-pubkeys 0xkey1,0xkey2,... \
  --pod-owners 0xpodOwner1,0xpodOwner2,... \
  --delegated-gateways b2796db1455143b39c4b6104dddbaf3fdca059009b9df3f61c729bac81cadd355fcc3fc61f5185a4748eb3bf298c0ad9,b2796db1455143b39c4b6104dddbaf3fdca059009b9df3f61c729bac81cadd355fcc3fc61f5185a4748eb3bf298c0ad9,... \

The validator pubkeys should be your holesky validator’s pubkey.

If you have your validators already staking in network, you can use the existing validator keys to register with pod-owners 0x0000000000000000000000000000000000000000.

If you have your validators alread natively staking in eigenlayer, you can use the existing validator keys to register with your own eigenlayer pod address.

We don’t support register as gateway avs operator right now,so make sure to delegated your preconf rights to luban holesky gateway pubkey: b2796db1455143b39c4b6104dddbaf3fdca059009b9df3f61c729bac81cadd355fcc3fc61f5185a4748eb3bf298c0ad9

4. Delegate Validator Keys

Finally, delegate your validator keys to the Taiyi Gateway. This allows your validator to participate in the network.

Source: Preconfirmations API Specification

taiyi-cli delegate \
  --relay-url https://relay.holesky.luban.wtf \
  --gateway-pubkey b2796db1455143b39c4b6104dddbaf3fdca059009b9df3f61c729bac81cadd355fcc3fc61f5185a4748eb3bf298c0ad9 \
  --network holesky \
  local-keystore \
  --path /path/to/validators \
  --password-path /path/to/secrets

For additional key source options and detailed usage of the delegate command, see the Taiyi CLI Delegate Command documentation.

This step follows the /constraints/v0/builder/delegate endpoint specification from the Preconfirmations API to perform the gateway delegation. The process involves:

  1. Proposer (your validator) electing the Gateway through delegation
  2. Gateway managing preconfirmation constraints
  3. Relay coordinating between proposer, gateway, and builder
  4. Builder receiving constraints and submitting compliant blocks

4. Verification

Verify whether your operator is registered in the Taiyi Validator AVS protocol:

  1. Check your stake:
taiyi-cli operator-info \
    --execution-rpc-url <EXECUTION_URL> \
    --operator-address <VALIDATOR_OPERATOR_ADDRESS> \
    --proposer-registry-address <TAIYI_PROPOSER_REGISTRY_ADDRESS> \
    --avs-type validator

You can find the Holesky deployed addresses in Contract Addresses:

  • Proposer Registry: 0xa76819916Aa1189c5AF70778177A932A01F948EB
  1. Verify your validatos are registered in the Taiyi Validator AVS protocol:
taiyi-cli get-validators-for-operators \
    --execution-rpc-url <EXECUTION_URL> \
    --operator-address <VALIDATOR_OPERATOR_ADDRESS> \
    --proposer-registry-address <TAIYI_PROPOSER_REGISTRY_ADDRESS>

You can find the Holesky deployed addresses in Contract Addresses:

  • Proposer Registry: 0xa76819916Aa1189c5AF70778177A932A01F948EB

5. Deposit WETH to EigenLayer Strategy

Before depositing into the EigenLayer strategy contract, ensure you have sufficient WETH tokens in your account. You can check your WETH balance on Holesky testnet at Etherscan.

To check your balance:

  1. Go to the WETH contract on Etherscan
  2. Navigate to the “Read Contract” tab
  3. Find the balanceOf function
  4. Enter your wallet address
  5. Click “Query” to see your balance

If you need to acquire WETH:

  1. First obtain some Holesky ETH from a faucet
  2. Convert your ETH to WETH by interacting with the WETH contract

First, you need to deposit WETH into the EigenLayer strategy contract. This stake serves as collateral for your node’s operations.

Source: EigenLayer AVS Book - Stakers

# Convert ETH to WETH first if needed
# Then approve and deposit WETH
taiyi-cli deposit \
  --execution-rpc-url https://ethereum-holesky.publicnode.com \
  --strategy-address <WETH_STRATEGY_ADDRESS> \
  --amount <AMOUNT> \
  --private-key <YOUR_PRIVATE_KEY> \
  --strategy-manager-address <STRATEGY_MANAGER_ADDRESS>

You can find the Holesky deployed addresses in Contract Addresses:

  • WETH Strategy: 0x80528D6e9A2BAbFc766965E0E26d5aB08D9CFaF9
  • Strategy Manager: 0xdfB5f6CE42aAA7830E94ECFCcAd411beF4d4D5b6

This command:

  1. Approves the Strategy Manager to spend your WETH
  2. Deposits WETH into the EigenLayer strategy
  3. Records your stake in the protocol