← Journal

ChatGPT Has a Mini-App Runtime

I built a playable slot machine directly inside a ChatGPT conversation. Making it reproducible exposed something more interesting than the game itself.


I spent yesterday building a slot machine in ChatGPT.

Not a screenshot. Not code to run somewhere else. A playable application directly inside the conversation: reels, buttons, state, bonus triggers, telemetry, and ECharts.

While making it reproducible, I found something more interesting than the game itself:

ChatGPT can instantiate a self-contained mini app directly from an assistant response.

OpenAI already documents interactive apps inside ChatGPT. It documents inline UI, app components, and the Apps SDK/MCP path.

What I have not found documented is the specific path I reproduced:

CONVERSATION
→
APPLICATION BLOCK
→
RUNNING MINI APP

No separate app installation. No application-specific MCP server mediating the interaction. The assistant response itself carries the application.

That distinction became obvious during testing.

At one point the iOS client failed to load the app and showed:

This mini app can not load

with a Retry button.

Retry worked.

That matters because the client itself identified what it was trying to instantiate as a mini app.

The successful WindAnvil Casino version is self-contained. The reels are ordinary DOM and CSS. JavaScript handles state locally. ECharts is used for secondary visualizations. The first frame works even if the visualization library does not.

I documented the exact known-good payload, hashes, runtime notes, and reproduction steps in the public mcc0nnell/windanvil-casino repository.

This is not evidence of a security vulnerability. It may simply be an internal primitive behind a documented product feature.

But the architectural implication is interesting.

The usual mental model is:

prompt → text

Then:

prompt → text + tools

This suggests another one:

prompt → software

Not software generated for you to deploy elsewhere.

Software instantiated inside the conversation itself.

That opens the door to simulations, games, analytical interfaces, teaching tools, configuration panels, visual debugging systems, and small applications that exist only as long as the conversation needs them.

WindAnvil Casino started as a ridiculous experiment.

It ended up demonstrating something much more useful:

a ChatGPT response can itself become an application.