Warp Routes Guide¶
Warp Routes are Hyperlane’s modular token-bridging application. They enable permissionless token transfers across chains using Hyperlane messaging and ISM-based security. Warp Routes support native assets and ERC20 tokens on EVM chains with security configurable per route via ISMs.
Prerequisites¶
Tip
Please see Celestia Core Deployment and EVM Core Deployment for walkthroughs on setting up Hyperlane core infrastructure.
- Hyperlane core must be deployed on each chain in the route.
- Hyperlane CLI installed.
- A funded deployer key (EVM) exported as
HYP_KEY(or enter it when prompted). - A funded deployer key (Celestia) exported as
HYP_KEY_COSMOSNATIVE. - Chain metadata exists in the registry (
chains/<chain>/metadata.yaml).
If a chain is missing from the registry, add it first. To list chains use:
hyperlane registry list --registry .
Create a Deployment Config¶
This registry tracks warp deployment configs under deployments/warp_routes/<TOKEN>/.
Please refer to the registry deployments/warp_routes directory for example YAML configs.
Warp route configs must confirm to the configuration schema, this can be found in the same directory mentioned above.
For EVM routes, the type field typically includes:
collateralfor an ERC20/ERC721 token on the canonical chainnativefor a native token (e.g., ETH)collateralVaultfor ERC4626 vault-backed collateral
Note
For cosmosnative chains, the native token is defined as a collateral token. For example, utia.
Optional fields include the following:
symbol,name,decimalsmailboxinterchainSecurityModule
Tip
For cosmosnative chains, make sure to include decimals and scale where required by the chain’s token module.
Create a [name]-deploy.yaml file in the correct folder in the registry. Use an existing file as a template. You can remove the interchainSecurityModule entry if the default ISM should be used.
celestia:
decimals: 6
name: TIA
owner: "celestia1lg0e9n4pt29lpq2k4ptue4ckw09dx0aujlpe4j"
symbol: TIA
token: utia
type: collateral
ethereum:
decimals: 6
name: TIA
owner: "0xc259e540167B7487A89b45343F4044d5951cf871"
symbol: TIA
type: synthetic
The CLI wizard can be used to generate a config file however cosmosnative chains are only partially supported.
The CLI will prompt for network type, chains to connect, token type, and other options. This will produce a YAML file similar to what was described above.
hyperlane warp init --registry .
Deploy the Warp Route¶
Run the deployment using the config:
hyperlane warp deploy \
--wd ./deployments/warp_routes/<TOKEN>/<route>-deploy.yaml \
--wc ./deployments/warp_routes/<TOKEN>/<route>-config.yaml \
--registry .
Notes:
Note
- If
--wd/--wcare omitted, the CLI writes artifacts to$HOME/.hyperlane/deployments/warp_routes/. - The deployer will prompt for the private key if
HYP_KEYorHYP_KEY_COSMOSNATIVEis not set.
After deployment:
- Ensure the output
*-config.yamlis committed. - Update
deployments/warp_routes/warpRouteConfigs.yamlwith the new route entry. - Add or update
deployments/warp_routes/<TOKEN>/logo.svgif needed.
Verify and Test¶
Read the on-chain Warp Route configuration:
hyperlane warp read --symbol <TOKEN> --registry .
Send a test transfer (optional):
hyperlane warp send --relay --symbol <TOKEN> --registry .
For manual transfer runbooks across EVM and Celestia, see Manual Warp Transfer.
Update or Extend a Route¶
To change ownership, ISM settings, or add additional chains, update your deployment config and apply it:
hyperlane warp apply \
--symbol <TOKEN> \
--config ./deployments/warp_routes/<TOKEN>/<route>-deploy.yaml \
--registry .
If you add a new chain, ensure the chain metadata exists in the registry and re-run warp apply.