---
name: agenticsolfun
description: Create, buy and sell agenticsol.fun tokens on Solana with a Binance Agentic Wallet. Use when the user mentions agenticsol.fun, agenticsol.fun, or asks to connect/verify their .ai Agent ID for a Solana launchpad, or to buy, sell or create a token there.
---

# agenticsol.fun for Binance Agentic Wallet agents

agenticsol.fun is a Solana token launchpad. Before a token bonds, only Solana wallets
verified with a Binance `.ai` Agent ID can create, buy, sell or receive it. A Token-2022
transfer hook enforces this on-chain. When the bonding curve completes, Meteora removes
the hook and the token trades freely on Meteora DAMM v2.

Base URL: `https://www.agenticsol.fun` (all endpoints below are relative to it).
All requests and responses are JSON. Errors come back as `{"error": "..."}` with a 4xx/5xx status.

## Rules for the agent

- Always use the user's own Agentic Wallet. Never use another address.
- Show the user every `baw ... preview` result and wait for their confirmation before `execute`.
- Prepared Solana transactions expire after about 60 seconds. If `execute` fails with an
  expired blockhash, request a new transaction and preview again.
- If a response has `simulation.ok == false`, stop and report `simulation.error`.
- Do not change amounts, mints or addresses that the user gave you.

## 1. Connect (once per Agent ID)

1. Get the Agent ID: `baw wallet agent-id --json` (e.g. `yourname.ai`).
2. Get the Agentic Wallet's own Solana address: `baw wallet address --json` (the Solana entry).
3. Request a challenge:

   ```
   POST /api/connect/challenge
   {"agentId": "yourname.ai", "solanaWallet": "<Solana address>"}
   ```

   If the response has `"alreadyConnected": true`, you are done.
4. Sign it with the BNB Chain address that holds the Agent ID. The response contains the
   exact command in `next.sign`:

   ```
   baw sign-message preview --binanceChainId 56 --signType EIP712 --message '<bawMessage>' --json
   baw sign-message execute --requestId <requestId> --json
   ```
5. Submit the signature:

   ```
   POST /api/connect/verify
   {"message": <typedData.message from step 3>, "signature": "<signature>", "signatureRecovery": "<signatureRecovery>"}
   ```

   The response has `"needsSignature": true`, a `transaction` (base64, already signed by
   agenticsol.fun) and a ready `baw` command. In this transaction the agent's Solana wallet
   pays the network fee and the rent of its whitelist entry (about 0.004 SOL in total).
6. Sign and send it from the Agentic Wallet, within about a minute:

   ```
   baw contract-call preview --binanceChainId CT_501 --from <Solana address> --unsignedTx <transaction> --json
   baw contract-call execute --requestId <requestId> --json
   ```

   If it expired, start again from step 3.
7. Confirm with `GET /api/status?wallet=<Solana address>` → `"whitelisted": true`.

The Agentic Wallet needs at least about 0.005 SOL on Solana to connect.

One Agent ID can connect exactly one Solana wallet, and a wallet can belong to one Agent ID.

## 2. Buy

```
POST /api/tx/buy
{"wallet": "<Solana address>", "mint": "<token mint>", "sol": 0.1, "slippageBps": 300}
```

Response:

- `transaction`: unsigned Solana transaction, base64
- `quote`: `{inSol, outTokens, minOutTokens}`
- `simulation`: `{ok, error, logs}`
- `baw`: the ready command, `baw contract-call preview --binanceChainId CT_501 --from <wallet> --unsignedTx <base64> --json`

Run the `baw` command, show the preview, then
`baw contract-call execute --requestId <requestId> --json`.

## 3. Sell

```
POST /api/tx/sell
{"wallet": "<Solana address>", "mint": "<token mint>", "percent": 50}
```

Same response shape and signing steps as buy.

## 4. Create a token (connected agents only, when creation is open)

If `/api/create/challenge` answers "Token creation opens soon", creation is not open yet.


1. ```
   POST /api/create/challenge
   {"agentId": "yourname.ai", "name": "My Token", "symbol": "MYTKN", "description": "optional", "image": "https://optional.png"}
   ```
   Name 2–32 characters, ticker 2–10 letters/digits, description up to 280, image must be https.
2. Sign `next.sign` exactly as in Connect step 4.
3. ```
   POST /api/create/submit
   {"message": <typedData.message>, "signature": "<signature>", "signatureRecovery": "<signatureRecovery>"}
   ```
   Returns `{mint, pool, url}`. agenticsol.fun pays the creation cost and makes the agent's
   Solana wallet the pool creator. Then buy normally if the user wants a first buy.

## 5. Read

- `GET /api/tokens` — all tokens with phase (`gated`, `completing`, `open`), progress, price
- `GET /api/tokens/<mint>`
- `GET /api/status?wallet=<Solana address>` or `?agent=yourname.ai`

## After bonding

When a token's phase is `completing` or `open`, `/api/tx/buy` and `/api/tx/sell` return an
error. Trade it like any Solana token (Meteora DAMM v2 or Jupiter); no whitelist applies.

## Errors you may see

- `... is not a registered Binance Agent ID` — the name does not exist on BNB Chain.
- `Signature does not come from the wallet that owns this Agent ID` — signed with the wrong address.
- `Challenge expired` — challenges last 10 minutes; request a new one.
- `Rejected by the agenticsol.fun transfer hook ...` — the wallet is not verified; connect first.
