CLI Cheatsheet
Key management
Add new key
emped keys add wallet
Recover existing key
emped keys add wallet --recover
List all keys
emped keys list
Delete key
emped keys delete wallet
Export key to the file
emped keys export wallet
Import key from the file
emped keys import wallet wallet.backup
Wallet balance
emped q bank balances $(emped keys show wallet -a)
Token management
Withdraw rewards from all validators
emped tx distribution withdraw-all-rewards --from wallet --chain-id empe-testnet-2 --fees=20uempe -y
Withdraw rewards and commissions from your validator
emped tx distribution withdraw-rewards $(emped keys show wallet --bech val -a) --commission --from wallet --chain-id empe-testnet-2 --fees=20uempe -y
Delegate tokens to yourself
emped tx staking delegate $(emped keys show wallet --bech val -a) 1000000uempe --from wallet --chain-id empe-testnet-2 --fees=20uempe -y
Delegate tokens to validator
emped tx staking delegate <TO_VALOPER_ADDRESS> 1000000uempe --from wallet --chain-id empe-testnet-2 --fees=20uempe -y
Redelegate tokens to another validator
emped tx staking redelegate $(emped keys show wallet --bech val -a) <TO_VALOPER_ADDRESS> 1000000uempe --from wallet --chain-id empe-testnet-2 --fees=20uempe -y
Unbond tokens from your validator
emped tx staking unbond $(emped keys show wallet --bech val -a) 1000000uempe --from wallet --chain-id empe-testnet-2 --fees=20uempe -y
Send tokens to the wallet
emped tx bank send wallet <TO_WALLET_ADDRESS> 1000000uempe --from wallet --chain-id empe-testnet-2 --fees=20uempe -y
Validator management
Validator info
emped status 2>&1 | jq .validator_info
Validator details
emped q staking validator $(emped keys show wallet --bech val -a)
Check if validator key is correct
[[ $(emped q staking validator $(emped keys show wallet --bech val -a) -oj | jq -r .consensus_pubkey.key) = $(emped status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "\n\e[1m\e[32mTrue\e[0m\n" || echo -e "\n\e[1m\e[31mFalse\e[0m\n"
List all active validators
emped q staking validators -oj --limit=1000 | jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl
List all inactive validators
emped q staking validators -oj --limit=1000 | jq '.validators[] | select(.status=="BOND_STATUS_UNBONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl
Edit existing validator
emped tx staking edit-validator \ --new-moniker "YOUR_MONIKER_NAME" \ --identity "YOUR_KEYBASE_ID" \ --details "YOUR_DETAILS" \ --website "YOUR_WEBSITE_URL" \ --security-contact "YOUR_EMAIL_ADDRESS" \ --chain-id empe-testnet-2 \ --commission-rate 0.05 \ --from wallet \ --fees=20uempe \ -y
Jail reason
emped query slashing signing-info $(emped tendermint show-validator)
Unjail validator
emped tx slashing unjail --from wallet --chain-id empe-testnet-2 --fees=20uempe -y
Governance
Create a new offer
emped tx gov submit-proposal \ --title "" \ --description "" \ --deposit 10000000uempe \ --type Text --from wallet \ --fees=20uempe \ -y
List all proposals
emped query gov proposals
View proposal by ID
emped query gov proposal 1
Vote “YES”
emped tx gov vote 1 yes --from wallet --chain-id empe-testnet-2 --fees=20uempe -y
Vote “NO”
emped tx gov vote 1 no --from wallet --chain-id empe-testnet-2 --fees=20uempe -y
Vote “ABSTAIN”
emped tx gov vote 1 abstain --from wallet --chain-id empe-testnet-2 --fees=20uempe -y
Vote “NOWITHVETO”
emped tx gov vote 1 NoWithVeto --from wallet --chain-id empe-testnet-2 --fees=20uempe -y
Maintenance
Get sync info
emped status 2>&1 | jq .sync_info
Get node peer
echo $(emped tendermint show-node-id)'@'$(wget -qO- eth0.me)':'$(cat $HOME/.empe-chain/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')
Get live peers
curl -sS http://localhost:12057/net_info | jq -r '.result.peers[] | "\(.node_info.id)@\(.remote_ip):\(.node_info.listen_addr)"' | awk -F ':' '{print $1":"$(NF)}'
Enable Prometheus
sed -i -e "s/prometheus = false/prometheus = true/" $HOME/.empe-chain/config/config.toml
Set minimum gas price
sed -i -e "s|^minimum-gas-prices *=.*|minimum-gas-prices = \"0.0001uempe\"|" $HOME/.empe-chain/config/app.toml
Disable indexer
sed -i -e 's|^indexer *=.*|indexer = "null"|' $HOME/.empe-chain/config/config.toml
Enable indexer
sed -i -e 's|^indexer *=.*|indexer = "kv"|' $HOME/.empe-chain/config/config.toml
Update pruning
sed -i -e 's|^pruning *=.*|pruning = "custom"|' $HOME/.empe-chain/config/app.tomlsed -i -e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' $HOME/.empe-chain/config/app.tomlsed -i -e 's|^pruning-interval *=.*|pruning-interval = "19"|' $HOME/.empe-chain/config/app.toml
Filter peers and max peers
sed -i -e 's|^filter_peers *=.*|filter_peers = "true"|' $HOME/.empe-chain/config/config.tomlsed -i -e 's|^max_num_inbound_peers *=.*|max_num_inbound_peers = "50"|' $HOME/.empe-chain/config/config.tomlsed -i -e 's|^max_num_outbound_peers *=.*|max_num_outbound_peers = "20"|' $HOME/.empe-chain/config/config.toml
Update ports
CUSTOM_PORT=120sed -i -e "s%^proxy_app = \"tcp://127.0.0.1:26658\"%proxy_app = \"tcp://127.0.0.1:${CUSTOM_PORT}58\"%; s%^laddr = \"tcp://127.0.0.1:26657\"%laddr = \"tcp://127.0.0.1:${CUSTOM_PORT}57\"%; s%^pprof_laddr = \"localhost:6060\"%pprof_laddr = \"localhost:${CUSTOM_PORT}60\"%; s%^laddr = \"tcp://0.0.0.0:26656\"%laddr = \"tcp://0.0.0.0:${CUSTOM_PORT}56\"%; s%^prometheus_listen_addr = \":26660\"%prometheus_listen_addr = \":${CUSTOM_PORT}66\"%" $HOME/.empe-chain/config/config.tomlsed -i -e "s%^address = \"tcp://0.0.0.0:1317\"%address = \"tcp://0.0.0.0:${CUSTOM_PORT}17\"%; s%^address = \":8080\"%address = \":${CUSTOM_PORT}80\"%; s%^address = \"0.0.0.0:9090\"%address = \"0.0.0.0:${CUSTOM_PORT}90\"%; s%^address = \"0.0.0.0:9091\"%address = \"0.0.0.0:${CUSTOM_PORT}91\"%" $HOME/.empe-chain/config/app.toml
Reset chain data
emped tendermint unsafe-reset-all --home $HOME/.empe-chain --keep-addr-book
Delete node
sudo systemctl stop empedsudo systemctl disable empedsudo rm -rf /etc/systemd/system/emped.servicesudo systemctl daemon-reloadsudo rm -f $(which emped)sudo rm -rf $HOME/.empe-chainsudo rm -rf $HOME/empe-chain
Service Management
Status service
sudo systemctl status emped
Start service
sudo systemctl start emped
Stop service
sudo systemctl stop emped
Restart service
sudo systemctl restart emped
Logs service
sudo journalctl -u emped -f --no-hostname -o cat
Reload service
sudo systemctl daemon-reload
Enable service
sudo systemctl enable emped
Disable service
sudo systemctl disable emped