Kosmo Protocol

Docs

How Kosmo launches work and where everything lives on each chain. Contract addresses on this page are read from the same configuration the site itself runs on, so they always match what the app uses.

Overview

Kosmo Protocol is a token launchpad on Uniswap v4. Every launch puts the whole token supply into a single-sided Uniswap v4 pool at creation, with the liquidity locked. There is no bonding curve and no capital is needed to start: the token trades on Uniswap from the first block.

Launches are live on Ethereum, Base, BNB Chain, Robinhood Chain and Ink. Each chain has its own set of contracts; nothing is shared between chains.

How a launch works

SupplyThe creator picks the supply, from 1,000,000 to 1,000,000,000,000 tokens. All of it goes into the pool.
PoolOne single-sided Uniswap v4 position, tick spacing 60, opening at a fixed nominal market cap. Buyers pay the quote asset and receive the token; the position sells upward as demand arrives.
Opening price1.391772 ETH market cap on Ethereum, Base, Robinhood Chain and Ink. 4.39 BNB on BNB Chain. About the same dollar value on every chain.
Locked liquidityThe pool position is held by the liquidity locker contract for the life of the token.
Creator's first buyOptional. It runs inside the launch transaction itself, before anyone else can trade, at the opening price.
HookEvery pool uses the chain's fee hook, which charges the swap fee and enforces the opening protections if the creator turned them on.

Robinhood Chain also carries tokens created earlier on bonding curves. They keep working exactly as before. New launches on every chain, Robinhood included, are Instant launches.

Opening protections

Optional, chosen by the creator at launch and fixed afterwards. They exist to slow the first minutes down so one wallet cannot take the opening supply.

Window10 to 30 seconds from the launch block.
Per-buy cap0.5% to 2% of supply in any single buy.
Total capUp to 10% of supply, all buyers combined, counted across the window.
Creator's first buyExempt. It happens in the launch transaction.
SellsNever limited.

When the window ends, the caps stop applying and the pool trades with no limits.

Fees

Every swap pays one fee, split three ways.

Protocol feeTiered by the token's fully diluted market cap in the chain's native coin. 1% below 43 ETH, 0.5% from 43 ETH up to 431 ETH, 0.3% at or above 431 ETH (Ethereum, Base, Robinhood Chain and Ink). On BNB Chain the steps are 134 BNB and 1,344 BNB. The tier moves automatically. If the hook cannot read a price for the quote asset, the 1% tier applies. Creator fees do not depend on the tier.
Creator feeSet by the creator at launch, 0% to 10% separately for buys and sells. It cannot be changed afterwards. The default in the launch form is 1%.
Holder shareA percentage of the creator fee, set at launch, goes to token holders.
Buy-and-burn shareA percentage of what is left after the holder share is used to buy the token back and burn it.

The fee splitter contract for each chain does the accounting, and the amounts are visible on-chain. The token page and the analytics page show them in dollars.

Chains and contracts

The current set is what new launches use. Earlier sets are listed under each chain: they stay deployed and their tokens keep trading.

Robinhood Chain

Chain ID4663
Gas tokenETH
Block explorerrobin.etherscan.io
Launch factory0xAad2C3C3012C4a71d09f47F9c7463b4b1EddB793
Graduation executor0x4739d39F51f9b1d9FF4CEb677da4082b51E66311
Fee hook0x230f70f868d8e55C757984AeAD865018f92460Cc
Fee splitter0x36680d83A86F8DDF6c8c5629caC5Db5186eB464A
Liquidity locker0xbb2FE5F8A29800298793D95821b9cC15196BDE6d
Uniswap v4 PoolManager0x8366a39CC670B4001A1121B8F6A443A643e40951
Uniswap v4 StateView0xF3334192D15450CdD385c8B70e03f9A6bD9E673b
Buy router0x61dd6e2040EA7953F81bd44e217E11866EB86983
First block to scan100220185
Earlier contract sets (5) — tokens launched on them keep trading

Quote assets

A launch pairs the new token with ETH (or BNB on BNB Chain) or with another approved quote asset. Each chain's approved list is held by its graduation executor. To check one on-chain:

function quoteAssetConfigs(address asset) view returns (
  bool approved,
  uint256 graduationThreshold,
  uint256 virtualReserve
)

Use the zero address for the native coin. virtualReserve is the amount the pool opens against, in the asset's smallest unit. The launch page shows the pairs available on each chain.

Launching from code

The factory has one launch function for ordinary addresses and one that mines a vanity suffix. Both take the quote asset and a minimum for the creator's first buy.

function createLaunchDirectV3(
  string name, string symbol, uint256 tokenSupply,
  uint256 holderShareBps, uint256 burnShareBps,
  uint256 creatorBuyFeeBps, uint256 creatorSellFeeBps,
  int24 startTick, address quoteAsset, uint256 minTokensOut
) payable returns (address token, address buybackAdapter)

function createLaunchDirectV3Vanity(
  ...same arguments...,
  bytes32 salt, uint8 suffixLength, uint32 suffixValue
) payable returns (address token, address buybackAdapter)

event InstantLaunchCreated(
  address indexed token, address indexed buybackAdapter, address indexed creator,
  string name, string symbol, uint256 tokenSupply,
  uint256 holderShareBps, uint256 burnShareBps,
  uint256 creatorBuyFeeBps, uint256 creatorSellFeeBps,
  int24 startTick, address quoteAsset
)
tokenSupplyIn the token's smallest unit (18 decimals). 1,000,000 to 1,000,000,000,000 whole tokens.
holderShareBps, burnShareBpsPercent times 100. 3000 is 30%.
creatorBuyFeeBps, creatorSellFeeBps0 to 1000. Fixed once launched.
startTickThe opening price as a tick. It depends on the token address and on whether the quote asset sorts below it, so compute it for the exact address you will get.
quoteAssetZero address for the native coin, or an approved quote asset on that chain.
minTokensOutSafety floor for the creator's first buy. The launch reverts if the first buy returns less. 0 when there is no first buy.
msg.valueThe native coin spent on the creator's first buy. 0 for none.

For vanity addresses, POST /api/vanity/mine returns a CREATE2 salt and the resulting token address, which is what you need to compute startTick. Simulate the call first and check that the simulated token address matches the mined one before sending.

A complete, runnable example lives in the agent guide.

Token details

Name, symbol and supply live on-chain. The logo, description and links are saved by the site and signed by the creator's wallet, so only the launcher can change them.

Upload logoPOST /api/upload?chain=<id> as multipart form data: curveAddress, timestamp, signature and file.
Save detailsPOST /api/metadata/<token>?chain=<id> with JSON: timestamp, signature, description, xHandle, website.
Lock detailsPUT /api/metadata/<token>?chain=<id> with timestamp and signature. After this, uploads and edits return 403.
Signed messageUpdate Kosmo Protocol metadata for <token, lowercase>\nTimestamp: <ms>
Signature life10 minutes. Sign again for each call.
?chain1 Ethereum, 56 BNB Chain, 4663 Robinhood Chain, 8453 Base, 57073 Ink.

Agents

Bots and autonomous agents can launch tokens the same way people do. The agent guide has the full flow as a script, and the same text is available as markdown for an agent to read directly.

Kosmo comes from kosmos, Greek for order out of chaos. Your token, your rules.