# Commands

## 📚Useful commands📚

## ⚙️Service

**Info**

```python
cheqd-noded status 2>&1 | jq .NodeInfo
cheqd-noded status 2>&1 | jq .SyncInfo
cheqd-noded status 2>&1 | jq .ValidatorInfo
```

**Check node logs**

```python
sudo journalctl -fu cheqd-noded -o cat
```

**Check service status**

```python
sudo systemctl status cheqd-noded 
```

**Restart service**

```python
sudo systemctl restart cheqd-noded 
```

**Stop service**

```python
sudo systemctl stop cheqd-noded 
```

**Start service**

```python
sudo systemctl start cheqd-noded 
```

**reload/disable/enable**

```python
sudo systemctl daemon-reload
sudo systemctl disable cheqd-noded 
sudo systemctl enable cheqd-noded 
```

**Your Peer**

```python
echo $(cheqd-noded tendermint show-node-id)'@'$(wget -qO- eth0.me)':'$(cat $HOME/.cheqdnode/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')
```

## 🥅Working with keys

**New Key or Recover Key**

```python
cheqd-noded keys add Wallet_Name
      OR
cheqd-noded keys add Wallet_Name --recover
```

**Check all keys**

```python
cheqd-noded keys list
```

**Check Balance**

```python
cheqd-noded query bank balances cheqd...addressjkl1yjgn7z09ua9vms259j
```

**Delete Key**

```python
cheqd-noded keys delete Wallet_Name
```

**Export Key**

```python
cheqd-noded keys export wallet
```

**Import Key**

```python
cheqd-noded keys import wallet wallet.backup
```

## 🚀Validator Management

**Edit Validator**

```python
cheqd-noded tx staking edit-validator \
--new-moniker "Your_Moniker" \
--identity "Keybase_ID" \
--details "Your_Description" \
--website "Your_Website" \
--security-contact "Your_Email" \
--chain-id cheqd-mainnet-1 \
--commission-rate 0.05 \
--from Wallet_Name \
--gas 350000 -y
```

**Your Valoper-Address**

```python
cheqd-noded keys show Wallet_Name --bech val
```

**Your Valcons-Address**

```python
cheqd-noded tendermint show-address
```

**Your Validator-Info**

```python
cheqd-noded query staking validator cheqdvaloperaddress......
```

**Jail Info**

```python
cheqd-noded query slashing signing-info $(cheqd-noded tendermint show-validator)
```

**Unjail**

```python
cheqd-noded tx slashing unjail --from Wallet_name --chain-id cheqd-mainnet-1 --gas 350000 -y
```

**Active Validators List**

<pre class="language-python"><code class="lang-python"><strong>cheqd-noded  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
</strong></code></pre>

**Inactive Validators List**

```python
cheqd-noded 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
```

**Check that your key matches the validator (**<mark style="color:green;">**Win**</mark>**&#x20;- Good. Lose -&#x20;**<mark style="color:red;">**Bad**</mark>**)**

```python
VALOPER=Enter_Your_valoper_Here
[[ $(cheqd-noded q staking validator $VALOPER -oj | jq -r .consensus_pubkey.key) = $(cheqd-noded status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "\nYou win\n" || echo -e "\nYou lose\n"
```

**Withdraw all rewards from all validators**

```python
cheqd-noded tx distribution withdraw-all-rewards --from Wallet_Name --chain-id cheqd-mainnet-1 --gas 350000 -y
```

**Withdraw and commission from your Validator**

```python
cheqd-noded tx distribution withdraw-rewards cheqdvaloper1amxp0k0hg4edrxg85v07t9ka2tfuhamhldgf8e --from Wallet_Name --gas 350000 --chain-id=cheqd-mainnet-1 --commission -y
```

**Delegate tokens to your validator**

```python
cheqd-noded tx staking delegate Your_cheqdvalpoer........ "100000000"ncheq --from Wallet_Name --gas 350000 --chain-id=cheqd-mainnet-1 -y
```

**Delegate tokens to different validator**

```python
cheqd-noded tx staking delegate cheqdvalpoer........ "100000000"ncheq --from Wallet_Name --gas 350000 --chain-id=cheqd-mainnet-1 -y
```

**Redelegate tokens to another validator**

```python
cheqd-noded tx staking redelegate Your_cheqdvalpoer........ cheqdvalpoer........ "100000000"ncheq --from Wallet_Name --gas 350000  --chain-id=cheqd-mainnet-1 -y
```

**Unbond tokens from your validator or different validator**

```python
cheqd-noded tx staking unbond Your_cheqdvalpoer........ "100000000"ncheq --from Wallet_Name --gas 350000 --chain-id=cheqd-mainnet-1 -y
cheqd-noded tx staking unbond cheqdvalpoer........ "100000000"ncheq --from Wallet_Name --gas 350000 --chain-id=cheqd-mainnet-1 -y
```

**Transfer tokens from wallet to wallet**

```python
cheqd-noded tx bank send Your_cheqdaddress............ cheqdaddress........... "1000000000000000000"ncheq --gas 350000 --chain-id=cheqd-mainnet-1 -y
```

## 📝Governance

**View all proposals**

```python
cheqd-noded query gov proposals
```

**View specific proposal**

```python
cheqd-noded query gov proposal 1
```

**Vote yes**

```python
cheqd-noded tx gov vote 1 yes --from Wallet_Name --gas 350000  --chain-id=cheqd-mainnet-1 -y
```

**Vote no**

```python
cheqd-noded tx gov vote 1 no --from Wallet_Name --gas 350000  --chain-id=cheqd-mainnet-1 -y
```

**Vote abstain**

```python
cheqd-noded tx gov vote 1 abstain --from Wallet_Name --gas 350000  --chain-id=cheqd-mainnet-1 -y
```

**Vote no\_with\_veto**

```python
cheqd-noded tx gov vote 1 no_with_veto --from Wallet_Name --gas 350000  --chain-id=cheqd-mainnet-1 -y
```

## 📡IBC transfer

* for exapmle - Cheqd-> Osmosis

```python
cheqd-noded tx ibc-transfer transfer transfer channel-2 Your_OSMOaddress............ "100000"ncheq --from Your_Cheqd_Wallet_Name ---gas 350000 --fees "7000"ncheq --chain-id=cheqd-mainnet-1 -y
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://stavr-team.gitbook.io/nodes-guides/mainnets/cheqd/commands.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
