Mainnet Gasp AVS Registry Contract: 0x9A986296d45C327dAa5998519AE1B3757F1e6Ba1 Testnet Gasp AVS Registry Contract: 0xb4dd45a08BFA6fBC19F7cD624cdfef87CE95e7AC
- Docker installed
- Eigenlayer CLI installed
NOTE: For any Docker based commands, if you have installed as root then you might have to append
sudo
in front of the command.
- Allowing the embedded Gasp rollup-node to sync
- Register your operator to eigenlayer using Eigenlayer CLI
- Deposit your stake at Eigenlayer App, see Eigenlayer stake guide for more info
AVS supports [ankrETH, mETH, stETH, ETHx, osETH, sfrxETH, rETH, WETH] tokens provided by EigenLayer, with minimum of10 ETH
total stake for operator registration Max operators count is currently limited to 50, first come first served. Operators are required to run their nodes with provided docker image. If a registered operator does not provide responses, an automatic check will eventually eject them from the AVS operators active list. Operator stakes are updated regularly, if the stake drops below minimum required stake, operator will be ejected.
The easiest way to set up is to clone the repo and follow the instructions below.
Deposit stake into eigenlayer using the Eigenlayer App and register on eigenlayer using the Eigenlayer Cli
Please save the keys generated/used in this step - they will be required
Clone this repo and execute the following commands:
git clone https://github.com/gasp-xyz/avs-operator-setup.git
cd avs-operator-setup
Copy the .env.mainnet
or .env.testnet
file to .env
file depending on the network where you plan to run gasp-avs
operator.
Update the TODO
section in the .env
file given in the root directory of the repository with your own details
We need the target Gasp node synced to the Gasp blockchain network before the operator can function. To do this simply run the operator and it will wait for the Gasp node to sync before proceeding.
docker compose up -d
Once the sync has completed, the operator will check the regsitration of the operator with the avs. Avs registration (opt-in) is different from the Eigenlayer registration. Since we haven't performed the avs registration yet, the operator will request you to complete avs registration first before proceeding (you can check the operator logs with docker compose logs -f
).
Now stop the operator with:
docker compose down
It is recomended that the sync completes before you register with the avs - since you may get kicked for inactivity while the node is syncing
NOTE: Operator registration may be temporarily paused by the Gasp team. If you receive an error message saying "Pausable: index is paused", please wait for an announcement when registration is reopened.
# To register with the avs run the opt-in command
docker compose run --rm gasp-avs /app/gasp-avs opt-in-avs
# Start the operator
docker compose up -d
# Check the logs
docker compose logs -f
# Check `gasp-avs` status
docker compose exec gasp-avs /app/gasp-avs print-status
docker compose down
# You may also need to remove the `rollup-node` stored data
# You can do this by running the following command:
# docker compose down -v
docker compose exec gasp-avs /app/gasp-avs opt-out
Upgrade the AVS software for your gasp-avs
operator service setup by following the steps below:
cd avs-operator-setup
git pull
docker compose up -d