hyperlane-monorepo/rust/main/config
). They will be merged first to last, so if both the first one and the last one specify a specific config path, the value set in the last file listed will be used.
These files must be accessible within the filesystem your agent has access to. If you’re running in Docker, see the agent configuration guide for tips on mounting your config files into your Docker container.
Optional: Yes
Agents: All
Type: string
(Comma separated list of file paths)
Map<string, ChainSetup (Object)>
(See chains.*
for ChainSetup
values)
<chain_name>
.namechain_name
.
Requires: Alignment with domain id if it is a known domain name.
Optional: No
Agents: All
Type: string
<chain_name>
.domainNumeric (string | number)
<chain_name>
.mailboxHash (string)
<chain_name>
.interchainGasPaymasterHash (string)
<chain_name>
.validatorAnnounceHash (string)
<chain_name>
.merkleTreeHookHash (string)
<chain_name>
.signerdefaultsigner
if not specified)
Agents: All
Type: SignerConf (Object)
<chain_name>
.signer.typeHexKey
signer uses a private key, an Aws
signer uses an AWS based KMS, and Node
assumes the local node will sign RPC calls.
Optional: Yes; Defaults to node
unless a key
is specified in which case it defaults to hexKey
Agents: All
Type: Enum ("hexKey" | "aws" | "cosmosKey" | "node")
Accepted values for the different VMs are:
hexKey
(ECDSA) or aws
(ECDSA)hexKey
(ED25519)cosmosKey
<chain_name>
.signer.keychains.<chain_name>.signer.type = "hexKey" | undefined
Optional: No (iff requirements are met)
Agents: All
Type: string
<chain_name>
.signer.idchains.<chain_name>.signer.type = "aws"
Optional: No (iff requirements are met)
Agents: All
Type: string
<chain_name>
.signer.regionchains.<chain_name>.signer.type = "aws"
Optional: No (iff requirements are met)
Agents: All
Type: string
<chain_name>
.protocol"ethereum"
Agents: All
Type: Enum ("ethereum" | "fuel")
<chain_name>
.rpcConsensusType"single"
uses a basic http connection"fallback"
will try the first URL and then automatically “fall back” on a connection or other provider failure to the next provider; this should only retry calls which fail due to the provider and not the call itself such; an insufficient gas error for instance would not fall back."quorum"
requires a majority of the URLs to agree with the exception of submitting transactions; it will automatically coordinate the “latest” block if not specified to reduce sync errors.chains.<chain_name>.protocol = "ethereum" | undefined
Optional: Defaults to "fallback"
Agents: All
Type: Enum ("fallback", "single", "quorum")
<chain_name>
.customRpcUrlscustomRpcUrls
and rpcUrls is that customRpcUrls
allows for more user friendly inputs from the CLI or environment variables (comma-separated vs array).
Type: string
(comma separated list of urls without spaces)
<chain_name>
.rpcUrlsstring
<chain_name>
.customGrpcUrlsrpcConsensusType
configuration for Cosmos chains, and gRPC URLs always operate in fallback mode—if the first URL fails, the next one is used.customRpcUrls
.
Type: string
(comma-separated list of URLs without spaces)
<chain_name>
.index.from0
Agents: Relayer & Scraper
Type: Numeric (string | number)
<chain_name>
.index.chunk1999
Agents: Relayer & Scraper
Type: Numeric (string | number)
SignerConf (Object)
HexKey
signer uses a private key, an Aws
signer uses an AWS-based KMS, and Node
assumes the local node will sign RPC calls.
Optional: Yes; Defaults to node
unless a key
is specified in which case it defaults to hexKey
Agents: All
Type: Enum ("hexKey" | "aws" | "cosmosKey" | "node")
defaultsigner.type = "hexKey" | undefined
Optional: No (iff requirements are met)
Agents: All
Type: string
defaultsigner.type = "aws"
Optional: No (iff requirements are met)
Agents: All
Type: string
defaultsigner.type = "aws"
Optional: No (iff requirements are met)
Agents: All
Type: string
9090
Agents: All
Type: Numeric (string | number)
pretty
Agents: All
Type: Enum ("pretty" | "json" | "full" | "compact")
dependencyTrace
.
Optional: Defaults to info
Agents: All
Type: Enum ("dependencyTrace" | "trace" | "debug" | "info" | "warn" | "error" | "off")
string
SignerConf (Object)
HexKey
signer uses a private key, an Aws
signer uses an AWS based KMS, and Node
assumes the local node will sign RPC calls.
Optional: Yes; Defaults to node
unless a key
is specified in which case it defaults to hexKey
Agents: All
Type: Enum ("hexKey" | "aws" | "node")
validator.type = "hexKey" | undefined
Optional: No (iff requirements are met)
Agents: All
Type: string
validator.type = "aws"
Optional: No (iff requirements are met)
Agents: All
Type: string
validator.type = "aws"
Optional: No (iff requirements are met)
Agents: All
Type: string
Enum ("localStorage" | "s3")
checkpointsyncer.type = "localStorage"
Optional: No (iff conditions are met)
Agents: Validator
Type: string
checkpointsyncer.type = "s3"
Optional: No (iff conditions are met)
Agents: Validator
Type: string
checkpointsyncer.type = "s3"
Optional: No (iff conditions are met)
Agents: Validator
Type: string
checkpointsyncer.type = "s3"
Optional: No (iff conditions are met)
Agents: Validator
Type: string
Numeric (string | number)
/
on unix. When using docker images, ensure that this folder gets persisted across runs.
For the scraper, this is the connection string to a postgresql database.
Optional: For validators and relayer it is optional and defaults to a path in the current working directory which includes the originchainname
. For the scraper it is required.
Agents: All
Type: string
string
(comma separated list)
[{"type": "none"}]
)
Agents: Relayer
Type: JSON (string)
JSON (string)
JSON (string)
Numeric (string | number)
transactiongaslimit
for.
Optional: Defaults to using the transactiongaslimit
for all domains
Agents: Relayer
Type: string
(comma separated list of domain ids)
checkpointsyncer
types, if false
it will ignore them.
Optional: Defaults to false
Agents: Relayer
Type: boolean
Numeric (string | number)
aws
Agents: Relayer & Validator
Type: string
aws
Agents: Relayer & Validator
Type: string