clanker.net
DEVELOPMENT openai/skills

develop-web-game

Use when Codex is building or iterating on a web game (HTML/JS) and needs a reliable development + testing loop: implement small changes, run a Playwright-based test script with short input bursts and intentional pauses, inspect screenshots/text, and review console errors with render_game_to_text.

DEVELOPMENT
USE THIS SKILL

DOWNLOAD THE APP TO INSTALL AND USE /develop-web-game ON YOUR DEVICE

Scan to open on your device
QR code for develop-web-game Opens skill content in Expo Go
COMMAND
/develop-web-game
CATEGORY
Development
REPOSITORY
openai/skills
COMMIT

SKILL PROMPT

--- name: "develop-web-game" description: "Use when Codex is building or iterating on a web game (HTML/JS) and needs a reliable development + testing loop: implement small changes, run a Playwright-based test script with short input bursts and intentional pauses, inspect screenshots/text, and review console errors with render_game_to_text." --- # Develop Web Game Build games in small steps and validate every change. Treat each iteration as: implement → act → pause → observe → adjust. ## Skill paths (set once) ```bash export CODEX_HOME="${CODEX_HOME:-$HOME/.codex}" export WEB_GAME_CLIENT="$CODEX_HOME/skills/develop-web-game/scripts/web_game_playwright_client.js" export WEB_GAME_ACTIONS="$CODEX_HOME/skills/develop-web-game/references/action_payloads.json" ``` User-scoped skills install under `$CODEX_HOME/skills` (default: `~/.codex/skills`). ## Workflow 1. **Pick a goal.** Define a single feature or behavior to implement. 2. **Implement small.** Make the smallest change that moves the game forward. 3. **Ensure integration points.** Provide a single canvas and `window.render_game_to_text` so the test loop can read state. 4. **Add `window.advanceTime(ms)`.** Strongly prefer a deterministic step hook so the Playwright script can advance frames reliably; without it, automated tests can be flaky. 5. **Initialize progress.md.** If `progress.md` exists, read it first and confirm the original user prompt is recorded at the top (prefix with `Original prompt:`). Also note any TODOs and suggestions left by the previous agent. If missing, create it and write `Original prompt: <prompt>` at the top before appending updates. 6. **Verify Playwright availability.** Ensure `playwright` is available (local dependency or global install). If unsure, check `npx` first. 7. **Run the Playwright test script.** You must run `$WEB_GAME_CLIENT` after each meaningful change; do not invent a new client unless required. 8. **Use the payload reference.** Base actions on `$WEB_GAME_ACTIONS` t [... prompt truncated for preview ...]