skills/qe/scenarios/SKILL.md
Guide for writing E2E test scenarios in the wicked-scenarios format. Covers scenario structure, frontmatter fields, step format, and best practices. Use when: - Creating new test scenarios - Understanding the scenario format - Choosing the right CLI tool for a test category
npx skillsauth add mikeparcewski/wicked-garden scenariosInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Write E2E test scenarios as markdown files that both humans and AI agents can execute.
Create a .md file in the scenarios/ directory with this structure:
---
name: my-scenario
description: What this scenario tests
category: api # api|browser|perf|infra|security|a11y
tools:
required: [curl] # Must be installed to run
optional: [hurl] # Used if available, skipped if not
difficulty: basic # basic|intermediate|advanced
timeout: 60 # Max seconds
---
Then write steps in the markdown body:
## Steps
### Step 1: Description (cli-name)
```bash
curl -sf https://example.com/api/health
Expect: Exit code 0, healthy response
## Categories and Tools
| Category | Tools | What to Test |
|----------|-------|-------------|
| api | curl, hurl | Health checks, API contracts, response validation |
| browser | playwright, agent-browser | Page load, interactions, content verification |
| perf | k6, hey | Load testing, response time thresholds |
| infra | trivy | Container scanning, IaC security |
| security | semgrep | SAST, code security patterns |
| a11y | pa11y | WCAG compliance, accessibility issues |
## Key Rules
1. **Exit code = pass/fail** — exit 0 is PASS, non-zero is FAIL
2. **One CLI per step** — identify it in the step header parenthetical
3. **Fenced code blocks** — use appropriate language hint (bash, hurl, javascript)
4. **Headless flags** — browser/a11y tools must include headless configuration
5. **Cleanup section** — remove temp files created during execution
## References
- [Format Specification](refs/format-spec.md) — full field reference and validation rules
- [CLI Reference](refs/cli-reference.md) — MVP tool details and example invocations
development
--- name: large-scale-migration description: How to execute a LARGE MECHANICAL change across any codebase with LEVERAGE instead of an agent-grind or hand-edits — a cross-cutting migration, refactor, rename, dialect/framework/DB port, library adoption, or bulk transform. The map→transform→gate pattern: a deterministic transform driven by a source-of-truth map, proven by a differential-equivalence gate. Use when the work is "migrate all X to Y", "rename Z everywhere", "port to a new DB/dialect/fra
testing
v11 LLM-based work-shape classifier. Replaces the regex archetype detector with the model's own reasoning. Reads the user's prompt, picks the right archetype(s) from the catalog, identifies signals (blast_radius, novelty, reversibility, etc.), and persists to SessionState so subsequent turns steer correctly. Use when: the prompt_submit hook emitted a `<wg classify-due />` directive, OR explicitly invoked at session start, OR when re-classifying after the user changes scope mid-session.
tools
v11 work-shape archetype runner. When a prompt has been routed to one of the 9 archetypes (triage, explore, specify, decide, ship, review, incident, build, migrate), this skill is the entry point. It picks the right per-archetype playbook from refs/ and executes the phase shape declared in `.claude-plugin/archetypes.json`. Use when: a `<wg archetype="X">` or `<wg archetypes>` system-reminder tag appears, an explicit "let's run the X archetype" request, or when one of the per-archetype slash commands resolves to this skill.
development
Show or set the session intent variable. Intent gates how loud the framework is — simple-edit (silent), feature/research (synthesis directive), rigor (full crew context). Auto-detected on turn 1; this skill overrides explicitly. Sticky for the session. Use when: "set intent", "intent override", "/wicked-garden:intent", "make the framework quiet", "force rigor", "what's my intent".