Contracts
Architecture Overview

UniExecutor The universal execution engine with Permit2 support:
Manages protocol adapter registry
Executes single and batch operations
Integrates with Permit2 for gasless approvals
Supports conditional execution logic
Provides reentrancy protection
Enables multicall operations
Key Functions:
executeAction(Action): Execute a single protocol actionexecuteBatch(Action[]): Atomically execute multiple actionsexecuteWithPermit2(Action, Permit2Transfer): Execute with gasless approvalexecuteBatchWithPermit2(...): Batch execution with Permit2executeConditional(ConditionalAction): Execute conditionally based on balance checksmulticallWithValue(bytes[], uint256[]): Multi-call with value splitting
Security Modules
PriceValidator
Integrates RedStone oracle for price validation
Provides slippage protection (default max 10%)
Checks for price staleness (max 5 minutes)
Supports batch price validation
MultiSigManager
Facilitates multi-signature governance
Includes a 24-hour timelock for critical operations
Provides emergency execution mode
Manages ownership with voting
Protocol Adapters
Ethereum Adapters
LidoAdapter: Stake ETH to receive stETH Methods:
deposit(amount)WstETHAdapter: Wrap and unwrap stETH to and from wstETH Methods:
wrap(amount),unwrap(amount)MorphoAdapter: Interact with Morpho for collateral and borrowing Methods:
supply(amount),borrow(amount),repay(amount),withdraw(amount)
Cross-Chain Adapter
AcrossAdapter: Bridge assets from Ethereum to Hyperliquid Method:
deposit(token, amount, destinationChainId, recipient)
Hyperliquid Adapters
StakedHypeAdapter: Stake and unstake HYPE Methods:
stake(amount),unstake(amount)HyperLendAdapter: Aave V3-style lending protocol on Hyperliquid Methods:
supply(asset, amount),borrow(asset, amount),repay(asset, amount),withdraw(asset, amount)FelixAdapter: Collateralized Debt Position (CDP) protocol Methods:
openCdp(collateral, amount),deposit(cdpId, amount),withdraw(cdpId, amount),borrow(cdpId, amount),repay(cdpId, amount)HyperBeatAdapter: Meta vault with automated strategy management Methods:
deposit(asset, amount, vault, recipient),withdraw(asset, shares, vault, recipient),swap(tokenIn, tokenOut, amountIn, minAmountOut, recipient)
Last updated