level-lab-skill
v1.1.0
Published
Level Generator + Level Editor for single-file H5 games — installs for Claude Code and GitHub Copilot CLI
Maintainers
Readme
Level Lab Skill
Add a Level Generator and Level Editor to any single-file H5 (HTML5) game — for Claude Code and GitHub Copilot CLI.
- Level Generator — a full, ordered level set (30 by default) on an Easy, Easy, Medium, Easy, Hard repeating curve with a rising floor (relative difficulty: ~70–80% by L15, 100% by L30). Every level is verified and free of "ready combos"; FTUE (tutorial) levels are kept verbatim. Per level: Play · Edit · Rework · Save · Extract; plus Undo last, Extract all (ZIP), Import, Regenerate.
- Level Editor — enter a level number, edit the board (colours, fill, place blockers) with a live validity check, then Save · Save & export · Reject · Undo · Revert.
- Blockers — a game's blockers are introduced at player-chosen levels (two Main-Menu dropdowns; defaults 6 & 16). Intro level + next use only that blocker; after that both may appear, leaving 1 of every 5 levels blocker-free.
- Import / Export — Extract one level or all (ZIP) as JSON the game re-reads; Import JSON (one level) or ZIP (many) to make them the final, persistent levels.
Everything is inlined into the one game .html and persists in localStorage — no
extra files, no build step for the shipped game. Two adapters ship: liquidout (default,
glass/pour game) and coil-merge (grid-coil puzzle); the engine is generic, so a
non-colour game works too by adding one adapter.
Install
Requires Node.js 16+.
npx level-lab-skillWorks for both Claude Code (~/.claude/skills/level-lab/) and GitHub Copilot CLI
(~/.copilot/skills/level-lab/, if present).
Use
Claude Code — ask:
"Add a level generator and level editor to coil-merge.html"
GitHub Copilot CLI — run /level-lab, then point it at your game.
Under the hood the skill inlines its runtime into your game and generates the default set:
node scripts/inject.mjs your-game.html --game liquidout --inplace --count 30
node scripts/drive.mjs --game liquidout --count 30 # headless verificationGeneric by design
A small per-game adapter declares that game's difficulty levers (colours, board size,
fill, lanes, spacing, blockers, move/time budget, score/quota…) and level shape. Two
adapters ship — liquidout (default) and coil-merge; see skill/references/level-schema.md
to add your own (the engine speaks only in abstract lever types, so non-colour games fit too).
Update / remove
npx level-lab-skill@latest # update
npx level-lab-skill verify # check
npx level-lab-skill uninstall # removeBuilt by Krushna.
