UK

Панель JumPHP для Claude Code

Поки Claude пише вашу гру, бачте, що він робить: панель поруч із розмовою показує тести, що виконуються, екрани гри, на які він дивиться, і дає змогу втрутитися. Це мод для Claude Code, jumphp-live, що постачається з JumPHP.

Встановлення

У Claude Code (у терміналі) введіть:

/plugin install jumphp-live --marketplace davidnurdin/jumPhp

Дайте відповідь y, щоб додати джерело, потім виберіть область («user»: для всіх ваших проєктів). З оболонки: claude plugin install jumphp-live --marketplace davidnurdin/jumPhp.

Як користуватися

У вашому проєкті JumPHP (тека, що містить bin/jumphp) запустіть Claude Code і введіть /jumphp <гра>, наприклад /jumphp pong. Панель відкриється праворуч (потрібне достатньо широке вікно, 110 стовпців або більше). Вона також відкривається сама, коли Claude вперше запускає bin/jumphp test або bin/jumphp shot.

Що вона показує:

  • Перевірки наживо: коли Claude запускає bin/jumphp test, вивід прокручується в панелі, а кожен крок відмічається по ходу: ✔ php -l ✔ phpstan … phpunit smoke test. Наприкінці: підсумок PHPUnit і те, що не пройшло (тести з помилками, попередження та помилки PHP).
  • Екран гри наживо (● live): поки bin/jumphp test (його smoke test) або bin/jumphp shot запускає гру, панель показує її екран кадр за кадром (рушій перезаписує var/live/frame.png, опція JUMPHP_LIVE). Запуски без вікна йдуть швидше за реальний час: JUMPHP_REALTIME=1 уповільнює їх до швидкості гри. Проєкт, створений до появи цієї опції, отримує її через git pull jumphp main (оригінальний репозиторій JumPHP, збережений під назвою jumphp).
  • Ігрові тести перед вашими очима: тести, що грають у гру, показуються, поки вони виконуються (⏳, потім ✔ / ✘), з назвою поточного тесту над екраном live; потім клацніть на тест, щоб побачити його останній кадр. Кнопка 🐢 Game speed / ⏩ Fast (r) вибирає швидкість: швидкість гри (за замовчуванням, щоб бачити, як рухається ракетка) або якомога швидше.
  • Екрани: скриншот, який щойно зробив bin/jumphp shot або siteshot, і кожне зображення, яке Claude відкриває, щоб подивитися на гру, показуються в панелі.
  • Зображення в будь-якому терміналі: за замовчуванням вони малюються маленькими кольоровими блоками (▦ Blocks), які показує будь-який термінал із True Color (GNOME Terminal, Konsole, Windows Terminal, VS Code…): для цього рушій пише поруч із кожним PNG маленьку сиру копію (.rgb). У kitty, Ghostty або iTerm2 панель показує сам PNG (🖼 HD); клавіша p перемикає. Кнопка 🖼 Open (o) відкриває показане зображення в засобі перегляду вашого робочого столу (xdg-open, open у macOS) у реальному розмірі.
  • Playground: результат тестів PHPUnit сайту (run_tests, get_test_run) і публікацій (sync_project), коли Claude використовує MCP-сервер.

Що ви можете робити:

  • ▶ Tests (клавіша t) і 📸 Shot (s): одразу запустити тести або скриншот, без Claude; вивід прокручується в панелі.
  • 🛠 Ask Claude to fix (f) після збою: Claude отримує те, що не пройшло, і виправляє.
  • Tell Claude: поле, щоб йому написати («стрибай вище», «бос надто складний»); він прочитає це, щойно закінчить поточний крок.

Як він стежить за Claude

Команда Bash від Claude, що запускає bin/jumphp test, shot, siteshot або webshot, виконується як є, а її вивід також копіюється у тимчасовий файл, за яким стежить панель ({ export JUMPHP_LIVE=1; команда } 2>&1 | tee …, код завершення зберігається). Інших команд це не зачіпає. Нічого нікуди не надсилається.