AVS Operator Guide

Currently, the operator's flow consists of two parallel actions: running the operator node and explicitly sending transactions to share intentions with the protocol (either to become an active validator or to end validation and safely exit the validators pool). In the future, we could consider automating the emission of explicit transactions as part of the executor node function.

Running executor:

  1. Download a binary

  2. Set environment (export private key to OPERATOR_PRIVATE_KEY env)

  3. Launch a binary as ./bin/operator run --node-url <node_url> --contract-addr <contract_addr>

  4. Send a transaction notifying others you want to be included into the pool for task assignment: ./bin/operator register --node-url <node_url> --contract-addr <contract_addr>

  5. Wait until rearrangement happens (epoch increment). Firstly, you’ll observe not executor messages, then it will become either Not my turn to execute or info about active workflows in case if it is your turn. You’re now in forever loop, being a part of executors network.

  6. When you want to leave, you have to send unregister transaction, precedure is the same: ./bin/operator run --node-url <node_url> --contract-addr <contract_addr>

Currently, the application is stateless and does not require runtime libraries. As such, you can run it bare-metal without affecting your system or encountering dependency issues. We also offer a containerized version, which functions identically but differs in command passing. This alternative may be more comfortable for some users.

Last updated