Sei Technical Reference Guide
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.
Command Line Interface Reference
The seid
binary provides extensive functionality for managing your Sei 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:
# 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 info
Key Management
Proper 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> -a
Transaction Commands
These 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>
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:
Complete app.toml Configuration
# Minimum gas prices for transaction acceptance
minimum-gas-prices = "0.01usei"
# 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:
Complete config.toml Configuration
# 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
Error Codes and Troubleshooting
Understanding common errors and their solutions helps maintain a healthy node operation.
Common Error Codes
Here are the most frequent errors you might encounter and their solutions:
Consensus Errors
When you encounter consensus errors, quick and appropriate action is essential:
Error: "Consensus failure - height halted"
Solution: Check for network upgrades or chain halts
Command: seid status | jq .sync_info
Error: "Private validator file not found"
Solution: Restore validator key or check file permissions
Location: ~/.sei/config/priv_validator_key.json
Error: "Duplicate signature"
Solution: IMMEDIATELY STOP NODE - potential double signing risk
Action: Check validator operation on other machines
Network Errors
Network errors can prevent your node from participating in consensus:
Error: "Dial tcp connection refused"
Solution: Check network connectivity and firewall rules
Commands:
- netstat -tulpn | grep seid
- ufw status
Error: "No peers available"
Solution: Verify peer connections and network config
Commands:
- seid net_info
- curl localhost:26657/net_info
Database Errors
Database corruption can require immediate attention:
Error: "Database is corrupted"
Solution: Reset database or restore from backup
Commands:
- seid tendermint unsafe-reset-all
- cp -r backup/data ~/.sei/
Diagnostic Commands
These commands help you investigate issues and monitor your node:
# Check node synchronization
seid status | jq '.sync_info'
# View peer connections
seid net_info | jq '.result.peers[] | {node_info: {id: .node_info.id, moniker: .node_info.moniker}}'
# Check validator status
seid query staking validator $(seid tendermint show-validator)
# Monitor real-time logs
journalctl -u seid -f -o cat
# View system resource usage
top -p $(pgrep seid)
Network Parameters
Understanding network parameters helps you operate your node effectively.
Chain Parameters
These parameters define the network's behavior:
Block Time: 1 second target
Max Validators: 100
Unbonding Period: 21 days
Slashing Conditions:
- Downtime: 0.01%
- Double Sign: 5%
- Oracle Miss: 0.01%
Minimum Self Delegation: 1 SEI
Maximum Commission Rate: 20%
Maximum Commission Change Rate: 1% per day
Port Configuration
Understanding port usage is crucial for network configuration:
26656: P2P Communication
26657: RPC Interface
1317: REST API
9090: gRPC
26660: Prometheus Metrics
File Locations
Understanding the purpose and location of important files helps with maintenance and troubleshooting:
~/.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.