Agent Skills: /configure:load-tests

Check and configure load and performance testing with k6, Artillery, or Locust

UncategorizedID: laurigates/claude-plugins/configure-load-tests

Install this agent skill to your local

pnpm dlx add-skill https://github.com/laurigates/claude-plugins/tree/HEAD/configure-plugin/skills/configure-load-tests

Skill Files

Browse the full folder contents for configure-load-tests.

Download Skill

Loading file tree…

configure-plugin/skills/configure-load-tests/SKILL.md

Skill Metadata

Name
configure-load-tests
Description
Check and configure load and performance testing with k6, Artillery, or Locust

/configure:load-tests

Check and configure load and performance testing infrastructure for stress testing, benchmarking, and capacity planning.

When to Use This Skill

| Use this skill when... | Use another approach when... | |------------------------|------------------------------| | Setting up load testing infrastructure from scratch (k6, Artillery, Locust) | Running existing load tests — use k6 run or artillery run directly | | Auditing current load testing coverage (smoke, stress, spike, soak) | Writing unit or integration tests — use /configure:tests | | Adding CI/CD pipelines for performance regression detection | Profiling application memory usage — use /configure:memory-profiling | | Migrating between load testing frameworks | Benchmarking individual functions — use language-specific benchmark tools | | Ensuring load test thresholds and reporting are properly configured | Testing API contracts — use /configure:api-tests |

Context

  • Project root: !pwd
  • k6 tests: !find . -maxdepth 3 \( -name '*.k6.js' -o -name '*.k6.ts' \)
  • Load test directory: !find . -maxdepth 2 -type d -name 'load'
  • Artillery config: !find . -maxdepth 2 -name 'artillery.yml' -o -name 'artillery.yaml'
  • Locust files: !find . -maxdepth 2 -name 'locustfile.py'
  • Package files: !find . -maxdepth 1 \( -name 'package.json' -o -name 'pyproject.toml' \)
  • CI workflows: !find .github/workflows -maxdepth 1 -name '*load*' -o -name '*perf*'
  • k6 binary: !command -v k6

Parameters

Parse from $ARGUMENTS:

  • --check-only: Report load testing compliance status without modifications
  • --fix: Apply all fixes automatically without prompting
  • --framework <k6|artillery|locust>: Override framework detection

Framework preferences:

| Framework | Best For | |-----------|----------| | k6 (recommended) | Complex scenarios, CI/CD integration, TypeScript support | | Artillery | Quick YAML configs, simple API testing | | Locust | Python teams, distributed testing, custom behavior |

Execution

Execute this load testing configuration check:

Step 1: Detect existing load testing infrastructure

Read the context values above and identify:

| Indicator | Component | Status | |-----------|-----------|--------| | k6 binary or @grafana/k6 | k6 | Installed | | *.k6.js or load-tests/ | k6 tests | Present | | artillery.yml | Artillery config | Present | | locustfile.py | Locust tests | Present | | .github/workflows/*load* | CI integration | Configured |

If --framework flag is set, use that framework regardless of detection.

Step 2: Analyze current load testing setup

Check for complete setup coverage:

Installation: k6 installed (binary or npm), TypeScript support if applicable.

Test Scenarios: Check which test types exist:

  • Smoke tests (minimal load validation)
  • Load tests (normal load)
  • Stress tests (peak load)
  • Spike tests (burst traffic)
  • Soak tests (endurance)

Configuration: Thresholds, environment-specific configs, data files.

Reporting: Console output, JSON/HTML reports, trend tracking.

CI/CD: GitHub Actions workflow, scheduled runs, PR gate.

Step 3: Generate compliance report

Print a compliance report covering:

  • Framework installation status and version
  • Test scenario coverage (smoke, load, stress, spike, soak)
  • Threshold configuration (response time, error rate)
  • Environment configuration (staging, production)
  • CI/CD integration (workflow, schedule, PR gate)
  • Reporting setup (console, JSON, HTML, Grafana Cloud)

End with overall issue count and recommendations.

If --check-only is set, stop here.

Step 4: Configure load testing framework (if --fix or user confirms)

Apply configuration using templates from REFERENCE.md:

  1. Install k6 (or chosen framework)
  2. Create directory structure: tests/load/{config,scenarios,helpers,data}
  3. Create base configuration with shared thresholds and headers
  4. Create test scenarios (smoke, load, stress, spike)
  5. Add npm/package scripts for running tests

Step 5: Configure CI/CD integration

  1. Create .github/workflows/load-tests.yml with:
    • Smoke tests on PRs
    • Full load tests via workflow_dispatch
    • Scheduled weekly runs
    • Results artifact upload
  2. Add HTML reporting via k6-reporter
  3. Use templates from REFERENCE.md

Step 6: Update standards tracking

Update .project-standards.yaml:

components:
  load_tests: "2025.1"
  load_tests_framework: "k6"
  load_tests_scenarios: ["smoke", "load", "stress"]
  load_tests_ci: true
  load_tests_thresholds: true

Step 7: Print final compliance report

Print a summary of framework installed, scenarios created, scripts added, CI/CD configured, thresholds set, and next steps for the user.

For detailed k6 test scripts, CI workflow templates, and reporting configuration, see REFERENCE.md.

Agentic Optimizations

| Context | Command | |---------|---------| | Quick compliance check | /configure:load-tests --check-only | | Auto-fix all issues | /configure:load-tests --fix | | Run smoke test quickly | k6 run --vus 1 --duration 10s tests/load/scenarios/smoke.k6.js | | Run with JSON output | k6 run --out json=results.json tests/load/scenarios/load.k6.js | | Check k6 version | k6 version | | List test scenarios | find tests/load -name '*.k6.js' -type f |

Flags

| Flag | Description | |------|-------------| | --check-only | Report status without offering fixes | | --fix | Apply all fixes automatically without prompting | | --framework <framework> | Override framework (k6, artillery, locust) |

Examples

# Check compliance and offer fixes
/configure:load-tests

# Check only, no modifications
/configure:load-tests --check-only

# Auto-fix all issues
/configure:load-tests --fix

# Force specific framework
/configure:load-tests --fix --framework artillery

Error Handling

  • k6 not installed: Provide installation instructions for platform
  • No target URL: Prompt for BASE_URL configuration
  • Docker not available: Suggest local app startup
  • CI secrets missing: Provide setup instructions for k6 Cloud

See Also

  • /configure:tests - Unit testing configuration
  • /configure:integration-tests - Integration testing
  • /configure:api-tests - API contract testing
  • /configure:all - Run all compliance checks
  • k6 documentation: https://k6.io/docs
  • k6 examples: https://github.com/grafana/k6/tree/master/examples
  • Grafana k6 Cloud: https://grafana.com/products/cloud/k6