Skip to content

vex-fd Commands

Docs-site note: Grounded directly in vex-fd --help output and the command-dispatch code (src/main.zig). Only commands and flags that actually exist are documented here — nothing aspirational.

vex-fd is Vexor's single binary. It dispatches on its first argument to one of a small set of commands.

Usage: vex-fd <command> [options]

Commands

Command What it does
run, validator Start the validator in its default role: vote on the cluster and, when leader, produce blocks. run and validator are aliases for the same thing.
rpc Start as an RPC node (non-voting). Internally equivalent to run with --no-voting --full-rpc-api injected. See Validator or RPC Node?.
version Show version information.
help, --help, -h Show the built-in usage message. Also triggered by --help/-h appearing anywhere after a subcommand (e.g. vex-fd run --help) — it always prints usage and exits rather than falling through to launching the validator.

Network selection

Flag Effect
--mainnet-beta Connect to Mainnet Beta. (Vexor is testnet-only in practice — see the honesty note below.)
--testnet Connect to Testnet (default).
--devnet Connect to Devnet.
--localnet Local test cluster.

Testnet only

The flag exists in the binary's argument parser, but Vexor as a project is testnet-only, version 0.9.x pre-production. Nothing on this site should be read as mainnet guidance.


Validator options

Flag Effect
--identity <KEYPAIR> Path to the validator identity keypair.
--vote-account <KEYPAIR> Path to the vote account keypair.
--ledger <DIR> Ledger directory.
--accounts <DIR> Accounts directory.
--snapshots <DIR> Snapshots directory.
--bootstrap, --production Enable full production bootstrap.
--public-ip <IP> Public IP for gossip advertisement.
--entrypoint <HOST:PORT> Cluster entrypoint (repeatable).
--expected-shred-version <VER> Expected shred version.
--rpc-url <URL> Override RPC URL.

See Staking Setup for what --identity/--vote-account mean operationally, and Deploying Vexor for a full launch command.


Performance

Flag Effect
--enable-af-xdp Enable AF_XDP kernel-bypass networking (receive-only — see Running with AF_XDP).
--xdp-zero-copy Enable AF_XDP zero-copy mode. Paired with --enable-af-xdp; deploy.sh sets both together from VEX_ENABLE_AFXDP=1.
--enable-parallel-snapshot Parallel snapshot loading.
--no-voting Run as a non-voting node. This is what the rpc command injects automatically.

BPF stack selection (Wave 4)

An advanced, in-development flag group for selecting which sBPF execution stack handles program execution. These are not part of a normal deploy — the default (v1) is what Vexor's proven, deployed configuration runs.

Flag Effect
--bpf-stack=v1 Use the legacy BPF executor (default).
--bpf-stack=v2 Use the newer vex_bpf2 stack. Gated: the binary runs an internal smoke test at startup and refuses to engage v2 (demoting to v1 and continuing boot) if that smoke test doesn't pass.
--bpf-stack=shadow Shadow mode: v1 commits the actual execution result; v2 runs alongside and logs diff lines for comparison. Same smoke-test gate as v2.
--bpf-stack-shadow-log=<path> Override the shadow-mode diff log path.
--bpf-stack-trace={off,on-error,verbose} BPF2 trace verbosity (default: on-error).

Examples (from --help)

vex-fd validator --testnet \
  --identity ~/keypair.json \
  --vote-account ~/vote.json \
  --ledger /mnt/ledger \
  --bootstrap

vex-fd rpc --testnet --ledger /mnt/ledger

Additional diagnostic subcommand

One further subcommand exists in the dispatch code but is not listed in --help — it's an internal diagnostic tool, not part of normal operation:

  • xdp-selftest — drives the real AF_XDP receive path on one interface/queue for a fixed duration and reports packets delivered, for validating the AF_XDP pipeline in isolation. Explicitly documented in source as "NOT part of the validator run path." Takes --interface <name> (required), --queue <n>, --port <n>, --duration <seconds>, --driver/--skb (XDP attach mode), and --zero-copy/--copy.

This is a low-level hardware/driver diagnostic, not something a normal deploy uses — mentioned here for completeness rather than as an operator workflow. See Running with AF_XDP for the actual AF_XDP enablement path.


See also

  • Offline Tooling — the golden-replay / offline-replay gate, driven by environment variables rather than CLI flags.
  • Environment Variable Reference — the much larger VEX_*/VEXOR_* env surface that sits alongside these CLI flags.
  • Build-Flag Reference — build-time (-D...) flags, a different axis from the runtime flags on this page.