Wallet operations
Create wallet
⚠️ store seed phrase, important during recovering
andromedad keys add <YOUR_WALLET_NAME>
Recover wallet
⚠️ store seed phrase, important during recovering
andromedad keys add <YOUR_WALLET_NAME> --recover
List of all wallets
Delete wallet
andromedad keys delete <YOUR_WALLET_NAME>
Export wallet
⚠️ save to wallet.backup
andromedad keys export <YOUR_WALLET_NAME>
Import wallet
andromedad keys import <WALLET_NAME> wallet.backup
Check wallet balance
andromedad q bank balances $(andromedad keys show <YOUR_WALLET_NAME> -a)
Validator operations
Create validator
andromedad tx staking create-validator \
--amount=1000000uandr \
--pubkey=$(andromedad tendermint show-validator) \
--moniker="<Your moniker>" \
--identity=<Your identity> \
--details="<Your details>" \
--chain-id=galileo-3 \
--commission-rate=0.05 \
--commission-max-rate=0.20 \
--commission-max-change-rate=0.1 \
--min-self-delegation=1 \
--from=<YOUR_WALLET> \
--gas-prices=0.001uandr \
--gas-adjustment=1.4 \
--gas=auto \
-y
Edit validator
andromedad tx staking edit-validator \
--new-moniker="<Your moniker>" \
--identity=<your identity> \
--details="<Your details>" \
--commission-rate=0.1 \
--from=<YOUR_WALLET> \
--gas-prices=0.001uandr \
--gas-adjustment=1.4 \
--gas=auto \
-y
Unjail your validator
andromedad tx slashing unjail --from <YOUR_WALLET> --gas-prices 0.001uandr --gas-adjustment 1.4 --gas auto -y
Check blocks info processed by your validator
andromedad query slashing signing-info $(andromedad tendermint show-validator)
List of active validators
andromedad q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl
List of inactive validators
andromedad q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_UNBONDED") or .status=="BOND_STATUS_UNBONDING")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl
Info about your validator
andromedad q staking validator $(andromedad keys show <YOUR_WALLET_NAME> --bech val -a)
Transactions
Get your rewards from all validators
andromedad tx distribution withdraw-all-rewards --from <YOUR_WALLET> --gas-prices 0.001uandr --gas-adjustment 1.4 --gas auto -y
Get rewards and commissions from your validator
andromedad tx distribution withdraw-rewards $(andromedad keys show <YOUR_WALLET_NAME> --bech val -a) --commission --from <YOUR_WALLET> --gas-prices 0.001uandr --gas-adjustment 1.4 --gas auto -y
Delegate tokens to your validator
andromedad tx staking delegate $(andromedad keys show <YOUR_WALLET_NAME> --bech val -a) 1000000uandr --from <YOUR_WALLET> --gas-prices 0.001uandr --gas-adjustment 1.4 --gas auto -y
Delegate tokens to validator
andromedad tx staking delegate <VALOPER_ADDRESS> 1000000uandr --from <YOUR_WALLET> --gas-prices 0.001uandr --gas-adjustment 1.4 --gas auto -y
Redelegate tokens to another validator
andromedad tx staking redelegate <SRC_VALOPER_ADDRESS> <TARGET_VALOPER_ADDRESS> 1000000uandr --from <WALLET> --gas-prices 0.001uandr --gas-adjustment 1.4 --gas auto -y
Unbound tokens from validator
⚠️ it’s can take a while, ~21 days, depends on network’s parameters
andromedad tx staking unbond <VALOPER_ADDRESS> 1000000uandr --from <YOUR_WALLET> --gas-prices 0.001uandr --gas-adjustment 1.4 --gas auto -y
Send tokens to another wallet
andromedad tx bank send <YOUR_WALLET_ADDRESS> <TARGET_WALLET_ADDRESS> 1000000uandr --from <YOUR_WALLET_ADDRESS> --gas-prices 0.001uandr --gas-adjustment 1.4 --gas auto -y
Check info about transaction by hash TX_HASH
andromedad query tx <TX_HASH>
Governance
Submit text proposal
andromedad tx gov submit-proposal \
--title="<Your Title>" \
--description="<Your Description>" \
--deposit=1000000uandr \
--type="Text" \
--from=<WALLET_ADDRESS> \
--gas-prices=0.001uandr \
--gas-adjustment=1.4 \
--gas=auto \
-y
List of all proposals
andromedad query gov proposals
Check proposal info by proposal id
andromedad query gov proposal <proposal_id>
Deposit proposal by proposal id
andromedad tx gov deposit 1 1000000uandr --from <YOUR_WALLET> --gas-prices 0.001uandr --gas-adjustment 1.4 --gas auto -y
Vote as, YES
andromedad tx gov vote 1 yes --from <YOUR_WALLET> --gas-prices 0.001uandr --gas-adjustment 1.4 --gas auto -y
Vote as, NO
andromedad tx gov vote 1 no --from <YOUR_WALLET> --gas-prices 0.001uandr --gas-adjustment 1.4 --gas auto -y
Vote as, NO_WITH_VETO
andromedad tx gov vote 1 no_with_veto --from <YOUR_WALLET> --gas-prices 0.001uandr --gas-adjustment 1.4 --gas auto -y
Vote as, ABSTAIN
andromedad tx gov vote 1 abstain --from <YOUR_WALLET> --gas-prices 0.001uandr --gas-adjustment 1.4 --gas auto -y
Utils
Change ports to custom
sed -i.bak -e "s%^proxy_app = \"tcp://127.0.0.1:26658\"%proxy_app = \"tcp://127.0.0.1:36658\"%; s%^laddr = \"tcp://127.0.0.1:26657\"%laddr = \"tcp://127.0.0.1:36657\"%; s%^pprof_laddr = \"localhost:6060\"%pprof_laddr = \"localhost:7060\"%; s%^laddr = \"tcp://0.0.0.0:26656\"%laddr = \"tcp://0.0.0.0:36656\"%; s%^prometheus_listen_addr = \":26660\"%prometheus_listen_addr = \":36660\"%" $HOME/.andromedad/config/config.toml && \
sed -i.bak -e "s%^address = \"0.0.0.0:9090\"%address = \"0.0.0.0:10090\"%; s%^address = \"0.0.0.0:9091\"%address = \"0.0.0.0:10091\"%; s%^address = \"tcp://0.0.0.0:1317\"%address = \"tcp://0.0.0.0:2317\"%" $HOME/.andromedad/config/app.toml && \
sed -i.bak -e "s%^node = \"tcp://localhost:26657\"%node = \"tcp://localhost:36657\"%" $HOME/.andromedad/config/client.toml
Turn on indexing
sed -i 's|^indexer *=.*|indexer = "kv"|' $HOME/.andromedad/config/config.toml
Turn off indexing
sed -i 's|^indexer *=.*|indexer = "null"|' $HOME/.andromedad/config/config.toml
Setup custom prunning
APP_TOML="~/.andromedad/config/app.toml"
sed -i 's|^pruning *=.*|pruning = "custom"|' $APP_TOML
sed -i 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' $APP_TOML
sed -i 's|^pruning-keep-every *=.*|pruning-keep-every = "0"|' $APP_TOML
sed -i 's|^pruning-interval *=.*|pruning-interval = "10"|' $APP_TOML
Check your peer
echo $(andromedad tendermint show-node-id)@$(curl http://ifconfig.me/)$(grep -A 3 "\[p2p\]" ~/.andromedad/config/config.toml | egrep -o ":[0-9]+")
Check your RPC
echo -e "\033[0;32m$(grep -A 3 "\[rpc\]" ~/.andromedad/config/config.toml | egrep -o ":[0-9]+")\033[0m"
Check information about validator
andromedad status 2>&1 | jq .ValidatorInfo
Check synchronisation status (false - synced, true - not synced)
andromedad status 2>&1 | jq .SyncInfo.catching_up
Check the latest block
andromedad status 2>&1 | jq .SyncInfo.latest_block_height
Reset network
andromedad tendermint unsafe-reset-all --home $HOME/.andromedad --keep-addr-book
Delete node
sudo systemctl stop andromedad && \
sudo systemctl disable andromedad && \
sudo rm /etc/systemd/system/andromedad.service && \
sudo systemctl daemon-reload && \
rm -rf $HOME/.andromedad && \
rm -rf $HOME/andromedad
Check IP address of the server
Check network parameters
andromedad q staking params
andromedad q slashing params
Check validator private key is correct
[[ $(andromedad q staking validator $(andromedad keys show <YOUR_WALLET> --bech val -a) -oj | jq -r .consensus_pubkey.key) = $(andromedad 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"
Search all output transactions by address
andromedad q txs --events transfer.sender=<ADDRESS> 2>&1 | jq | grep txhash
Search all input transactions by address
andromedad q txs --events transfer.recipient=<ADDRESS> 2>&1 | jq | grep txhash
Service management
Reload services
sudo systemctl daemon-reload
Enable service
sudo systemctl enable andromedad
Disable service
sudo systemctl disable andromedad
Start service
sudo systemctl start andromedad
Stop service
sudo systemctl stop andromedad
Restart service
sudo systemctl restart andromedad
Check service status
sudo systemctl status andromedad
Check service logs
sudo journalctl -u andromedad -f -o cat
Last updated