Prompt to venue
Describe the venue you want, hand it to the AI agent you already use, and it builds it. This page is what to say — the four facts that carry a brief, how to pick a subject that has markets, and how to tell whether it worked.
You do not build a Prophecy venue. You describe it, and the AI agent you already use — Claude Code, Cursor, whatever is open — builds it.
That works because the venue arrives knowing how to be built. Scaffolding writes AGENTS.md and a
skill into the folder, so your agent learns the components, the house style and the rules from the
venue itself. You never explain the stack. You explain the venue.
So the useful skill is not prompting. It is briefing.
The prompt
Copy this, fill in the bold parts, and paste your access key on the last line.
I want to make a venue about [subject], where people who love [what they care about] can predict and argue about [the specific things that happen].
Call it [name]. It should feel like [a place or a thing], and it is for [traders / players / debaters].
Build it by following https://docs.prophecyhosting.com/launch-a-venue.txt
Tell me the scope-check number before you design anything. If it is 0, stop — we will fix the terms first. When you are done, run
npm run shotand show me the PNGs.My Prophecy access key is
npm_…
Filled in:
I want to make a venue about Formula 1, where people who love race strategy can predict and argue about who wins, who gets the drive, and who blows the tyre call.
Call it Paddock Club. It should feel like a timing screen, and it is for traders.
Build it by following https://docs.prophecyhosting.com/launch-a-venue.txt
Tell me the scope-check number before you design anything. If it is 0, stop — we will fix the terms first. When you are done, run
npm run shotand show me the PNGs.My Prophecy access key is
npm_live_…
Keep the last two instructions verbatim. The scope-check number is the one thing that predicts an empty venue, and it is cheap to fix before any design work. The PNGs are the one thing no automated check can judge.
The four facts
A brief carries four things. Everything else is the product’s job.
Subject — what the venue is about. Read the next section before you commit to one; it is the only decision here that can be wrong rather than merely different.
Name — what it is called. Becomes the venue’s id and its URL.
Audience, in one word. The highest-leverage word in the brief, because it changes the shape of the page more than any styling instruction:
| wants | you get | |
|---|---|---|
| trader | the edge | charts, live flow, positions, density |
| player | the game | fast, mobile, one decision per screen |
| debater | to be proved right | comments, follows, resolution receipts |
Feel — as a place or a thing. “A timing screen.” “A reading room.” “A terrace at 3pm.” These land. Modern, clean, professional does not: it produces the same venue every time, because it describes no particular thing.
Pick a subject that has markets
This is where venues go wrong, and it goes wrong quietly — you get a beautifully designed, completely empty board.
Two independent limits, both worth knowing before you name a subject.
Markets have to exist, and only seven templates can create them
MarketDefinition is a closed union of seven kinds — two crypto, one stocks, four football — and
only the two crypto ones are enabled today. stocks.close and all four football kinds are in the
contract and answer template-unavailable (HTTP 501) when you try to use them.
So the honest list of what a venue can mint for itself right now is:
crypto.updown— will an asset be up or down over a window (20m,1h,4h,1d)crypto.threshold— will an asset be above a price by a date
Everything else — football, stocks, books, elections, weather — needs an operator, a funded wallet and a script. A venue on one of those subjects can still be built, and it will show whatever markets already exist on the platform, but it cannot create its own.
Crypto is the only self-serve subject today. If you are building a demo, build it on crypto.
A venue finds markets by their titles, not by their topic
A venue is a view over global markets, and the view is a text search. That search matches what is written in a market’s title — so the words that work are the nouns that appear inside one. Measured live:
| you might say | markets | you should say | markets |
|---|---|---|---|
"Premier League" |
0 | "Arsenal" |
3 |
"Formula 1" |
0 | "Verstappen" |
1 |
"book releases" |
0 | "novel" |
3 |
"BTC" |
0 | "bitcoin" |
50 |
Every left-hand entry is the natural way to describe the subject. Every one of them finds nothing, because no market is titled “Premier League” — they are titled “Arsenal vs Liverpool…”. Naming the category is the instinct, and it is the mistake.
So give the agent the names: drivers, clubs, tickers, books, candidates. Spell them out —
"bitcoin" finds 50 markets where "BTC" finds none.
The scaffold tells you before you build
You do not have to guess at any of this. The scaffold asks the live index and prints the answer before you install a single package:
Scope check — testnet (testnet.api.prophecyhosting.com)
about "formula 1" 0 on the board
term "Verstappen" 1 on the board
term "Hamilton" 1 on the board
term "Constructors" 2 on the board
ON THE BOARD: 4 markets.
NOTE: the subject "formula 1" matches nothing — the whole board comes from the terms beside it.
ON THE BOARD: 0 means stop. Change the terms and run it again. It costs ten seconds there and
an evening once the venue is designed. This is why the prompt above tells the agent to report the
number before designing anything.
What not to say
Leave out anything about components, layout or file structure. Every such sentence competes with the instructions already inside the venue, which are more specific and better tested than a line in a chat message.
In particular, you never need to say:
- which components to use, or how to fetch markets —
AGENTS.mdcovers it - that trading must keep working — it cannot break it; the trade path lives in the kit, and
prophecy validaterefuses a venue that has tampered with it - how to colour things — the house style is in the skill, and the guard rejects invented ink colours
If your agent needs to be told one of those, that is a gap in the product worth reporting, not a sentence to add to your prompt.
Telling whether it worked
Three checks, and only the first can fail the venue:
npm run validate # structure: markets on the page, the trade path intact, legible colour
npm run shot # renders it, writes shots/*.png
validate also re-runs the scope check against the venue as your agent left it — an agent that edits
the market query can narrow the board without noticing.
Then open the PNGs. npm run shot is the only check that sees the page, and it exists because
three real defects once survived a green validate: half-width cards stranded in a two-column grid,
a browser-default textarea, and a comment box crushed into a narrow rail. All obvious to a person in
two seconds. None reachable by any rule.
If you are working with an agent that cannot see images, ask it to say so rather than call the venue done.
When it does something you did not ask for
Say what is wrong in plain language and let it fix it — “the hero is too tall, the markets are below the fold”, “this reads like a bank, I asked for a terrace”. You are not editing code; you are directing.
The one thing worth pushing back on immediately is a venue that has stopped showing markets. That is
almost always scope, not design, and validate will name it.
Ready? The procedure, the commands and the flags are on Make a venue — that is the page to hand your agent.