Skip to content

Latest commit

 

History

History
424 lines (298 loc) · 9.7 KB

cheat-sheet.md

File metadata and controls

424 lines (298 loc) · 9.7 KB
cover coverY
../../.gitbook/assets/celestia-banner.jpeg
0

Cheat Sheet

Wallet operations

Create wallet

⚠️ store seed phrase, important during recovering

celestia-appd keys add <YOUR_WALLET_NAME>

Recover wallet

⚠️ store seed phrase, important during recovering

celestia-appd keys add <YOUR_WALLET_NAME> --recover

List of all wallets

celestia-appd keys list

Delete wallet

celestia-appd keys delete <YOUR_WALLET_NAME>

Export wallet

⚠️ save to wallet.backup

celestia-appd keys export <YOUR_WALLET_NAME>

Import wallet

celestia-appd keys import <WALLET_NAME> wallet.backup

Check wallet balance

celestia-appd q bank balances $(celestia-appd keys show <YOUR_WALLET_NAME> -a)

Validator operations

Create validator

celestia-appd tx staking create-validator \
--amount=1000000utia \
--pubkey=$(celestia-appd tendermint show-validator) \
--moniker="<Your moniker>" \
--identity=<Your identity> \
--details="<Your details>" \
--chain-id=celestia \
--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.002utia \
--gas-adjustment=1.4 \
--gas=auto \
-y

Edit validator

celestia-appd tx staking edit-validator \
--new-moniker="<Your moniker>" \
--identity=<your identity> \
--details="<Your details>" \
--commission-rate=0.1 \
--from=<YOUR_WALLET> \
--gas-prices=0.002utia \
--gas-adjustment=1.4 \
--gas=auto \
-y

Unjail your validator

celestia-appd tx slashing unjail --from <YOUR_WALLET> --gas-prices 0.002utia --gas-adjustment 1.4 --gas auto -y

Check blocks info processed by your validator

celestia-appd query slashing signing-info $(celestia-appd tendermint show-validator)

List of active validators

celestia-appd 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

celestia-appd 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

celestia-appd q staking validator $(celestia-appd keys show <YOUR_WALLET_NAME> --bech val -a)

Transactions

Get your rewards from all validators

celestia-appd tx distribution withdraw-all-rewards --from <YOUR_WALLET> --gas-prices 0.002utia --gas-adjustment 1.4 --gas auto -y

Get rewards and commissions from your validator

celestia-appd tx distribution withdraw-rewards $(celestia-appd keys show <YOUR_WALLET_NAME> --bech val -a) --commission --from <YOUR_WALLET> --gas-prices 0.002utia --gas-adjustment 1.4 --gas auto -y

Delegate tokens to your validator

celestia-appd tx staking delegate $(celestia-appd keys show <YOUR_WALLET_NAME> --bech val -a) 1000000utia --from <YOUR_WALLET> --gas-prices 0.002utia --gas-adjustment 1.4 --gas auto -y

Delegate tokens to validator

celestia-appd tx staking delegate <VALOPER_ADDRESS> 1000000utia --from <YOUR_WALLET> --gas-prices 0.002utia --gas-adjustment 1.4 --gas auto -y

Redelegate tokens to another validator

celestia-appd tx staking redelegate <SRC_VALOPER_ADDRESS> <TARGET_VALOPER_ADDRESS> 1000000utia --from <WALLET> --gas-prices 0.002utia --gas-adjustment 1.4 --gas auto -y

Unbound tokens from validator

⚠️ it’s can take a while, ~21 days, depends on network’s parameters

celestia-appd tx staking unbond <VALOPER_ADDRESS> 1000000utia --from <YOUR_WALLET> --gas-prices 0.002utia --gas-adjustment 1.4 --gas auto -y

Send tokens to another wallet

celestia-appd tx bank send <YOUR_WALLET_ADDRESS> <TARGET_WALLET_ADDRESS> 1000000utia --from <YOUR_WALLET_ADDRESS> --gas-prices 0.002utia --gas-adjustment 1.4 --gas auto -y

Check info about transaction by hash TX_HASH

celestia-appd query tx <TX_HASH>

Governance

Submit text proposal

celestia-appd tx gov submit-proposal \
--title="<Your Title>" \
--description="<Your Description>" \
--deposit=1000000utia \
--type="Text" \
--from=<WALLET_ADDRESS> \
--gas-prices=0.002utia \
--gas-adjustment=1.4 \
--gas=auto \
-y

