LogoAwesome Skills
  • Search
  • Category
  • Tag
  • Blog
LogoAwesome Skills
LogoAwesome Skills

Discover Open-Source Agent Skills for AI Coding Assistants

Product

  • Search
  • Category
  • Tag
  • Blog

Resources

  • Claude Skill Docs
  • Antigravity Skills Docs

Tools

  • Claude Code
  • OpenCode
  • Cursor
  • Codex
  • Antigravity

Company

  • Privacy Policy
  • Terms of Service
  • Sitemap

©2026 Awesome Skills. All rights reserved.

Privacy PolicyTerms
Back to Skills

k6

k6 performance and load testing. Covers writing test scripts in JavaScript/TypeScript, all test types (load/stress/spike/soak/smoke/breakpoint), thresholds, checks, scenarios, executors, extensions, result analysis, k6 Cloud execution, and CI/CD integration. Use when writing k6 tests, debugging test failures, setting up load testing pipelines, choosing executors/scenarios, or interpreting k6 results.

192stars17forksUpdated 7/16/2026
#grafana#load-testing#k6#javascript#ci-cd#performance-testing

Security Assessment

Medium Risk(65/100)

Detected risks:

Secret Exposure([SKILL.md] token =)
Privilege Escalation([SKILL.md] sudo)
Security Score65/100

About k6

k6 is a skill for performance and load testing with Grafana k6. It covers writing test scripts in JavaScript/TypeScript, all major test types (load, stress, spike, soak, smoke, breakpoint), thresholds, checks, scenarios and executors, custom metrics, extensions, result analysis, k6 Cloud execution, and CI/CD integration. It is meant to be used when writing k6 tests, debugging test failures, setting up load-testing pipelines, choosing executors or scenarios, or interpreting k6 results, and it references the official docs at grafana.com/docs/k6/latest/.

The skill documents installation (brew, apt, choco) and running tests with k6 run, including flags like --vus, --duration, --iterations, --stage, and output options (--out json/csv/influxdb/statsd). It shows the basic script structure with an options block defining vus, duration, and thresholds (e.g. http_req_duration p(95)<500, http_req_failed rate<0.01), and the test lifecycle functions setup, default, and teardown. It covers HTTP requests (get/post/put/patch/del, http.batch, form data, file uploads with http.file), checks as soft assertions versus thresholds as hard pass/fail criteria (including tag-based thresholds and abortOnFail), and custom metrics via Counter, Gauge, Rate, and Trend from k6/metrics. Scenarios and executors are detailed — constant-vus, ramping-vus, constant-arrival-rate, per-vu-iterations — along with a test-types reference table, groups and tags, environment variables (accessed as __ENV), WebSocket testing via k6/ws, and browser testing via k6/browser with chromium.

It targets developers, QA, and SRE/performance engineers building or debugging load tests and pipelines. Additional reference files (referenced in the doc) expand on scenarios/executors and test types with full examples. The skill emphasizes practical patterns — passing variables with -e, sharing data from setup to VUs, and applying thresholds per endpoint via tags — so users can both author tests and interpret their results.

FAQ

What is the difference between checks and thresholds?

Checks are soft assertions that record pass/fail but do not stop the test on failure. Thresholds are hard pass/fail criteria defined in options (e.g. http_req_duration: ['p(95)<800']); a breached threshold fails the test, and you can add abortOnFail to stop it early.

How do I model different load patterns?

Use scenarios with executors: constant-vus for steady load, ramping-vus with stages for ramp up/down, constant-arrival-rate for a fixed requests-per-second rate, and per-vu-iterations for a set number of iterations per VU.

How do I share data like an auth token across virtual users?

Return it from the setup() function, which runs once before all VUs. The default function receives that return value as its data argument, so you can use data.token in each VU iteration. teardown() runs once after all VUs finish.

Which test types does k6 support and what are they for?

Smoke (verify the script with minimal load), Load (normal expected load), Stress (beyond normal capacity), Spike (sudden traffic surge), Soak (extended duration to find memory leaks), and Breakpoint (continuously increasing load to find limits).

Can k6 test WebSockets and browsers?

Yes. WebSocket testing uses the k6/ws module with ws.connect and socket event handlers, and browser testing uses the k6/browser module with a chromium browser type via the shared-iterations executor.

Install k6

Download and extract the skill files to your .claude/skills/ directory.

Quick Setup:

  1. Copy the skill folder to .claude/skills/
  2. Claude will automatically detect and use the skill

Repository

grafana/skills

Related Skills

short-form-video

14

multi-asset-morning-briefing

7,907

content-strategy

2,901

doherty-threshold

2,901