Skip to main content

Warden Protocol - Chaido chain

Warden brings AI to web3, enabling any application, protocol or smart contract to integrate safe AI.


1. Information

Website: https://wardenprotocol.org/

Twitter: https://x.com/wardenprotocol

Discord: https://discord.gg/wardenprotocol

Github https://github.com/warden-protocol

Telegram Group: https://t.me/wardenprotocol

Telegram Announcements: https://t.me/warden_news

Faucet at: https://faucet.chiado.wardenprotocol.org

*** Join my Discord to win more token: AnonID.TOP Validator Discord

2. Service


3. Requirement

3.1. Hardware

CPU: 6 Cores, RAM: 16GB, Storage: 300GB NVMe SSD

3.1.2. Minumum hardware

CPU: 4 Cores, RAM: 16GB, Storage: 300GB disk space

3.2. OS

Recommended

Ubuntu 22.04 x86

3.3. Software

Go version 1.22.3 or later

4. Update and install dependencies

sudo apt update && sudo apt upgrade -y
sudo apt install curl wget lz4 unzip -y

5. Guide to install

To easy manager and avoid errors and comfortable for execute command after, add your wallet name and some varable to enviroment by guide bellow.

Change your info, include pubkey, moniker, indentity, website, security, details and Save them

  • <Wallet_Name>*: Your wallet name - Required
  • <Moniker>*: Your validator name (node name) - Required
WALLET=<Wallet_Name>
MONIKER=<Moniker>
echo "export WALLET="${WALLET}"" >> $HOME/.bash_profile
echo "export MONIKER="${MONIKER}"" >> $HOME/.bash_profile
echo "export WARDEN_CHAIN_ID="chiado_10010-1"" >> $HOME/.bash_profile
echo "export WARDEN_NODE_RPC="https://warden-rpc.anonid.top"" >> $HOME/.bash_profile
source $HOME/.bash_profile

5.1. Install Go

rm -rf $HOME/go
sudo rm -rf /usr/local/go
cd $HOME
curl https://dl.google.com/go/go1.22.8.linux-amd64.tar.gz | sudo tar -C/usr/local -zxvf -
cat <<'EOF' >>$HOME/.profile
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GO111MODULE=on
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
EOF
source $HOME/.profile
go version

5.2. Install Warden

cd $HOME
wget https://github.com/warden-protocol/wardenprotocol/releases/download/v0.5.2/wardend_Linux_x86_64.zip
unzip -j wardend_Linux_x86_64.zip wardend
rm -rf wardend_Linux_x86_64.zip
chmod +x wardend
sudo mv wardend /usr/bin/
wardend version

5.3. Init wardend

wardend init $MONIKER

5.4. Download Genesis & Addressbook

curl -Ls https://storage.anonid.top/warden/genesis.json > $HOME/.warden/config/genesis.json 
curl -Ls https://storage.anonid.top/warden/addrbook.json > $HOME/.warden/config/addrbook.json

5.5. Create Service and enable startup

sudo tee /etc/systemd/system/wardend.service > /dev/null <<EOF
[Unit]
Description=wardend
After=network-online.target
[Service]
User=root
ExecStart=/usr/bin/wardend start
Restart=always
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable wardend

5.6. Create quick log check tool

echo "sudo journalctl -u wardend -f" > ~/log && chmod +x ~/log

5.7. Download snapshort (itrocket snapshot)

wardend tendermint unsafe-reset-all --home $HOME/.warden --keep-addr-book

wget -O- https://server-4.itrocket.net/testnet/warden/warden_2024-10-26_58967_snap.tar.lz4 | tar -Ilz4 -xf - -C $HOME/.warden


#Check log
sudo systemctl restart wardend && sudo journalctl -u wardend -f

OR

~/log

6. Create or import wallet

6.1. Add wallet key

You have 2 option:

6.1.1. Add new wallet key

wardend keys add $WALLET

Important: Save this output information, if you lost it, you can't recovery your wallet

6.1.2. Recover existing wallet key

wardend keys add $WALLET --recover

6.2. List all keys

wardend keys list

6.3. Make faucet

Visit faucet link at https://faucet.chiado.wardenprotocol.org, submit your wallet address to get faucet.

6.4. Query wallet balance

wardend q bank balances $(wardend keys show $WALLET -a)

Make sure your wallet have a balance

7. Check sync status

If it show "false", it mean no need to wait node sync data or node is synced

wardend status 2>&1 | jq .sync_info

8. Create Validator

Change your info, include indentity, website, security, details. All of it is optional.

  • Your_Identiry: Your keybase.io ID (64-bit)
  • Your_Website: Your website (if you have)
  • Your_Security: Normaly is your email
  • Your_Details: Your slogan to show in validator page
Identiry=<Your_Identiry>
Website=<Your_Website>
Security=<Your_Security>
Details=<Your_Details>

sudo tee $HOME/validator.json > /dev/null <<EOF
{
"pubkey": ${WALLET},
"amount": "1000000000000000000award",
"moniker": "${MONIKER}",
"identity": "${Identiry}",
"website": "${Website}",
"security": "${Security}",
"details": "${Details}",
"commission-rate": "0.1",
"commission-max-rate": "0.2",
"commission-max-change-rate": "0.01",
"min-self-delegation": "1"
}
EOF

8.1. Submit the transaction to create the validator:

wardend tx staking create-validator $HOME/validator.json --from $WALLET --chain-id $WARDEN_CHAIN_ID --node $WARDEN_NODE_RPC --gas auto --gas-adjustment 1.6 --fees 250000000000000award -y

When command complete, you should copy TXHash and check transactions at https://explorer.anonid.top/warden/tx (copy hash to find or paste it after click to search icon and press Enter) to verify this transactions is success or failed and then check your validator name in staking page of explorer at https://explorer.anonid.top/warden/staking. Remember check in Inactive tab, because at now, only 100 top validator can be show in Active tab.

9. Validator command

9.1. Delegate token to your own validator

10000000000000000000000 award = 1 WARD

AmountDelegate=10000000000000000000000
wardend tx staking delegate $(wardend keys show validator --bech val -a) ${AmountDelegate}award --from $WALLET --chain-id $WARDEN_CHAIN_ID --node $WARDEN_NODE_RPC --gas auto --gas-adjustment 1.6 --fees 250000000000000award -y

10. Services Management

10.1. Start service

sudo service wardend start

10.2. Stop service

sudo service wardend stop 

10.3. Restart service

sudo service wardend restart 

10.4. Check service status

sudo systemctl wardend status 

10.5. Check service logs

sudo journalctl -u wardend -f --no-hostname -o cat

or

~/log

11. Backup Validator - Important

cat $HOME/.junction/config/priv_validator_key.json

Copy and store your node information in safe location. Don't forget backup your wallet at #Add wallet key