AgenEngineHookV2 on Robinhood Chain
Uniswap v4 Hook Contract 0xcf57aa494e8b99e6d9c5098e55f04b73eed278cc on Robinhood Chain · Dynamic fee · Verified contract
- Volume (24h)
- $327
- Value locked (TVL)
- $786
- All-time volume
- $577.18K
- Pools using this hook
- 55
- Swaps (24h)
- 19 (19 traders)
- Total swaps
- 6,099
What it does
A Uniswap v4 hook that charges a fixed, pre-committed dynamic fee on the quote asset of each trade, with rates set by a time or volume ladder and size tiers, and routes fees to a creator split and a fixed 25% platform share.
How it works step by step
- Stores each market's rules once at creation and refuses pools that do not open at the committed price
- Charges a quote-denominated fee whose rate follows a stage ladder over time or cumulative volume, plus size-based tiers
- Applies a 10% maximum fee cap and forbids ascending time-based sell ladders
- Mints fees as ERC-6909 claims to a per-market vault, with a fixed 25% platform share and creator remainder split
- Enforces optional trade ceilings and quote floor and reverts refused trades
- Optionally restricts liquidity additions to the factory via the PositionManager
- Swap behaviour
- On every swap beforeSwap and afterSwap settle the quote-leg fee (exactly one of them charges), enforce the market's token and quote ceilings and quote floor, and accumulate quote volume used by volume ladders.
- Liquidity behaviour
- Liquidity access is a committed market setting: FactoryOnly (default zero value) restricts adds to the pinned PositionManager with the factory as initiator; Permissionless allows anyone to add liquidity. No remove-liquidity or donate callbacks are enabled.
- Fee behaviour
- Dynamic, programmable fee charged on the quote leg only. beforeSwap returns zero LP fee with OVERRIDE_FEE_FLAG and settles the fee in whichever of beforeSwap/afterSwap settles the quote leg. Fee rate is chosen from a stage ladder (time or cumulative quote volume) and size-gated quote tiers, bounded by MAX_FEE_PPM of 10%. Fees are minted as ERC-6909 claims to a per-market vault, split with a fixed 25% platform share and a creator distribution list. The pool's stored LP fee is zeroed at initialisation.
- Owner & admin controls
- No admin controls found. The hook has no owner, setter, pause, upgrade path, delegatecall or selfdestruct; market rules are written once by the factory via configure() and are immutable thereafter. The factory is the only caller allowed to configure markets and create pools.
Enabled Uniswap v4 callbacks
beforeInitialize, afterInitialize, beforeAddLiquidity, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta
beforeInitialize: refuses pools not configured or not opening at the committed sqrtPrice. afterInitialize: records init time and reference tick, and zeroes the stored LP fee. beforeAddLiquidity: enforces liquidity access (factory-only or permissionless). beforeSwap: charges the fee when the quote leg is the specified currency and sets the zero-LP-fee override. afterSwap: enforces token/quote ceilings and floor, charges when the quote leg is unspecified, and accumulates quote volume. beforeSwapReturnDelta and afterSwapReturnDelta: allow the hook to settle the fee as a return delta.
Security & trust assessment
Risk level: low (verified source, high confidence).
Who controls it: No privileged key exists on the hook. The factory can configure markets once, but cannot change rules afterwards. The vault has no owner either; the platform recipient address is fixed at vault construction.
Risk to user funds: The hook itself never holds balances; fees are minted to the market's vault, which has no withdrawal path other than the fixed creator and platform claims. Traders pay the programmable fee on the quote leg at swap time. A trader can be refused by a configured bound, and a fee is charged according to the immutable stage and tier schedule.
Security findings
- [info] Immutable trade bounds can block trading: Trade bounds (token and quote ceilings, quote floor) are enforced in afterSwap and can revert trades that exceed them. Ceilings are immutable, so a market can become permanently untradeable at a bound by design.
- [info] Recipient payouts isolated from swap path: Vault credit() and claim() use a pull model with check-effects-interactions; a recipient that reverts only fails its own claim. Native transfers use a bare call with no gas stipend, so a malicious recipient can waste its own gas but not block swaps.
- [low] Liquidity gate relies on PositionManager-reported initiator: Initialisation requires the pool to open at the exact committed sqrtPriceX96 and beforeAddLiquidity relies on IMsgSender for the initiator in FactoryOnly mode; the code notes the initiator check fails closed on bypass.
- [info] Fee custody as ERC-6909 claims with solvency check: The hook calls poolManager.mint to credit the vault with ERC-6909 claims and tracks solvency per currency; a mismatch would revert with Undercredited rather than over-promise.
Contract details
- Verified source
- Yes (AgenEngineHookV2)
- Compiler
- solc 0.8.26+commit.8a97fa7a
- Bytecode size
- 23,400 bytes
- Upgradeable proxy
- No
- Detected patterns
- dynamic-fee, erc6909-claims, liquidity-management, return-delta
Pools using AgenEngineHookV2
- ETH / 4 (Dynamic fee) — 24h volume $327, TVL $358, 19 swaps today
- ETH / SPRM (Dynamic fee) — 24h volume $0, TVL $76, 0 swaps today
- ETH / CTPY (Dynamic fee) — 24h volume $0, TVL $94, 0 swaps today
- ETH / one (Dynamic fee) — 24h volume $0, TVL $50, 0 swaps today
- SPCX / MARSCOIN (Dynamic fee) — 24h volume $0, TVL $5.13, 0 swaps today
- NVDA / AI (Dynamic fee) — 24h volume $0, TVL $31, 0 swaps today
- ETH / CASHCAT (Dynamic fee) — 24h volume $0, TVL $0.66, 0 swaps today
- ETH / BARK (Dynamic fee) — 24h volume $0, TVL $102, 0 swaps today
- ETH / AGV2 (Dynamic fee) — 24h volume $0, TVL $0.24, 0 swaps today
- ETH / V4 (Dynamic fee) — 24h volume $0, TVL $0.28, 0 swaps today
- ETH / ORDO (Dynamic fee) — 24h volume $0, TVL $7.48, 0 swaps today
- ETH / CNPY (Dynamic fee) — 24h volume $0, TVL $3.31, 0 swaps today
- NVDA / delay (Dynamic fee) — 24h volume $0, TVL $2.03, 0 swaps today
- ETH / ORDO (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- ETH / YOLO (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- ETH / SCL (Dynamic fee) — 24h volume $0, TVL $3.15, 0 swaps today
- NVDA / AAA (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- ETH / BALLOONS (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- ETH / LEGS (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- ETH / V4 (Dynamic fee) — 24h volume $0, TVL $0.29, 0 swaps today