Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/axelarnetwork/axelar-core/llms.txt

Use this file to discover all available pages before exploring further.

This page covers every command involved in the lifecycle of an Axelar node — from first-time initialization through day-to-day operation, maintenance, and the validator daemon. All commands inherit the global flags (--home, --log_level, --log_format, --trace, --output).

axelard init

Generates the initial configuration files for a new node: the private validator key (priv_validator_key.json), node key (node_key.json), genesis file (genesis.json), and application configuration (app.toml, config.toml).
axelard init <moniker> [flags]
Example:
axelard init my-validator \
  --chain-id axelar-dojo-1 \
  --home ~/.axelar
moniker
string
required
A human-readable name for this node, displayed in the P2P network.
--chain-id
string
Genesis file chain ID. Defaults to axelar. Must match the network you intend to join.
--home
string
Node’s home directory. Defaults to $HOME/.axelar.
--overwrite
boolean
Overwrite an existing genesis.json if present. Short form: -o.
--recover
boolean
Provide a seed phrase to recover an existing key rather than generating a new one.
--initial-height
integer
Specify the initial block height at genesis. Defaults to 1.
--default-denom
string
Default coin denomination in the genesis file. Defaults to stake.
After init, replace the generated genesis.json with the official network genesis file before starting the node for the first time.

axelard start

Runs the full Axelar node application with CometBFT embedded in-process. This is the primary command for operating a live node.
axelard start [flags]
Example (mainnet validator):
axelard start \
  --home ~/.axelar \
  --p2p.laddr tcp://0.0.0.0:26656 \
  --rpc.laddr tcp://127.0.0.1:26657 \
  --grpc.address localhost:9090 \
  --minimum-gas-prices 0.007uaxl \
  --log_level info

Networking Flags

--p2p.laddr
string
P2P listen address. Defaults to tcp://0.0.0.0:26656.
--p2p.seeds
string
Comma-delimited ID@host:port seed nodes for peer discovery.
--p2p.persistent_peers
string
Comma-delimited ID@host:port peers to maintain persistent connections with.
--p2p.external-address
string
Public ip:port address advertised to peers for inbound connections.
--rpc.laddr
string
CometBFT RPC listen address. Defaults to tcp://127.0.0.1:26657.
--grpc.address
string
gRPC server listen address. Defaults to localhost:9090.
--grpc.enable
boolean
Enable the gRPC server. Defaults to true.
--api.address
string
REST API server listen address. Defaults to tcp://localhost:1317.
--api.enable
boolean
Enable the REST API server. Disabled by default.

Pruning Flags

--pruning
string
Pruning strategy. Options: default (last 362,880 states), nothing (archive), everything (2 latest states), or custom. Defaults to default.
--pruning-keep-recent
uint
Number of recent heights to keep when using custom pruning.
--pruning-interval
uint
Block interval at which pruned heights are removed from disk (custom only).

Operational Flags

--home
string
Application home directory. Defaults to $HOME/.axelar.
--minimum-gas-prices
string
Minimum gas prices for accepting transactions (e.g., 0.007uaxl). Transactions with lower fees are rejected.
--halt-height
uint
Block height at which to gracefully halt the node. The block at this height will not be committed.
--halt-time
uint
Unix timestamp (seconds) at which to gracefully halt the node.
--cpu-profile
string
File path for CPU profiling output (pprof format).
--inv-check-period
uint
Assert registered module invariants every N blocks. 0 disables checks.
--unsafe-skip-upgrades
ints
Comma-separated block heights to skip upgrade handlers (allows running old binary past upgrade height).
--x-crisis-skip-assert-invariants
boolean
Skip invariant assertions at startup (speeds up node start on large state).
--grpc-only
boolean
Start in query-only mode (gRPC and REST only, no CometBFT process). Useful for running a legacy query endpoint post-upgrade.
--state-sync.snapshot-interval
uint
Produce state-sync snapshots every N blocks. 0 disables snapshots.
--state-sync.snapshot-keep-recent
uint32
Number of recent snapshots to retain. Defaults to 2.

axelard status

Queries the CometBFT RPC endpoint and returns the node’s current status, including block height, sync state, and validator public key.
axelard status [flags]
axelard status --node tcp://my-node:26657 --output json
--node
string
RPC endpoint to query. Short form: -n. Defaults to tcp://localhost:26657.
--output
string
Output format: text or json. Short form: -o. Defaults to json.
Pipe output through jq to extract specific fields:
axelard status | jq '.SyncInfo | {height: .latest_block_height, catching_up}'

axelard health-check

Checks whether the node and its supporting services (broadcaster account and TSS daemon) are ready. Useful in readiness probe scripts for validator operations.
axelard health-check \
  --operator-addr axelarvaloper1... \
  --node tcp://localhost:26657 \
  --tofnd-host localhost \
  --tofnd-port 50051
--operator-addr
string
The operator’s validator address (axelarvaloper1…) to check registration status.
--node
string
CometBFT RPC address. Defaults to tcp://localhost:26657.
--tofnd-host
string
Hostname of the TSS daemon. Defaults to localhost.
--tofnd-port
string
Port of the TSS daemon. Defaults to 50051.
--grpc-addr
string
The gRPC endpoint to use for this chain.
--grpc-insecure
boolean
Allow gRPC over insecure channels. If not set, the server must use TLS.
--height
int
Query state at a specific block height. May error if the node has pruned that height.
--skip-broadcaster
boolean
Skip the broadcaster account balance check.
--skip-operator
boolean
Skip the operator registration check.
--skip-tofnd
boolean
Skip TSS daemon reachability check.

