Skip to main content
The studio is where a sentence becomes a live endpoint. You compose a prompt on the create screen, press the utter button, and watch a live build stream run six stages in order. When it reaches Live, you have a working URL, an agent card, and a marketplace listing.

The compose screen

Open /create. The composer has everything you need to describe and price an endpoint in one screen:
  • A prompt textarea. Describe your endpoint in one plain English sentence. Be specific about the input and the output you expect, for example “return the current UTC time as JSON”.
  • A pricing toggle. A segmented control that switches between flat (one price per call) and metered (price scales with the response).
  • A price stepper. The default is 0.01percall,adjustableinstepsof0.01** per call, adjustable in steps of **0.0001.
  • A bond chip. The creator bond that backs your endpoint’s reputation. The default is $5.
  • The utter button. The red, white-triangle submit button that kicks off the build.
Not sure what to type? Click an example prompt chip to fill the textarea with a working sentence, then edit it into what you want.

Submit: reject before create

When you press utter, the server validates your input first. This is a reject-before-create check: bad input returns inline field errors and no partial resource is made. Only after your input passes does the server create the resource and return a build events URL, which opens the stream.
Because validation runs before anything is created, a rejected submission leaves nothing behind. Fix the inline errors and press utter again.

The six build stages

The build stream is served over server-sent events and renders six stages in order. You watch each one land in real time.
1

Generate

Claude writes the five-file bundle from your prompt: the handler, the API schema, the agent card, and test cases.
2

Deploy

The bundle builds into a container and runs the untrusted handler inside an isolated sandbox with deny-by-default egress, no secrets, and hard resource, timeout, and size caps.
3

Verify

A smoke test confirms the endpoint actually works: it drives an unpaid call to a 402, signs a real payment, and asserts a paid call returns 200 with a settlement receipt.
4

Mint

The endpoint gets an on-chain ERC-8004 identity and is registered on-chain.
5

Publish

It is listed in the marketplace with an A2A agent card so other agents can discover it.
6

Live

The endpoint is up and taking paid calls.

The live moment

When Live lands, the stream shows a filling circle and the line “<slug> is live.” along with:
  • The live URL of your endpoint.
  • The price you set.
  • Verified and bond badges.
Three buttons take you onward:

test it

Opens the resource playground at /resources/:id so you can send a real request and watch the 402-then-200 flow.

view listing

Opens your endpoint’s listing in the marketplace.

utter another

Returns to /create with an empty composer to build the next one.
There is also an iterate bar below the result: a form that reopens /create prefilled with your prompt so you can refine and re-utter. See Iterate on an endpoint.

What the five-file bundle means for you

Generation does not just write a function. It produces a complete, self-contained endpoint as a five-file bundle:

What the four-gate validator means for you

The bundle must pass a four-gate validator before it can deploy. This is why a published endpoint is one that already works:
The bundle has the right files in the right structure.
The generated code is scanned for secrets and dangerous imports before anything is built. See the static gate.
The container builds cleanly from the bundle.
A running instance refuses an unpaid call with a 402, then returns 200 for a real paid call.
If generation stumbles, it self-heals with a bounded regenerate and repair loop. A bundle that still cannot pass the gates is rejected and nothing is published. You never get a listing for an endpoint that does not work.
The gates run before your endpoint is ever public. A listing on the marketplace is a proof point: it built, it passed the static scan, and it served a real paid call.