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 $WALLET
Keep the generated seed phrase safe. It is the only way to recover your wallet.
Recover Wallet from Seed Phrase
bash
safrochaind keys add $WALLET --recover
You will be prompted to enter your seed phrase.
List Wallets
bash
safrochaind keys list
Show Wallet Details
bash
safrochaind keys show $WALLET
Delete Wallet
bash
safrochaind keys delete $WALLET
2. 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 -y
Example:
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 -y
Replace <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 \
-y
Delegate 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 \
-y
Withdraw 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 \
-y
Withdraw 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 \
-y
Unbond 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 \
-y
Redelegate 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 \
-y
4. Node Status & Info
Check Sync Status
bash
safrochaind status 2>&1 | jq .result.sync_info
Check Peer Info
bash
safrochaind status 2>&1 | jq .result.sync_info.catching_up
safrochaind status 2>&1 | jq .result.node_info.listen_addr
Show Node ID
bash
safrochaind tendermint show-node-id
Restart Node
bash
sudo systemctl restart safrochaind
View Node Logs
bash
sudo journalctl -u safrochaind -fo cat
5. Governance
List Proposals
bash
safrochaind query gov proposals
View 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 \
-y
6. 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="safrochain-mainnet-1"
export SAFROCHAIN_PORT="13"
Apply the changes with:
bash
source ~/.bash_profile
This cheat sheet is provided to streamline safrochain validator and wallet management.