Useful commands
List of commands used to manage the validator and node
Wallet interaction
Create Wallet
kyved keys add <WALLET_NAME>
Restore wallet
kyved keys add <WALLET_NAME> --recover
Show all wallets
Delete wallet
kyved keys delete <WALLET_NAME>
Export wallet
kyved keys export <WALLET_NAME>
Import wallet
kyved keys import <WALLET_NAME> <WALLET_NAME>.backup
Show balance
kyved Query <WALLET_NAME> balance
Validator control
Create a validator
kyved tx staking create-validator \
--amount 10000000000ukyve \
--moniker="<YOUR_MONIKER>" \
--identity="<YOUR_KEYBASE_ID>" \
--website="<YOUR_WEBSITE_URL>" \
--details="<YOUR_DETAILS>" \
--commission-rate "0.10" \
--commission-max-rate "0.20" \
--commission-max-change-rate "0.05" \
--min-self-delegation "1" \
--pubkey "$(kyved tendermint show-validator)" \
--from <WALLET_NAME> \
--gas 51000000 \
--fees 1020000ukyve \
--chain-id kyve-1
Edit validator
kyved tx staking edit-validator \
--new-moniker="<YOUR_MONIKER>" \
--identity="<YOUR_KEYBASE_ID>" \
--details="<YOUR_DETAILS>" \
--website="<YOUR_WEBSITE_URL>"
--chain-id=kyve-1 \
--commission-rate=0.20 \
--from=<WALLET_NAME> \
--fees 1020000ukyve \
-y
Unjail
kyved tx slashing unjail --from <WALLET_NAME> --chain-id kyve-1 --gas auto --gas-adjustment 1.4 -y
Jail reason
kyved query slashing signing-info $(kyved tendermint show-validator)
Active validators
kyved 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
Inactive validators
kyved 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
Information about the validator
kyved q staking validator $(kyved keys show <WALLET_NAME> --bech val -a)
Balance management
Withdrawal of all rewards
kyved tx distribution withdraw-all-rewards --from <WALLET_NAME> --chain-id kyve-1 --fees 1020000ukyve -y
Withdrawal of rewards and commissions
kyved tx distribution withdraw-rewards $(kyved keys show <WALLET_NAME> --bech val -a) --commission --from <WALLET_NAME> --chain-id kyve-1 --fees 1020000ukyve -y
Self-delegation
kyved tx staking delegate $(kyved keys show <WALLET_NAME> --bech val -a) 10000000000ukyve --from <WALLET_NAME> --chain-id kyve-1 --fees 1020000ukyve -y
Delegation to validator
uptickd tx staking delegate <TO_VALOPER_ADDRESS> 10000000000ukyve --from <WALLET_NAME> --chain-id uptick_7000-2 --fees 1020000ukyve -y
Redelegation to another validator
kyved tx staking redelegate $(kyved keys show <WALLET_NAME> --bech val -a) <TO_VALOPER_ADDRESS> 10000000000ukyve --from <WALLET_NAME> --chain-id kyve-1 --fees 1020000ukyveuto -y
Unbond tokens
kyved tx staking unbond $(kyved keys show <WALLET_NAME> --bech val -a) 10000000000ukyve --from <WALLET_NAME> --chain-id kyve-1 --fees 1020000ukyve -y
Sending tokens to a wallet
kyved tx bank send <WALLET_NAME> <TO_<WALLET_ADDRESS> 10000000000ukyve --from <WALLET_NAME> --fees 1020000ukyve --chain-id kyve-1
Governance
All proposals
kyved query gov proposals
All proposals by ID
kyved query gov proposal 1
Vote "YES"
kyved tx gov vote 1 yes --from <WALLET_NAME> --chain-id kyve-1 --fees 1020000ukyve -y
Vote "NO"
kyved tx gov vote 1 no --from <WALLET_NAME> --chain-id kyve-1 --fees 1020000ukyve -y
Vote "Abstain"
kyved tx gov vote 1 abstain --from <WALLET_NAME> --chain-id kyve-1 --fees 1020000ukyve -y
Vote "NoWithVeto"
kyved tx gov vote 1 nowithveto --from <WALLET_NAME> --chain-id kyve-1 --fees 1020000ukyve -y
Utility
Update ports
CUSTOM_PORT=10
sed -i.bak -e "s%^proxy_app = \"tcp://127.0.0.1:26658\"%proxy_app = \"tcp://127.0.0.1:${CUSTOM_PORT}658\"%; s%^laddr = \"tcp://127.0.0.1:26657\"%laddr = \"tcp://127.0.0.1:${CUSTOM_PORT}657\"%; s%^pprof_laddr = \"localhost:6060\"%pprof_laddr = \"localhost:${CUSTOM_PORT}060\"%; s%^laddr = \"tcp://0.0.0.0:26656\"%laddr = \"tcp://0.0.0.0:${CUSTOM_PORT}656\"%; s%^prometheus_listen_addr = \":26660\"%prometheus_listen_addr = \":${CUSTOM_PORT}660\"%" $HOME/.kyve/config/config.toml
sed -i.bak -e "s%^address = \"tcp://0.0.0.0:1317\"%address = \"tcp://0.0.0.0:${CUSTOM_PORT}317\"%; s%^address = \":8080\"%address = \":${CUSTOM_PORT}080\"%; s%^address = \"0.0.0.0:9090\"%address = \"0.0.0.0:${CUSTOM_PORT}090\"%; s%^address = \"0.0.0.0:9091\"%address = \"0.0.0.0:${CUSTOM_PORT}091\"%" $HOME/.kyve/config/app.toml
Disable Indexer
sed -i 's|^indexer *=.*|indexer = "null"|' $HOME/.kyve/config/config.toml
Enable Indexer
sed -i 's|^indexer *=.*|indexer = "kv"|' $HOME/.kyve/config/config.toml
Update pruning
sed -i.bak -e 's|^pruning *=.*|pruning = "custom"|; s|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|; s|^pruning-keep-every *=.*|pruning-keep-every = "0"|; s|^pruning-interval *=.*|pruning-interval = "10"|' $HOME/.kyve/config/app.toml
Node support
Validator Info
kyved status 2>&1 | jq .ValidatorInfo
Sync info
kyved status 2>&1 | jq .SyncInfo
Deleting a node
Before deleting a node make sure you save priv_validator_key.json
sudo systemctl stop kyved
sudo systemctl disable kyved
rm /etc/systemd/system/kyved.service
sudo systemctl daemon-reload
cd $HOME
rm -rf chain
rm -rf .kyve
rm -rf $(which kyved)
Service setup
Reload service configuration
sudo systemctl daemon-reload
Enable service
sudo systemctl enable kyved
Disable service
sudo systemctl disable kyved
Start service
sudo systemctl start kyved
Stop service
sudo systemctl stop kyved
Restart service
sudo systemctl restart kyved
Check service status
sudo systemctl status kyved
Check service logs
sudo journalctl -u kyved -f --no-hostname -o cat
Last updated