test
Run semantic validation on a generated game — checks level configs, puzzle wiring, level transitions, decoration types, and model references
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Run semantic validation on a generated game — checks level configs, puzzle wiring, level transitions, decoration types, and model references
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
Create a Three.js + WebXR game from scratch starting from a concept description
Run build verification — checks compilation, validates level configs, finds missing imports
Add a game mechanic by implementing a puzzle class with world objects and interaction wiring
Create or modify a game level with environment, decorations, and props
SOC 職業分類に基づく
| name | test |
| description | Run semantic validation on a generated game — checks level configs, puzzle wiring, level transitions, decoration types, and model references |
| argument-hint | [games/<slug>] |
| user-invocable | true |
| allowed-tools | Read, Bash, Glob, Grep |
| context | fork |
Run deep validation on a generated game project, beyond what /build (Vite compilation) checks.
Complete ALL checks in a SINGLE run. NEVER use AskUserQuestion.
Read the CLAUDE.md file in the repo root to understand project structure and conventions.
The argument may be a game path:
/test games/my-game/test → auto-detect by finding the most recently modified games/*/GAME_DESIGN.mdAfter resolving the game directory, all operations run inside it.
For each <game-dir>/src/levels/level*.js, read the file and verify:
| Field | Required | Type |
|---|---|---|
id | Yes | number |
name | Yes | string |
environment | Yes | object with sky or enclosure |
decorations | Yes | array with 1+ entries |
props | Yes | array (can be empty) |
playerSpawn | Yes | object with position array |
exit | No | object or array (if present, must have position and targetLevel) |
For each decoration entry, check that type is one of the 13 built-in types: palmTree, tree, pineTree, rock, water, bird, stalactite, mushroom, crystal, coral, vine, lantern, column.
Collect all levels and their exit fields. Verify:
targetLevel in an exit references a level file that existstargetLevel pointing to the same level)Read <game-dir>/src/engine/Engine.js and find:
import { ... } from '../puzzle/puzzles/...')puzzleManager.register(...) callsIf GAME_DESIGN.md lists mechanics, cross-reference:
If any puzzle sets dependencies:
For each level config's props array:
.glb file exists in <game-dir>/public/models/N/For each .js file in <game-dir>/src/:
import statementsPrint a structured report:
Validation Results (games/<slug>):
Levels:
✓ level1.js — schema valid, 4 decorations, 2 props
✓ level2.js — schema valid, 3 decorations, 0 props
✗ level3.js — missing playerSpawn.position
Transitions:
✓ Level 1 → Level 2 (portal)
✓ Level 2 → Level 3 (portal)
✓ Level 3 — final level (no exit)
Puzzles:
✓ 3 puzzles registered (collect_gems, rune_sequence, bridge_lever)
✓ Dependencies: valid graph (2 roots, no cycles)
⚠ GAME_DESIGN.md lists "key_puzzle" but no implementation found
Models:
✓ All 4 model references resolved
✗ level2: treasure.glb not found in public/models/2/
Imports:
✓ All imports resolved
Overall: PASS (1 warning, 1 model missing)
Use ✓ for pass, ✗ for fail, ⚠ for warning.
Severity:
✗ (error): schema violations, broken imports, missing puzzle registrations, circular dependencies⚠ (warning): missing models (may not be added yet), design/implementation mismatches, orphan levelsOverall: PASS if no errors (warnings are OK). FAIL if any errors.
If the specified game path doesn't exist and auto-detect finds no games:
ERROR: No game found. Run /dream first to create a game, or specify the path: /test games/<slug>ERROR: No level files found in <game-dir>/src/levels/. Run /scene to create levels.If a level file has syntax errors that prevent reading:
✗ levelN.js — parse error: <message>⚠ Engine.js not found or not parseable — skipping puzzle checks