Agent checklist
This page is for a coding agent, such as Claude Code or Codex, whose user asked it to make a game on game-platform. Follow the steps in order, one at a time. Most steps say what to run, what success looks like, and what to do when it fails.
You don’t need to read the rest of the wiki to start. From step 10, the game-builder skill tells you which page to read at each step, and you read it with the read_wiki and search_wiki tools.
This page uses two folders:
- The checkout:
~/game-platform, the platform’s repository. - The game folder:
~/my-game, an empty folder the game is made in. If~/my-gameexists and is not empty, use~/my-game-2, and so on.
Setup stops once, at step 7, because the plugin loads only in a new session. The new session starts in the game folder.
0. Find where to start
Section titled “0. Find where to start”Check the following in order, and start at the first step that matches:
- If this session has a tool whose name ends in
list_templates, deferred tools included, go to step 8. - If the user said
continueafter step 7 and no such tool exists, go to step 8 and take its failure branch. - If
~/game-platform/packages/mcp/dist/index.jsexists, go to step 5. - If
~/game-platformexists, go to step 3. - Otherwise, go to step 1.
1. Check the tools
Section titled “1. Check the tools”Run the following checks:
node --versionprintsv24.2.0or later. If it doesn’t, ask the user to install Node 24 from nodejs.org, then check again.gh auth statussays the user is signed in to github.com. Ifghis missing, ask the user to install the GitHub CLI from cli.github.com. If they aren’t signed in, ask them to typegh auth loginin their own terminal and follow its prompts. Then check again.corepack enableexits with code 0, which putspnpmon the PATH. If it fails, as it does with a permissions error when Node’s global folder belongs to the system, usecorepack pnpmin place ofpnpm. Ifcorepackitself is missing, usenpx -y corepack pnpm.
The pnpm command that the third check chose is the one to run wherever this page, a tool’s reply or the game-builder skill says pnpm. When you tell the user to run a pnpm command, give them the same one.
2. Clone the repository
Section titled “2. Clone the repository”The repository is private, so the user’s GitHub account needs access to it. Run the following commands:
cd ~gh repo clone daniel-zarinski/game-platformOn Windows, add -- -c core.symlinks=true to the clone command, and ask the user to turn on Developer Mode first.
- Success:
~/game-platformexists. - If it fails with a 404: the user’s account has no access to the repository. Tell them so, and stop.
3. Install the packages
Section titled “3. Install the packages”Run pnpm install in ~/game-platform. Corepack runs the pnpm version the repository names, so you don’t install pnpm yourself.
- Success: the command exits with code 0.
- If it fails: show the user the last lines of the output, and stop.
4. Build the MCP server
Section titled “4. Build the MCP server”Run pnpm nx build @daniel-zarinski/mcp in ~/game-platform.
- Success:
~/game-platform/packages/mcp/dist/index.jsexists. - If it fails: show the user the error, and stop.
5. Install Chromium
Section titled “5. Install Chromium”Run pnpm exec playwright install chromium in ~/game-platform. The playtest tools run the game headless in it.
- Success: the command exits with code 0.
- If it fails: show the user the error, and stop.
6. Connect the plugin
Section titled “6. Connect the plugin”The plugin and its server install for the user, so any session in any folder loads them.
In Claude Code, run the following commands in ~/game-platform:
claude plugin marketplace add "$PWD"claude plugin install studio@game-platformIn Codex, run the following commands in ~/game-platform:
codex mcp add studio -- node "$PWD/packages/mcp/dist/index.js"mkdir -p ~/.agents/skillsln -s "$PWD/packages/plugin/skills/game-builder" "$PWD/packages/plugin/skills/wiki" ~/.agents/skills/- Success:
claude mcp listorcodex mcp listnamesstudio. - If it fails: show the user the error, and stop.
7. Restart in the game folder
Section titled “7. Restart in the game folder”Create the empty game folder with mkdir ~/my-game. Then tell the user the following, with claude or codex for the client they use, and stop:
Setup is done. In your terminal, run
cd ~/my-game && claude, then saycontinue.
8. Verify the connection
Section titled “8. Verify the connection”This step runs in the new session. First, run the third check of step 1 again, so that this session uses the same pnpm command. Then call the list_templates tool.
- Success: the answer names the
exampletemplate. - If the tool is missing or fails with an error about
$schemaor another field: run step 4 once, then ask the user to restart in the game folder again. If you already did that once in this setup, stop, and show the user the output ofclaude mcp listorcodex mcp list.
9. Check the package token
Section titled “9. Check the package token”A new game installs the engine from GitHub Packages, which needs a token in ~/.npmrc. Check for it without printing the file:
grep -qs '^//npm.pkg.github.com/:_authToken=' ~/.npmrc-
Success: the command exits with code 0.
-
If it exits with any other code, including when
~/.npmrcdoesn’t exist: ask the user to type the following two lines in their own terminal, and to tell you when they are done. The first line opens GitHub in the browser to grant the scope. Never ask the user to paste a token into the chat.Terminal window gh auth refresh -h github.com -s read:packagesnpm config set //npm.pkg.github.com/:_authToken "$(gh auth token)"
10. Build the game
Section titled “10. Build the game”Ask the user one question: what game do they want? Use game words, such as a character, a goal and a place, never engine words, such as scenes or entities. A sentence is enough. If the user wants you to choose, choose.
Then run the game-builder skill with the answer: /studio:game-builder <the answer> in Claude Code, or “use the game-builder skill” in Codex. The skill creates the project in the game folder, which is the session’s folder, then walks the user through the game one question at a time.
Setup is done when the following are true:
- The game’s dev server runs.
- Its URL is open in the user’s browser.
- The user has played the first version.
From here, keep following the game-builder skill.