Cosmos SDK Modules
Reference for all active Cosmos SDK modules on Monolythium. Each section covers the module's purpose, key queries, key transactions, and governance-adjustable parameters.
auth
Account management, authentication, and sequence tracking.
Purpose: Maintains account state (address, public key, sequence number). All transaction signature verification flows through this module.
Key Queries:
# Get account info (sequence, pub key, account number)
monod query auth account mono1abc... --output json
# Get module account (e.g., fee_collector, distribution)
monod query auth module-account fee_collector
# Get all auth parameters
monod query auth params
Key Transactions: None (auth is read-only; accounts are created implicitly on first receive or send).
Parameters:
| Parameter | Value | Governance |
|---|---|---|
max_memo_characters | 256 | Yes |
tx_sig_limit | 7 | Yes |
sig_verify_cost_ed25519 | 590 | Yes |
sig_verify_cost_secp256k1 | 1000 | Yes |
bank
Token transfers, balance queries, and supply tracking.
Purpose: Handles all native token transfers (alyth), maintains balance state, and tracks total supply including burned amounts.
Key Queries:
# Query account balance
monod query bank balances mono1abc...
# Query specific denomination
monod query bank balances mono1abc... --denom alyth
# Query total supply
monod query bank total
# Query supply of a specific denom
monod query bank total --denom alyth
# Check denomination metadata
monod query bank denom-metadata --denom alyth
Key Transactions:
# Send tokens
monod tx bank send <from-key> mono1recipient... 1000000000000000000alyth \
--chain-id mono_6940-1 --keyring-backend file --yes
# Multi-send (multiple recipients in one tx)
monod tx bank multi-send <from-key> mono1recip1... mono1recip2... 1000000000000000000alyth \
--chain-id mono_6940-1 --keyring-backend file --yes
Parameters:
| Parameter | Value | Governance |
|---|---|---|
send_enabled | true (for alyth) | Yes |
default_send_enabled | true | Yes |
staking
Validator set management, delegation, and unbonding.
Purpose: Manages the active validator set, handles delegation and undelegation of alyth, and coordinates validator set updates at the end of each block.
Key Queries:
# List all validators
monod query staking validators
# Query a specific validator
monod query staking validator monovaloper1abc...
# Query delegations for a delegator
monod query staking delegations mono1abc...
# Query a specific delegation
monod query staking delegation mono1abc... monovaloper1xyz...
# Query unbonding delegations
monod query staking unbonding-delegations mono1abc...
# Query redelegations
monod query staking redelegations mono1abc...
# Query staking pool (bonded vs unbonded)
monod query staking pool
Key Transactions:
# Delegate tokens
monod tx staking delegate monovaloper1abc... 100000000000000000000alyth \
--from mykey --chain-id mono_6940-1 --keyring-backend file --yes
# Undelegate tokens (begins unbonding period)
monod tx staking unbond monovaloper1abc... 50000000000000000000alyth \
--from mykey --chain-id mono_6940-1 --keyring-backend file --yes
# Redelegate (move delegation between validators)
monod tx staking redelegate monovaloper1src... monovaloper1dst... 50000000000000000000alyth \
--from mykey --chain-id mono_6940-1 --keyring-backend file --yes
Parameters:
| Parameter | Value | Governance |
|---|---|---|
max_validators | 53 | Yes |
unbonding_time | 259,200s (3 days) | Yes |
bond_denom | alyth | No |
max_entries | 7 | Yes |
historical_entries | 10,000 | Yes |
slashing
Validator signing enforcement, jailing, and unjailing.
Purpose: Monitors validator uptime. Validators that miss too many blocks are jailed (removed from the active set) and may have their stake slashed.
Key Queries:
# Query validator signing info
monod query slashing signing-info monovalcons1abc...
# Query slashing parameters
monod query slashing params
Key Transactions:
# Unjail a jailed validator (after downtime jail period)
monod tx slashing unjail \
--from validator-key --chain-id mono_6940-1 --keyring-backend file --yes
Parameters:
| Parameter | Value | Governance |
|---|---|---|
signed_blocks_window | 100 | Yes |
min_signed_per_window | 0.50 (50%) | Yes |
slash_fraction_downtime | 0.01 (1%) | Yes |
slash_fraction_double_sign | 0.05 (5%) | Yes |
downtime_jail_duration | 600s (10 min) | Yes |
Double signing results in a 5% slash of the validator's total stake (including delegators) and permanent tombstoning. The validator cannot rejoin the active set.
distribution
Block rewards, validator commission, and community tax.
Purpose: Distributes block rewards (from inflation) to validators and delegators based on voting power. Collects a community tax for the community pool.
Key Queries:
# Query outstanding rewards for a validator
monod query distribution validator-outstanding-rewards monovaloper1abc...
# Query delegator rewards from a specific validator
monod query distribution rewards mono1abc... monovaloper1xyz...
# Query all delegator rewards
monod query distribution rewards mono1abc...
# Query community pool
monod query distribution community-pool
# Query commission earned by a validator
monod query distribution commission monovaloper1abc...
Key Transactions:
# Withdraw rewards from a specific validator
monod tx distribution withdraw-rewards monovaloper1abc... \
--from mykey --chain-id mono_6940-1 --keyring-backend file --yes
# Withdraw all rewards from all validators
monod tx distribution withdraw-all-rewards \
--from mykey --chain-id mono_6940-1 --keyring-backend file --yes
# Withdraw validator commission (validators only)
monod tx distribution withdraw-rewards monovaloper1abc... --commission \
--from validator-key --chain-id mono_6940-1 --keyring-backend file --yes
Parameters:
| Parameter | Value | Governance |
|---|---|---|
community_tax | 0.10 (10%) | Yes |
base_proposer_reward | 0.00 | Yes |
bonus_proposer_reward | 0.00 | Yes |
withdraw_addr_enabled | true | Yes |
gov
Governance proposals, voting, and deposits.
Purpose: Allows on-chain governance through proposals. Token holders vote to approve or reject parameter changes, software upgrades, and community pool spends.
Key Queries:
# List all proposals
monod query gov proposals
# Query a specific proposal
monod query gov proposal 1
# Query votes on a proposal
monod query gov votes 1
# Query your vote on a proposal
monod query gov vote 1 mono1abc...
# Query deposits on a proposal
monod query gov deposits 1
# Query governance parameters
monod query gov params
Key Transactions:
# Submit a text proposal
monod tx gov submit-proposal draft_proposal.json \
--from mykey --chain-id mono_6940-1 --keyring-backend file --yes
# Deposit to a proposal
monod tx gov deposit 1 10000000000000000000000alyth \
--from mykey --chain-id mono_6940-1 --keyring-backend file --yes
# Vote on a proposal
monod tx gov vote 1 yes \
--from mykey --chain-id mono_6940-1 --keyring-backend file --yes
# Vote options: yes, no, no_with_veto, abstain
Parameters:
| Parameter | Value | Governance |
|---|---|---|
min_deposit | 10,000 LYTH (10000000000000000000000alyth) | Yes |
max_deposit_period | 172,800s (2 days) | Yes |
voting_period | 432,000s (5 days) | Yes |
quorum | 0.334 (33.4%) | Yes |
threshold | 0.50 (50%) | Yes |
veto_threshold | 0.334 (33.4%) | Yes |
mint
Block reward minting and inflation.
Purpose: Mints new alyth tokens each block according to a fixed inflation rate. Minted tokens are sent to the fee_collector module account for distribution.
Key Queries:
# Query current inflation rate
monod query mint inflation
# Query annual provisions
monod query mint annual-provisions
# Query mint parameters
monod query mint params
Key Transactions: None (minting is automatic).
Parameters:
| Parameter | Value | Governance |
|---|---|---|
inflation_rate_change | 0.00 (fixed) | Yes |
inflation_max | 0.08 (8%) | Yes |
inflation_min | 0.08 (8%) | Yes |
goal_bonded | 0.67 (67%) | Yes |
blocks_per_year | 15,768,000 | Yes |
mint_denom | alyth | No |
Both inflation_max and inflation_min are set to 8%, making the inflation rate fixed regardless of the bonding ratio. This simplifies economic modeling and ensures predictable issuance.
evidence
Double-sign evidence submission and processing.
Purpose: Accepts and processes evidence of validator misbehavior (double signing). When valid evidence is submitted, the offending validator is slashed and tombstoned.
Key Queries:
# List all evidence
monod query evidence
# Query specific evidence
monod query evidence <evidence-hash>
Key Transactions: Evidence is typically submitted automatically by consensus. Manual submission is possible but rarely needed:
monod tx evidence submit <evidence-json> \
--from mykey --chain-id mono_6940-1 --keyring-backend file --yes
Parameters:
| Parameter | Value | Governance |
|---|---|---|
max_age_num_blocks | 100,000 | Yes |
max_age_duration | 172,800s (2 days) | Yes |
feegrant
Fee grants for sponsored transactions.
Purpose: Allows one account (the granter) to pay transaction fees on behalf of another account (the grantee). Useful for onboarding new users who do not hold LYTH.
Key Queries:
# Query grants for a grantee
monod query feegrant grants-by-grantee mono1grantee...
# Query grants by a granter
monod query feegrant grants-by-granter mono1granter...
Key Transactions:
# Grant a basic fee allowance
monod tx feegrant grant mono1granter... mono1grantee... \
--spend-limit 100000000000000000000alyth \
--chain-id mono_6940-1 --keyring-backend file --yes
# Grant with expiration
monod tx feegrant grant mono1granter... mono1grantee... \
--spend-limit 100000000000000000000alyth \
--expiration "2027-12-31T23:59:59Z" \
--chain-id mono_6940-1 --keyring-backend file --yes
# Revoke a grant
monod tx feegrant revoke mono1granter... mono1grantee... \
--chain-id mono_6940-1 --keyring-backend file --yes
See Gas & Fee Mechanics for detailed fee grant usage.
x/validator
Custom module. Validator registration with mandatory burn deposit.
Purpose: Enforces Monolythium's validator registration process. Prospective validators must burn 100,000 LYTH and self-delegate 100,000 LYTH to register. This creates a significant economic commitment and reduces supply.
Key Queries:
# Query validator registration info
monod query validator info monovaloper1abc...
# Query registration parameters
monod query validator params
Key Transactions:
# Register as a validator (burns 100K LYTH + requires 100K self-delegation)
monod tx validator register \
--amount 100000000000000000000000alyth \
--pubkey '{"@type":"/cosmos.crypto.ed25519.PubKey","key":"..."}' \
--moniker "my-validator" \
--commission-rate 0.10 \
--commission-max-rate 0.20 \
--commission-max-change-rate 0.01 \
--from mykey --chain-id mono_6940-1 --keyring-backend file --yes
Parameters:
| Parameter | Value | Governance |
|---|---|---|
burn_amount | 100,000 LYTH (100000000000000000000000alyth) | Yes |
min_self_delegation | 100,000 LYTH | Yes |
Registering a validator costs 200,000 LYTH total: 100,000 LYTH is burned permanently (reducing supply), and 100,000 LYTH is self-delegated (staked). See Validator Registration.
x/burn
Custom module. Protocol-level fee burning.
Purpose: Intercepts all transaction fees at the Cosmos SDK level and splits them 90/10 between burning and the block proposer. This is the primary deflationary mechanism.
Key Queries:
# Query total burned amount
monod query burn total
# Query burn parameters
monod query burn params
# Query burn address balance
monod query bank balances mono1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqnrql8a
Key Transactions:
# Voluntary burn (send tokens to the burn module)
monod tx burn burn 1000000000000000000000alyth \
--from mykey --chain-id mono_6940-1 --keyring-backend file --yes
Parameters:
| Parameter | Value | Governance |
|---|---|---|
burn_rate | 0.90 (90%) | Yes |
proposer_rate | 0.10 (10%) | Yes |
Fee Split Flow:
Transaction Fee (100%)
├── 90% → Burn address (permanent removal)
└── 10% → Block proposer (validator reward)
The x/burn module handles protocol-layer fees (gas). The FeeCollector smart contract handles application-layer fees (DEX, MonoPump). See Fee Model for the full picture.
Module Accounts
Internal accounts managed by modules. These cannot be controlled by external keys.
| Module | Address | Purpose |
|---|---|---|
fee_collector | mono17xpfvakm2amg962yls6f84z3kell8c5l... | Collects fees before distribution |
distribution | mono1jv65s3grqf6v6jl3dp4t6c9t9rk99cd8... | Holds undistributed rewards |
bonded_tokens_pool | mono1fl48vsnmsdzcv85q5d2q4z5ajdha8yu3... | Bonded (staked) tokens |
not_bonded_tokens_pool | mono1tygms3xhhs3yv487phx3dw4a95jn7t7l... | Unbonding tokens |
gov | mono10d07y265gmmuvt4z0w9aw880jnsr700j... | Governance deposits |
# Query any module account
monod query auth module-account fee_collector
Related
- Fee Model -- Full fee architecture
- Gas & Fee Mechanics -- Gas estimation, fee grants
- Validator Registration -- x/validator in practice
- Governance Proposals -- Submitting proposals
- Staking Overview -- Delegation and rewards
- Tokenomics -- Inflation and burn economics