chaos-monkey

Fuzz game engine inputs to detect crashes and softlocks.

Updated Dec 30, 2025
One-click install
npx skills add https://github.com/scawful/afs_scawful --skill chaos-monkey
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: chaos-monkey
Source: https://github.com/scawful/afs_scawful/tree/main/skills/chaos-monkey
Command: npx skills add https://github.com/scawful/afs_scawful --skill chaos-monkey

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Chaos Monkey fuzzes a game engine to automatically stress-test input handling, helping identify crashes and softlocks that manual testing may miss.

Core Features & Use Cases

  • Gameplay Fuzzing: runs in gameplay mode to simulate a frantic player, with configurable duration.
  • Glitch Hunting: runs in glitch mode to inject 1-frame inputs and rapid pause/menu sequences to expose fragile state logic.
  • Integration & Workflow: automatically triggers crash-investigator when a crash or freeze is detected.

Quick Start

Run chaos-monkey in glitch mode for 2 minutes and monitor for crashes.

Frequently Asked Questions about chaos-monkey

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

FAQPage Schema
How do I automate game fuzzing to stress-test crashes in an emulator?▼

Automated game fuzzing stress-tests crashes by simulating frantic player inputs through an emulator socket server. This approach probes input timing and edge-case behavior to identify softlocks that manual testing often misses.

What is the best way to find edge-case softlocks during gameplay and menu navigation?▼

Finding edge-case softlocks involves running a fuzzer in glitch mode to inject 1-frame inputs and rapid pause sequences. This exposes fragile state logic during gameplay and menu navigation by overwhelming the game engine.

Do I need a specific emulator setup to run automated stress testing on a game engine?▼

Automated stress testing requires an emulator with a socket server, such as Mesen2, alongside a dedicated fuzzer script. These components communicate to inject inputs and monitor the game engine for crashes or freezes.

How does crash detection work during automated gameplay fuzzing?▼

Crash detection during gameplay fuzzing works by automatically triggering a crash-investigator tool when a freeze or crash is encountered. This integration captures the failure state immediately after the injected inputs cause the issue.

Can I use chaos testing to simulate a frantic player for a specific duration?▼

Chaos testing can simulate a frantic player for a configurable duration using gameplay mode. This allows QA scenarios to stress-test input handling over set timeframes to uncover hidden game engine crashes.

What are the limitations of using fuzzing scripts for game testing?▼

Fuzzing scripts for game testing are limited by their dependency on specific local paths and emulator socket configurations. They require a strict environment setup and cannot probe crashes outside the emulated game engine context.