bridging

Bridge assets to and from Celo. Use when transferring tokens between Celo and other chains like Ethereum.

MIT-0 · Free to use, modify, and redistribute. No attribution required.
0 · 136 · 0 current installs · 0 all-time installs
bySan Clemente@san-npm
MIT-0
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
medium confidence
Purpose & Capability
The name/description match the content: lists native and third-party bridges, contract addresses, and code examples for bridging. There are no environment variables, unrelated binaries, or requests that don't belong to a bridging helper.
Instruction Scope
SKILL.md and reference files stay focused on bridging: bridge options, contract addresses, viem and LI.FI example code, and security considerations. The examples assume a browser wallet (window.ethereum) and user-signed transactions, which is appropriate. The instructions do not direct the agent to read local files, system credentials, or exfiltrate data.
Install Mechanism
This is an instruction-only skill with no install spec and no code files to execute. That is the lowest-risk install footprint.
Credentials
No required env vars, primary credential, or config paths are declared. The code references runtime wallet state (userAddress, window.ethereum), which is expected for on-chain operations and not a hidden secret requirement.
Persistence & Privilege
always is false, the skill is user-invocable, and it does not request persistent system presence or permissions to modify other skills or global agent configuration.
Assessment
This skill appears coherent for Celo bridging, but take these precautions before using it: 1) Verify contract addresses and bridge URLs on official Celo docs or block explorers (e.g., Celoscan) before interacting. 2) The examples assume a browser wallet (window.ethereum); never paste private keys into code or unknown prompts—use a hardware wallet where possible. 3) When using third-party SDKs (e.g., @lifi/sdk), install them from the official npm registry and inspect the package and its source. 4) Test flows on testnets and with small amounts first, and minimize ERC-20 approvals. 5) The skill's source/homepage is missing—if you require provenance, seek an official repo or documentation from Celo or the bridge providers before trusting automation that will initiate on-chain transactions.

Like a lobster shell, security has layers — review code before you run it.

Current versionv1.0.2008
Download zip
latestvk97adw3y6xwv8j37pqsqyvm7m182jh1a

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

SKILL.md

Bridging to Celo

This skill covers bridging assets between Celo and other blockchains, including native bridges and third-party solutions.

When to Use

  • Transferring assets from Ethereum to Celo
  • Bridging tokens from Celo to other chains
  • Integrating cross-chain functionality
  • Building multi-chain applications

Bridge Options

Native Bridge

BridgeMainnetTestnet
Superbridgehttps://superbridge.app/celohttps://testnets.superbridge.app

Native bridge provides direct transfers between Celo L2 and Ethereum L1 via the OP Stack standard bridge.

Source: https://docs.celo.org/tooling/bridges

Third-Party Bridges

BridgeURLDescription
Squid Router V2https://v2.app.squidrouter.comCross-chain routing via Axelar
LayerZerohttps://layerzero.networkOmnichain interoperability protocol
Jumper Exchangehttps://jumper.exchangeMulti-chain DEX aggregator
Portal (Wormhole)https://portalbridge.comDecentralized interoperability layer
AllBridgehttps://app.allbridge.io/bridgeEVM and non-EVM chains
Satellite (Axelar)https://satellite.moneyAxelar network bridge
Transporter (CCIP)https://www.transporter.ioChainlink CCIP bridge
Layerswaphttps://layerswap.io/app60+ chains, 15+ CEX integrations
Hyperlane Nexushttps://www.usenexus.orgMessaging and interoperability
Mach Exchangehttps://www.mach.exchangeCross-chain exchange
Galaxyhttps://galaxy.exchange/swapNative DEX on Celo
SmolRefuelhttps://smolrefuel.comGasless refueling
USDT0https://usdt0.toNative USDT via LayerZero OFT

Source: https://docs.celo.org/home/bridged-tokens/bridges

Native ETH Bridging

Bridge native ETH from Ethereum to Celo as WETH.

Contract Addresses

Ethereum Mainnet → Celo:

ContractAddress
SuperBridgeETHWrapper (L1)0x3bC7C4f8Afe7C8d514c9d4a3A42fb8176BE33c1e
L1 Standard Bridge0x9C4955b92F34148dbcfDCD82e9c9eCe5CF2badfe
L1 WETH0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
L2 WETH (Celo)0xD221812de1BD094f35587EE8E174B07B6167D9Af

Sepolia Testnet → Celo Sepolia:

