Lumen Cheat Sheet and Key Management
This guide provides essential commands for managing wallets, nodes, and validators on the Lumen network. Make sure the environment variables mentioned at the end are correctly configured before using these commands.
Set Environment Variables
Configuration:
Generated Code:
Loading...1. Key Management
Create a New Wallet
lumend keys add $WALLETKeep the generated seed phrase safe. It is the only way to recover your wallet.
Recover Wallet from Seed Phrase
lumend keys add $WALLET --recoverYou will be prompted to enter your seed phrase.
List Wallets
lumend keys listShow Wallet Details
lumend keys show $WALLETDelete Wallet
lumend keys delete $WALLET2. PQC Key Management (Dilithium - Quantum-Resistant)
Lumen requires a Dilithium PQC key for all transactions (dual-sign with ed25519).
Warning: Losing either key (ed25519 or PQC) = permanent loss of funds/validator power.
Always backup hex values and keystore immediately.
Generate PQC Wallet
lumend keys pqc-generate $PQC_WALLETOutput includes:
Public (Hex)andPrivate (Hex)Immediately copy and backup both hex values securely (offline, encrypted, multiple locations). These are your master keys for PQC signing.
Import PQC Hex
cat > ~/pqc_public_hex.txt << 'EOF'
PASTE_PUBLIC_KEY_HEX_HERE
EOFcat > ~/pqc_private_hex.txt << 'EOF'
PASTE_PRIVATE_KEY_HEX_HERE
EOFImport PQC Wallet
lumend keys pqc-import \
--name $PQC_WALLET \
--privkey "$(cat ~/pqc_private_hex.txt)" \
--pubkey "$(cat ~/pqc_public_hex.txt)" \
--scheme dilithium3Optional: Add
--pqc-passphrase "strong-passphrase"for encryption.
Link PQC to Cosmos Wallet (Required for Dual-Sign)
lumend keys pqc-link \
--from $WALLET \
--pqc $PQC_WALLET \Enter keyring passphrase when prompted.
Verify PQC Setup
lumend keys pqc-list # List PQC keys & linked wallets
lumend keys pqc-show wallet-pqc # Show details of one PQC keySecure Cleanup (After Import & Link)
shred -u ~/pqc_private_hex.txt ~/pqc_public_hex.txtNever leave hex files on disk! Backup hex offline first.
Link PQC Wallet on-chain
Requirement: Wallet must have ≥ 0.001 LMN (1000 ulmn) to execute this tx.
This is a DAO-governed parameter (dilithium3 min) and may change via governance.
lumend tx pqc link-account \
--from $WALLET \
--pubkey "$(lumend keys pqc-show $PQC_WALLET | grep 'PubKey (hex)' | sed 's/.*: *//')" \
--scheme dilithium3 \
--chain-id $LUMEN_CHAIN_ID \
--gas auto \
--gas-prices 0ulmn \
--node https://lumen-rpc.linknode.org \
--yesVerify PQC Wallet on-chain
lumend query pqc account $(lumend keys show $WALLET -a) --node https://lumen-rpc.linknode.org3. Wallet Operations
Check Balance
lumend query bank balances $(lumend keys show $WALLET -a)Send Tokens
lumend tx bank send $(lumend keys show $WALLET -a) <receiver_wallet_address> <amount><denom> --chain-id $LUMEN_CHAIN_ID --gas-prices 0ulmn --gas-adjustment 1.5 --gas auto -yExample:
lumend tx bank send $(lumend keys show $WALLET -a) lmn1...yyy 1000000ulmn --chain-id $LUMEN_CHAIN_ID --gas-prices 0ulmn --gas-adjustment 1.5 --gas auto -yReplace
<amount>with the number of tokens and<denom>with the token denomination (e.g.,ulmn).
Check tx hash
lumend query tx <hash> --node https://lumen-rpc.linknode.orgYou need indexer RPC to query tx status.
4. Node Management
Before running, ensure:
- Node is fully synced (
lumend status→catching_up: false) - Wallet has enough
ulmnfor self-delegation - PQC is registered on-chain, see here
Create Validator
Configuration:
Generated Code:
Loading...Parameter Explanation:
| Parameter | Details |
|---|---|
--amount | Tokens self-delegated to the validator. 1000000ulmn = 1 LMN |
--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
lumend tx staking edit-validator \
--moniker "<new_moniker>" \
--identity "<new_keybase_id>" \
--website "<new_website>" \
--security-contact "<new_contact_email>" \
--details "<new_description>" \
--commission-rate "0.07" \
--chain-id $LUMEN_CHAIN_ID \
--gas-prices 0ulmn \
--gas-adjustment 1.5 \
--gas auto \
--from $WALLET \
-yDelegate Tokens
lumend tx staking delegate $(lumend keys show $WALLET --bech val -a) <amount>ulmn \
--chain-id $LUMEN_CHAIN_ID \
--gas-prices 0ulmn \
--gas-adjustment 1.5 \
--gas auto \
--from $WALLET \
-yWithdraw Rewards (Delegator)
lumend tx distribution withdraw-rewards $(lumend keys show $WALLET --bech val -a) \
--chain-id $LUMEN_CHAIN_ID \
--gas-prices 0ulmn \
--gas-adjustment 1.5 \
--gas auto \
--from $WALLET \
-yWithdraw Rewards (Validator Commission)
lumend tx distribution withdraw-rewards $(lumend keys show $WALLET --bech val -a) --commission \
--chain-id $LUMEN_CHAIN_ID \
--gas-prices 0ulmn \
--gas-adjustment 1.5 \
--gas auto \
--from $WALLET \
-yUnbond Tokens
lumend tx staking unbond $(lumend keys show $WALLET --bech val -a) <amount>ulmn \
--chain-id $LUMEN_CHAIN_ID \
--gas-prices 0ulmn \
--gas-adjustment 1.5 \
--gas auto \
--from $WALLET \
-yRedelegate Tokens
lumend tx staking redelegate $(lumend keys show $WALLET --bech val -a) <destination_validator_address> <amount>ulmn \
--chain-id $LUMEN_CHAIN_ID \
--gas-prices 0ulmn \
--gas-adjustment 1.5 \
--gas auto \
--from $WALLET \
-yValidator Recovery (Unjail)
lumend tx slashing unjail \
--from $WALLET \
--chain-id $LUMEN_CHAIN_ID \
--gas auto \
--gas-prices 0ulmn \
--node https://lumen-rpc.linknode.org \
--yes5. Node Status & Info
Check Sync Status
lumend status 2>&1 | jq .result.sync_infoCheck Peer Info
lumend status 2>&1 | jq .result.sync_info.catching_up
lumend status 2>&1 | jq .result.node_info.listen_addrShow Node ID
lumend tendermint show-node-idRestart Node
sudo systemctl restart lumendView Node Logs
sudo journalctl -u lumend -fo cat6. Governance
List Proposals
lumend query gov proposalsView Proposal Details
lumend query gov proposal <proposal_id>Vote on Proposal
lumend tx gov vote <proposal_id> <yes|no|no_with_veto|abstain> \
--chain-id $LUMEN_CHAIN_ID \
--gas-prices 0ulmn \
--gas-adjustment 1.5 \
--gas auto \
--from $WALLET \
-y7. Environment Variables
Make sure to set these in your ~/.bash_profile or equivalent shell config:
export WALLET="wallet"
export MONIKER="YourMoniker"
export LUMEN_CHAIN_ID="lumen"
export LUMEN_PORT="13"Apply the changes with:
source ~/.bash_profileThis cheat sheet is provided to streamline Lumen validator and wallet management.
