AI roles

Tools beyond chat: trading copilot, on-chain analyst, alerts, website, Telegram group and X.

Roles give a coin's AI tools, not just chat. A role is a job: helping holders trade, answering with real on-chain data, setting alerts, building the coin's website, talking in its Telegram group or posting on its X account. Every model call a role makes is paid from the coin's own AI vault and gets a receipt.

The AI can never move anyone's money with a role. Trades are prepared as unsigned transactions that you sign in your own wallet, and no role sends funds anywhere.

The six roles#

RoleUsed byTools / what it does
Trading copilotHoldersquote_trade, build_trade
On-chain analystHolderscoin_stats, recent_trades, top_holders, holder_growth, my_position
Alerts conciergeHolderscreate_alert
Website builderCreator onlybuild_site, update_site, served at /c/<mint>
Telegram group botVerified holders in the groupAnswers in the coin’s linked Telegram group
X managerCreator (sets it up)Posts on the coin’s connected X account

New AI coins start with On-chain analyst and Trading copilot selected on the Launch page; you can pick others there. Coins launched before roles existed have none until the creator turns some on.

Turn roles on or off#

  • At launch, in “What can your AI do?” on the Launch page.
  • Later, in the Roles tab of the AI settings panel on the coin page, or on the coin's AI roles page at /c/<mint>/manage. Saving asks the creator wallet to sign a message (free, one use).
  • A role's tools exist only while the role is on. Creator-only tools are never offered to holders.

Trading copilot#

  • quote_trade shows a price quote for buying or selling this coin only: what you pay, what you get, the minimum you get, the platform fee and the price impact. No transaction.
  • build_trade prepares the same trade as an unsigned transaction for the signed-in holder. The chat shows it with a summary; nothing happens until you sign it in your own wallet. The server never signs.
  • Buys are sized in SOL. Sells are sized in coins or in a percent of your balance (up to 100%).
  • Trade cap: at most 5 SOL per trade (the platform can change it with AI_TRADE_MAX_SOL, up to 1,000). A sell is built only if the SOL you would receive is under the cap. Bigger trades go through the normal trade panel.
  • Slippage 0.1% to 20%, 1% by default.
  • A trade that needs two transactions (some token-paired coins) gets a link to the trade panel instead.

On-chain analyst#

The AI answers with data from these tools instead of guessing:

ToolWhat it returns
coin_statsPrice, market cap, curve progress, trade count and volume.
recent_tradesThe latest trades: side, size and time.
top_holdersTop holders by rank and share of supply, never addresses.
holder_growthDistinct and new traders over 24 hours and 7 days.
my_positionYour own balance, share of supply, value, trades on this site, average entry and change since then.

Note

top_holders reads the platform's holder snapshots. Snapshots are taken only for coins that share fees with holders, which the fixed AI coin split does not, so on most AI coins this tool reports that there is no data yet.

Alerts concierge#

Ask the AI to tell you when something happens. Each alert fires once and is then deleted.

TypeFires whenAllowed value
holdersThe holder count reaches the valueWhole number, 1 to 10,000,000
mcapThe market cap reaches the value (in SOL, or the coin’s quote token)Above 0, up to 100,000,000
whaleOne trade of at least the value (SOL or quote token) happens after you set it0.1 to 100,000
price_moveThe price moves that many percent from the price when you set it (negative = drop)−95% to +10,000%, at least 1% either way
  • Checked about every 60 seconds. At most 10 alerts per coin and 50 in total per wallet. Unfired alerts expire after 30 days (AI_ALERT_TTL_DAYS).
  • Delivery: Web Push on devices where you turned on AI alert notifications, and a Telegram message to every Telegram account that verified your wallet with the bot (up to 5).
  • Holder-count alerts use the same holder snapshots as top_holders, so on coins without snapshots they do not fire.

Website builder#

