CIRCUIT
Launch a coin
Modules

Anything can become a block.

A module is a set of blocks for one job. Pick one and its blocks show up in the builder.

EV
Core
Control flow, logic, maths, lists and variables. The language itself.
Real: part of the interpretereveryatwhenevent
Show all 44 blocks ▾

EVENTS · 4

  • every [minutes] minutes
  • at time [time] each day
  • when webhook [path] received
  • when button [label] pressed

VALUES · 23

  • event [field]
  • ( ) [op] ( )
  • ( ) contains ( )
  • ( ) [op] ( )
  • not ( )
  • ( ) exists
  • random chance ( ) %
  • [num]
  • [text]
  • [bool]
  • list [items]
  • object [pairs]
  • current timestamp
  • ( ) [op] ( )
  • ( ) % of ( )
  • [op] of ( ) and ( )
  • random number from ( ) to ( )
  • random item from ( )
  • length of ( )
  • item ( ) of ( )
  • [key] of ( )
  • join ( ) ( )
  • [var]

ACTIONS · 17

  • if ( )
  • if ( )
  • repeat ( ) times
  • for each [var] in ( )
  • wait ( ) seconds
  • at most once every [seconds] seconds
  • stop [scope]
  • run in parallel
  • run sequence [name]
  • with ( ) % chance
  • switch on ( )
  • set [var] to ( )
  • change [var] by ( )
  • increment [var]
  • reset [var]
  • append ( ) to list [var]
  • remove [mode] ( ) from list [var]
EV
Solana
Token events (trades, volume, holders, fees) and wallet reads.
Real on a launched coin · pretend in the builderwheneverycoinwallet

Real trades, holders and fees on a launched coin. In the builder the Buy, Sell and +10 SOL buttons make pretend events.

Show all 11 blocks ▾

EVENTS · 8

  • when trade happens [side]
  • when volume changes
  • every [amount] SOL of volume
  • when creator fees arrive
  • when market cap crosses [direction] $ [threshold]
  • when holder count crosses [direction] [threshold]
  • when wallet [wallet] receives funds
  • when token graduates

VALUES · 3

  • coin [stat]
  • wallet ( ) owns token ( )
  • SOL balance of wallet ( )
EV
AI
Agents, ask/choose/classify/summarize, identities, generated text and images.
Real on a launched coin · pretend in the builderwhen[prop]randomall

Paid from the coin's own fees; a coin with no AI credit skips AI. Images are placeholders for now.

Show all 22 blocks ▾

EVENTS · 1

  • when agent completes task

VALUES · 14

  • [prop] of ( )
  • random existing agent
  • all agents
  • ask AI ( )
  • AI structured output ( )
  • AI choose from ( )
  • AI classify ( )
  • AI summarize ( )
  • AI generate identity for ( )
  • AI decides ( )
  • generate image of ( )
  • generate [kind] about ( )
  • choose image from ( )
  • AI review ( )

ACTIONS · 7

  • create agent [species]
  • run agent ( )
  • give ( ) tool [tool]
  • remember ( ) in memory of ( )
  • set [prop] of ( ) to ( )
  • remove agent ( )
  • set avatar of ( ) to ( )
WB
Browser
Web search, opening pages, extracting text, following links, HTTP.
Real on a launched coin · pretend in the buildersearchopentextfollow

Pages and HTTP calls are real on live coins, through a safe fetcher that only reaches public websites. Search is simulated until a search service is connected.

Show all 6 blocks ▾

VALUES · 5

  • search web for ( )
  • open page ( )
  • text of page ( )
  • follow link ( ) on page ( )
  • HTTP [method] ( )

ACTIONS · 1

  • save finding ( )
EV
Website
Project world: entities, collections, feed, counters, site state and events.
Real: state kept in this projectwhencreatesetdelete
Show all 15 blocks ▾

EVENTS · 1

  • when website event [name] happens

