Installing seid CLI
What is seid CLI?
The seid
CLI is the command-line tool for interacting with the Sei blockchain. It allows you to manage wallets, send transactions, query network data, and perform validator operations.
Prerequisites
- Go 1.23+: Installation instructions are available here .
Installation
To install seid, locate the version you wish to use here , and then execute the following commands:
git clone https://github.com/sei-protocol/sei-chain
cd sei-chain
git checkout v6.0.3
make install
You can verify that seid was installed correctly by running:
seid version
Troubleshooting Installation
If you encounter an error like command not found: seid
, you may need to set your GOPATH environment variable.
- Use
go env GOPATH
to find your GOPATH - Add the following lines to your
~/.bashrc
or~/.zshrc
:
export GOPATH=[your GOPATH from step 1]
export PATH=$PATH:$GOPATH/bin
For more information see here .
Command Overview
Seid supports all the commands you need to interact with the chain. To see a list of available commands and explanations of what they do, run seid:
seid
Start sei app
Usage:
seid [command]
Available Commands:
add-genesis-account Add a genesis account to genesis.json
add-wasm-genesis-message Wasm genesis subcommands
blocktest run EF blocktest
collect-gentxs Collect genesis txs and output a genesis.json file
compact Compact the application DB fully (only if it is a levelDB)
config Create or query an application CLI configuration file
debug Tool for helping with debugging your application
ethreplay replay EVM transactions
export Export state to JSON
gentx Generate a genesis tx carrying a self delegation
help Help about any command
init Initialize private validator, p2p, genesis, and application configuration files
keys Manage your application's keys
latest_version Prints the latest version of the app DB
migrate Migrate genesis to a specified target version
prune Prune app history states by keeping the recent heights and deleting old heights
query Querying subcommands
rollback rollback cosmos-sdk and tendermint state by one height
start Run the full node
status Query remote node for status
tendermint Tendermint subcommands
tools A set of useful tools for sei chain
tx Transactions subcommands
validate-genesis validates the genesis file at the default location or at the location passed as an arg
version Print the application binary version information
Flags:
-h, --help help for seid
--home string directory for config and data (default "/Users/shreyas/.sei")
--log_format string The logging format (json|plain)
--log_level string The logging level (trace|debug|info|warn|error|fatal|panic)
--trace print out full stack trace on errors
Use "seid [command] --help" for more information about a command.
Adding a Wallet
You can create a new wallet using the seid keys command:
seid keys add $NAME
Output:
- name: [YOUR_KEY_NAME]
type: local
address: sei1[GENERATED_ADDRESS]
evm_address: ""
pubkey: '{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"[PUBLIC_KEY]"}'
mnemonic: ""
**Important** write this mnemonic phrase in a safe place.
It is the only way to recover your account if you ever forget your password.
[YOUR_24_WORD_MNEMONIC_PHRASE]
Please replace $NAME
with the name you would like to use for this key. This will generate a seed phrase and store the account in the CLI for use.
Important: Write this mnemonic down and store it in a safe place. Never share your seed phrase with anyone.
Alternatively, if you would like to import an existing seed phrase, you can add the --recover
flag:
seid keys add $NAME --recover
Output:
This will prompt you to enter your seed phrase, allowing you to import an existing wallet into the CLI.
> Enter your bip39 mnemonic
[ENTER_YOUR_EXISTING_MNEMONIC_PHRASE_HERE]
- name: [YOUR_WALLET_NAME]
type: local
address: sei1[RECOVERED_ADDRESS]
evm_address: ""
pubkey: '{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"[PUBLIC_KEY]"}'
mnemonic: ""
EVM Wallet Compatibility
Understanding Coin Types
Sei supports two coin types:
- Coin type 118 (default): Standard Cosmos address format
- Coin type 60: Ethereum-compatible address format for EVM wallets
Creating an EVM-Compatible Wallet
To create a new wallet that’s compatible with EVM wallets like MetaMask:
seid keys add $NAME --coin-type=60
Output:
- name: [YOUR_KEY_NAME]
type: local
address: sei1[GENERATED_ADDRESS]
evm_address: ""
pubkey: '{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"[PUBLIC_KEY]"}'
mnemonic: ""
**Important** write this mnemonic phrase in a safe place.
It is the only way to recover your account if you ever forget your password.
[YOUR_24_WORD_MNEMONIC_PHRASE]
Importing an Existing EVM Wallet
To import an existing wallet from MetaMask or other EVM wallets:
seid keys add $NAME --coin-type=60 --recover
Output:
> Enter your bip39 mnemonic
> [ENTER_YOUR_EXISTING_MNEMONIC_PHRASE_HERE]
- name: [YOUR_WALLET_NAME]
type: local
address: sei1[RECOVERED_ADDRESS]
evm_address: ""
pubkey: '{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"[PUBLIC_KEY]"}'
mnemonic: ""
You’ll be prompted to enter your existing 12 or 24-word mnemonic phrase.
Use coin type 60 when you want to use the same address across EVM-compatible chains or import from MetaMask. Use the default coin type 118 for standard Cosmos operations.
Managing Wallets
To see your local wallets, you can run:
seid keys list
Output:
- name: [YOUR_WALLET_NAME]
type: local
address: sei1[WALLET_ADDRESS]
evm_address: [EVM_ADDRESS]
pubkey: '{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"[PUBLIC_KEY]"}'
mnemonic: ""
...
to see a list of all wallets added, or
seid keys show $NAME
Output:
- name: [YOUR_WALLET_NAME]
type: local
address: sei1[WALLET_ADDRESS]
evm_address: [EVM_ADDRESS]
pubkey: '{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"[PUBLIC_KEY]"}'
mnemonic: ""
to see details about a specific wallet.
Deleting Wallets
To delete a wallet/key, you can use the following command:
seid keys delete $NAME
Output:
Key reference will be deleted. Continue? [y/N]: y
Key deleted forever (uh oh!)
This will remove the specified wallet from your local keyring. Be cautious, as this action cannot be undone.
Uninstalling seid
If you need to remove seid
from your system, you can delete the binary from your $GOPATH/bin
directory:
rm $(go env GOPATH)/bin/seid