Paxeer Docs logo

Paxeer Technical Reference

Explore Paxeer's technical reference for paxd CLI commands, app.toml and config.toml parameters, and network chain configuration details.

This guide serves as a comprehensive reference for Paxeer node operators and validators, providing detailed command syntax, configuration parameters, and troubleshooting procedures.

Command Line Interface Reference

The paxd binary provides extensive functionality for managing your Paxeer node. Understanding these commands is essential for effective node operation and troubleshooting.

Node Management Commands

These commands help you control and monitor your node's operation:

If you see an error such as panic: recovered: runtime error: integer divide by zero it means you can't start nodes straight from the genesis file. Instead, sync to the block tip via state sync or using a snapshot.

# Start the node
paxd start [flags]

# Show node status
paxd status

# Show validator consensus key
paxd tendermint show-validator

# Query node information
paxd query node info

Key Management

Proper key management is crucial for security. These commands help you manage your keys effectively:

# Create new key
paxd keys add <name> [flags]

# List all keys
paxd keys list

# Delete key
paxd keys delete <name>

# Export key (encrypted)
paxd keys export <name>

# Import key
paxd keys import <name> <keyfile>

# Show key address
paxd keys show <name> -a

Transaction Commands

These commands allow you to interact with the blockchain:

# Send tokens
paxd tx bank send <from-key> <to-address> <amount>uhpx [flags]

# Delegate tokens
paxd tx staking delegate <validator-addr> <amount>uhpx --from <delegator-key>

# Withdraw rewards
paxd tx distribution withdraw-rewards <validator-addr> --from <delegator-key>

# Edit validator
paxd tx staking edit-validator [flags] --from <validator-key>

Configuration Parameters

Understanding configuration parameters is essential for optimizing your node's performance and security.

App.toml Parameters

The app.toml file controls application-specific settings:

# Minimum gas prices for transaction acceptance
minimum-gas-prices = "0.02uhpx"

# API configuration
[api]
enable = true
swagger = true
address = "tcp://0.0.0.0:1317"
max-open-connections = 1000

# State sync configuration
[state-sync]
snapshot-interval = 1000
snapshot-keep-recent = 2

# Memory management
[mempool]
size = 5000
max-txs-bytes = 1073741824
cache-size = 10000

# State store configuration
[state-store]
ss-enable = true
ss-backend = "pebbledb"
ss-keep-recent = 100000
ss-prune-interval = 600

Config.toml Parameters

The config.toml file controls the core consensus engine and networking:

# P2P Configuration
[p2p]
laddr = "tcp://0.0.0.0:26656"
external-address = ""
seeds = ""
persistent_peers = ""
upnp = false
max_num_inbound_peers = 40
max_num_outbound_peers = 10

# RPC Configuration
[rpc]
laddr = "tcp://0.0.0.0:26657"
cors_allowed_origins = []
cors_allowed_methods = ["HEAD", "GET", "POST"]
cors_allowed_headers = ["Origin", "Accept", "Content-Type", "X-Requested-With", "X-Server-Time"]
max_open_connections = 900
timeout_broadcast_tx_commit = "10s"

# Consensus Configuration
[consensus]
wal_file = "data/cs.wal/wal"
timeout_propose = "3s"
timeout_propose_delta = "500ms"
timeout_prevote = "1s"
timeout_prevote_delta = "500ms"
timeout_precommit = "1s"
timeout_precommit_delta = "500ms"
timeout_commit = "1s"
double_sign_check_height = 0

Network Parameters

Understanding network parameters helps you operate your node effectively.

Chain Parameters

These parameters define the network's behavior:

Chain ID: hyperpax_125-1 (125)
Block Time: ~400ms target (Twin Turbo Consensus)
Unbonding Period: 21 days
Minimum Self Delegation: 1 HPX

Slashing Parameters:
  - signed_blocks_window:        108,000 blocks
  - min_signed_per_window:       5%
  - downtime_jail_duration:      10 minutes
  - slash_fraction_downtime:     0%   (jail only)
  - slash_fraction_double_sign:  0%   (double-signing triggers permanent tombstoning)

These values reflect the current on-chain parameters. Query them directly with paxd query staking params and paxd query slashing params for the source of truth.

File Locations

Understanding the purpose and location of important files helps with maintenance and troubleshooting:

$HOME/.paxeer/
├── config/
│   ├── app.toml         # Application configuration
│   ├── client.toml      # Client configuration
│   ├── config.toml      # Tendermint configuration
│   ├── genesis.json     # Chain genesis file
│   ├── node_key.json    # Node identity key
│   └── priv_validator_key.json  # Validator signing key
├── data/
│   ├── application.db   # Application state
│   ├── blockstore.db    # Block data
│   ├── cs.wal/         # Consensus write-ahead logs
│   ├── evidence.db     # Evidence of misbehavior
│   ├── state.db        # Tendermint state
│   └── tx_index.db     # Transaction index
└── keyring-file/       # Local key storage

Quick Reference

ParameterValue
Binarypaxd
Chain IDhyperpax_125-1 (125)
Coinuhpx / hpx
Bech32 prefixpax1...
Home directory~/.paxeer
Seed peere9c56cbadc4a96b67f69dcaaa7b4691851e945ca@31.220.74.140:26656
ConsensusTwin Turbo + machineRFT