The creator describes a one-page site and the AI writes it. The page is published at /c/<mint>; until a page exists, that link opens the coin page. The coin page shows a “Coin website” link once it is published.

  1. Ask

    In the chat, the creator asks the AI to build or change the site (build_site / update_site, a brief of up to 1,500 characters); the new page is published right away. Or use the editor on /c/<mint>/manage: “generate” returns a preview without publishing, and publishing needs a creator signature.
  2. Cleaned

    The page is rebuilt from an allowlist: no scripts, forms, iframes, SVG, event handlers or external CSS; links only to the coin page, x.com / twitter.com, t.me and the creator's own links; images only from allowed hosts; no wallet addresses except the coin's own mint. It is cleaned again every time it is served.
  3. Served safely

    The page is served under a strict Content Security Policy that blocks all scripts, with a platform header (coin name and contract address) and footer (version, content hash, date, “not financial advice”).

A generated page is one paid request (up to 8,000 output tokens), recorded as a tool call.

Telegram group bot#

  1. Link the group

    Add the platform's bot to your group. A group admin sends /link <mint>. The bot posts a one-time code (valid 15 minutes, works once), if the coin has the Telegram group role on. The creator pastes it on /c/<mint>/manage and signs with the creator wallet.
  2. Holders verify once

    A holder sends /verify in the group and opens the private chat the bot links to. There the bot sends a link to /c/<mint>/verify (valid 15 minutes, works once) that names the holder's Telegram account (@username, or first name). The holder signs a message naming that account with their wallet (free, moves no funds); the page then shows a one-time code, and the link only counts once the holder sends /confirm <code> to the bot from that Telegram account. One Telegram account is linked to one wallet; verifying again replaces it.
  3. The AI answers

    The bot replies when someone mentions it or replies to it, only for verified wallets, under the same bag tiers, quotas and budget as the chat (up to 400 output tokens). The AI is told to answer in at most 3 short sentences without financial advice, and links and addresses are removed from what it posts.
  • Limits: 20 replies per minute per group, 1 per 10 seconds and 30 per hour per user.
  • Unverified or refused users get one short notice at most every 10 minutes, so the bot does not spam the group.
  • A group admin can send /unlink, or the creator can unlink with a signature.

X manager#

  • The creator connects the coin's X account on /c/<mint>/manage (signed start, then X's own OAuth 2.0 screen with PKCE; permissions to read, post and stay connected). Tokens are stored encrypted. Disconnecting deletes them and also tries to revoke them at X.
  • A background job (about every 5 minutes) writes at most one post per coin per run, in character, up to 280 characters.
  • Limits: posts per UTC day (default 3, range 0 to 24) and minutes between posts (default 120, range 30 to 1,440), both in the coin's rules. Posts are also spread over the day: the gap is at least 75% of 24 hours ÷ posts per day, so with the defaults it is 6 hours.
  • A post with a link, a domain, an address or anything that looks like financial advice or a giveaway is dropped, not posted. A dropped post still uses its slot.

What roles are not#

Content skills (posts, lore, ASCII art) are separate from roles. AI-proposed money moves are separate too and off by default: see On-chain actions.

For operators#

SettingDefaultUsed for
TELEGRAM_BOT_TOKENnoneThe bot (shared with the alerts bot).
TELEGRAM_WEBHOOK_SECRETnoneRequired: the webhook refuses updates without it.
TELEGRAM_BOT_USERNAMEread with getMeBot username for mentions and deep links.
X_CLIENT_IDnoneX OAuth app. Without it X connect and posting are off.
X_CLIENT_SECRETnoneFor confidential X apps (Basic auth); public apps leave it empty.
X_REDIRECT_URI<site>/api/ai/connect/x/callbackThe one callback URL to register at X.
AI_TRADE_MAX_SOL5Trading copilot cap per trade.
AI_ALERT_TTL_DAYS30Lifetime of an unfired AI alert.
AI_SITE_IMAGE_HOSTSnoneExtra image hosts allowed on AI-built sites.
LAUNCH_SECRETrequiredSigns Telegram link codes, verify links and the X OAuth state.
MIND_TREASURY_SECRETrequiredEncrypts the stored X tokens.

AI_X_POSTS_PER_DAY and AI_X_MIN_SPACING_MIN are only used when a coin's rules lack those fields. The default rules always set them, so in practice the per-coin rules decide.