How it works
Launch a token, and the fee every trade against it pays becomes compute for an AI model. This page covers the whole path: where the fee comes from, who holds it, how it turns into compute, and who gets to spend it.
Overview
A launch here is a Solana token on a Meteora bonding curve: the curve holds the entire supply, it is tradeable from the first slot, and once it fills up the launch graduates into a Meteora pool whose liquidity is locked permanently. What is different is what the fee is for.
Every launch is paired with one model from the OpenRouter catalogue. Every trade against that token pays 2.5%, of which 2% goes to the Borly treasury, and the treasury exists to buy inference. The sum of every fee ever collected is the compute pool, and anyone who has launched a token can spend it, on any model the platform carries, not only their own.
A token can trade against SOL, USDC or a tokenized stock (xStocks, such as NVIDIA or the S&P 500, and Ondo stocks, such as silver or oil funds). The pair is chosen at launch and fixed with it.
A tokenized stock keeps its issuer’s controls. xStocks are issued by Backed: the issuer can pause transfers of a stock, and as its permanent delegate it can move that stock out of any account holding it, including a launch’s curve or pool and the treasury. Ondo stocks are issued by Ondo Global Markets: the issuer can pause transfers of a stock and freeze any account holding it, the same accounts included. USDC is issued by Circle, which can freeze accounts too. While a stock is paused, trading and fee collection in its pairs stop; nothing is lost, and both resume when the pause is lifted. The amount a wallet shows for a stock also includes a multiplier the issuer sets for dividends and splits; Borly prices and books every amount with that multiplier.
Fees are pooled, not per launch. A token you launched funds the pool; it does not fund a private balance you draw down alone. The trade is that you get the whole pool rather than your own slice of it.
Lifecycle
Launch
Name the token, pick the model it backs, pay the 0.015 SOL launch fee. The whole supply of one billion tokens goes onto a Meteora bonding curve whose fees belong to the Borly treasury, in the same transaction.
Trade
Every trade on the curve pays 2.5%: 2% accrues to the treasury, the rest is Meteora's share. Fees are taken in what the token trades against — SOL, USDC or a tokenized stock — never in the token itself.
Refill
Fees wait on each launch until someone presses Refill pool. The treasury program collects them, pays that person 0.5% and sends the rest to the platform wallet, writing a record of every payout on chain.
Spend
Each recorded payout becomes compute, priced in USD at the moment it is booked. Anyone who has launched a token can talk to any backed model, and each message is billed against the pool.
The backing model
The model is chosen at creation and written into the token’s metadata, which this site stores and the token points to on chain. It is an OpenRouter id such as anthropic/claude-opus-5, and it is checked against the live catalogue before the launch is recorded, so a token cannot claim to be backed by a model that does not exist.
A model becomes usable when a token launches for it, and not before. The catalogue lists several hundred models; the ones you can actually talk to are the ones something funds. That is the point of the pairing rather than an arbitrary restriction: the fees that pay for inference come from launches, so the models on offer are the ones launches back.
Several tokens can back the same model. Nothing stops it, and nothing about it is special, since they all contribute to the same pool.
The fee
Trading fee2.5%
Charged on every trade against the curve. 2% goes to the treasury and into the compute pool; Meteora keeps the rest.
Anti-snipe fee99% → 2.5%
Falls exponentially over the first five seconds of every launch, on buys and sells alike.
Launch fee0.015 SOL
Paid once, when you create the token; it goes to the treasury (Meteora keeps a tenth).
Pool fee1%
Charged by the graduated Meteora pool; the share earned by its locked liquidity goes to the treasury.
Creator feeNone
Nothing is paid to whoever launched the token.
Swap desk fee0.30%
Only on stock swaps at /app, lower for wallets holding BORLY. Half funds the platform, half buys BORLY back and burns it.
The trading fee is the same on every launch and is not a setting. Letting each launch choose would make what a trade contributes depend on which token it happened to be, and would let a launch opt out of funding the thing it is using.
Fees are charged in the asset the token trades against, never in the token itself, so nobody is handed a bill denominated in something they were trying to sell.
The treasury
Every Borly launch is created on a Meteora configuration whose fee claimer is the same address: a program-derived address of the Borly treasury. There are no per-token vaults: one address collects everything, because there is one pool to fund. After graduation the same address owns the launch’s locked pool position, so the pool fee it earns arrives the same way.
The treasury is a program, not a wallet. Only it can sign for that address, and every signature it gives goes to one hard-coded Meteora program, to collect fees. Whatever it collects can only go one way: 0.5% to whoever asked it to collect, the rest to the platform wallet the address is derived from, paid as native SOL (or as the stock the launch trades against).
The treasury can collect fees and forward them. That is all: it has no admin instruction, it cannot mint, cannot remove locked liquidity, and cannot touch anyone’s balance. Its code can be changed only with the project owner’s wallet, kept so the program can follow changes in Meteora or the tokens it handles; every change is public on chain.
Refill pool
Fees do not arrive on their own. On the curve they wait inside the launch’s Meteora pool, the launch fee waits there too, and after graduation the pool fee waits on the locked position. Refill pool is the button that moves them: it collects from every launch with something waiting, up to twelve at a time, in one wallet approval.
Anyone can press it — usually someone who wants the pool refilled, from the button next to every chat. They pay the network fee, a fraction of a cent per transaction, and the treasury pays them 0.5% of what it collects in that refill.
The pool is credited from the record the program writes into the transaction, never from what a browser reports: the server reads the transaction back from the chain and books each payout once. Claims made from anywhere else are picked up the same way by a regular sync.
Each payout is converted to USD at the moment it is booked and that rate is written onto the record, because what SOL or a stock was worth at that time is not recoverable afterwards. If no price can be fetched the booking waits for a later run rather than using a guessed price.
The compute pool
The pool is a ledger, not a balance. Every credit and every debit is a row, and the balance is their sum. A stored total would be wrong the moment two inference calls settled at once, and could then never be reconciled against its own history.
Amounts are integer micro-USD, meaning millionths of a dollar. Model pricing runs to eight decimal places per token, and floating point addition over thousands of rows does not stay exact.
Rows carry the launch they belong to where there is one, so a token page can say what that launch contributed. That is attribution, not a wall: the balance is read across every row.
Who can use it
Anyone whose wallet has launched a token can talk to any backed model. Not only the model they launched, and not only while their own token is trading.
Access is proven with a signature, not with a claimed address. A wallet address in a request body proves nothing, since anyone can type someone else’s, so each request carries a message signed by the wallet, with a timestamp, valid for ten minutes. Signing a message is not a transaction: it moves nothing and costs nothing. There is no session: the signature is checked per request, so nothing has to be stored.
The browser reuses one signature for several minutes, so a conversation is one wallet prompt rather than one per message.
How a message is billed
Every reply is billed from the token counts OpenRouter reports for that call, multiplied by that model’s own published price. It is never an estimate and never a flat rate per message.
The result is rounded up to the nearest micro-USD, so a long tail of sub-cent calls cannot add up to free inference. Both token counts are stored on the message and on the ledger row, so a charge can be checked against the catalogue rather than taken on trust.
Conversations are kept server-side and are public, the way a chart is. The model is what the token backs, so what it has been asked is part of that token’s record.
The API
Anything you can do in the chat you can do from your own code. Mint a key on the keys page and point an OpenAI client at /api/v1 on this domain.
The request and response are OpenAI-shaped and passed through rather than remapped, so an existing client works by changing the base URL and the key. Two response headers report what the call cost and what is left, so a client never needs a second request to find out.
ModelsBacked only
A model is callable once a token backs it.
Max tokens4,096
Per request, so one call cannot drain the pool.
StreamingNot supported
Usage arrives after the response, so it could not be billed.
Rate limitThe pool
There is no per-key quota; the shared balance is the limit.
Keys are stored as a SHA-256 hash and never in plaintext, so the key is shown exactly once, when it is minted. A lost key cannot be recovered, so revoke it and mint another. Revoking keeps the row, because the record of what a key spent is the point of per-key accounting.
A key spends the shared pool, not a balance of its own. Treat it like a credential that can spend other people’s money, because it can.
The bonding curve
A launch holds its entire supply of one billion tokens on a Meteora Dynamic Bonding Curve from the moment it is created. The curve will always sell you tokens and always buy them back, and the price is worked out from how much has been bought so far. You are never waiting for someone else to take the other side.
Large buys move the price more than small ones, so the price paid on a big order is worse than the price quoted. This is the same behaviour as any market with limited liquidity.
Every launch opens with a fee that starts at 99% and falls exponentially to the normal 2.5% within five seconds, on buys and sells alike. It exists so that being first is not profitable: a bot that buys the opening slot and sells into the people arriving a minute later gives up more than it gains. The creator’s own first buy is made inside the launch transaction and pays the normal fee.
Graduation
When the curve collects 85 SOL (or the same value in the stock it trades against), the launch graduates: what it collected, together with the 20% of the supply held back from the start for exactly this purpose, seeds a Meteora DAMM v2 pool. Its liquidity is locked permanently, and the locked position belongs to the treasury.
There is no unlock, no timelock that expires, and no privileged wallet that can reach it, not the creator and not us. That is worth stating plainly, because rug pulls almost always work by the creator removing liquidity. On a graduated token it is not a promise not to: the treasury has no instruction that could.
The pool charges a 1% fee on every trade. The share earned by the locked liquidity is collected by Refill pool like any other fee, so a graduated token keeps funding the compute pool.
Swap desk & burn
The swap desk at /app swaps SOL for tokenized stocks (xStocks and Ondo) and back. Every quote asks Jupiter for the best route across Solana exchanges — for Ondo stocks, whose markets are mostly against USDC, that route passes through USDC inside the same transaction — and the swap settles in one transaction from your wallet; Borly never holds funds. The stocks keep their issuer’s controls (see above).
Each swap pays a 0.30% platform fee, always in SOL: off the input on a buy, off the output on a sell, shown in the quote before you sign. It collects in the treasury; Refill pool splits it — 0.5% to whoever presses the button, then half to the platform and half to the buyback & burn vault.
Hold to earn a lower fee. Once the BORLY token is live, the fee drops in tiers with the BORLY your wallet holds, down to 0.05%. Your tier is read from your wallet on every quote; the tiers are listed on the swap page.
Buyback & burn. The burner has one job and no admin instruction: it is bound to the BORLY mint once, and its vault can only buy BORLY and burn it. Like the treasury, its code can be updated only with the project owner’s wallet. Anyone can run a buyback: it spends at most 0.25 SOL, buys BORLY in BORLY’s own market on pump.fun — its pump.fun curve, or the PumpSwap pool it graduates into, never one a caller picks — burns every token it bought, and pays the caller 1%. Each buyback is also capped at a small share of the SOL in that market (1% of the curve’s reserves, 0.25% of the PumpSwap pool), so trading around it costs more than it can earn, and buybacks are spaced five minutes apart.
Programs
Everything runs on Solana. Each launch’s own mint and curve are created per launch and should be resolved from the mint address rather than hardcoded.
Borly treasury
Owner-less fee collector: claims curve, launch and pool fees for every Borly launch and splits swap-desk fees.
Borly burner
Buys BORLY back with half of every swap-desk fee and burns it. Bound to the BORLY mint once, forever.
Treasury address
The program-derived address that is the fee claimer of every Borly launch and owns its locked pool position.
Meteora Dynamic Bonding Curve
Runs every launch’s curve.
Meteora DAMM v2
Holds every graduated pool and its permanently locked liquidity.
Status
Two parts of the path above are not automated yet, and it is better to say so here than to let someone discover it.
Topping up OpenRouter is manual. Refills credit the pool, but nothing moves that SOL into OpenRouter credit. The pool is our accounting of what has been raised, not a reading of the real balance, so if the pool shows more than has actually been deposited, calls will fail at the provider rather than here.
Trade volume is not mirrored. Trades are not read from the chain into the database, so 24h volume is not shown anywhere. Price and market cap do not depend on it, since they are read live from the curve or the pool.
Risks
Launch tokens are volatile and can lose all value. Anyone can create a launch with any name, symbol and image, including ones that deliberately imitate an existing project. Names and symbols are not unique and are not verified.
Token addressThe only identifier
A name or an image can be copied. A mint address cannot.
GraduationNot a quality signal
It means the curve filled up, nothing more.
Model availabilityNot guaranteed
A model can be withdrawn from the catalogue by its provider.
Pool balanceNot a guarantee
It is our accounting, not the provider’s credit balance.
AuditsBorly programs are unaudited
The treasury and the burner have no admin instruction. Their code can be updated only with the project owner’s wallet, so they can follow changes in Meteora, pump.fun or the tokens they handle; every update is public on chain. The curves and pools are Meteora’s own programs.
Tokenized stocksIssued by third parties
xStocks (Backed) and Ondo stocks track listed shares but are not the shares themselves; check they are available where you live.
Transactions are submitted by your own wallet and may be irreversible. Nothing here takes custody of your tokens or your funds.
FAQ
No. Fees go to the treasury and become compute that everyone who has launched can spend, including you. If you want fees paid to yourself, this is the wrong platform.
No. Launching once is what buys access, and it is permanent: your wallet stays eligible whatever happens to the token afterwards.
Requests are refused until the next refill. Nothing is queued and nothing is charged.
No. It is recorded at creation alongside the supply and the pricing, none of which can be changed afterwards.
No. The pool position is permanently locked by Meteora and owned by the treasury program, which has no instruction that removes liquidity.
Whoever presses Refill pool sends the transaction: a network fee of a fraction of a cent, plus the rent of any token account it opens for the first time. The treasury pays them 0.5% of everything it collects in that refill.
Any Solana wallet that supports the Wallet Standard — Phantom, Solflare, Backpack and others. Nothing is ever signed without your confirmation.
Ready to launch?
One transaction, and the model is funded.