| title | Sei Technical Reference | ||||||
|---|---|---|---|---|---|---|---|
| sidebarTitle | Technical Reference | ||||||
| description | Access detailed command syntax, configuration parameters, and troubleshooting procedures for node operators and validators running Sei network infrastructure. | ||||||
| keywords |
|
This guide serves as a comprehensive reference for Sei node operators and validators, providing detailed command syntax, configuration parameters, and troubleshooting procedures. For API documentation, please refer to our API Documentation section.
The seid binary provides extensive functionality for managing your Sei node.
Understanding these commands is essential for effective node operation and
troubleshooting.
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](/node/statesync) or using a [snapshot](/node/snapshot).# Start the node
seid start [flags]
# Show node status
seid status
# Show validator consensus key
seid tendermint show-validator
# Query node information
seid query node infoProper key management is crucial for security. These commands help you manage your keys effectively:
# Create new key
seid keys add <name> [flags]
# List all keys
seid keys list
# Delete key
seid keys delete <name>
# Export key (encrypted)
seid keys export <name>
# Import key
seid keys import <name> <keyfile>
# Show key address
seid keys show <name> -aThese commands allow you to interact with the blockchain:
# Send tokens
seid tx bank send <from-key> <to-address> <amount>usei [flags]
# Delegate tokens
seid tx staking delegate <validator-addr> <amount>usei --from <delegator-key>
# Withdraw rewards
seid tx distribution withdraw-rewards <validator-addr> --from <delegator-key>
# Edit validator
seid tx staking edit-validator [flags] --from <validator-key>Understanding configuration parameters is essential for optimizing your node's performance and security.
The app.toml file controls application-specific settings:
```toml # Minimum gas prices for transaction acceptance minimum-gas-prices = "0.01usei"[api] enable = true swagger = true address = "tcp://0.0.0.0:1317" max-open-connections = 1000
[state-sync] snapshot-interval = 1000 snapshot-keep-recent = 2
[mempool] size = 5000 max-txs-bytes = 1073741824 cache-size = 10000
[state-store] ss-enable = true ss-backend = "pebbledb" ss-keep-recent = 100000 ss-prune-interval = 600
</Accordion>
### Config.toml Parameters
The config.toml file controls the core consensus engine and networking:
<Accordion title="Complete config.toml Configuration">
```toml
# 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
allowed_pools = ""
max_packet_msg_payload_size = 10240
handshake_timeout = "20s"
dial_timeout = "3s"
# 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
Understanding network parameters helps you operate your node effectively.
These parameters define the network's behavior:
Block Time: ~400ms target
Max Validators: 40
Unbonding Period: 21 days
Minimum Self Delegation: 1 SEI
Slashing Parameters:
- signed_blocks_window: 108,000 blocks
- min_signed_per_window: 5% (validator must sign ≥5% of blocks in the window)
- downtime_jail_duration: 10 minutes
- slash_fraction_downtime: 0% (no stake slash; jail only)
- slash_fraction_double_sign: 0% (no stake slash; double-signing still triggers
permanent tombstoning)
Understanding the purpose and location of important files helps with maintenance and troubleshooting:
$HOME/.sei/
├── 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
This reference guide provides essential technical information for operating Sei nodes and validators. For API documentation and other detailed specifications, please refer to the respective sections in our documentation set.