axelard rollback

Rolls back Cosmos SDK and CometBFT state by exactly one block height. Used to recover from an incorrect application state transition where CometBFT has persisted an incorrect app hash. After rollback, restarting the node will re-execute the transactions in the rolled-back block.
axelard rollback [flags]
axelard rollback --home ~/.axelar
--home
string
Application home directory. Defaults to $HOME/.axelar.
--hard
boolean
Remove the last block as well as the state (more aggressive rollback).
Rollback does not remove blocks from the block store — it only rewinds the application state. Upon restart, the rolled-back block’s transactions will be re-applied.

axelard prune

Prunes historical application state from disk, keeping only recent heights. Run this on a stopped node to reclaim disk space without starting a full archive resync.
axelard prune [pruning-method] [flags]
Pruning methods:
MethodBehaviour
defaultKeep the last 362,880 states
nothingRetain all historical state (archive node)
everythingKeep only the 2 most recent states
customManually specify --pruning-keep-recent
Example:
axelard prune custom \
  --pruning-keep-recent 100 \
  --app-db-backend goleveldb \
  --home ~/.axelar
--pruning-keep-recent
uint
Number of recent heights to retain when using custom pruning.
--app-db-backend
string
Database backend type: goleveldb, rocksdb, or pebbledb. Defaults to goleveldb.
--home
string
Application home directory. Defaults to $HOME/.axelar.

axelard comet

CometBFT utility subcommands for inspecting and managing the consensus layer.
axelard comet <subcommand> [flags]
Prints the node’s unique P2P identifier, derived from the node_key.json file. Share this ID with peers to allow them to connect directly.
axelard comet show-node-id
Displays the CometBFT validator consensus public key in JSON format. This is the key used for block signing and is distinct from the operator key.
axelard comet show-validator
Shows this node’s CometBFT validator consensus address (the axelarvalcons1… address).
axelard comet show-address
Prints the version of the CometBFT library compiled into this binary.
axelard comet version
Removes all CometBFT data (block store, state, and WAL) and resets the validator state to genesis. The --keep-addr-book flag preserves the peer address book.
axelard comet unsafe-reset-all [--keep-addr-book]
This is a destructive operation. All CometBFT state is permanently deleted. Only use this if you intend to resync from genesis or a snapshot.
Bootstraps CometBFT state at an arbitrary block height using a light client. Useful for state-sync setups.
axelard comet bootstrap-state
Removes all CometBFT data and the write-ahead log without resetting the validator key.
axelard comet reset-state

axelard snapshots

Manages local application state snapshots. Snapshots enable state-sync, allowing other nodes to quickly bootstrap by downloading a verified state snapshot instead of replaying all blocks from genesis.
axelard snapshots <subcommand> [flags]
Displays all snapshots stored in the local snapshot store, showing height and format.
axelard snapshots list
Exports the application state at a given height (defaulting to the latest) into the local snapshot store.
axelard snapshots export
axelard snapshots export --height 12345678
--height
int
Block height to export. Defaults to the latest committed height.
Writes a snapshot from the local store to a portable .tar.gz archive file for transfer or backup.
axelard snapshots dump <height> <format> --output snapshot.tar.gz
--output
string
Output file path. Short form: -o.
Imports a .tar.gz snapshot archive into the local snapshot store.
axelard snapshots load snapshot.tar.gz
Restores the application state from a snapshot already present in the local store.
axelard snapshots restore <height> <format>
Removes a specific snapshot (identified by height and format) from the local snapshot store.
axelard snapshots delete <height> <format>

axelard vald-start

Starts the Axelar validator daemon (vald). Vald watches external chains for cross-chain events and participates in threshold signing rounds via the tofnd TSS sidecar. It must be run alongside a fully synced axelard start process.
axelard vald-start [flags]
Example:
axelard vald-start \
  --validator-addr axelarvaloper1... \
  --from broadcaster \
  --tofnd-host localhost \
  --tofnd-port 50051 \
  --chain-id axelar-dojo-1 \
  --node tcp://localhost:26657 \
  --keyring-backend file
--validator-addr
string
The validator operator address (axelarvaloper1…) that vald will act on behalf of.
--from
string
Key name or address of the broadcaster account used to sign and submit transactions.
--tofnd-host
string
Hostname of the tofnd TSS daemon. Defaults to localhost.
--tofnd-port
string
Port of the tofnd TSS daemon. Defaults to 50051.
--tofnd-dial-timeout
string
Dial timeout when connecting to tofnd. Defaults to 15s.
--chain-id
string
The network chain ID. Defaults to axelar.
--node
string
CometBFT RPC endpoint. Defaults to tcp://localhost:26657.
--keyring-backend
string
Keyring backend for the broadcaster key. Defaults to file.
--gas-prices
string
Gas price for submitted transactions. Defaults to 0.007uaxl.
--gas-adjustment
float
Multiplier applied to estimated gas. Defaults to 4.
--broadcast-mode
string
Transaction broadcasting mode: sync or async. Defaults to sync.
Vald must be restarted whenever the underlying node restarts. Consider using a process supervisor (e.g., systemd or supervisord) that starts vald only after the node RPC endpoint becomes available.

Build docs developers (and LLMs) love