Community-run Hyperlane interoperability for
Terra Classic (columbus-5, domain 132556) — bridging LUNC and
USTC to BSC, Ethereum and Solana, secured by a community
validator set and paid through an on-chain relayer-reward vault.
🌉 Just want to bridge? → https://bridge.terra-classic.io — official subdomain of terra-classic.io, the site listed as the project's official website on CoinMarketCap and CoinGecko (https://terraclassic-bridge.xyz also works).
This page is the single entry point for everything else — each section sends you to the right guide in the right repository.
| I want to… | Go to |
|---|---|
| Run a validator | §1 |
| Run the relayer (and its vault / agents) | §2 |
| Understand fees, rewards and the gas oracle (quorum) | §3 |
| Create a warp route (bridge a token) | §4 |
| Change ISM or IGP on any chain | §5 |
| Audit contracts, hashes and live routes | §6 |
| Use the bridge UI / explorer / registry | §7 |
Repository: hyperlane-validator
- Start here: README — what a validator does and the full setup path
- Docker installation guide · VPS without Docker
- AWS S3 + keys guide — checkpoint storage the relayers read
- Private keys in hex format · Configuration files reference
- Log management — keep validator/relayer logs from filling the disk (size-triggered rotation)
- Become a rewarded TCV validator (announce, register as operator, earn from the vault): TCV Validator Mainnet Guide and Operators & Validators guide
The relayer delivers messages between chains and is paid from the relayer-reward-vault: users pay interchain gas (IGP) on the origin chain, the fees flow into the vault pool, and delivery proofs unlock the rewards.
- ▶ Complete operator setup (relayer + POD agents, end to end): RELAYER-OPERATOR.md — the one guide that installs the official relayer and the three proof-of-delivery agents together, with the on-chain operator registration
- Relayer setup (detail): validator/relayer VPS guide · Docker guide · relayer on the production VPS · relayer API guide
- The vault (how the relayer gets paid): VAULT.md
- Run the agents (claim-agent / receipts — sweep deliveries and claim rewards): INSTALL-AND-RUN.md (full install: docs/install/INSTALL.md) · Remote claim (security model) · Trustless receipt
- Operating reference: OPERATORS.md · architecture
Gas prices are never set by hand: the oracle-agent proposes them, and a quorum of validator operators approves before the governor applies them on-chain — on every chain.
- Oracle agent (how prices are proposed/approved — quorum): ORACLE-AGENT.md
- Quorum / governance parameters: PROPOSAL-PARAMETERS.md
- What users pay and what operators earn: FEES-AND-REWARDS.md
- Contract-level operations (vault/governor calls): CONTRACT-OPERATION.md
Repository: cw-hyperlane → terraclassic/
One script per target chain deploys only the token's own contracts and wires the shared production ISM/IGP/hooks automatically:
- Start here: terraclassic/doc/install/
- WARP-EVM.md — BSC / Ethereum (prerequisites incl. Foundry install, step-by-step, manual mode, troubleshooting)
- WARP-SOLANA.md — Solana sealevel (Agave/Rust setup, the atomic-init deploy flow, costs, troubleshooting)
- WARP-UI-PR.md — make your route appear in the bridge UI
- Live examples (audit-grade, per chain): WARP-LUNC.md · WARP-USTC.md
The security model in one paragraph:
On the synthetics (BSC, Ethereum, Solana): only the validators' multisig account can change the ISM or the IGP of a warp route. On Terra Classic: changes go through on-chain governance (community proposal + vote). No single operator — including the deployer — is meant to hold these controls.
Per-chain mechanics:
| Chain | ISM | IGP / gas prices |
|---|---|---|
| BSC / Ethereum | EVM multisig ISMs are static contracts — a validator-set change means deploying a new ISM and repointing the warp (setInterchainSecurityModule), authorized by the multisig |
prices governed by the oracle-agent quorum (§3); the IGP contract itself is repointed only by the multisig |
| Solana | the MultisigISM is mutable — the validator set/threshold is updated in place by the authorized account | same governed-price model; set-interchain-security-module / igp set authorized by the warp owner (multisig) |
| Terra Classic | ISM routing + per-domain multisig ISMs changed via governance proposal | IGP oracle updated via governance (update-igp-oracle.sh has a governance mode that only generates the proposal JSON) |
References:
- Current validator sets & rotation procedure: ISM-VALIDATORS.md
- TC-side governance flow (proposals, exec messages, verification): deployment record §Configuration-via-Governance
- Vault/governor operations: CONTRACT-OPERATION.md
Everything deployed is verifiable byte-for-byte against the chains:
- Core deployment record (TC code_ids +
data_hash, instantiation, governance config, mailbox wiring, ISM validator sets): HYPERLANE_DEPLOYMENT-MAINNET_EN.md - Live contract inventory with hashes (TC core + every warp/ISM/IGP/hook on BSC · ETH · Solana, with the verify commands): DEPLOY-HASHES.md
- Per-route audit references: WARP-LUNC.md · WARP-USTC.md
- Vault & governor contracts audit: proof-of-delivery AUDIT.md
| What | Where |
|---|---|
| Bridge UI (transfer LUNC/USTC) | https://bridge.terra-classic.io (subdomain of the official terra-classic.io; https://terraclassic-bridge.xyz also works) |
| Message explorer | hyperlane-explorer |
| Registry the UI reads | hyperlane-registry, branch terra-classic-warp |
| Official Hyperlane registry | columbus-5 canonical since PR #1559 (2026-08-20) |
| Repo | Purpose |
|---|---|
| cw-hyperlane | Core contracts on Terra Classic + warp route scripts, docs and deployment records |
| hyperlane-validator | Validator & relayer installation (Docker / VPS) |
| proof-of-delivery | Relayer-reward vault, oracle-agent (governed gas prices), claim agents, operator guides |
| hyperlane-registry | Registry fork — branch terra-classic-warp feeds the bridge UI |
| hyperlane-explorer | Cross-chain message explorer |
| docs | This hub |