ClaudiusHook on Ethereum

Uniswap v4 Hook Contract 0x64fc6dc0534188cb722095835f222fcf57b1a0cc on Ethereum · Fee sharing · Verified contract

Volume (24h)
$0
Value locked (TVL)
$0
All-time volume
$0
Pools using this hook
1
Swaps (24h)
0 (0 traders)
Total swaps
0

What it does

Every swap of ETH for CLAUDIUS or CLAUDIUS for ETH is taxed 3% of its ETH side, rising to as much as 35% in the first 10 minutes after launch, with the tax split between the team and a community pool that the court divides among treasury, burns, holder cashback and events.

How it works step by step

  • Charges a tax on the ETH side of every swap in the ETH/CLAUDIUS pool, 3% in steady state
  • During the first 10 minutes after launch the tax starts at 35% and falls linearly to 3%
  • Splits the 3% tax: one third (1% of trade) to the team wallet, two thirds (2%) to a community share that is then divided by the court's current split between treasury, buyback-and-burn, holder cashback and an events purse
  • Holds hook-owned liquidity in PoolManager via openPool, with the team able to remove it through withdrawLP
  • Exposes a permissionless flush() that pays out accrued team and community balances
Swap behaviour
Every swap is taxed on its ETH side: taxBps() of the ETH amount is taken via beforeSwap when ETH is the specified side, or via afterSwap when ETH is the unspecified side. Buys and sells both pay the same rate at a given time, but the rate is 35% for swaps in the first 10 minutes after launch and decays linearly to 3%, so early swaps pay considerably more.
Liquidity behaviour
No liquidity callbacks. The hook itself does not react to liquidity events; separately, the team can call openPool once to seed liquidity owned by the hook and withdrawLP to remove it.
Fee behaviour
The pool LP fee is 0; the hook tax (taxBps, 3% rising to 35% during the launch window) is the only fee. Accrued tax is split 1/3 team and 2/3 community, with the anti-sniper excess above 3% going 80% to the treasury and 20% to the team; flush() distributes these balances.
Owner & admin controls
No owner, pause or upgrade mechanism is present. The team address is immutable and is the only caller allowed to call openPool and withdrawLP; it also receives the team share on flush. The court contract (immutable) decides the community split via currentSplit, and the token it burns and distributes to is set at construction. The tax rate and team share are constants.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta

beforeInitialize restricts pool creation to the single native ETH/CLAUDIUS pool with fee 0 and tick spacing 60. beforeSwap takes the ETH-specified tax and returns a delta to offset the swap. afterSwap takes the ETH-unspecified tax and returns a delta. beforeSwapReturnDelta and afterSwapReturnDelta allow these hooks to return deltas that alter the amounts settled with the pool.

Security & trust assessment

Risk level: medium (verified source, high confidence).

Who controls it: The team wallet alone can open the pool once and can withdraw any or all hook-owned liquidity at any time, sending it to arbitrary addresses, and it receives the team tax share on every flush.

Risk to user funds: The hook holds accrued ETH and the LP position itself; swaps are taxed by taking ETH into the hook via manager.take, and funds can be moved out by flush (to team, court, token holders) and by the team's withdrawLP. Swaps are not blocked by the hook, but liquidity removal by the team can leave traders with thin or no depth.

Security findings

  • [high] Team can withdraw hook-owned liquidity: withdrawLP lets the team wallet remove all hookLiquidity from the pool and send the ETH and tokens to any recipient, which the source comments explicitly disclose; this is a rug-capable control over pool depth.
  • [medium] Hook takes tokens via return deltas: beforeSwap and afterSwap use manager.take to pull ETH tax out of pool balances and return deltas that adjust swap settlement, so the hook directly moves currency on every swap.
  • [medium] Unbounded external court calls in flush: flush calls court.currentSplit and court.fundPurse, and sends ETH to the court and team with low-level calls; a faulty or malicious court contract could revert distribution or redirect the community split, though the court address is immutable and set at deployment.
  • [low] Buyback-and-burn swap has no price limit beyond floor: _handleBuyback swaps with sqrtPriceLimitX96 set to MIN_SQRT_PRICE+1, so the buyback executes at any price and can be sandwiched by MEV searchers, reducing the value of tokens burned.
  • [info] Tax-rate formula uses block timestamp: taxBps depends on block.timestamp and launchedAt, so launch-window taxes are predictable and fixed by the constants rather than adjustable.

Contract details

Verified source
Yes (ClaudiusHook)
Compiler
solc 0.8.26+commit.8a97fa7a
Bytecode size
9,893 bytes
Upgradeable proxy
No
Detected patterns
erc20, launchpad, moves-currency, return-delta, self-unlock, tax

Pools using ClaudiusHook