Wallet CLI
The norn binary includes a full-featured wallet CLI for key management, transfers, NornNames, custom tokens, Loom smart contracts, and more.
Wallets are stored in ~/.norn/wallets/ with Argon2id key derivation and XChaCha20-Poly1305 authenticated encryption.
Creating and Managing Wallets
# Create a new wallet
norn wallet create --name alice
# List wallets
norn wallet list
# View active wallet dashboard
norn wallet whoami
# Export wallet (shows private key)
norn wallet export alice --show-private-keyChecking Balances
# Native NORN balance
norn wallet balance --address <ADDRESS>
# Custom token balance by symbol
norn wallet balance --token MTK
# All token balances for active wallet
norn wallet token-balancesSending Transfers
# Send native NORN (by address or NornName)
norn wallet transfer --to <ADDRESS_OR_NAME> --amount <AMOUNT>
# Send custom tokens
norn wallet transfer --to <ADDRESS_OR_NAME> --amount 100 --token MTK
# Alias: 'send' works the same as 'transfer'
norn wallet send --to alice --amount 10The --token flag accepts token symbols (e.g., MTK), NORN/native for the native token, or a 64-character hex token ID.
NornNames (NNS)
# Register a NornName (costs 1 NORN, burned)
norn wallet register-name --name alice
# Resolve a NornName to its owner address
norn wallet resolve --name alice
# List names owned by active wallet
norn wallet names
# Transfer a name to another address
norn wallet transfer-name --name alice --to 0x<ADDRESS>
# Reverse-resolve an address to its primary NNS name
norn wallet reverse-name --address 0x<ADDRESS>
# Attach a record to a name (avatar, url, description, twitter, github, email, discord)
norn wallet set-name-record --name alice --key avatar --value "https://example.com/avatar.png"
# View all records for a name
norn wallet name-records aliceNames work seamlessly in transfers -- pass a NornName instead of a hex address. See the NornNames documentation for details on name records, reverse resolution, and transfer mechanics.
Token Management
# Create a custom fungible token (costs 10 NORN, burned)
norn wallet create-token --name "My Token" --symbol MTK --decimals 8 \
--max-supply 1000000 --initial-supply 1000
# Mint tokens (creator only)
norn wallet mint-token --token MTK --to 0x<ADDRESS> --amount 500
# Burn tokens (any holder)
norn wallet burn-token --token MTK --amount 100
# Query token metadata
norn wallet token-info MTK
# List all registered tokens
norn wallet list-tokensLoom Smart Contracts
# Deploy a loom (costs 50 NORN, burned)
norn wallet deploy-loom --name my-contract
# Upload bytecode
norn wallet upload-bytecode --loom-id <LOOM_ID> --bytecode path/to/contract.wasm
# Execute a contract
norn wallet execute-loom --loom-id <LOOM_ID> --input 01
# Query a contract (read-only)
norn wallet query-loom --loom-id <LOOM_ID>
# Join/leave a loom
norn wallet join-loom --loom-id <LOOM_ID>
norn wallet leave-loom --loom-id <LOOM_ID>
# Query loom metadata
norn wallet loom-info <LOOM_ID>
# List all deployed looms
norn wallet list-loomsValidator Rewards
# View pending epoch fees and projected validator reward distribution
norn wallet rewards
# JSON output
norn wallet rewards --jsonThe rewards command shows the current epoch fees being accumulated, blocks remaining until the next distribution, and a per-validator breakdown of projected rewards based on stake weight.
Configuration
# Configure network
norn wallet config --network testnet
# Configure RPC URL
norn wallet config --rpc-url http://my-node:9741
# Check node connectivity
norn wallet node-info
# View current fees
norn wallet fees
# View validator set
norn wallet validators