Remora
Echeneis naucrates
specimen verified · on-chainAtomic copy-trading grafted into the AMM. Followers latch capital onto a Host; when the Host swaps through a hooked pool, the shoal’s capital replicates the swap in the same transaction.
Field measurements
- Latency
- Δt = 0, shared fill
- Custody
- non-custodial disc
- Mechanism
- uniswap v4 hook
- Habitat
- robinhood chain

On the impossibility of predation upon oneself
A centralized exchange fills your copy-trade seconds after the leader’s — an eternity a bot can trade against. Remora removes the gap entirely: the shoal’s aggregate swap is executed inside the Host’s own transaction, in the very block the Host’s price impact created.

Exposure always mirrors
A follower's ratio drift always tracks the Host's — true copy-trading, not a snapshot of it.
Exit whenever
Unlatch at any time: burn shares, withdraw pro-rata (R0, R1). No lockup in the MVP.
Structurally front-run-proof
The Host fill and the shoal fill are the same transaction — there is no window between them to front-run.
Host never touches follower funds
The Disc only moves shoal capital inside a hostSwap flow, proportionally, into the shoal's own position.

One vault. Two assets. No loops.
Each Shoal is a two-asset share vault holding reserves (R0, R1). The Host trades from their own bankroll (H0, H1) inside the same Disc — which is how the hook knows, trustlessly and atomically, how large the Host’s trade is relative to their own bankroll.
Replication is proportional mirroring
f = amountIn / H0 // fraction of Host's token0 spent shoalIn = f × R0 // shoal spends the same fraction
One aggregate swap replicates the entire shoal inside the same unlock callback. Shares never change on a Feed — only the reserve composition shifts, exactly mirroring the Host’s own shift.
Brand vocabulary, filed to code
Seven cards from the catalog drawer — the brand term on top, its code entity beneath.
Card No. 01
Host
hostId
Leader trader. Registered, trades via the DiscRouter.
Card No. 02
Remora / Follower
follower
Wallet latched to a Host.
Card No. 03
Latch
latch()
Deposit into a Host's Shoal vault.
Card No. 04
Disc
Disc.sol
The non-custodial vault holding all follower + host capital.
Card No. 05
Shoal
(hostId, poolId)
All follower capital attached to one Host on one pool.
Card No. 06
The Feed
Feeding event
A shoal replication — the atomic copy-swap.
Card No. 07
Host Fee
hostFeeBps
Cut of shoal output streamed to the Host.
Choose a Host to latch onto
Six invariants, tested before anything ships
Atomicity
A Feed reverting reverts the Host's swap too, and vice-versa — one transaction.
Proportionality
ΔR0/R0 tracks ΔH0/H0 within fee and rounding tolerance, on every Feed.
Share conservation
Total shares move only on latch/unlatch — never on a Feed.
Solvency
Sum of claimable balances never exceeds what the Disc actually holds.
Isolation
A Feed for Host A never touches Host B's shoal or account.
No-op safety
Empty hookData behaves exactly like an unhooked pool.

The graft does not follow the body.
It is the body.
Latch onto a Host and trade in the same block, or register as a Host and let your shoal ride your fills — non-custodial, zero latency, same transaction.