What problem does it solve? Playing a Game Boy Pokemon game autonomously requires bridging emulator control, game state awareness, and navigation decisions, which is difficult to coordinate manually through trial and error. ## Core Features & Use Cases - Headless Emulation Control: Starts a pokemon-agent server over a ROM file and issues actions (move, press A/B, wait) through a REST API on port 9876. - State and Vision Loop: Combines RAM-based state reads (position, HP, battle, dialog) with screenshot analysis to navigate maps, handle battles, and avoid getting stuck. - Save State Management: Saves and loads named game states before risky encounters and resumes sessions via a --load-state flag. - Live Spectator Dashboard: Exposes a browser dashboard through an SSH reverse tunnel so the user can watch gameplay in real time. - Use Case: A user says "play pokemon" and the agent boots Pokemon Red, picks a starter, battles through Viridian Forest, saves progress, and shares a live dashboard URL. ## Quick Start Ask the agent to start playing Pokemon with your ROM file and share the live dashboard link.