pokemon-player

Plays Pokemon games via headless PyBoy emulation with RAM state reads and screenshot verification.

Updated Jun 7, 2026
One-click install
npx skills add https://github.com/Chensihakniroth/ANAKOT-AGENT --skill pokemon-player-chensihakniroth
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: pokemon-player
Source: https://github.com/Chensihakniroth/ANAKOT-AGENT/tree/main/optional-skills/gaming/pokemon-player
Command: npx skills add https://github.com/Chensihakniroth/ANAKOT-AGENT --skill pokemon-player-chensihakniroth

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pokemon-agent, pyboy.

What problem does it solve? Playing a Game Boy Pokemon game autonomously requires reading game state, making navigation and battle decisions, and recovering from mistakes—tasks that are error-prone without structured state access and visual verification. This Skill provides a complete operational playbook for running a headless emulator, observing game state, and progressing through the game reliably. ## Core Features & Use Cases - Headless Emulation Server: Starts the pokemon-agent server with a user-provided ROM, exposing REST endpoints for state, screenshots, actions, and save/load management. - Structured Gameplay Loop: Follows an observe-orient-decide-act-verify cycle combining RAM reads with vision-based screenshot analysis to avoid getting lost. - Battle and Progression Strategy: Includes a Gen 1 type chart, gym-by-gym milestone plan, save/load conventions, and memory prefixes for tracking objectives and progress. - Use Case: A user says "play Pokemon Red"—the agent boots the emulator, opens a live dashboard tunnel for the user to watch, and autonomously navigates, battles, and saves progress through the game. ## Quick Start Ask the agent to play Pokemon with your ROM file, for example: "Start playing Pokemon Red using my ROM and show me the live dashboard."

Frequently Asked Questions about pokemon-player

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I play Pokemon with a headless Game Boy emulator?▼

Install the pokemon-agent package with the pyboy extra in a Python 3.10+ virtual environment, then run pokemon-agent serve with your ROM path and port 9876. The server exposes REST endpoints for game state, screenshots, and actions.

How to set up a live dashboard to watch AI play Pokemon?▼

Use an SSH reverse tunnel through localhost.run to forward local port 9876 to a public URL, then append /dashboard/ to the generated .lhr.life address. The tunnel URL changes on each restart, so share the new one after reconnecting.

Can I use any Pokemon ROM with PyBoy emulation?▼

PyBoy supports Game Boy and Game Boy Color ROM files (.gb, .gbc), covering titles like Pokemon Red, Blue, and Yellow. You must supply your own legally obtained ROM—the Skill never downloads or provides ROM files.

Why does the AI get stuck or lost while navigating in Pokemon?▼

RAM state provides position and HP but not surrounding obstacles like ledges, fences, or doors. Taking screenshots every 2-4 movement steps and analyzing them with vision prevents overshooting, one-way ledge traps, and building re-entry loops.

When should I save game state during automated Pokemon gameplay?▼

Save every 15-20 turns and always before gym battles, rival encounters, new towns, or dungeons using POST /save with a descriptive name. You can resume later by passing --load-state when starting the server.