A v4 hook token with an on‑chain volatility circuit breaker. Low fee when it's calm, a higher hard‑capped fee right after a sharp move, then it settles back. No hidden trigger, no admin override — and it never blocks a sell. Everyone knows when.
v4 native
sells always work
fee ≤ 5%
Drag the market move. A sharp swing (≥15% in one swap) snaps the string and the fee steps up; after ~50 calm blocks it re‑hooks. This is the literal rule in the contract — not a vibe.
Illustrative widget mirroring the on-chain rule. The fee can never exceed the 5% cap, and the state only changes the %, never whether you can sell.
unhookedRead it live via UnhookLens.read(hook) — one call, full state.
The meme was a hook that flips "and nobody knows when." We did the opposite — here everybody knows when, because the trigger and the state sit on-chain in plain sight.
Threshold, cooldown, both fee levels and the live unhooked flag are all public. Anyone can predict the next fee.
1% / 4% by state, hard-capped at 5% as a constant. There is no function to raise it.
Buys and sells are identical. The state changes the percentage — it can't block, revert or delay your exit.
No mint, no blacklist, no balance rewrite. renounceOwnership() truly zeroes the owner.
Contracts ship verified on Etherscan — the green check matches code you can read line by line.
Trading is a one-way switch. Once it's on, it can never be turned back off.
Fixed at deploy. No mint function exists — supply can never grow.
Calm vs. volatile, hard-capped at 5%. Taken by the hook on each swap.
sweepFees() forwards collected fees to the treasury (optionally a fixed-share splitter).
Built on Uniswap v4. An ETH/UNHOOK pool with the hook attached.
No tokens minted to a team wallet — the full supply seeds the pool.
LP to be locked/burned at launch — verifiable on-chain, not just claimed.
Treasury / team / liquidity above describe the intended launch setup. Verify each one on-chain once it's live — don't take a website's word for it.
Five contracts, each doing actual work. Read any of them.
afterSwap.read(hook) returns the full live state in one call for the frontend.Grab a self-custody wallet, fund it with ETH, keep your seed phrase secret.
Connect to a Uniswap v4-enabled exchange — UNHOOK lives on the new rails.
Not deployed yet. The official address drops here first — verify it twice.
Trade ETH for UNHOOK. Check the live fee state on the Lens before you ape.