SafroChain Testnet Cheat Sheet and Key Management
This guide provides essential commands for managing wallets, nodes, and validators on the SafroChain Testnet network. Make sure the environment variables mentioned at the end are correctly configured before using these commands.
1. Key Management
Create a New Wallet
⚠️ Important: Keep the generated seed phrase safe. It is the only way to recover your wallet.
safrod keys add $WALLET Recover Wallet from Seed Phrase
safrod keys add $WALLET --recover List Wallets
safrod keys list Show Wallet Details
safrod keys show $WALLET Delete Wallet
safrod keys delete $WALLET 2. Wallet Operations
Check Balance
safrod query bank balances $(safrod keys show $WALLET -a) Send Tokens
safrod tx bank send $WALLET <recipient_address> <amount>usaf --chain-id safro-testnet-1 --gas auto --gas-adjustment 1.5 --fees 500usaf 3. Validator Management
💡 Note: Ensure you have enough tokens for self-delegation and transaction fees before creating a validator.
Create Validator
safrod tx staking create-validator \\
--amount 1000000usaf \\
--from $WALLET \\
--commission-rate 0.1 \\
--commission-max-rate 0.2 \\
--commission-max-change-rate 0.01 \\
--min-self-delegation 1 \\
--pubkey $(safrod tendermint show-validator) \\
--moniker "$MONIKER" \\
--identity "" \\
--website "" \\
--details "Your validator description" \\
--security-contact "your@email.com" \\
--chain-id safro-testnet-1 \\
--gas auto --gas-adjustment 1.5 \\
--fees 500usaf Edit Validator
safrod tx staking edit-validator \\
--new-moniker "$MONIKER" \\
--identity "" \\
--website "" \\
--details "Your validator description" \\
--chain-id safro-testnet-1 \\
--from $WALLET \\
--gas auto --gas-adjustment 1.5 \\
--fees 500usaf Delegate Tokens
safrod tx staking delegate $(safrod keys show $WALLET --bech val -a) 1000000usaf --from $WALLET --chain-id safro-testnet-1 --gas auto --gas-adjustment 1.5 --fees 500usaf Withdraw Rewards (Delegator)
safrod tx distribution withdraw-rewards $(safrod keys show $WALLET --bech val -a) --from $WALLET --chain-id safro-testnet-1 --gas auto --gas-adjustment 1.5 --fees 500usaf Withdraw Rewards (Validator Commission)
safrod tx distribution withdraw-rewards $(safrod keys show $WALLET --bech val -a) --commission --from $WALLET --chain-id safro-testnet-1 --gas auto --gas-adjustment 1.5 --fees 500usaf Unbond Tokens
safrod tx staking unbond $(safrod keys show $WALLET --bech val -a) 1000000usaf --from $WALLET --chain-id safro-testnet-1 --gas auto --gas-adjustment 1.5 --fees 500usaf Redelegate Tokens
safrod tx staking redelegate $(safrod keys show $WALLET --bech val -a) <destination_validator_address> 1000000usaf --from $WALLET --chain-id safro-testnet-1 --gas auto --gas-adjustment 1.5 --fees 500usaf 4. Node Status & Info
Check Sync Status
safrod status 2>&1 | jq .SyncInfo Check Peer Info
curl -s localhost:26657/net_info | jq -r '.result.peers[] | "\\(.node_info.id)@\\(.remote_ip):\\(.node_info.listen_addr | split(":")[2])"' Show Node ID
safrod tendermint show-node-id Restart Node
sudo systemctl restart safrod View Node Logs
sudo journalctl -u safrod -f -o cat 5. Governance
List Proposals
safrod query gov proposals View Proposal Details
safrod query gov proposal <proposal_id> Vote on Proposal
safrod tx gov vote <proposal_id> yes --from $WALLET --chain-id safro-testnet-1 --gas auto --gas-adjustment 1.5 --fees 500usaf 6. Environment Variables
💡 Tip: Make sure to set these in your
~/.bash_profile or equivalent shell config.
echo "export WALLET=\"wallet\"" >> $HOME/.bash_profile
echo "export MONIKER=\"your-moniker\"" >> $HOME/.bash_profile
echo "export CHAIN_ID=\"safro-testnet-1\"" >> $HOME/.bash_profile
source $HOME/.bash_profile This cheat sheet is provided to streamline SafroChain Testnet validator and wallet management. All commands use environment variables for easier management.