4Ai4β¦Z8E3X1 Agents Radio maintains a verified bootstrap digest of core X1 programs β program IDs and their instructions β and broadcasts every new deployment to subscribed agents. Point your agent at the registry, subscribe once, and it grows with the chain.
One transaction. Your agent's subscription lives in a PDA; the watcher picks it up in real time and delivers the bootstrap to your webhook within seconds.
telegram:<chat_id>. β οΈ The webhook cannot be changed later β choose carefully.# Public β no subscription needed curl -s https://x1radio.vercel.app/api/bootstrap curl -s https://x1radio.vercel.app/api/catalog # all programs + activity curl -s https://x1radio.vercel.app/api/deployments # latest deploys # Check a subscription curl -s "https://x1radio.vercel.app/api/subscription?agent=<PUBKEY>" # Subscriber API (free plan) β sign x1radio:<path>:<ts> with your agent key curl -s "https://x1radio.vercel.app/api/programs?agent=<PUBKEY>&ts=<UNIX>&sig=<BASE58-SIG>" curl -s "https://x1radio.vercel.app/api/digest/latest?agent=<PUBKEY>&ts=<UNIX>&sig=<BASE58-SIG>"
Deployed something on X1 that isn't in the digest yet? Register it. Your program must exist on-chain and be executable. Entries are marked verified after review by the X1 Agents Radio authority.
Real-time log of every registry event β registrations, subscriptions, broadcasts β streamed straight from the X1 Agents Radio on-chain program.
Programs freshly deployed or upgraded on X1 mainnet, from the hourly scan. Subscribers get these pushed to their webhook the moment they land.
Every program live on X1 mainnet β names and instructions where published, transaction activity from the watcher's daily sweep. Click any program to open it in the explorer.
| # | Program | Category | Instructions (IDL) | Deployed* | Tx 24h* | Tx since Jul 8* |
|---|---|---|---|---|---|---|
| Loading catalog⦠| ||||||
* Deployed = last deploy/upgrade date (approximate, slot-time extrapolation). Tx counts from this node's ledger, refreshed daily β totals accumulate since tracking began (Jul 8, 2026); not all-time chain totals. Categories in italics-free badges are curated or inferred from IDL instructions.
How to point your agent at X1 Agents Radio:
1. Tell your agent about the registry program:
4Ai4Ps8YsrLfshU9xvkf9pobiVhewELdbXEZA7zaZ8E3 (X1 mainnet)
2. Have it subscribe (free plan is one signature, no fee):
instruction: subscribe(tier: u8, webhook: string)
accounts: subscription PDA ["subscription", agent],
state PDA ["registry_state"], agent (signer),
treasury (from state), system_program
3. It immediately gets the bootstrap digest at its webhook (or polls
/api/bootstrap) β every core X1 program ID + instructions, plus a
getting_started kit: keygen, faucet, balance + tx lookup snippets.
4. Everything is FREE during launch: real-time webhooks when programs
deploy or upgrade, the full daily digest, and the signed API with
the complete X1 program catalog (IDL instructions, tx activity).
5. Signed API auth: sign "x1radio:<path>:<unix-ts>" with your agent
key, pass agent=&ts=&sig= (base58). Valid for 5 minutes.
Renewal: call renew(tier) before the 30-day expiry (slot-based).
Expired subs can be re-activated with renew at any tier.
Everything a fresh agent (or human) needs to interact with X1. X1 is Solana-compatible (SVM):
every Solana SDK, CLI, and wallet works β the native token is XNT (9 decimals). This toolkit also ships as
the getting_started section of the bootstrap every subscriber receives.
# Quick start β Anza prebuilt CLI (enough to interact with X1): sh -c "$(curl -sSfL https://release.anza.xyz/stable/install)" # X1-native β build Tachyon, X1's own client (Agave fork). # Gives you the same solana CLI (client:Tachyon) + tachyon-validator: git clone https://github.com/x1-labs/tachyon.git cd tachyon && git checkout v3.0 && cargo build --release # Required for running a node/RPC/validator β optional for transacting. # Docs: https://docs.x1.xyz/validating/create-a-read-only-node
solana-keygen new -o agent.json --no-bip39-passphrase
# JavaScript (@solana/web3.js)
const { Keypair } = require("@solana/web3.js");
const kp = Keypair.generate();
# Python (solders)
from solders.keypair import Keypair
kp = Keypair()
solana config set --url https://rpc.mainnet.x1.xyz
# JS
const conn = new Connection("https://rpc.mainnet.x1.xyz", "confirmed");
# Fees are ~0.000005 XNT/tx + small rent deposits. # Agent faucet program (drips 0.01 XNT, 100-block cooldown): 9zkypzFPQ2s3D5UqbYuixt3iXo5ig3ZNWLK1TrbNf5eR
solana balance <pubkey>
solana confirm -v <signature>
# JS
await conn.getBalance(new PublicKey("<pubkey>")) // lamports; /1e9 = XNT
await conn.getTransaction("<sig>", { maxSupportedTransactionVersion: 0 })
Address: https://explorer.mainnet.x1.xyz/address/<pubkey> Tx: https://explorer.mainnet.x1.xyz/tx/<signature>
# One free signature β see Subscribe above. Then: curl -s https://x1radio.vercel.app/api/bootstrap # the map curl -s https://x1radio.vercel.app/api/catalog # all programs + IDLs curl -s https://x1radio.vercel.app/api/deployments # what just shipped