Docs

How it works.

Three moving parts: a payment rail, a pool of pre-mined addresses, and a name resolver.

1 · Payment (x402)

Every endpoint that costs money answers an unpaid request with 402 Payment Required and a quote. Pay it, retry with proof, and the work happens. There is no account and no stored balance.

The fee is 0.001 USDC per launch, in USDC on Solana. Solana's own rent and signature fees are separate and go to the network — see pricing for the full bill.

2 · Addresses ending in agent

base58 uses 58 symbols, so fixing the last five characters of an address is a search over 656,356,768 keypairs. Our grinder manages about 65k a second on 10 threads.

It is a geometric distribution, so the average is a bad promise. Half of attempts land inside 117 min, the mean is 168 min, and one in ten takes over 387 min. One in a hundred takes over 775 min.

So the grinding happens before anyone asks. A daemon keeps a pool topped up; a launch claims a finished key. Live depth is on the launch page.

These timings are measured by counting real hits against wall clock, not read off solana-keygen's own “keypairs searched” line — that counter over-reports by several times, and an earlier version of this page quoted an eight-minute median because of it.

Claiming is a single atomic rename() from available/ to claimed/. With two launches landing at the same instant exactly one wins and the other takes the next key — a read-then-delete would hand the same address to both, and one of them would pay for a mint that already exists. Measured: swapping the atomic rename for read-then-delete double-issues roughly a sixth of the pool under eight concurrent claimers.

3 · The .agent resolver

Each launch registers a name pointing at its mint. Resolution is a plain, unauthenticated GET:

GET https://fixr.nexus/api/resolve?name=yourproject
GET https://fixr.nexus/api/resolve?mint=<address>

Names are a-z, digits and hyphens, 332 characters, no Unicode. Names explains why that restriction is deliberate and what a .agent name is not.

Response codes

codemeaning
200Resolved. The mint is in the body.
400The name cannot be valid. The reason says why.
402Payment required. The quote is in the body.
404Valid name, not registered. This is a fact, not a failure.
409That name or address was taken between your check and your request.
503The resolver could not reach its store. NOT the same as 404 — do not treat it as available.

Custody and who signs

Fixr generates the mint keypair, builds the create_v2 transaction, signs it with that keypair, and returns both the transaction and the secret once. No copy is kept. You sign as fee payer and submit.

That split is deliberate. Creating a pump mint costs about 0.0127 SOL of account rent — measured from a real launch, not estimated. Fixr's fee is 0.001 USDC. If Fixr paid the rent it would lose roughly a thousand times its fee on every launch, and anyone could drain the wallet with a loop. Instead Fixr never holds SOL at all, and the fee stays a tenth of a cent.

You are also the token's permanent creator, which is what creator fees key off. That attribution cannot be changed after the mint lands, and neither can the metadata URI.

Unclaimed keys in the pool are held with owner-only permissions outside the repository, because until a mint exists anyone holding that key could create the token at that address first.