ContractAddress
SuperBridgeETHWrapper (L1)0x523e358dFd0c4e98F3401DAc7b1879445d377e37
L1 Standard Bridge0xec18a3c30131a0db4246e785355fbc16e2eaf408
L1 WETH0x7b79995e5f793A07Bc00c21412e50Ecae098E7f9
L2 WETH (Celo Sepolia)0x2cE73DC897A3E10b3FF3F86470847c36ddB735cf

Bridge ETH to Celo

import { createWalletClient, custom, parseEther } from "viem";
import { mainnet } from "viem/chains";

const SUPERBRIDGE_WRAPPER = "0x3bC7C4f8Afe7C8d514c9d4a3A42fb8176BE33c1e";

const WRAPPER_ABI = [
  {
    name: "wrapAndBridge",
    type: "function",
    stateMutability: "payable",
    inputs: [
      { name: "_minGasLimit", type: "uint32" },
      { name: "_extraData", type: "bytes" },
    ],
    outputs: [],
  },
] as const;

async function bridgeETHToCelo(amount: string): Promise<string> {
  const walletClient = createWalletClient({
    chain: mainnet,
    transport: custom(window.ethereum),
  });

  const [address] = await walletClient.getAddresses();

  const hash = await walletClient.writeContract({
    address: SUPERBRIDGE_WRAPPER,
    abi: WRAPPER_ABI,
    functionName: "wrapAndBridge",
    args: [200000, "0x"],
    value: parseEther(amount),
  });

  return hash;
}

Natively Bridged Tokens

These tokens have official bridges from Ethereum via native bridge:

TokenL1 Address (Ethereum)L2 Address (Celo)
WETH0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc20xD221812de1BD094f35587EE8E174B07B6167D9Af
WBTC0x2260fac5e5542a773aa44fbcfedf7c193bc2c5990x8aC2901Dd8A1F17a1A4768A6bA4C3751e3995B2D
DAI0x6B175474E89094C44Da98b954EedeAC495271d0F0xac177de2439bd0c7659c61f373dbf247d1f41abe
AAVE0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE90xF6A54aff8c97f7AF3CC86dbaeE88aF6a7AaB6288
LINK0x514910771af9ca656af840dff83e8264ecf986ca0xf630876008a4ed9249fb4cac978ba16827f52e91
UNI0x1f9840a85d5af5bf1d1762f925bdaddc4201f9840xeE571697998ec64e32B57D754D700c4dda2f2a0e
CRV0xD533a949740bb3306d119CC777fa900bA034cd520x75184c282e55a7393053f0b8F4F3E7BeAE067fdC
rETH0xae78736cd615f374d3085123a210448e74fc63930x55f3d16e6bd2b8b8e6599df6ef4593ce9dcae9ed

Source: https://docs.celo.org/home/bridged-tokens

Cross-Chain Messaging Protocols

For building cross-chain dApps:

ProtocolURLCelo Support
Chainlink CCIPhttps://chain.link/cross-chainMainnet
Hyperlanehttps://www.hyperlane.xyzMainnet, Sepolia
Wormholehttps://wormhole.comMainnet
LayerZerohttps://layerzero.networkMainnet
Axelar Networkhttps://axelar.networkMainnet

Source: https://docs.celo.org/tooling/bridges/cross-chain-messaging

Using LI.FI SDK

For cross-chain swaps and bridges:

import { createConfig, getQuote, executeRoute } from "@lifi/sdk";

// Initialize LI.FI
createConfig({
  integrator: "your-app-name",
});

// Get bridge quote
const quote = await getQuote({
  fromChain: 1, // Ethereum
  toChain: 42220, // Celo
  fromToken: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", // USDC on Ethereum
  toToken: "0xcebA9300f2b948710d2653dD7B07f33A8B32118C", // USDC on Celo
  fromAmount: "1000000000", // 1000 USDC (6 decimals)
  fromAddress: userAddress,
});

// Execute the bridge
const result = await executeRoute(quote, {
  updateRouteHook: (route) => {
    console.log("Route updated:", route);
  },
});

Bridge Considerations

Security

  • Native bridges (Superbridge) are the most secure
  • Third-party bridges rely on their own security models
  • Always verify contract addresses before bridging

Timing

  • Native L1→L2 bridges: ~15-20 minutes
  • L2→L1 withdrawals: 7 days (challenge period)
  • Third-party bridges: varies (minutes to hours)

Fees

  • Native bridges: gas fees only
  • Third-party bridges: gas + bridge fees

Dependencies

{
  "dependencies": {
    "viem": "^2.0.0"
  }
}

For LI.FI integration:

{
  "dependencies": {
    "@lifi/sdk": "^3.0.0"
  }
}

Additional Resources

Files

3 total
Select a file
Select a file to preview.

Comments

Loading comments…