Skip to main content

CLI Cheatsheet

This cheatsheet collects commonly used CLI commands for node operators to easily copy and paste. A few conventions we follow:

  • Capitalized words indicate placeholders
  • Always specify --chain-id and --node flags even when they are unnecessary
  • Query CLI command always uses --output json flag and pipes result through jq

Managing keys

Check balance
provenanced q bank balances KEY
Create wallet
provenanced keys add KEY
Import wallet
provenanced keys add KEY --recover
List wallets
provenanced keys list
Delete wallet
provenanced keys delete KEY

Validators

Create validator
provenanced tx staking create-validator \
--amount=1000000nhash \
--pubkey=$(pio-mainnet-1 tendermint show-validator) \
--moniker=YOURMONIKER \
--identity=YOUR_KEYBASE_ID \
--details="This is will be display in the blockchain explorer. Write here something about you" \
--chain-id=pio-mainnet-1 \
--commission-rate=0.10 \
--commission-max-rate=0.20 \
--commission-max-change-rate=0.01 \
--min-self-delegation=1 \
--from=KEY \
--gas-prices=0.1nhash \
--gas-adjustment=1.5 \
--gas=auto \
-y
Edit validator
provenanced tx staking edit-validator \
--new-moniker=YOUR_MONIKER \
--identity=YOUR_KEYBASE_ID \
--details="This is will be display in the blockchain explorer. Write here something about you" \
--chain-id=pio-mainnet-1 \
--commission-rate=0.1 \
--from=KEY \
--gas-prices=0.1nhash \
--gas-adjustment=1.5 \
--gas=auto \
-y
Unjail validator
provenanced tx slashing unjail --chain-id=pio-mainnet-1 --from KEY  --gas-prices=0.1nhash --gas=auto -y
Validator info
provenanced q staking validator $(provenanced keys show KEY --bech val -a)

Governance

Query proposal
provenanced query gov proposal PROPOSAL_NUMBER --chain-id=pio-mainnet-1  --output json | jq

VOTE_OTION: yes, no, no_with_veto and abstain.

Vote proposal
provenanced tx gov vote PROPOSAL_NUMBER VOTE_OTION --from KEY --chain-id pio-mainnet-1 

Tokens

Send token
provenanced tx bank send WALLET_SENDER WALLET_RECEIVER 1000000nhash --chain-id=pio-mainnet-1 --gas-prices=0.1nhash --gas=auto
Withdraw reward
provenanced tx distribution withdraw-all-rewards --from KEY
Withdraw reward and commission
provenanced tx distribution withdraw-rewards YOUR_VALIDATOR_NUMBER --from KEY --commission --gas-prices=0.1nhash --gas=auto

Config

Use custom port
CUSTOM_PORT=267
sed -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/.provenanced/config/config.toml
sed -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/.provenanced/config/app.toml
Set minimum gas prices
sed -i -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0nhash\"/" $HOME/.provenanced/config/app.toml
Enable prometheus
sed -i -e "s/prometheus = false/prometheus = true/" $HOME/.provenanced/config/config.toml
Reset chain data
provenanced tendermint unsafe-reset-all --keep-addr-book --home $HOME/.provenanced --keep-addr-book

Pruning config recomended for validator nodes

Disable indexer in config.toml
sed -i -e 's|^indexer *=.*|indexer = "null"|' $HOME/.provenanced/config/config.toml
Configure pruning in app.toml
sed -i \
-e 's|^pruning *=.*|pruning = "custom"|' \
-e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' \
-e 's|^pruning-interval *=.*|pruning-interval = "10"|' \
$HOME/.provenanced/config/app.toml