Knot

settlement layer / robinhood chain

Trade with people who do not want what you have.

Knot settles in rings, not pairs. You sign what you hold and what you will accept, and nothing moves. A solver goes looking for the closed loop that makes six strangers whole at once. The loop clears in a single transaction, or it never happened.

ticker
Not announced
contract
Not published
audit
Not published
chain
Robinhood Chain
signatures
EIP-712
depth cap
Not set

the primitive

No two of these rings are linked. All six are inseparable.

Mathematicians call it a Brunnian link. Pull any pair apart and they come away freely, because no pair was ever joined. Pull on the set and it holds. Cut one single ring and all six fall open in your hand, none of them damaged.

click any ring to cut it

woven

Six holds. Five does not.

Every ring passes over one neighbour and under the other. Nothing is glued, nothing is tied, and no ring touches the ring across from it. The strength is in the arrangement, not in any of the parts.

Knot is that shape written down as a settlement rule. Six people, no pair of whom has anything to offer each other, and one closed ring in which every one of them ends up with exactly what they asked for.

anatomy

A strand is four fields and a signature.

That is the whole object. It costs nothing to write, it touches no contract, and it sits in the open book until a solver finds a use for it or it goes cold.

have

asset, amount

What you are giving up, exactly. It stays in your own wallet under a permit that only the settlement contract can spend, and only inside a closing ring.

want

asset, floor

The asset you want back and the least you will take for it. Not a price, not a limit against a book. A floor the ring has to clear for you or it does not close.

expiry

block deadline

The moment the strand goes cold on its own. A knot inherits the earliest deadline of its members, so every ring expires with its most impatient strand.

nonce

spend once

A strand can be woven into one ring and never a second. Two solvers racing for the same strand is not a conflict. The loser reverts, and it costs you nothing.

// what your wallet signs. no contract call, no gas.
struct Strand {
  address owner;
  address haveAsset;   uint256 haveAmount;
  address wantAsset;   uint256 wantFloor;
  uint64  deadline;    uint256 nonce;
}

eip-712 typed data, one signature per strand

// what a solver submits. one call, every leg inside it.
function weave(
  Strand[] calldata ring,
  bytes[]  calldata signatures
) external;

// reverts unless, for every i:
//   balance(ring[i].owner, wantAsset) rises
//   by at least ring[i].wantFloor, this block.

illustrative shape, not a deployed interface

No pool deposit. No escrow account. No approval to a router that lives forever. Until a ring closes around your strand, the protocol has never held a single unit of anything you own.

how a knot forms

Four stages, and only the last one moves money.

01

Sign

You sign a strand off chain. It is free, it is gasless, and you can revoke it at any moment before it is woven. Signing is not a trade. It is a statement about what you would accept.

02

Weave

Solvers read the open book and search it for closed rings up to the depth cap. This is a graph problem, not a pricing problem. Whoever finds the ring that fills the most strands submits it.

03

Close

The ring executes as one call. Every leg checks its own floor, in its own asset, in the same block. One leg short by one unit and all six legs revert together.

04

Sever

Or no ring is found in time. The strand goes cold, the permit lapses, and you keep everything you started with. In the mark, that is the ring cut from obsidian.

the console

Slide the depth. Watch who gets filled.

Six assets on the corners, twelve strands drawn between them, each one pointing from what somebody holds to what they want. At depth two a strand only clears if somebody wants precisely the mirror of it. Raise the cap and the loops get longer, stranger, and far more likely to exist.

depth cap 2
0 / 12
strands filled
0
rings closed

Twelve sample strands, generated in this browser and solved on this page. Illustration of the mechanism, not live network data and not a performance claim.

Depth is the entire product. At depth two, Knot is an ordinary swap and every exchange on earth already does it. Depth three is where the coincidence of wants stops needing a coincidence. By depth six the person holding the thing you want has never heard of you, wants nothing you own, and will never know your name. The ring still closes, and you are still made whole to the floor you signed.

the open book

Every strand is public the moment it is signed.

