Het JumPHP-paneel van Claude Code
Terwijl Claude je game schrijft, zie je wat hij doet: een paneel naast het gesprek toont de
tests die draaien, de schermen van de game waar hij naar kijkt, en laat je ingrijpen. Het is een mod van Claude Code,
jumphp-live, meegeleverd met JumPHP.
Installeren
Typ in Claude Code (in een terminal):
/plugin install jumphp-live --marketplace davidnurdin/jumPhp
Antwoord y om de bron toe te voegen en kies dan het bereik (“user”: voor al je projecten). Vanuit een
shell: claude plugin install jumphp-live --marketplace davidnurdin/jumPhp.
Gebruiken
Start Claude Code in je JumPHP-project (de map die bin/jumphp bevat) en typ /jumphp <game>, bijvoorbeeld
/jumphp pong. Het paneel opent rechts (je hebt een voldoende breed venster nodig, 110 kolommen of meer). Het
opent ook vanzelf de eerste keer dat Claude bin/jumphp test of bin/jumphp shot start.
Wat het toont:
- De controles live: wanneer Claude
bin/jumphp teststart, loopt de uitvoer door het paneel en wordt elke stap afgevinkt:✔ php -l ✔ phpstan … phpunit smoke test. Aan het eind: de samenvatting van PHPUnit en wat er is mislukt (de falende tests, de PHP-waarschuwingen en -fouten). - Het scherm van de game live (
● live): terwijlbin/jumphp test(zijn smoke test) ofbin/jumphp shotde game laat draaien, toont het paneel zijn scherm frame voor frame (de engine herschrijftvar/live/frame.png, optieJUMPHP_LIVE). Runs zonder venster gaan sneller dan realtime:JUMPHP_REALTIME=1vertraagt ze tot de snelheid van de game. Een project dat vóór deze optie is gemaakt krijgt haar metgit pull jumphp main(de oorspronkelijke JumPHP-repository, bewaard onder de naamjumphp). - De gametests, voor je ogen: de tests die de game spelen verschijnen terwijl ze
draaien (⏳, daarna ✔ / ✘), met de naam van de lopende test boven het livescherm; klik daarna op een test
om zijn laatste beeld te zien. De knop 🐢 Game speed / ⏩ Fast (
r) kiest de snelheid: die van de game (standaard, om het batje te zien bewegen) of zo snel mogelijk. - De schermen: de screenshot die
bin/jumphp shotofsiteshotnet heeft gemaakt, en elk beeld dat Claude opent om naar de game te kijken, getoond in het paneel. - De beelden in elke terminal: standaard worden ze getekend in kleine kleurblokjes
(
▦ Blocks), die elke terminal met true color toont (GNOME Terminal, Konsole, Windows Terminal, VS Code…): de engine schrijft daarvoor naast elke PNG een kleine ruwe kopie (.rgb). In kitty, Ghostty of iTerm2 toont het paneel de PNG zelf (🖼 HD); de toetspschakelt om. De knop 🖼 Open (o) opent het getoonde beeld in de viewer van je bureaublad (xdg-open,openop macOS), op ware grootte. - De playground: het resultaat van de PHPUnit-tests van de site (
run_tests,get_test_run) en van de publicaties (sync_project) wanneer Claude de MCP-server gebruikt.
Wat je kunt doen:
- ▶ Tests (toets
t) en 📸 Shot (s): meteen de tests of een screenshot starten, zonder Claude; de uitvoer loopt door het paneel. - 🛠 Ask Claude to fix (
f), na een mislukking: Claude krijgt wat er is mislukt en herstelt het. - Tell Claude: een veld om hem te schrijven (“spring hoger”, “de eindbaas is te moeilijk”); hij leest het zodra hij de lopende stap af heeft.
Hoe het Claude volgt
Een Bash-commando van Claude dat bin/jumphp test, shot, siteshot of webshot start, wordt ongewijzigd uitgevoerd,
waarbij de uitvoer ook naar een tijdelijk bestand wordt gekopieerd dat het paneel volgt ({ export JUMPHP_LIVE=1; commande } 2>&1 | tee …, de
exitcode blijft behouden). De andere commando's blijven onaangeroerd. Er wordt niets naar elders gestuurd.