Pika Vault is an omnichain vault system that lets users mint and redeem shares on any supported chain while the vault itself holds and reallocates assets across multiple chains. It's based on the 4626 standard, implementing 7540 for async redemptions.
The problem and potential solutions, from which our project is inspired, are outlined in depth in this video on "async app architectures" from ETH Denver: https://www.youtube.com/watch?v=Qhi1wZB9Ei4
Current vault solutions are:
- single chain, only supporting "multi-chain assets" through synthetic / wrapped assets
- Only allow deposits on the source ("hub") chain via proxy messaging (see LayerZero OmniVault)
- Rely on complex and opaque (all closed-source) off-chain orchestrators (like Veda BoringVault)
- Cannot support qualified custodians (QCs) for vault holdings, restricting true institutional usage
The Pika Vault:
- Allows for native USDC deposit / redemption on multiple chains without touching synthetic assets
- Relies entirely on ONCHAIN orchestration, all performed via LayerZero message composition
- Uses native USDC & CCTP for cross-chain USDC transfers
- Supports QC addresses for vault positions held on non-hub chains
Benefits:
- Users: one vault position that spans chains without multi-chain bridges or gas.
- Vault strategists: programmable cross-chain workflows,
- Institutions: qualified custody support on spokes with infrastructure aligned with institutional requirements.
- Protocols: use of native assets never having to leave the origin chains
Why "Pika"?
the Pika is is a small, mountain-dwelling mammal closely related to rabbits. They gather significant amounts of plant materials, including grasses and wildflowers, and store them in piles to protect them from the elements. We relate this to the user collecting tokens in the vaults, holding and protecting them.
Our architecture architecture separates control and value planes:
Control Plane:
- LayerZero OApps / composers coordinate deposits, redemptions, claims, and share issuance on the hub chain
Value plane:
- Uses Circle CCTP and LayerZero OFTs to move deposit and share assets respectively.
- NAV data is calculated via ChainLink Oracles and sent via ChainLink CCIP, ensuring price stability and reliability even in the (very unlikely) event of a LayerZero DVN outage.
Frontend:
- Uses Coinbase Developer Platform for Coinbase Embedded Wallets and On / offramp flows
Contracts:
- Hub Vault: ERC-4626 hub vault with synchronous deposits and 7540 asynchronous redemptions
- Spokes: ERC-4626-compatible interfaces on each supported chain as entry/exit points and custodians
- VaultComposerSync (Cross-chain orchestration): LayerZero messaging manages deposits, queueing, redemptions, claims, and share accounting
Protocols
- Circle CCTP v2 for native USDC burn/mint transfers
- LayerZero OFT for omnichain ERC-20s
- Chainlink CCIP for spoke NAV data to all chains, decoupled from asset flows
Hacky bits:
- Spokes send NAV to hub individually so that the oracles can each live on their proper chains