# CLI Cheatsheet

<figure><img src="https://pbs.twimg.com/profile_images/1655541754274119680/jPwIFpXf_400x400.png" alt="" width="188"><figcaption></figcaption></figure>

### Key Management

Add new key

```
entrypointd keys add wallet
```

Recover existing key

```
entrypointd keys add wallet --recover
```

List All key

```
entrypointd keys list
```

Delete key

```
entrypointd keys delete wallet
```

Export Key (save to wallet.backup)

```
entrypointd keys export wallet
```

Import key

```
entrypointd keys import wallet wallet.backup
```

Query Wallet Balance

```
entrypointd q bank balances $(entrypointd keys show wallet -a)
```

### Validator Management

Create Validator

```sh
entrypointd tx staking create-validator \
  --amount 1000000uentry \
  --pubkey $(entrypointd tendermint show-validator) \
  --moniker "MONIKER" \
  --identity="YOUR_KEYBASE_ID" \
  --details="YOUR_DETAILS" \
  --website="YOUR_WEBSITE_URL" \
  --chain-id entrypoint-pubtest-2 \
  --commission-rate="0.05" \
  --commission-max-rate="0.20" \
  --commission-max-change-rate="0.01" \
  --min-self-delegation "1" \
  --gas-prices="0.01ibc/8A138BC76D0FB2665F8937EC2BF01B9F6A714F6127221A0E155106A45E09BCC5" \
  --gas="auto" \
  --gas-adjustment="1.5" \
  --from wallet \
  -y
```

Edit Validator

```sh
entrypointd tx staking edit-validator \
--new-moniker="MONIKER" \
--identity="YOUR_KEYBASE_ID" \
--details="YOUR_DETAILS" \
--website="YOUR_WEBSITE_URL" \
--chain-id entrypoint-pubtest-2 \
--commission-rate=0.05 \
--gas-prices="0.01ibc/8A138BC76D0FB2665F8937EC2BF01B9F6A714F6127221A0E155106A45E09BCC5" \
--gas="auto" \
--gas-adjustment="1.5" \
--from wallet \
-y
```

Unjail Validator

```sh
entrypointd tx slashing unjail --from wallet --chain-id entrypoint-pubtest-2 --gas-prices=0.01ibc/8A138BC76D0FB2665F8937EC2BF01B9F6A714F6127221A0E155106A45E09BCC5 --gas-adjustment 1.5 --gas auto -y 
```

Signing Info

```sh
entrypointd query slashing signing-info $(entrypointd tendermint show-validator) 
```

List all active validators

