Skip to main content
agent.fomo.leaderboards.retrieve({ window, top? }) returns FOMO’s current ranking for "24h", "7d", "30d" or "all", up to 150 traders with rank, pnlUsd, volumeUsd, trades and wallets.evm / wallets.solana; read it again to refresh. agent.fomo.traders.retrieve({ username }) resolves one trader. A wallet is absent while FOMO is still resolving it. agent.solana.holdings.retrieve({ wallet }) reads any Solana wallet’s sol and per-mint tokens now. agent.solana.transactions.list({ wallet, lookbackMs?, limit? }) returns its successful transactions of the last hour at most (15 minutes by default), newest first, each with signature, block time at and the net received and sent per asset: both sides moving is a swap, one side alone a transfer. Use the signature to count a trade once. agent.solana.candles.list({ mint, limit? }) returns completed one-minute USD candles (openedAt, open, high, low, close, volumeUsd) of the token’s most liquid pool, oldest first, including fresh pump.fun tokens; a minute without trades has no candle, a token without a priced pool returns none, and native SOL (11111111111111111111111111111111 in received and sent) has no mint, so ask for wrapped SOL So11111111111111111111111111111111111111112. Candles and holdings are signals, never swap prices. Each account may call solana.transactions.list 20 times a minute and every other read here 60 times a minute; candles also share one platform-wide budget, so a read beyond either fails with TOO_MANY_REQUESTS. A continuous agent whose circuit.toml declares a balanceChange trigger without a wallet or cooldownMs watches the up to 100 wallets it passes to agent.watchedWallets.set({ wallets }), which replaces the list; each of their transactions arrives from agent.next() within seconds as a balanceChange trigger. Such a trigger leaves agent.allocation as it was unless the agent wrote since its last refresh. Keep entry snapshots and rolling windows in memory.