perf-skills 3.0.0 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +90 -82
- package/.claude-plugin/plugin.json +6 -6
- package/LICENSE.md +8 -8
- package/README.md +45 -2
- package/package.json +48 -43
- package/skills/perf/SKILL.md +360 -347
- package/skills/perf/evals/evals.json +252 -148
- package/skills/perf/evals/trigger-eval.json +38 -0
- package/skills/perf/references/tools/gatling.md +286 -286
- package/skills/perf/references/tools/jmeter.md +251 -251
- package/skills/perf/references/tools/k6.md +269 -269
- package/skills/perf/references/tools/loadrunner.md +24 -0
- package/skills/perf/references/tools/locust.md +133 -133
- package/skills/perf/references/tools/neoload.md +54 -0
- package/skills/perf/references/topics/correlation.md +410 -406
- package/skills/perf/references/topics/database-testing.md +216 -214
- package/skills/perf/references/topics/llm-inference.md +48 -0
- package/skills/perf/references/topics/modern-architectures.md +316 -314
- package/skills/perf/references/topics/observability.md +203 -201
- package/skills/perf/references/topics/production-testing.md +216 -214
- package/skills/perf/references/topics/protocol-testing.md +339 -274
- package/skills/perf/references/topics/results-analysis.md +246 -244
- package/skills/perf/references/topics/script-generation.md +214 -221
- package/skills/perf/references/topics/test-data.md +198 -196
- package/skills/perf/references/topics/test-execution.md +308 -281
- package/skills/perf/references/topics/tool-selection.md +180 -0
- package/skills/perf/references/topics/workload-design.md +207 -207
|
@@ -1,82 +1,90 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "perf",
|
|
3
|
-
"owner": {
|
|
4
|
-
"name": "NaveenKumar Namachivayam",
|
|
5
|
-
"email": "contact@qainsights.com"
|
|
6
|
-
},
|
|
7
|
-
"metadata": {
|
|
8
|
-
"description": "Expert AI skill for performance testing - covers the full lifecycle using JMeter, k6, Gatling, Locust, NeoLoad, LoadRunner, and
|
|
9
|
-
"version": "1.0
|
|
10
|
-
},
|
|
11
|
-
"plugins": [
|
|
12
|
-
{
|
|
13
|
-
"name": "perf",
|
|
14
|
-
"source": "./",
|
|
15
|
-
"description": "Expert guidance for performance testing: planning, scripting, executing, and analyzing load/stress/soak/spike tests across
|
|
16
|
-
"version": "1.0
|
|
17
|
-
"author": {
|
|
18
|
-
"name": "NaveenKumar Namachivayam",
|
|
19
|
-
"email": "contact@qainsights.com"
|
|
20
|
-
},
|
|
21
|
-
"homepage": "https://github.com/QAInsights/perf-skills",
|
|
22
|
-
"repository": "https://github.com/QAInsights/perf-skills",
|
|
23
|
-
"license": "MIT",
|
|
24
|
-
"keywords": [
|
|
25
|
-
"performance-testing",
|
|
26
|
-
"load-testing",
|
|
27
|
-
"jmeter",
|
|
28
|
-
"k6",
|
|
29
|
-
"gatling",
|
|
30
|
-
"locust",
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
"
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
"
|
|
46
|
-
"
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
"performance",
|
|
51
|
-
"
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
"
|
|
59
|
-
"
|
|
60
|
-
"
|
|
61
|
-
"
|
|
62
|
-
"
|
|
63
|
-
"
|
|
64
|
-
"
|
|
65
|
-
"
|
|
66
|
-
"performance-
|
|
67
|
-
"
|
|
68
|
-
"
|
|
69
|
-
"
|
|
70
|
-
"
|
|
71
|
-
"
|
|
72
|
-
"
|
|
73
|
-
"
|
|
74
|
-
"
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
"
|
|
78
|
-
"
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "perf",
|
|
3
|
+
"owner": {
|
|
4
|
+
"name": "NaveenKumar Namachivayam",
|
|
5
|
+
"email": "contact@qainsights.com"
|
|
6
|
+
},
|
|
7
|
+
"metadata": {
|
|
8
|
+
"description": "Expert AI skill for performance testing - covers the full lifecycle using JMeter, k6, Gatling, Locust, Artillery, NeoLoad, LoadRunner, OctoPerf, plus LLM inference benchmarking and SLO/capacity planning.",
|
|
9
|
+
"version": "4.1.0"
|
|
10
|
+
},
|
|
11
|
+
"plugins": [
|
|
12
|
+
{
|
|
13
|
+
"name": "perf",
|
|
14
|
+
"source": "./",
|
|
15
|
+
"description": "Expert guidance for performance testing: planning, scripting, executing, and analyzing load/stress/soak/spike tests across 8 tools, 14 topic areas, LLM inference benchmarking, and SLO/capacity planning.",
|
|
16
|
+
"version": "4.1.0",
|
|
17
|
+
"author": {
|
|
18
|
+
"name": "NaveenKumar Namachivayam",
|
|
19
|
+
"email": "contact@qainsights.com"
|
|
20
|
+
},
|
|
21
|
+
"homepage": "https://github.com/QAInsights/perf-skills",
|
|
22
|
+
"repository": "https://github.com/QAInsights/perf-skills",
|
|
23
|
+
"license": "MIT",
|
|
24
|
+
"keywords": [
|
|
25
|
+
"performance-testing",
|
|
26
|
+
"load-testing",
|
|
27
|
+
"jmeter",
|
|
28
|
+
"k6",
|
|
29
|
+
"gatling",
|
|
30
|
+
"locust",
|
|
31
|
+
"artillery",
|
|
32
|
+
"neoload",
|
|
33
|
+
"loadrunner",
|
|
34
|
+
"octoperf",
|
|
35
|
+
"stress-testing",
|
|
36
|
+
"soak-testing",
|
|
37
|
+
"grpc",
|
|
38
|
+
"graphql",
|
|
39
|
+
"websocket",
|
|
40
|
+
"observability",
|
|
41
|
+
"ci-cd",
|
|
42
|
+
"llm-inference",
|
|
43
|
+
"vllm",
|
|
44
|
+
"slo",
|
|
45
|
+
"capacity-planning",
|
|
46
|
+
"performance-testing-best-practices",
|
|
47
|
+
"performance-testing-strategies",
|
|
48
|
+
"black-friday-performance-testing",
|
|
49
|
+
"cyber-monday-performance-testing",
|
|
50
|
+
"holiday-performance-testing",
|
|
51
|
+
"super-bowl-performance-testing"
|
|
52
|
+
],
|
|
53
|
+
"category": "testing",
|
|
54
|
+
"tags": [
|
|
55
|
+
"performance",
|
|
56
|
+
"load-testing",
|
|
57
|
+
"quality-engineering",
|
|
58
|
+
"testing",
|
|
59
|
+
"stress-testing",
|
|
60
|
+
"soak-testing",
|
|
61
|
+
"spike-testing",
|
|
62
|
+
"capacity-testing",
|
|
63
|
+
"breakpoint-testing",
|
|
64
|
+
"smoke-testing",
|
|
65
|
+
"regression-testing",
|
|
66
|
+
"performance-analysis",
|
|
67
|
+
"load-testing-tools",
|
|
68
|
+
"performance-testing-tools",
|
|
69
|
+
"load-testing-frameworks",
|
|
70
|
+
"performance-testing-frameworks",
|
|
71
|
+
"performance-testing-automation",
|
|
72
|
+
"jmeter",
|
|
73
|
+
"k6",
|
|
74
|
+
"gatling",
|
|
75
|
+
"locust",
|
|
76
|
+
"artillery",
|
|
77
|
+
"neoload",
|
|
78
|
+
"loadrunner",
|
|
79
|
+
"octoperf",
|
|
80
|
+
"performance-engineering",
|
|
81
|
+
"llm-inference",
|
|
82
|
+
"vllm",
|
|
83
|
+
"slo",
|
|
84
|
+
"capacity-planning",
|
|
85
|
+
"performance-testing-best-practices",
|
|
86
|
+
"performance-testing-strategies"
|
|
87
|
+
]
|
|
88
|
+
}
|
|
89
|
+
]
|
|
90
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "perf",
|
|
3
|
-
"description": "Expert guidance for performance testing: planning, scripting, executing, and analyzing load/stress/soak/spike tests using JMeter, k6, Gatling, Locust, NeoLoad, LoadRunner, OctoPerf.",
|
|
4
|
-
"version": "1.0
|
|
5
|
-
"skills": "./skills/"
|
|
6
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "perf",
|
|
3
|
+
"description": "Expert guidance for performance testing: planning, scripting, executing, and analyzing load/stress/soak/spike tests using JMeter, k6, Gatling, Locust, Artillery, NeoLoad, LoadRunner, OctoPerf, plus LLM inference benchmarking and SLO/capacity planning.",
|
|
4
|
+
"version": "4.1.0",
|
|
5
|
+
"skills": "./skills/"
|
|
6
|
+
}
|
package/LICENSE.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
Copyright 2026 NaveenKumar Namachivayam
|
|
2
|
-
|
|
3
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
4
|
-
|
|
5
|
-
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
6
|
-
|
|
7
|
-
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
8
|
-
|
|
1
|
+
Copyright 2026 NaveenKumar Namachivayam
|
|
2
|
+
|
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
4
|
+
|
|
5
|
+
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
6
|
+
|
|
7
|
+
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
8
|
+
|
package/README.md
CHANGED
|
@@ -30,9 +30,10 @@
|
|
|
30
30
|
|
|
31
31
|
| Category | Supported Technologies |
|
|
32
32
|
| :--- | :--- |
|
|
33
|
-
| **Open Source** | Apache JMeter, k6 (Grafana Labs), Gatling, Locust |
|
|
33
|
+
| **Open Source** | Apache JMeter, k6 (Grafana Labs), Gatling, Locust, Artillery |
|
|
34
34
|
| **Commercial/SaaS** | NeoLoad (Tricentis), LoadRunner (OpenText), OctoPerf |
|
|
35
35
|
| **Protocols** | HTTP/REST, gRPC, GraphQL, WebSocket, SSE, JDBC, SOAP, Kafka/MQ, Citrix, SAP |
|
|
36
|
+
| **AI/ML** | LLM inference benchmarking (vLLM, TRT-LLM, SGLang), SLO/capacity planning |
|
|
36
37
|
|
|
37
38
|
---
|
|
38
39
|
|
|
@@ -60,6 +61,7 @@ A major highlight of this library is the **Dynamic Value Correlation** engine ([
|
|
|
60
61
|
| AI Assistant | Integration Method |
|
|
61
62
|
| :--- | :--- |
|
|
62
63
|
| **Claude Code** | Native Plugin or `CLAUDE.md` context referencing |
|
|
64
|
+
| **Qwen Code** | Native Skill (`/perf`) or `QWEN.md` context referencing |
|
|
63
65
|
| **Windsurf (Cascade)** | Local Skill configuration |
|
|
64
66
|
| **Cursor** | Custom rules `.cursor/rules/` or index via `@Docs` |
|
|
65
67
|
| **Cline / Roo Code** | Workspace instructions / custom rules |
|
|
@@ -92,6 +94,24 @@ To update to the latest version:
|
|
|
92
94
|
|
|
93
95
|
---
|
|
94
96
|
|
|
97
|
+
### Qwen Code Skill
|
|
98
|
+
|
|
99
|
+
Install as a user-level skill so `/perf` is available in every project:
|
|
100
|
+
```bash
|
|
101
|
+
qwen skills add QAInsights/perf-skills
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
Or for a single project, copy the skill directory and reference it in `QWEN.md`:
|
|
105
|
+
```bash
|
|
106
|
+
cp -r perf-skills/skills/perf ./perf
|
|
107
|
+
```
|
|
108
|
+
```markdown
|
|
109
|
+
<!-- QWEN.md -->
|
|
110
|
+
For performance testing questions, read `perf/SKILL.md` for routing, then load the relevant reference files from `perf/references/`.
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
95
115
|
### Install as local Skills (npx)
|
|
96
116
|
|
|
97
117
|
If you are using a tool that supports `npx skills`, add it directly:
|
|
@@ -174,6 +194,8 @@ The skill will auto-trigger when you ask about performance testing, load testing
|
|
|
174
194
|
## 📂 File Structure & Routing
|
|
175
195
|
|
|
176
196
|
Here is how the knowledge base is organized. The entry point [SKILL.md](skills/perf/SKILL.md) routes queries to specific reference guides to keep prompt sizes minimal.
|
|
197
|
+
The topic references also include a tool-selection guide backed by the
|
|
198
|
+
perf.jmeter.ai catalog for broader recommendations.
|
|
177
199
|
|
|
178
200
|
```text
|
|
179
201
|
perf-skills/
|
|
@@ -191,7 +213,7 @@ perf-skills/
|
|
|
191
213
|
│ ├── k6.md # k6 JS/TS scripting, thresholds, VU options
|
|
192
214
|
│ ├── gatling.md # Gatling Scala/Java DSL & feeders
|
|
193
215
|
│ ├── locust.md # Locust Python scripting & FastHttpUser
|
|
194
|
-
│ ├── artillery.md # Artillery YAML/JS/TS scripting, phases, ensure SLOs, cloud
|
|
216
|
+
│ ├── artillery.md # Artillery YAML/JS/TS scripting, phases, ensure SLOs, cloud
|
|
195
217
|
│ ├── neoload.md # NeoLoad GUI configs & API execution
|
|
196
218
|
│ ├── loadrunner.md # LoadRunner VuGen C scripting
|
|
197
219
|
│ └── octoperf.md # OctoPerf JMeter-based cloud execution
|
|
@@ -208,6 +230,7 @@ perf-skills/
|
|
|
208
230
|
├── database-testing.md # JDBC, pools, deadlocks, slow queries
|
|
209
231
|
├── modern-architectures.md # K8s scaling, HPA, Frontend CWV
|
|
210
232
|
├── llm-inference.md # LLM serving: TTFT, TPOT/ITL, TPS, goodput, tools
|
|
233
|
+
├── tool-selection.md # Tool alternatives, comparisons, and catalog lookup
|
|
211
234
|
└── slo-capacity.md # SLOs, error budgets, headroom, CI gating
|
|
212
235
|
```
|
|
213
236
|
|
|
@@ -231,6 +254,26 @@ To avoid hitting context window limits, the skill operates on a **selective load
|
|
|
231
254
|
| *"Our p95 latency spikes during database writes, how do we fix?"* | `database-testing.md` + `results-analysis.md` |
|
|
232
255
|
| *"What TTFT/throughput can our vLLM endpoint sustain at 200 concurrent users?"* | `llm-inference.md` |
|
|
233
256
|
| *"How many replicas do we need, and what SLO headroom should we keep?"* | `slo-capacity.md` |
|
|
257
|
+
| *"Which load testing tool should we use for a gRPC service on-prem?"* | `tool-selection.md` |
|
|
258
|
+
|
|
259
|
+
---
|
|
260
|
+
|
|
261
|
+
## ✅ Eval-Verified Quality
|
|
262
|
+
|
|
263
|
+
This skill is tested with 12 eval cases across 8 categories (k6, JMeter, Artillery, Locust, tool selection, migration, LLM inference, SLO/capacity). Each eval verifies that the skill context produces correct, concrete answers with code examples - not just generic advice.
|
|
264
|
+
|
|
265
|
+
| Category | Evals | What it verifies |
|
|
266
|
+
| :--- | :--- | :--- |
|
|
267
|
+
| k6 | 1, 5, 7 | Checks vs thresholds, executor choice, SLA baselines |
|
|
268
|
+
| JMeter | 3 | OOM diagnosis, listener memory leak |
|
|
269
|
+
| Artillery | 8, 9 | `ensure` CI gating, `arrivalRate` vs concurrency |
|
|
270
|
+
| Locust | 6 | `catch_response` silent failure |
|
|
271
|
+
| Tool selection | 2, 12 | Kafka and catalog-driven tool recommendation |
|
|
272
|
+
| Migration | 4 | LoadRunner-to-k6 concept mapping |
|
|
273
|
+
| LLM inference | 10 | TTFT/TPOT metrics, benchmarking tools |
|
|
274
|
+
| SLO/capacity | 11 | Error budgets, burn rate CI gating |
|
|
275
|
+
|
|
276
|
+
Run them yourself - see [`.claude/CLAUDE.md`](.claude/CLAUDE.md) for instructions.
|
|
234
277
|
|
|
235
278
|
---
|
|
236
279
|
|
package/package.json
CHANGED
|
@@ -1,43 +1,48 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "perf-skills",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "Expert AI skill for performance testing - covers JMeter, k6, Gatling, Locust, NeoLoad, LoadRunner, OctoPerf across the full lifecycle",
|
|
5
|
-
"main": "skills/perf/SKILL.md",
|
|
6
|
-
"files": [
|
|
7
|
-
"skills/",
|
|
8
|
-
".claude-plugin/"
|
|
9
|
-
],
|
|
10
|
-
"keywords": [
|
|
11
|
-
"performance-testing",
|
|
12
|
-
"load-testing",
|
|
13
|
-
"jmeter",
|
|
14
|
-
"k6",
|
|
15
|
-
"gatling",
|
|
16
|
-
"locust",
|
|
17
|
-
"
|
|
18
|
-
"
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"
|
|
23
|
-
"
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
"
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
"
|
|
40
|
-
|
|
41
|
-
"
|
|
42
|
-
}
|
|
43
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "perf-skills",
|
|
3
|
+
"version": "4.1.0",
|
|
4
|
+
"description": "Expert AI skill for performance testing - covers JMeter, k6, Gatling, Locust, Artillery, NeoLoad, LoadRunner, OctoPerf, LLM inference benchmarking, and SLO/capacity planning across the full lifecycle",
|
|
5
|
+
"main": "skills/perf/SKILL.md",
|
|
6
|
+
"files": [
|
|
7
|
+
"skills/",
|
|
8
|
+
".claude-plugin/"
|
|
9
|
+
],
|
|
10
|
+
"keywords": [
|
|
11
|
+
"performance-testing",
|
|
12
|
+
"load-testing",
|
|
13
|
+
"jmeter",
|
|
14
|
+
"k6",
|
|
15
|
+
"gatling",
|
|
16
|
+
"locust",
|
|
17
|
+
"artillery",
|
|
18
|
+
"neoload",
|
|
19
|
+
"loadrunner",
|
|
20
|
+
"octoperf",
|
|
21
|
+
"stress-testing",
|
|
22
|
+
"soak-testing",
|
|
23
|
+
"grpc",
|
|
24
|
+
"graphql",
|
|
25
|
+
"websocket",
|
|
26
|
+
"observability",
|
|
27
|
+
"ci-cd",
|
|
28
|
+
"llm-inference",
|
|
29
|
+
"vllm",
|
|
30
|
+
"slo",
|
|
31
|
+
"capacity-planning",
|
|
32
|
+
"claude-skills",
|
|
33
|
+
"ai-assistant"
|
|
34
|
+
],
|
|
35
|
+
"repository": {
|
|
36
|
+
"type": "git",
|
|
37
|
+
"url": "https://github.com/QAInsights/perf-skills.git"
|
|
38
|
+
},
|
|
39
|
+
"author": {
|
|
40
|
+
"name": "NaveenKumar Namachivayam",
|
|
41
|
+
"email": "contact@qainsights.com"
|
|
42
|
+
},
|
|
43
|
+
"license": "MIT",
|
|
44
|
+
"homepage": "https://github.com/QAInsights/perf-skills#readme",
|
|
45
|
+
"engines": {
|
|
46
|
+
"node": ">=14"
|
|
47
|
+
}
|
|
48
|
+
}
|