Humans.AI validator setup

Orangeclub
2 min readMay 2, 2023

Today I will provide instructions on how to create and run your own Humans.AI validator! First of all I send gentx with the following commands:

git clone https://github.com/humansdotai/humans
cd humans && git checkout tags/v0.1.0
make install
humansd init OranG3cluB --chain-id=humans_3000-1
humansd keys add wallet
humansd add-genesis-account $(humansd keys show wallet -a) 1000000000000000000aheart

humansd gentx wallet 1000000000000000000aheart \
--chain-id=humans_3000-1 \
--moniker=OranG3cluB \
--details="We love oranges!" \
--commission-rate=0.05 \
--commission-max-rate=0.2 \
--commission-max-change-rate=0.01 \
--pubkey $(humansd tendermint show-validator) \
--identity="10F80CDB310C19FD"

humansd collect-gentxs
humansd validate-genesis

After that I forked this repository: https://github.com/humansdotai/testnets
Then rename & upload my gentx file OranG3cluB.json and send pull request.
After that, when all gentxs were collected from all validators, the developers uploaded a new genesis.json to github, downloading which I set up cosmovisor and prepared for launch as follows. So, download new genesis:

cd ~/.humansd/config/
wget https://raw.githubusercontent.com/humansdotai/testnets/master/friction/mission-1/genesis.json
chmod +x genesis.json

Prepare cosmovisor & service file:

wget https://github.com/cosmos/cosmos-sdk/releases/download/cosmovisor%2Fv1.3.0/cosmovisor-v1.3.0-linux-amd64.tar.gz
tar -xf cosmovisor-v1.3.0-linux-amd64.tar.gz
rm cosmovisor-v1.3.0-linux-amd64.tar.gz
chmod +x cosmovisor
sudo mv cosmovisor /home/humans/go/bin/
mkdir -p ${HOME}/.humansd/cosmovisor/genesis/bin
mkdir -p ${HOME}/.humansd/cosmovisor/upgrades/v0.44/bin
cp $(which humansd) ${HOME}/.humansd/cosmovisor/genesis/bin/
ln -s -T ${HOME}/.humansd/cosmovisor/genesis ${HOME}/.humansd/cosmovisor/current
ls /home/humans/.humansd/cosmovisor/ -lh

cat <<'EOF' >>$HOME/.profile
export DAEMON_NAME=humansd
export DAEMON_HOME=$HOME/.humansd
EOF

source ~/.profile
sudo nano /etc/systemd/system/humans.service

Description=Cosmovisor Humans Service
After=network-online.target
[Service]
User=humans
Environment=DAEMON_NAME=humansd
Environment=DAEMON_RESTART_AFTER_UPGRADE=true
Environment=DAEMON_HOME=/home/humans/.humansd
Environment=UNSAFE_SKIP_BACKUP=true
Environment=DAEMON_LOG_BUFFER_SIZE=512
Environment=DAEMON_ALLOW_DOWNLOAD_BINARIES=false
ExecStart=/home/humans/go/bin/cosmovisor run start
Restart=always
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target

After that I enable metrics exporter & expose ports following official instructions here: https://github.com/humansdotai/testnets/blob/master/Install.md

I also added some peers from other nodes, that I found in discord validators chat:

nano ~/.humansd/config/config.toml
#find following string & added peers there: persistent_peers = ""

And i’m ready to go now! I start my node & check logs:

sudo systemctl enable humans.service && sudo systemctl start humans.service
sudo journalctl -u humans -f

In logs I need to find the following message: “This node is a validator” and also information about genesis time. All the information was in place, so I was ready and successfully started my validator!

Our website: https://orang3.club/

--

--