```sh
entrypointd 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

```sh
entrypointd 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 
```

View validators details

```
entrypointd q staking validator $(entrypointd  keys show wallet --bech val -a) 
```

### Token Management

Withdraw rewards from all validators

```sh
entrypointd  tx distribution withdraw-all-rewards --from wallet --chain-id entrypoint-pubtest-2 --gas-prices=0.01ibc/8A138BC76D0FB2665F8937EC2BF01B9F6A714F6127221A0E155106A45E09BCC5 --gas-adjustment 1.5 --gas auto -y 
```

Withdraw comission and rewards from your validator

```sh
entrypointd tx distribution withdraw-rewards $(entrypointd keys show wallet --bech val -a) --commission --from wallet --chain-id entrypoint-pubtest-2 --gas-prices=0.01ibc/8A138BC76D0FB2665F8937EC2BF01B9F6A714F6127221A0E155106A45E09BCC5 --gas-adjustment 1.5 --gas auto -y 
```

Delegate to your validator

```sh
entrypointd tx staking delegate $(entrypointd keys show wallet --bech val -a) 1000000uentry --from wallet --chain-id entrypoint-pubtest-2 --gas-prices=0.01ibc/8A138BC76D0FB2665F8937EC2BF01B9F6A714F6127221A0E155106A45E09BCC5 --gas-adjustment 1.5 --gas auto -y 
```

Delegate to other

```sh
entrypointd tx staking delegate TO_VALOPER_ADDRESS 1000000uentry --from wallet --chain-id entrypoint-pubtest-2 --gas-prices=0.01ibc/8A138BC76D0FB2665F8937EC2BF01B9F6A714F6127221A0E155106A45E09BCC5 --gas-adjustment 1.5 --gas auto -y 
```

Redelegate your stake to other validators

```sh
entrypointd tx staking redelegate $(entrypointd keys show wallet --bech val -a) TO_VALOPER_ADDRESS 1000000uentry --from wallet --chain-id entrypoint-pubtest-2 --gas-prices=0.01ibc/8A138BC76D0FB2665F8937EC2BF01B9F6A714F6127221A0E155106A45E09BCC5 --gas-adjustment 1.5 --gas auto -y 
```

Unbond stake

```sh
entrypointd tx staking unbond $(entrypointd keys show wallet --bech val -a) 1000000uentry --from wallet --chain-id entrypoint-pubtest-2 --gas-prices=0.01ibc/8A138BC76D0FB2665F8937EC2BF01B9F6A714F6127221A0E155106A45E09BCC5 --gas-adjustment 1.5 --gas auto -y 
```

Send tokens

```sh
entrypointd tx bank send wallet TO_WALLET_ADDRESS 1000000uentry --from wallet --chain-id entrypoint-pubtest-2 --gas-prices=0.01ibc/8A138BC76D0FB2665F8937EC2BF01B9F6A714F6127221A0E155106A45E09BCC5 --gas-adjustment 1.5 --gas auto -y 
```

### Governance

List all proposals

<pre class="language-sh"><code class="lang-sh"><strong>entrypointd query gov proposals
</strong></code></pre>

Vote **YES / NO / ABSTAIN / NO\_WITH\_VETO**

```sh
entrypointd tx gov vote 1 yes --from wallet --chain-id entrypoint-pubtest-2 --gas-prices=0.01ibc/8A138BC76D0FB2665F8937EC2BF01B9F6A714F6127221A0E155106A45E09BCC5 --gas-adjustment 1.5 --gas auto -y 
```

Create new text proposal

```sh
entrypointd tx gov submit-proposal \
--title="Title" \
--description="Description" \
--deposit=100000000uentry \
--type="Text" \
--from=wallet \
--gas-prices 0.01ibc/8A138BC76D0FB2665F8937EC2BF01B9F6A714F6127221A0E155106A45E09BCC5\ 
--gas-adjustment 1.5 \
--gas auto \
-y 
```

### Utility

Set Indexer **NULL / KV**

```sh
sed -i 's|^indexer *=.*|indexer = "null"|' $HOME/.entrypoint/config/config.toml
```

Set Custom Port

```sh
CUSTOM_PORT=13
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/.entrypoint/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\"%; s%^address = \"0.0.0.0:8545\"%address = \"0.0.0.0:${CUSTOM_PORT}545\"%; s%^ws-address = \"0.0.0.0:8546\"%ws-address = \"0.0.0.0:${CUSTOM_PORT}546\"%" $HOME/.entrypoint/config/app.toml
```

Get Validator info

```sh
entrypointd status 2>&1 | jq .ValidatorInfo
```

Get denom info

```sh
entrypointd q bank denom-metadata -oj | jq
```

Get sync status

```sh
entrypointd status 2>&1 | jq .SyncInfo.catching_up
```

Get latest height

```sh
entrypointd status 2>&1 | jq .SyncInfo.latest_block_height
```

Reset Node

```sh
entrypointd tendermint unsafe-reset-all --home $HOME/.entrypoint --keep-addr-book
```

Delete Node

```sh
sudo systemctl stop entrypointd && sudo systemctl disable entrypointd && sudo rm /etc/systemd/system/entrypointd.service && sudo systemctl daemon-reload && rm -rf $HOME/.entrypoint && sudo rm -rf $(which entrypointd) 
```

### Services Management

```sh
# Reload Service
sudo systemctl daemon-reload

# Enable Service
sudo systemctl enable entrypointd

# Disable Service
sudo systemctl disable entrypointd

# Start Service
sudo systemctl start entrypointd

# Stop Service
sudo systemctl stop entrypointd

# Restart Service
sudo systemctl restart entrypointd

# Check Service Status
sudo systemctl status entrypointd

# Check Service Logs
sudo journalctl -u entrypointd -f --no-hostname -o cat
```
