Setup and Installation
enid CLI
enid is a command-line tool for interacting with the ENI blockchain. This page will guide you through setting up Enid and introduce some basic commands to help you get started.
Prerequisites
Go 1.24+: Installation instructions can be found here.
Installation
To install enid, first find the version you wish to use here, then run the following commands:
git clone https://github.com/eni-chain/go-eni.git
cd go-eni
git checkout main
make install
You can verify that enid is installed correctly by running:
enid version
If you encounter an error like command not found: enid
, you may need to set the GOPATH
environment variable.
Use
go env GOPATH
to find yourGOPATH
Add the following lines to your
~/.bashrc
or~/.zshrc
:export GOPATH=[GOPATH obtained from step 1] export PATH=$PATH:$GOPATH/bin
More information can be found here.
Commands
enid supports all the commands necessary for interacting with the chain. To see a list of available commands and their descriptions, run enid
:
Start goeni node
Usage:
enid [command]
Available Commands:
blocktest run EF blocktest
comet CometBFT subcommands
completion Generate the autocompletion script for the specified shell
config Utilities for managing application configuration
debug Tool for helping with debugging your application
export Export state to JSON
genesis Application's genesis-related subcommands
help Help about any command
in-place-testnet Updates chain's application and consensus state with provided validator info and starts the node
init Initialize private validator, p2p, genesis, and application configuration files
keys Manage your application's keys
module-hash-by-height Get module hashes at a given height
multi-node Initialize config directories & files for a multi-validator testnet running locally via separate processes (e.g. Docker Compose or similar)
prune Prune app history states by keeping the recent heights and deleting old heights
query Querying subcommands
rollback rollback Cosmos SDK and CometBFT state by one height
snapshots Manage local snapshots
start Run the full node
status Query remote node for status
tx Transactions subcommands
version Print the application binary version information
Flags:
-h, --help help for enid
--home string directory for config and data (default "/Users/moses/.eni")
--log_format string The logging format (json|plain) (default "plain")
--log_level string The logging level (trace|debug|info|warn|error|fatal|panic|disabled or '*:<level>,<key>:<level>') (default "info")
--log_no_color Disable colored logs
--trace print out full stack trace on errors
Use "enid [command] --help" for more information about a command.
Adding a Wallet
You can create a new wallet using the enid keys
command:
enid keys add $NAME
Replace $NAME
with the name you want to use for this key. This will generate a mnemonic phrase and store the account in the CLI for use. Write down this mnemonic phrase and store it securely.
Alternatively, if you want to import an existing mnemonic phrase, you can add the --recover
flag:
enid keys add $NAME --recover
You will then be prompted to enter the mnemonic phrase.
If importing from an EVM wallet like MetaMask, you may need to specify the coin type. Ethereum-based (EVM) wallets use coin type 60
, while Eni defaults to 118
. For example,
enid keys add $NAME --coin-type=60
This will generate an address different from the default coin type 118
.
To view your local wallets, you can run
enid keys list
to see a list of all added wallets, or run
enid keys show $NAME
to view details of a specific wallet.
Last updated