safrochain Cheat Sheet and Key Management
This guide provides essential commands for managing wallets, nodes, and validators on the safrochain network. Make sure the environment variables mentioned at the end are correctly configured before using these commands.
1. Key Management
Create a New Wallet
bash
safrochaind keys add $WALLETKeep the generated seed phrase safe. It is the only way to recover your wallet.
Recover Wallet from Seed Phrase
bash
safrochaind keys add $WALLET --recoverYou will be prompted to enter your seed phrase.
List Wallets
bash
safrochaind keys listShow Wallet Details
bash
safrochaind keys show $WALLETDelete Wallet
bash
safrochaind keys delete $WALLET2. Wallet Operations
Check Balance
bash
safrochaind query bank balances $(safrochaind keys show $WALLET -a)Send Tokens
bash
safrochaind tx bank send $(safrochaind keys show $WALLET -a) <receiver_wallet_address> <amount><denom> --chain-id $safrochain_CHAIN_ID --gas-prices 0.0001usaf --gas-adjustment 1.5 --gas auto -yExample:
bash
safrochaind tx bank send $(safrochaind keys show $WALLET -a) safrochain1...yyy 1000000usaf --chain-id $safrochain_CHAIN_ID --gas-prices 0.0001usaf --gas-adjustment 1.5 --gas auto -yReplace <amount> with the number of tokens and <denom> with the token denomination (e.g., usaf).
3. Validator Management
Ensure you have enough usaf tokens for self-delegation and transaction fees before creating a validator.
Create Validator
Configuration:
Generated Code:
Loading...Parameter Explanation:
| Parameter | Details |
|---|---|
--amount | Tokens self-delegated to the validator. 1000000usaf = 1 SAF |
--from | Wallet used for the transaction. |
--commission-rate | Initial commission rate. |
--commission-max-rate | Maximum allowed commission rate. |
--commission-max-change-rate | Max daily commission change. |
--min-self-delegation | Minimum tokens for self-delegation. |
--pubkey | Validator's public key. |
--moniker | Validator nickname. |
--identity | Keybase ID for identity verification. |
--website | Validator's website URL. |
--details | Validator description. |
--security-contact | Email for security-related contact. |
Edit Validator
bash
safrochaind tx staking edit-validator \
--moniker "$MONIKER" \
--identity "<new_keybase_id>" \
--website "<new_website>" \
--security-contact "<new_contact_email>" \
--details "<new_description>" \
--commission-rate "0.07" \
--chain-id $safrochain_CHAIN_ID \
--gas-prices 0.0001usaf \
--gas-adjustment 1.5 \
--gas auto \
--from $WALLET \
-yDelegate Tokens
bash
safrochaind tx staking delegate $(safrochaind keys show $WALLET --bech val -a) <amount>usaf \
--chain-id $safrochain_CHAIN_ID \
--gas-prices 0.0001usaf \
--gas-adjustment 1.5 \
--gas auto \
--from $WALLET \
-yWithdraw Rewards (Delegator)
bash
safrochaind tx distribution withdraw-rewards $(safrochaind keys show $WALLET --bech val -a) \
--chain-id $safrochain_CHAIN_ID \
--gas-prices 0.0001usaf \
--gas-adjustment 1.5 \
--gas auto \
--from $WALLET \
-yWithdraw Rewards (Validator Commission)
bash
safrochaind tx distribution withdraw-rewards $(safrochaind keys show $WALLET --bech val -a) --commission \
--chain-id $safrochainD_CHAIN_ID \
--gas-prices 0.0001usaf \
--gas-adjustment 1.5 \
--gas auto \
--from $WALLET \
-yUnbond Tokens
bash
safrochaind tx staking unbond $(safrochaind keys show $WALLET --bech val -a) <amount>usaf \
--chain-id $safrochain_CHAIN_ID \
--gas-prices 0.0001usaf \
--gas-adjustment 1.5 \
--gas auto \
--from $WALLET \
-yRedelegate Tokens
bash
safrochaind tx staking redelegate $(safrochaind keys show $WALLET --bech val -a) <destination_validator_address> <amount>usaf \
--chain-id $safrochain_CHAIN_ID \
--gas-prices 0.0001usaf \
--gas-adjustment 1.5 \
--gas auto \
--from $WALLET \
-y4. Node Status & Info
Check Sync Status
bash
safrochaind status 2>&1 | jq .result.sync_infoCheck Peer Info
bash
safrochaind status 2>&1 | jq .result.sync_info.catching_up
safrochaind status 2>&1 | jq .result.node_info.listen_addrShow Node ID
bash
safrochaind tendermint show-node-idRestart Node
bash
sudo systemctl restart safrochaindView Node Logs
bash
sudo journalctl -u safrochaind -fo cat5. Governance
List Proposals
bash
safrochaind query gov proposalsView Proposal Details
bash
safrochaind query gov proposal <proposal_id>Vote on Proposal
bash
safrochaind tx gov vote <proposal_id> <yes|no|no_with_veto|abstain> \
--chain-id $safrochain_CHAIN_ID \
--gas-prices 0.0001usaf \
--gas-adjustment 1.5 \
--gas auto \
--from $WALLET \
-y6. Environment Variables
Make sure to set these in your ~/.bash_profile or equivalent shell config:
bash
export WALLET="wallet"
export MONIKER="YourMoniker"
export SAFROCHAIN_ID="safro-testnet-1"
export SAFROCHAIN_PORT="13"Apply the changes with:
bash
source ~/.bash_profileThis cheat sheet is provided to streamline safrochain validator and wallet management.