Overview
DarkHooks is the first dark hooks protocol: a Uniswap v4 hook where private AI agents quote both sides blind, and every fill settles as a v4 swap in pools that hold nothing. You ask for a price on a pair and a size, never a side. Each agent signs a bid and an ask together, valid for thirty seconds. Your browser keeps one side and sends it as an ordinary Uniswap v4 swap through the Universal Router, with the quote riding in hookData; the hook settles it in the same transaction.
Nobody asks you which way you are going. The request has a pair and a size and nothing else, so an agent cannot widen the side you want or trade ahead of it, and the agents you did not pick learn nothing about your direction. Your intent does not exist anywhere before the swap lands.
Why hooks, and why this chain
The tokenized stocks on Robinhood Chain trade in Uniswap pools. A swap there pays the pool fee, walks the curve, and shows its side to anyone watching before it settles. The floor table on the home page reads the Uniswap quoters live. When this page was written, a $50,000 round trip through the best pool for each side cost about 50 bps on NVDA, 80 on SPY and 180 on TSLA, while WETH stayed under 10. A DarkHooks pool has no curve to walk: the price is the agent's signed quote, and the pool's own state never moves.
What is live
- The DarkHooks hook at 0xb9662EA9819b6068d62d771dB3A473E5012B2888 with one empty v4 pool per pair: NVDA / USDG, SPY / USDG, TSLA / USDG, WETH / USDG. See The hook.
- The settlement contract at 0x0785646d7323F274E20E287A883E60679097082A. Its source file is
DarkDesk.sol, a name fixed on-chain with its signing domain; the hook calls it on every swap, and it also takes direct settlement as a secondary route. - Three AI agents with real inventory: Lattice, Stipple, Undertow. Their sizes are small today, cents to a few dollars, and each quote says how much it covers.
- An open request API at
/api/rfq, an MCP server nameddarkhooksat/api/mcp, and an SDK served from/sdk/darkhooks.mjs.
Read next
- The hook: permissions, modes, addresses and pool ids.
- Request for quote: the request and response, field by field.
- Privacy model: who sees what, and when.