There is no private order flow to sell, because there is no private order flow. Solvers all read the same book, which is the only way competing on ring quality can mean anything.

strand book sample rows
strandhavewantwoven intostate

Sample rows drawn to show the shape of the book. No live strands exist yet.

the disc

Everything inside the disc is one transaction.

The glass disc around the mark is the block boundary. Six invariants hold inside it, one for each ring.

The solver fee is a fixed share of the slack, the surplus left in a ring once every floor has been cleared. That share is not set yet, and no number for it appears anywhere on this page.

the honest part

Most strands never get woven.

That is the price of refusing to run a pool. Knot cannot quote you. There is no inventory behind it, no market maker on the other side, nothing standing ready to take the trade because it has to. If no ring forms before your strand expires, nothing happens at all. No fill, no partial, no fee, no position, no exposure. You are exactly where you started, minus the time you spent waiting.

So the rule is simple. If you need a fill in the next second, go and pay a pool for the privilege. If you need the fill you actually asked for, sign a strand and let the graph go and find it.

proof of weave

Every closed ring gets a page.

One link, no account, nothing to install. It shows the whole ring: every leg, every floor, the slack and where the slack went. Anyone can re-run the ring against the chain and confirm it balances.

knot / proof of weave example layout
knot id
Nothing settled yet
depth
6 legs
the ring
every floor cleared
yes, checked per leg in block
slack returned
Rule published with the contract
transaction
Not published
verify
Re-run the legs, compare balances, sum to zero

where it settles

Knot settles on Robinhood Chain.

A USDG native L2, an Arbitrum Orbit rollup, chain id 4663, fully EVM. A six leg ring is one transaction carrying six signatures and six balance checks, so the thing Knot needs most is cheap calldata and a block it can trust to land.

USDG native gas and unit Orbit Arbitrum L2 rollup 4663 chain id EVM no new toolchain EIP-712 strand signatures Permit no standing approvals

the token

There is nothing to buy yet.

No ticker has been chosen. No contract has been deployed. No supply has been set and no liquidity has been opened. When those exist they will appear on this page first, and anything claiming otherwise before then is not us.

ticker
Not announced
contract
Not deployed
supply
Not set
liquidity
Not opened

order of work

Phases, and no dates.

phase one
Strands and pairs. The signature format, the open book, and rings at depth two. Boring on purpose, because it is the part everything else stands on.
phase two
The solver. Cycle search over the live book, the depth cap raised past two, slack measured and returned.
phase three
Proof pages. A public page per closed ring and a public view of the open book, both readable without an account.
phase four
Open solving. Third party solvers compete on the same book. The contract does not care who found the ring.
phase five
Rings across chains. Same primitive, legs on more than one chain, held together by the same rule that nothing moves unless all of it moves.

questions

The ones worth answering.

Is this an order book?

No. A book matches you against a counterparty who wants the mirror of your order. Knot never looks for your mirror. It looks for a loop that happens to contain you, and the other members of that loop may want nothing you hold.

Can a solver take my funds?

A solver has no path to them. It proposes a ring and the contract executes it. Your permit can only be spent by the settlement contract, only inside a ring that clears your floor, and only in the block where every other leg clears too.

Can a solver front run my strand?

There is no ordering to exploit inside a ring, because a ring is a single call and every leg lands at once. A solver can only compete by finding a ring that fills more strands than the ring the last solver found.

What happens if two rings use the same strand?

The first one to land wins and spends the nonce. The second reverts on arrival, which is a wasted transaction for that solver and no cost at all to you.

Why not just use a pool?

Use a pool when you need certainty right now and are willing to pay for it. Knot is for the other case, where the fill matters more than the second it arrives in, and where the thing you are holding has no pool worth trading through.

Why is one of the rings black?

Because a Brunnian link only exists at all thanks to the cut that frees it. That ring is the sever, the failure that is designed in rather than patched over. A settlement rule that cannot fail cleanly is a settlement rule that will eventually fail badly.