List of all proposals

celestia-appd query gov proposals

Check proposal info by proposal id

celestia-appd query gov proposal <proposal_id>

Deposit proposal by proposal id

celestia-appd tx gov deposit 1 1000000utia --from <YOUR_WALLET> --gas-prices 0.002utia --gas-adjustment 1.4 --gas auto -y

Vote as, YES

celestia-appd tx gov vote 1 yes --from <YOUR_WALLET> --gas-prices 0.002utia --gas-adjustment 1.4 --gas auto -y

Vote as, NO

celestia-appd tx gov vote 1 no --from <YOUR_WALLET> --gas-prices 0.002utia --gas-adjustment 1.4 --gas auto -y

Vote as, NO_WITH_VETO

celestia-appd tx gov vote 1 no_with_veto --from <YOUR_WALLET> --gas-prices 0.002utia --gas-adjustment 1.4 --gas auto -y

Vote as, ABSTAIN

celestia-appd tx gov vote 1 abstain --from <YOUR_WALLET> --gas-prices 0.002utia --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/.celestia-app/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/.celestia-app/config/app.toml && \
sed -i.bak -e "s%^node = \"tcp://localhost:26657\"%node = \"tcp://localhost:36657\"%" $HOME/.celestia-app/config/client.toml

Turn on indexing

sed -i 's|^indexer *=.*|indexer = "kv"|' $HOME/.celestia-app/config/config.toml

Turn off indexing

sed -i 's|^indexer *=.*|indexer = "null"|' $HOME/.celestia-app/config/config.toml

Setup custom prunning

APP_TOML="~/.celestia-app/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 $(celestia-appd tendermint show-node-id)@$(curl http://ifconfig.me/)$(grep -A 3 "\[p2p\]" ~/.celestia-app/config/config.toml | egrep -o ":[0-9]+")

Check your RPC

echo -e "\033[0;32m$(grep -A 3 "\[rpc\]" ~/.celestia-app/config/config.toml | egrep -o ":[0-9]+")\033[0m"

Check information about validator

celestia-appd status 2>&1 | jq .ValidatorInfo

Check synchronisation status (false - synced, true - not synced)

celestia-appd status 2>&1 | jq .SyncInfo.catching_up

Check the latest block

celestia-appd status 2>&1 | jq .SyncInfo.latest_block_height

Reset network

celestia-appd tendermint unsafe-reset-all --home $HOME/.celestia-app --keep-addr-book

Delete node

sudo systemctl stop celestia-appd && \
sudo systemctl disable celestia-appd && \
sudo rm /etc/systemd/system/celestia-appd.service && \
sudo systemctl daemon-reload && \
rm -rf $HOME/.celestia-app && \
rm -rf $HOME/celestia-app

Check IP address of the server

wget -qO- eth0.me

Check network parameters

celestia-appd q staking params
celestia-appd q slashing params

Check validator private key is correct

[[ $(celestia-appd q staking validator $(celestia-appd keys show <YOUR_WALLET> --bech val -a) -oj | jq -r .consensus_pubkey.key) = $(celestia-appd 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

celestia-appd q txs --events transfer.sender=<ADDRESS> 2>&1 | jq | grep txhash

Search all input transactions by address

celestia-appd q txs --events transfer.recipient=<ADDRESS> 2>&1 | jq | grep txhash

Service management

Reload services

sudo systemctl daemon-reload

Enable service

sudo systemctl enable celestia-appd

Disable service

sudo systemctl disable celestia-appd

Start service

sudo systemctl start celestia-appd

Stop service

sudo systemctl stop celestia-appd

Restart service

sudo systemctl restart celestia-appd

Check service status

sudo systemctl status celestia-appd

Check service logs

sudo journalctl -u celestia-appd -f -o cat

Bridge node useful commands

Get bridge node ID

AUTH_TOKEN=$(celestia bridge auth admin --p2p.network celestia)
curl -s -X POST -H "Authorization: Bearer $AUTH_TOKEN" -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":0,"method":"p2p.Info","params":[]}' http://localhost:26658 | jq -r .result.ID

Get bridge node key

cel-key show bridge-wallet --node.type bridge --p2p.network celestia -a | tail -1

Check bridge node wallet balance

celestia-appd q bank balances $(cel-key show bridge-wallet --node.type bridge --p2p.network celestia -a | tail -1)

Check bridge node version

celestia version

Check bridge node logs

journalctl -u celestia-bridge.service -f -o cat