CLI Cheatsheet
Key management
Add new key
gitopiad keys add wallet
Recover existing key
gitopiad keys add wallet --recover
List all keys
gitopiad keys list
Delete key
gitopiad keys delete wallet
Export key to the file
gitopiad keys export wallet
Import key from the file
gitopiad keys import wallet wallet.backup
Wallet balance
gitopiad q bank balances $(gitopiad keys show wallet -a)
Token management
Withdraw rewards from all validators
gitopiad tx distribution withdraw-all-rewards --from wallet --chain-id gitopia --gas-adjustment 1.4 --gas auto --gas-prices 0.001ulore -y
Withdraw rewards and commissions from your validator
gitopiad tx distribution withdraw-rewards $(gitopiad keys show wallet --bech val -a) --commission --from wallet --chain-id gitopia --gas-adjustment 1.4 --gas auto --gas-prices 0.001ulore -y
Delegate tokens to yourself
gitopiad tx staking delegate $(gitopiad keys show wallet --bech val -a) 1000000ulore --from wallet --chain-id gitopia --gas-adjustment 1.4 --gas auto --gas-prices 0.001ulore -y
Delegate tokens to validator
gitopiad tx staking delegate <TO_VALOPER_ADDRESS> 1000000ulore --from wallet --chain-id gitopia --gas-adjustment 1.4 --gas auto --gas-prices 0.001ulore -y
Redelegate tokens to another validator
gitopiad tx staking redelegate $(gitopiad keys show wallet --bech val -a) <TO_VALOPER_ADDRESS> 1000000ulore --from wallet --chain-id gitopia --gas-adjustment 1.4 --gas auto --gas-prices 0.001ulore -y
Unbond tokens from your validator
gitopiad tx staking unbond $(gitopiad keys show wallet --bech val -a) 1000000ulore --from wallet --chain-id gitopia --gas-adjustment 1.4 --gas auto --gas-prices 0.001ulore -y
Send tokens to the wallet
gitopiad tx bank send wallet <TO_WALLET_ADDRESS> 1000000ulore --from wallet --chain-id gitopia --gas-adjustment 1.4 --gas auto --gas-prices 0.001ulore -y
Validator management
Validator info
gitopiad status 2>&1 | jq .validator_info
Validator details
gitopiad q staking validator $(gitopiad keys show wallet --bech val -a)
Check if validator key is correct
[[ $(gitopiad q staking validator $(gitopiad keys show wallet --bech val -a) -oj | jq -r .consensus_pubkey.key) = $(gitopiad 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
gitopiad 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 all inactive validators
gitopiad q staking validators -oj --limit=3000 | 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
gitopiad 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 gitopia \ --commission-rate 0.05 \ --from wallet \ --gas-adjustment 1.4 \ --gas auto \ --gas-prices 0.001ulore \ -y
Jail reason
gitopiad query slashing signing-info $(gitopiad tendermint show-validator)
Unjail validator
gitopiad tx slashing unjail --from wallet --chain-id gitopia --gas-adjustment 1.4 --gas auto --gas-prices 0.001ulore -y
Governance
Create a new offer
gitopiad tx gov submit-proposal \ --title "" \ --description "" \ --deposit 10000000ulore \ --type Text --from wallet \ --gas-adjustment 1.4 \ --gas auto \ --gas-prices 0.001ulore \ -y
List all proposals
gitopiad query gov proposals
View proposal by ID
gitopiad query gov proposal 1
Vote “YES”
gitopiad tx gov vote 1 yes --from wallet --chain-id gitopia --gas-adjustment 1.4 --gas auto --gas-prices 0.001ulore -y
Vote “NO”
gitopiad tx gov vote 1 no --from wallet --chain-id gitopia --gas-adjustment 1.4 --gas auto --gas-prices 0.001ulore -y
Vote “ABSTAIN”
gitopiad tx gov vote 1 abstain --from wallet --chain-id gitopia --gas-adjustment 1.4 --gas auto --gas-prices 0.001ulore -y
Vote “NOWITHVETO”
gitopiad tx gov vote 1 NoWithVeto --from wallet --chain-id gitopia --gas-adjustment 1.4 --gas auto --gas-prices 0.001ulore -y
Maintenance
Get sync info
gitopiad status 2>&1 | jq .sync_info
Get node peer
echo $(gitopiad tendermint show-node-id)'@'$(wget -qO- eth0.me)':'$(cat $HOME/.gitopia/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')
Get live peers
curl -sS http://localhost:15457/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/.gitopia/config/config.toml
Set minimum gas price
sed -i -e "s|^minimum-gas-prices *=.*|minimum-gas-prices = \"0.001ulore\"|" $HOME/.gitopia/config/app.toml
Disable indexer
sed -i -e 's|^indexer *=.*|indexer = "null"|' $HOME/.gitopia/config/config.toml
Enable indexer
sed -i -e 's|^indexer *=.*|indexer = "kv"|' $HOME/.gitopia/config/config.toml
Update pruning
sed -i -e 's|^pruning *=.*|pruning = "custom"|' $HOME/.gitopia/config/app.tomlsed -i -e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' $HOME/.gitopia/config/app.tomlsed -i -e 's|^pruning-interval *=.*|pruning-interval = "19"|' $HOME/.gitopia/config/app.toml
Filter peers and max peers
sed -i -e 's|^filter_peers *=.*|filter_peers = "true"|' $HOME/.gitopia/config/config.tomlsed -i -e 's|^max_num_inbound_peers *=.*|max_num_inbound_peers = "50"|' $HOME/.gitopia/config/config.tomlsed -i -e 's|^max_num_outbound_peers *=.*|max_num_outbound_peers = "20"|' $HOME/.gitopia/config/config.toml
Update ports
CUSTOM_PORT=154sed -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/.gitopia/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/.gitopia/config/app.toml
Reset chain data
gitopiad tendermint unsafe-reset-all --keep-addr-book --home $HOME/.gitopia
Delete node
sudo systemctl stop gitopiadsudo systemctl disable gitopiadsudo rm -rf /etc/systemd/system/gitopiad.servicesudo systemctl daemon-reloadsudo rm -f $(which gitopiad)sudo rm -rf $HOME/.gitopiasudo rm -rf $HOME/gitopia
Service Management
Status service
sudo systemctl status gitopiad
Start service
sudo systemctl start gitopiad
Stop service
sudo systemctl stop gitopiad
Restart service
sudo systemctl restart gitopiad
Logs service
sudo journalctl -u gitopiad -f --no-hostname -o cat
Reload service
sudo systemctl daemon-reload
Enable service
sudo systemctl enable gitopiad
Disable service
sudo systemctl disable gitopiad