Skip to main content
A scenario is a directory containing a scenario.json file and optional Ansible playbooks. All scenarios live under a shared root (auto-detected, or set with -p).

Directory Layout

The category and numeric prefix (NNN) are conventions for organization: they have no special meaning to the runner. The runner uses the full relative path from the scenarios root as the scenario key (e.g. nginx/001-broken-config).

scenario.json

The only required file. At minimum, three fields are needed:

Required Fields

Optional Fields


Writing Good Descriptions

The description is the exact instruction the agent receives. A few guidelines:
  • Describe symptoms, not solutions. “The nginx service is not running after a configuration change” is better than “Fix the nginx config file.”
  • Be concrete. Reference the host name, service name, or observable behavior when you know it.
  • Keep it realistic. Write it as you would a real support ticket or runbook task.

Scenario Keys and Tags

The key must exactly match the directory path relative to the scenarios root:
Tags are free-form strings for grouping. A scenario can have multiple tags:
Run all scenarios with a given tag:
Tags and explicit keys can be mixed: