attester
Run a Task Attester node
Usage
otnode run attester [options] <bootnodes>
Arguments:
bootnodes (required) The multiaddr of the bootnodes you would like to connect to
Examples
otnode run attester \
/ip4/127.0.0.1/tcp/9876/p2p/<BOOTSTRAP_NODE_ID> \
--avs-webapi http://10.8.0.42 \
--avs-webapi-port <PORT> \
--l1-chain holesky \
--l2-chain amoy
BOOTSTRAP_NODE_ID
can be saved in the .env file as per the Bootstrap node configuration.
Options
--avs-webapi required
url
Specifies the URL of the HTTP server used for the AVS Web API.
--avs-webapi-port required
port
Defines the port on which the AVS Web API HTTP server will run.
--json-rpc required
flag
Enables the JSON-RPC API for the node. Disabled by default.
--json-rpc.port optional
number
Port number for the JSON-RPC server (default: 8545
).
--json-rpc.custom-message-enabled optional
flag
Enables custom message support via the p2p communication layer. Useful for advanced messaging scenarios.
--p2p.port optional
number
Port used for low-level peer-to-peer (p2p) communication.
--p2p.datadir optional
file path
Path to the directory for persistent p2p data storage. If the directory doesn't exist, it will be created automatically using LevelDatastore.
--p2p.discovery-interval optional
.
number (in ms)
Time interval for the p2p discovery mechanism, specified in milliseconds.
--metrics optional
flag
Enables the metrics exporter for the node. Disabled by default.
--metrics.port optional
number
Port number for the metrics HTTP server.
--metrics.export-url optional
url
URL to export metrics to Prometheus Pushgateway for external monitoring.
--status-check-interval optional
milliseconds
Interval for checking operator status (default: 5000
ms).
A throttling mechanism has been added to operator status checks to reduce idle RPC usage. Configure this using the optional --status-check-interval <interval>
flag, with a default of 5000 milliseconds.
otnode run attester --status-check-interval 8000
--announced-addresses optional
--p2p.public-ip optional
string
Public-facing IP address of the node.
Used to automatically construct the announced libp2p multiaddress as /ip4/<public-ip>/tcp/<port>/p2p/<PeerID>
. This is useful when the node is behind NAT or a firewall, and its actual reachable IP needs to be explicitly advertised.
If this flag is not provided, the node will attempt to auto-detect the public IP.
othentic-cli node attester --p2p.public-ip 203.0.113.1
--p2p.dns-url optional
string
Use --p2p.public-ip
and --p2p.dns-url
together to automatically generate announced addresses for your node.
DNS address that resolves to the public IP of the node.
Used to generate an additional announced libp2p address in the format /dnsaddr/<dns-url>/tcp/<port>/p2p/<PeerID>
. This is useful when nodes are hosted behind a domain name or behind a load balancer.
If this flag is not provided, no DNS-based address will be added.
othentic-cli node attester --p2p.dns-url attester.example.com
--announced-addresses optional
string Comma-separated addresses the node should announce to the network (useful for NAT/firewall setups).
The announce
option in libp2p allows nodes to explicitly define which addresses they advertise to peers, overriding any automatically detected addresses. This is particularly useful when running behind a load balancer or NAT, where the external address needs to be manually set. To enable this option in our CLI, users should start their nodes with the --announced-addresses <multi-address>
flag, specifying the desired multiaddr. This ensures that peers connect using the correct external address rather than any internally detected ones.
otnode run attester --announced-addresses /dnsaddr/{dns-name}/tcp/{port1}/p2p/{Peer ID},/ip4/{resolved dns ip}/tcp/{port1}/p2p/{Peer ID}
--slashing-challenger optional
flag
Enable Challenger system watchdog and automatically submit challenge transactions for slashable offenses
--keystore optional
file path
The path to the keystore file used for signing the transaction.
--keystore-password optional
file path
The path to the file containing the keystore password.
--silent, --s, --no-prompt optional
flag
Run in non-interactive mode using .env
and provided arguments, without user prompts.
-h, --help optional
flag
Display help information for this command.
Last updated