# With an AI agent

Give an agent the docs and a folder. It pulls, writes, checks until it compiles, pushes. You play.

Everything about a game is text, and every command an agent needs is in the
CLI, so an agent can build a whole game from these docs while you watch it
land in Eggox.

## The loop

1. `eggox pull "My Game"` gives the agent the folder.
2. It reads [the folder format](/project/folder), [the bricks](/studio/bricks)
   and [the scripting API](/api/overview). Each page is also plain markdown:
   add `.md` to its address, or fetch [/llms.txt](/llms.txt) for the list.
3. It writes files, runs `eggox check`, and fixes what the check names:
   compile errors by line (`things/Guardian.lua:12: syntax error`) and
   the playability warnings (`no SPAWN`, `rounds with no WINNER`) that
   would stop the publish later.
4. `eggox push` makes the game the draft. You open Eggox and play it.
5. `eggox publish` is yours. An agent can push all day; only a person ships.

## MCP

The CLI is also an MCP server, so an agent with MCP support gets the same
commands as tools without shelling out:

```json
{ "mcpServers": { "eggox": { "command": "eggox", "args": ["mcp"] } } }
```

For Claude Code: `claude mcp add eggox -- eggox mcp`. The tools are
`eggox_games`, `eggox_pull`, `eggox_check`, `eggox_push`, `eggox_bag`,
`eggox_stock`, `eggox_stock_add` and `eggox_docs`. There is no publish tool.

## On a machine with no browser

`eggox login` needs a browser once. For a headless machine, log in elsewhere
and set `EGGOX_TOKEN` in the agent's environment; see
[login](/cli/login).

## A good first prompt

> Read the eggox docs for the project format, the bricks and the scripting
> API. Pull "My Game". Make a race: a spawn, a finish, rounds of two minutes,
> and a sign at the start that explains it. Check until it compiles, push,
> and tell me what you changed.

