Teku command line options
This reference describes the syntax of the Teku command line interface (CLI) options.
Specify options
You can specify Teku options:
-
On the command line.
teku [OPTIONS] [COMMAND]
-
As an environment variable. For each command line option, the equivalent environment variable is:
- Uppercase.
-
is replaced by_
.- Has a
TEKU_
prefix.
-
In a YAML configuration file.
If you specify an option in multiple places, the order of priority is command line, environment variable, configuration file.
Using autocomplete
If using Bash or Z shell, you can enable autocomplete support by navigating to the build
folder
and running:
source teku.autocomplete.sh
Autocomplete allows you to view option suggestions by entering --
and pressing the Tab key twice.
teku --Tab+Tab
Options
beacon-liveness-tracking-enabled
- Syntax
- Example
- Environment variable
- Configuration file
--beacon-liveness-tracking-enabled[=<BOOLEAN>]
--beacon-liveness-tracking-enabled=true
TEKU_BEACON_LIVENESS_TRACKING_ENABLED=true
beacon-liveness-tracking-enabled: true
Enables or disables validator liveness tracking.
Used by doppelganger detection.
The default is false
.
builder-bid-compare-factor
- Syntax
- Example
- Environment variable
- Configuration file
--builder-bid-compare-factor=<STRING>
--builder-bid-compare-factor=50
TEKU_BUILDER_BID_COMPARE_FACTOR=50
builder-bid-compare-factor: 50
The builder bid compare factor. The default is 90 (90%).
Execution layer clients in Capella-enabled networks provide the execution payload and the payload value. The beacon node compares this value against the builder bid to maximize the validator's profit or decrease network censorship at a low or no cost.
Use this option to set the comparison factor applied to the builder bid value when comparing it to the locally produced payload. The factor is expressed as a percentage. For example, a builder bid comparison factor of 90 means the builder's payload is chosen when its value is at least 10% greater than what can be built locally.
Set this option to BUILDER_ALWAYS
to always use the builder bid, unless the bid is invalid.
builder-endpoint
- Syntax
- Example
- Environment variable
- Configuration file
--builder-endpoint=<URL>
--builder-endpoint=http://127.0.0.1:18550
TEKU_BUILDER_ENDPOINT=http://127.0.0.1:18550
builder-endpoint: "http://127.0.0.1:18550"
The address for an external builder endpoint.
builder-set-user-agent-header
- Syntax
- Example
- Environment variable
- Configuration file
--builder-set-user-agent-header[=<BOOLEAN>]
--builder-set-user-agent-header=true
TEKU_BUILDER_SET_USER_AGENT_HEADER=true
builder-set-user-agent-header: true
Enables or disables setting the User-Agent header to teku/v<version>
(for example, teku/v23.4.0
)
when making a builder bid request, to help builders identify clients and versions.
The default is true
.
checkpoint-sync-url
- Syntax
- Example
- Environment variable
- Configuration file
--checkpoint-sync-url=<URL>
--checkpoint-sync-url="https://beaconstate.ethstaker.cc"
TEKU_CHECKPOINT_SYNC_URL="https://beaconstate.ethstaker.cc"
checkpoint-sync-url: "https://beaconstate.ethstaker.cc"
The URL of a Checkpointz endpoint used to start Teku from a recent state.
By default, Teku tries to download the finalized state from the endpoint. If it can't download the finalized state, it tries to download the genesis state.
When this option is set, and --deposit-snapshot-enabled
is also not set or disabled,
the --checkpoint-sync-url
value will be used to determine the deposit snapshot.
config-file
- Syntax
- Example
- Environment variable
--config-file=<FILE>
--config-file=/home/me/me_node/config.yaml
TEKU_CONFIG_FILE=/home/me/me_node/config.yaml
The path to the YAML configuration file.
The default is none
.
data-base-path
, data-path
- Syntax
- Example
- Environment variable
- Configuration file
--data-base-path=<PATH>
--data-base-path=/home/me/me_node
TEKU_DATA_BASE_PATH=/home/me/me_node
data-base-path: "/home/me/me_node"
The path to the Teku data directory. The default directory is OS-dependent:
- macOS:
~/Library/teku
- Unix/Linux:
$XDG_DATA_HOME/teku
if$XDG_DATA_HOME
is set; otherwise~/.local/share/teku
- Windows:
%localappdata%\teku
.
The default Docker image location is /root/.local/share/teku
.
data-beacon-path
- Syntax
- Example
- Environment variable
- Configuration file
--data-beacon-path=<PATH>
--data-beacon-path=/home/me/me_beacon
TEKU_DATA_BEACON_PATH=/home/me/me_beacon
data-beacon-path: "/home/me/me_beacon"
The path to the beacon node data.
The default is <data-base-path>/beacon
where <data-base-path>
is specified using
--data-base-path
.
data-storage-archive-frequency
- Syntax
- Example
- Environment variable
- Configuration file
--data-storage-archive-frequency=<NUMBER>
--data-storage-archive-frequency=1028
TEKU_DATA_STORAGE_ARCHIVE_FREQUENCY=1028
data-storage-archive-frequency: 1028
The frequency (in slots) at which to store finalized states to disk.
The default is 2048
.
This option is ignored if --data-storage-mode
is not set to archive
.
Specifying a higher number of slots has a potentially higher overhead for retrieving finalized states, since Teku might need to regenerate more states to get to the requested state. Specifying a lower number of slots increases the disk space usage.
For example, with --data-storage-archive-frequency=1
, Teku uses maximum disk space but has the
lowest response time for retrieving a finalized state since it saves every slot state.
With --data-storage-archive-frequency=2048
, Teku uses less disk space but might need to
regenerate the state since it only saves every 2048th slot state.
data-storage-mode
- Syntax
- Example
- Environment variable
- Configuration file
--data-storage-mode=<STORAGE_MODE>
--data-storage-mode=archive
TEKU_DATA_STORAGE_MODE=archive
data-storage-mode: "archive"
The strategy for handling historical chain data. Valid options are:
-
archive
- Stores all blocks and states. -
minimal
- Stores the minimal required data to follow the chain and run validators. Finalized states and historic blocks are pruned. -
prune
- Stores all blocks, but finalized states are pruned.
The default is minimal
.
data-storage-non-canonical-blocks-enabled
- Syntax
- Example
- Environment variable
- Configuration file
--data-storage-non-canonical-blocks-enabled[=<BOOLEAN>]
--data-storage-non-canonical-blocks-enabled=true
TEKU_DATA_STORAGE_NON_CANONICAL_BLOCKS_ENABLED=true
data-storage-non-canonical-blocks-enabled: true
Enables or disables storing non-canonical blocks and blob sidecars. The default is false
.
data-validator-path
- Syntax
- Example
- Environment variable
- Configuration file
--data-validator-path=<PATH>
--data-validator-path=/home/me/me_validator
TEKU_DATA_VALIDATOR_PATH=/home/me/me_validator
data-validator-path: "/home/me/me_validator"
The path to the validator client data.
The default is <data-base-path>/validator
where <data-base-path>
is specified using
--data-base-path
.