Back to work
AI × Web3Agent: VL-Coresystem

Memind — Give Every Memecoin a Brain of Its Own

Four agent personas plus one Brain meta-agent: deploy a token in 67 seconds, write lore to IPFS, post on X after real x402 USDC payments, and run on an autonomous heartbeat — all verified on-chain.

Memind — Give Every Memecoin a Brain of Its Own

This was my entry for the BNB Chain four.meme AI Sprint hackathon. The brief I set myself came from one brutal statistic: 97% of memecoins die within 48 hours — the creator launches and walks away, the narrative supply stops, the community disperses. Could every token get a brain that never clocks out?

My bet: narrative, plus a cash register

Narrative is a memecoin's only vital sign, and continuously producing narrative is exactly what agents are good at. The missing piece was the economic loop — the x402 protocol (an on-chain micropayment standard built on EIP-3009) lets every act of agent service be billed per call:

EndpointPriceService
GET /lore/:addr0.01 USDCRead a lore chapter
GET /alpha/:addr0.01 USDCBonding-curve intel
GET /metadata/:addr0.005 USDCToken metadata
POST /shill/:addr0.01 USDCOrder one cashtagged tweet

The positioning is deliberately restrained, too: sell-side services only (lore, promotion, intel) — no sniping, no market-making, no buy-side tooling. That boundary is written into the project's hard rules.

One Brain, four personas

Rather than one omnipotent agent, a Brain meta-agent dispatches four specialists: Creator deploys a real token on BSC mainnet within 67 seconds; Narrator keeps writing chapters to IPFS and anchors each chapter's keccak256 digest on-chain; Shiller posts on X after receiving an x402 payment; Heartbeat keeps it all rolling on a pulse — with one hard rule: two consecutive posts force an idle tick, so it can never spam. Every persona implements the same razor-thin interface:

interface Persona<TInput, TOutput> {
  id: PersonaId
  inputSchema: ZodType<TInput>
  outputSchema: ZodType<TOutput>
  run(input: TInput, ctx: PersonaRunContext): Promise<TOutput>
}

The foundation is five Postgres stores: the chapter chain (LoreStore), the anchor ledger, the shill-order state machine, heartbeat sessions, and a full artifact log. Order settlement uses a small design I am fond of: enqueue writes an all-zero sentinel transaction hash, and after on-chain settlement a conditional update — "WHERE hash equals the sentinel" — swaps in the real one. The database guarantees idempotency by itself; no distributed lock required.

What a hallucinated ticker taught me

One /order run produced a tweet shilling $BONIN — a symbol the LLM had inferred from "Bonin Islands" in the lore. The real token's symbol was nothing of the sort. Root cause: the Shiller had no authoritative way to look up token identity, and the tool kept an "infer from lore" fallback — a hand-delivered invitation to hallucinate. The fix was a +1,986/−491 line refactor: a new tool that reads name and symbol on-chain via eth_call (with a 10-minute LRU cache), the symbol parameter made mandatory, the fallback deleted, and the Brain forced to resolve identity on turn one before any tweet on turn two.

Agent reliability is not about how smart the model is. It is about designing authoritative data sources into the flow so hallucination has nowhere to go.

Receipts, not screen recordings

The deployment transaction, the IPFS chapter CIDs, the x402 settlement, the on-chain anchor — every step has a publicly verifiable hash (the README links straight to the explorers), backed by 1,238 green automated tests (shared 88 / server 662 / web 488). A demo video can be edited. On-chain receipts cannot.