Cheat Sheet
Wallet operations
Create wallet
⚠️ store seed phrase, important during recovering
kyved keys add <YOUR_WALLET_NAME>Recover wallet
⚠️ store seed phrase, important during recovering
kyved keys add <YOUR_WALLET_NAME> --recoverList of all wallets
kyved keys listDelete wallet
kyved keys delete <YOUR_WALLET_NAME>Export wallet
⚠️ save to wallet.backup
kyved keys export <YOUR_WALLET_NAME>Import wallet
kyved keys import <WALLET_NAME> wallet.backupCheck wallet balance
kyved q bank balances $(kyved keys show <YOUR_WALLET_NAME> -a)Validator operations
Create validator
kyved tx staking create-validator \
--amount=1000000ukyve \
--pubkey=$(kyved tendermint show-validator) \
--moniker="<Your moniker>" \
--identity=<Your identity> \
--details="<Your details>" \
--chain-id=kyve-1 \
--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.001ukyve \
--gas-adjustment=1.6 \
--gas=auto \
-yEdit validator
kyved tx staking edit-validator \
--new-moniker="<Your moniker>" \
--identity=<your identity> \
--details="<Your details>" \
--commission-rate=0.1 \
--from=<YOUR_WALLET> \
--gas-prices=0.001ukyve \
--gas-adjustment=1.6 \
--gas=auto \
-yUnjail your validator
kyved tx slashing unjail --from <YOUR_WALLET> --gas-prices 0.001ukyve --gas-adjustment 1.6 --gas auto -yCheck blocks info processed by your validator
kyved query slashing signing-info $(kyved tendermint show-validator)List of 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 | nlList of inactive validators
kyved 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 | nlInfo about your validator
kyved q staking validator $(kyved keys show <YOUR_WALLET_NAME> --bech val -a)Transactions
Get your rewards from all validators
kyved tx distribution withdraw-all-rewards --from <YOUR_WALLET> --gas-prices 0.001ukyve --gas-adjustment 1.6 --gas auto -yGet rewards and commissions from your validator
kyved tx distribution withdraw-rewards $(kyved keys show <YOUR_WALLET_NAME> --bech val -a) --commission --from <YOUR_WALLET> --gas-prices 0.001ukyve --gas-adjustment 1.6 --gas auto -yDelegate tokens to your validator
kyved tx staking delegate $(kyved keys show <YOUR_WALLET_NAME> --bech val -a) 1000000ukyve --from <YOUR_WALLET> --gas-prices 0.001ukyve --gas-adjustment 1.6 --gas auto -yDelegate tokens to validator
kyved tx staking delegate <VALOPER_ADDRESS> 1000000ukyve --from <YOUR_WALLET> --gas-prices 0.001ukyve --gas-adjustment 1.6 --gas auto -yRedelegate tokens to another validator
kyved tx staking redelegate <SRC_VALOPER_ADDRESS> <TARGET_VALOPER_ADDRESS> 1000000ukyve --from <WALLET> --gas-prices 0.001ukyve --gas-adjustment 1.6 --gas auto -yUnbound tokens from validator
⚠️ it’s can take a while, ~21 days, depends on network’s parameters
kyved tx staking unbond <VALOPER_ADDRESS> 1000000ukyve --from <YOUR_WALLET> --gas-prices 0.001ukyve --gas-adjustment 1.6 --gas auto -ySend tokens to another wallet
kyved tx bank send <YOUR_WALLET_ADDRESS> <TARGET_WALLET_ADDRESS> 1000000ukyve --from <YOUR_WALLET_ADDRESS> --gas-prices 0.001ukyve --gas-adjustment 1.6 --gas auto -yCheck info about transaction by hash TX_HASH
kyved query tx <TX_HASH>Governance
Submit text proposal
kyved tx gov submit-proposal \
--title="<Your Title>" \
--description="<Your Description>" \
--deposit=1000000ukyve \
--type="Text" \
--from=<WALLET_ADDRESS> \
--gas-prices=0.001ukyve \
--gas-adjustment=1.6 \
--gas=auto \
-yList of all proposals
kyved query gov proposalsCheck proposal info by proposal id
kyved query gov proposal <proposal_id>Deposit proposal by proposal id
kyved tx gov deposit 1 1000000ukyve --from <YOUR_WALLET> --gas-prices 0.001ukyve --gas-adjustment 1.6 --gas auto -yVote as, YES
kyved tx gov vote 1 yes --from <YOUR_WALLET> --gas-prices 0.001ukyve --gas-adjustment 1.6 --gas auto -yVote as, NO
kyved tx gov vote 1 no --from <YOUR_WALLET> --gas-prices 0.001ukyve --gas-adjustment 1.6 --gas auto -yVote as, NO_WITH_VETO
kyved tx gov vote 1 no_with_veto --from <YOUR_WALLET> --gas-prices 0.001ukyve --gas-adjustment 1.6 --gas auto -yVote as, ABSTAIN
kyved tx gov vote 1 abstain --from <YOUR_WALLET> --gas-prices 0.001ukyve --gas-adjustment 1.6 --gas auto -yUtils
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/.kyve/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/.kyve/config/app.toml && \
sed -i.bak -e "s%^node = \"tcp://localhost:26657\"%node = \"tcp://localhost:36657\"%" $HOME/.kyve/config/client.tomlTurn on indexing
sed -i 's|^indexer *=.*|indexer = "kv"|' $HOME/.kyve/config/config.tomlTurn off indexing
sed -i 's|^indexer *=.*|indexer = "null"|' $HOME/.kyve/config/config.tomlSetup custom prunning
APP_TOML="~/.kyve/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_TOMLCheck your peer
echo $(kyved tendermint show-node-id)@$(curl http://ifconfig.me/)$(grep -A 3 "\[p2p\]" ~/.kyve/config/config.toml | egrep -o ":[0-9]+")Check your RPC
echo -e "\033[0;32m$(grep -A 3 "\[rpc\]" ~/.kyve/config/config.toml | egrep -o ":[0-9]+")\033[0m"Check information about validator
kyved status 2>&1 | jq .ValidatorInfoCheck synchronisation status (false - synced, true - not synced)
kyved status 2>&1 | jq .SyncInfo.catching_upCheck the latest block
kyved status 2>&1 | jq .SyncInfo.latest_block_heightReset network
kyved tendermint unsafe-reset-all --home $HOME/.kyve --keep-addr-bookDelete node
sudo systemctl stop kyved && \
sudo systemctl disable kyved && \
sudo rm /etc/systemd/system/kyved.service && \
sudo systemctl daemon-reload && \
rm -rf $HOME/.kyve && \
rm -rf $HOME/kyveCheck IP address of the server
wget -qO- eth0.meCheck network parameters
kyved q staking params
kyved q slashing paramsCheck validator private key is correct
[[ $(kyved q staking validator $(kyved keys show <YOUR_WALLET> --bech val -a) -oj | jq -r .consensus_pubkey.key) = $(kyved 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
kyved q txs --events transfer.sender=<ADDRESS> 2>&1 | jq | grep txhashSearch all input transactions by address
kyved q txs --events transfer.recipient=<ADDRESS> 2>&1 | jq | grep txhashService management
Reload services
sudo systemctl daemon-reloadEnable service
sudo systemctl enable kyvedDisable service
sudo systemctl disable kyvedStart service
sudo systemctl start kyvedStop service
sudo systemctl stop kyvedRestart service
sudo systemctl restart kyvedCheck service status
sudo systemctl status kyvedCheck service logs
sudo journalctl -u kyved -f -o catLast updated
