⚡Quick Start
Instructions for installing the Othentic CLI and deploy a demo AVS.
Prerequisites
Node v22.6.0⚠️ and NPM, via NVM
Foundry (see Foundry Book for instructions)
Docker & docker-compose (see Docker website for instructions based on your OS)
Install the Othentic CLI
Installing Othentic CLI with npm
:
Verify installation by the command:
The outcome should be similar to:
✅ CLI installation is completed.
Demo AVS
Configure, deploy, and run a demo AVS.
Prerequisites
For the purposes of the demo AVS, you need to register 3 self-deploy Operators with 0.01 stETH.
Operator account x 3 (Script):
At least 0.02 holETH on Holesky
ERC-20 token address
Othentic CLI
First, update the Othentic CLI:
It’s recommended to keep your Othentic CLI up-to-date as new features and fixes are released frequently.
Prepare Simple Price Oracle Example
Download the Simple Price Oracle Example repository:
From here onward, we assume all commands run from the root of the Simple Price Oracle Example directory.
Github repo - https://github.com/Othentic-Labs/simple-price-oracle-avs-example
Environment file
For the deployment, we need to set the Deployer account’s private key in the .env
file:
Make sure the Deployer account has at least ~1.5 holETH
Contracts deployment
To deploy the AVS’s on-chain components, run the following command:
By default, Othentic CLI deploys your contracts on Holesky and Amoy. To deploy on different chains, you’d need to configure specific environment variables. Consult the Othentic team for more information.
Find the Contracts Deployment for more information.
Operators Architecture Overview
Othentic does not run any network on its own. The Othentic CLI helps you build your own AVS on top of the Othentic Stack.
Operators Setup
For the purposes of the demo, you need to register 3 internal Operators with 0.01 stETH.
In order to run the AVS Operators, it is required to setup their corresponding Ethereum accounts with the necessary metadata and shares on EigenLayer, and register as an AVS-specific Operator using auto-generated BLS key.
Utility script for creating an account [Optional]
If you do not have existing accounts to use as Operators, you can use this script to create & fund an account on Holesky:
You can either run the script using sh <script-path>
or
make the script executable with chmod a+x <script-path>
then run it with ./<script-path>
Register as an operator for both EigenLayer and the AVS
Convert ETH into stETH [Optional]
If you lack the funds in stETH, use the following command instead. This command converts 0.012 ETH into stETH before depositing it into EigenLayer pool:
Activate your Operator by depositing into EigenLayer
Deposit 0.01 stETH into EigenLayer pool.
✅ Your internal Operators are now ready to opt-in to your AVS.
Running an AVS
Let's run the demo AVS inside the simple-price-oracle-avs-example
directory.
Configuration
First, configure additional environment variables by running the following command to print your contract addresses in .env
format:
Fill in your .env file with the following variables:
For the demo AVS purpose, it is recommended that attesters’ private keys be used as values for performer and aggregator private keys.
If you've deployed your contracts on chains other than the defaults, make sure to set the corresponding environment variables.
Running the Network
The docker-compose configuration sets up the following:
Aggregator node
3 Attester nodes
Validation service endpoint
Execution service endpoint
Sync shares service
If you wish to rebuild existing images, update the Othentic CLI inside the docker images:
Executing a task
To execute a task we send a POST
request to the Task Performer service:
✅ Your demo AVS is completed.
Last updated