ACTIONS · 14

  • create card ( )
  • create entity of type [entity_type]
  • set [prop] of entity ( ) to ( )
  • delete entity ( )
  • show in project world ( )
  • add ( ) to collection [collection]
  • post to project feed ( )
  • change counter [name] by ( )
  • set website [key] to ( )
  • AI build website from ( )
  • add website section [kind]
  • update website section ( ) (number, title or hero)
  • set website theme [theme]
  • show notification ( )
FN
Finance
The coin's money: send, buy back, sell, burn, airdrop to holders, and named tallies.
Real on a launched coin · pretend in the buildertreasurybudgetgivefund

Real on a launched coin: its own vault does it, inside limits that grow with the fees it has earned. Pretend in the builder.

Show all 16 blocks ▾

VALUES · 3

  • treasury [asset]
  • budget [name]
  • budget [name] has at least ( )

ACTIONS · 13

  • give ( ) an on-chain wallet
  • fund ( ) with ( ) SOL from the coin's money
  • agent ( ) sends ( ) [asset] to wallet ( )
  • agent ( ) buys ( ) for ( ) SOL
  • send ( ) [unit] to wallet ( )
  • buy ( ) for ( ) [unit]
  • sell ( ) for ( ) [unit]
  • add ( ) to budget [name]
  • spend ( ) from budget [name]
  • burn ( ) [mode] of $COIN
  • airdrop ( ) [mode] of [asset]
  • split ( ) from budget [from]
  • simulate reward for ( )
EV
Bounties
Bounties, submissions, AI review, approval and rewards.
Real: state kept in this projectwhen[which]createwait

Rewards are paid from the coin's vault on a launched coin and are pretend in the builder. Submissions are still simulated until the public form exists.

Show all 6 blocks ▾

EVENTS · 1

  • when bounty submission arrives

VALUES · 1

  • [which] submission of ( )

ACTIONS · 4

  • create bounty ( )
  • wait for submission to ( )
  • approve ( )
  • reject ( )
OP
Social
Webhooks in and out, posts to X / Discord / Telegram, email.
Partly simulated: see belowsendpostemail

Webhooks into a coin are real and webhook sends are real on live coins. Posts to X, Discord and Telegram and email are logged, not delivered, until their keys are connected.

Show all 3 blocks ▾

ACTIONS · 3

  • send webhook to ( )
  • post to [dest]
  • email / notify [to]
MO
Your modules
Modules you declare: events that arrive as webhooks, values you read, actions you send. No code.
Real: declared by you, no codewhenmodule

Run through the safe web fetcher on live coins and simulated in the builder. Saved inside the coin's rules, so a locked coin never changes.

Show all 3 blocks ▾

EVENTS · 1

  • when module [module] event [event]

VALUES · 1

  • module value [module] [name]

ACTIONS · 1

  • module action [module] [name]
Suggest a block
Missing something? Tell us and we'll build it.

Your module

Create a module

A module wraps a website's API as blocks: events that arrive as webhooks, values you read, actions you send. No code runs. Circuit fills in the request and sends it through its safe web fetcher. Your secrets (set in Connections) are added on the server and never shown. A module can never move money.

EVENTS · arrive as a webhook of this coin

VALUES · read with a GET, then pick a field from the JSON answer

ACTIONS · a request with {{input}} and {{secret.NAME}} slots

Looks good: 3 blocks.

Talks to: api.coingecko.com, example.com · Uses your connections: price_board_token (sent to those websites)

{
  "moduleId": "price-board",
  "version": 1,
  "name": "Price board",
  "description": "Reads a price and posts to my own service.",
  "events": [
    {
      "name": "alert"
    }
  ],
  "values": [
    {
      "name": "gecko_says",
      "url": "https://api.coingecko.com/api/v3/ping",
      "path": "gecko_says",
      "sample": "(V3) To the Moon!"
    }
  ],
  "actions": [
    {
      "name": "announce",
      "method": "POST",
      "url": "https://example.com/api/announce",
      "headers": {
        "Authorization": "Bearer {{secret.price_board_token}}"
      },
      "bodyType": "json",
      "body": "{\"text\": \"{{input}}\"}"
    }
  ]
}