Node CLI Cheatsheet

  • Network Type: Testnet
  • Chain-id: structstestnet-88
  • Current Node version: v0.2.0-beta
  • CLI Cheatsheet

    • Always be careful with the capitalized words
    • Specify --chain-id

    Usefull Command

    structsd status 2>&1 | jq .sync_info

    Wallet Management

    Add Wallet Specify the value <wallet> with your own wallet name

    structsd keys add wallet

    Recover Wallet

    structsd keys add wallet --recover

    List Wallet

    structsd keys list

    Delete Wallet

    structsd keys delete wallet

    Check Wallet Balance

    structsd q bank balances $(structsd keys show wallet -a)

    Validator Management

    Please adjust <wallet> , MONIKER , YOUR_KEYBASE_ID , YOUR_DETAILS , YOUUR_WEBSITE_URL

    Create Validator (Staking)

    • Check Your Pubkey
    structsd comet show-validator
    • Make File validator.json
    nano $HOME/validator.json
    {
      "pubkey": {"#pubkey"},
      "amount": "100alpha",
      "moniker": "",
      "identity": "",
      "website": "",
      "security": "",
      "details": "",
      "commission-rate": "0.05",
      "commission-max-rate": "0.2",
      "commission-max-change-rate": "0.2",
      "min-self-delegation": "1"
    }
    structsd tx staking create-validator $HOME/validator.json \
        --from=wallet \
        --chain-id=structstestnet-88 \
        --gas=auto

    Unjail Validator

    structsd tx slashing unjail --from Wallet --chain-id structstestnet-88 --gas=auto

    Check Jailed Reason

    structsd query slashing signing-info $(structsd tendermint show-validator)

    Token Management

    Withdraw Rewards

    structsd tx distribution withdraw-all-rewards --from Wallet --chain-id structstestnet-88 --gas=auto

    Withdraw Rewards with Comission

    structsd tx distribution withdraw-rewards $(structsd keys show wallet --bech val -a) --commission --from wallet --chain-id structstestnet-88 --gas=auto

    Delegate Token to your own validator

    structsd tx staking delegate $(structsd keys show wallet --bech val -a) 100alpha --from wallet --chain-id structstestnet-88 --gas=auto

    Delegate Token to other validator

    structsd staking redelegate $(structsd keys show wallet --bech val -a) <TO_VALOPER_ADDRESS> 10alpha --from wallet --chain-id structstestnet-88 --gas=auto

    Unbond Token from your validator

    structsd tx staking unbond $(structsd keys show wallet --bech val -a) 100alpha --from wallet --chain-id structstestnet-88 --gas=auto

    Send Token to another wallet

    structsd tx bank send wallet <TO_WALLET_ADDRESS> 100alpha --from wallet --chain-id structstestnet-88 --gas=auto

    Other

    Set Your own Custom Ports You can change value CUSTOM_PORT=20 To any other ports

    • PORT=38
    sed -i.bak -e  "s%^node = \"tcp://localhost:26657\"%node = \"tcp://localhost:38657\"%" $HOME/.structs/config/client.toml
    sed -i.bak -e "s%^proxy_app = \"tcp://127.0.0.1:26658\"%proxy_app = \"tcp://127.0.0.1:38658\"%; s%^laddr = \"tcp://127.0.0.1:26657\"%laddr = \"tcp://127.0.0.1:38657\"%; s%^pprof_laddr = \"localhost:6060\"%pprof_laddr = \"localhost:38060\"%; s%^laddr = \"tcp://0.0.0.0:26656\"%laddr = \"tcp://0.0.0.0:38656\"%; s%^prometheus_listen_addr = \":26660\"%prometheus_listen_addr = \":38660\"%" $HOME/.structs/config/config.toml
    sed -i.bak -e "s%^address = \"tcp://localhost:1317\"%address = \"tcp://localhost:38317\"%; s%^address = \"localhost:9090\"%address = \"localhost:38090\"%" $HOME/.structs/config/app.toml

    Enable Indexing usually enabled by default

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

    Disable Indexing

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

    Reset Chain Data

    structsd tendermint unsafe-reset-all --home $HOME/.structs --keep-addr-book

    Delete Node

    WARNING! Use this command wisely Backup your key first it will remove Defund from your system

    sudo systemctl stop structsd
    sudo systemctl disable structsd
    sudo rm /etc/systemd/system/structsd.service
    sudo systemctl daemon-reload
    rm -f $(which structsd)
    rm -rf .structs
    rm -rf structsd