perf-skills 1.0.0 → 1.0.2
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 +82 -0
- package/{perf-skills/.claude-plugin → .claude-plugin}/plugin.json +3 -2
- package/README.md +238 -227
- package/package.json +5 -4
- package/{perf-skills → skills/perf}/SKILL.md +4 -9
- package/{perf-skills → skills/perf}/references/tools/gatling.md +286 -286
- package/{perf-skills → skills/perf}/references/tools/jmeter.md +251 -251
- package/{perf-skills → skills/perf}/references/tools/k6.md +269 -269
- package/{perf-skills → skills/perf}/references/tools/loadrunner.md +116 -116
- package/{perf-skills → skills/perf}/references/tools/locust.md +133 -133
- package/{perf-skills → skills/perf}/references/tools/neoload.md +61 -61
- package/{perf-skills → skills/perf}/references/tools/octoperf.md +50 -50
- /package/{perf-skills → skills/perf}/references/topics/database-testing.md +0 -0
- /package/{perf-skills → skills/perf}/references/topics/modern-architectures.md +0 -0
- /package/{perf-skills → skills/perf}/references/topics/observability.md +0 -0
- /package/{perf-skills → skills/perf}/references/topics/production-testing.md +0 -0
- /package/{perf-skills → skills/perf}/references/topics/protocol-testing.md +0 -0
- /package/{perf-skills → skills/perf}/references/topics/results-analysis.md +0 -0
- /package/{perf-skills → skills/perf}/references/topics/script-generation.md +0 -0
- /package/{perf-skills → skills/perf}/references/topics/test-data.md +0 -0
- /package/{perf-skills → skills/perf}/references/topics/test-execution.md +0 -0
- /package/{perf-skills → skills/perf}/references/topics/workload-design.md +0 -0
|
@@ -0,0 +1,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, NeoLoad, LoadRunner, and OctoPerf.",
|
|
9
|
+
"version": "1.0.2"
|
|
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 7 tools and 10 topic areas.",
|
|
16
|
+
"version": "1.0.2",
|
|
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
|
+
"neoload",
|
|
32
|
+
"loadrunner",
|
|
33
|
+
"octoperf",
|
|
34
|
+
"stress-testing",
|
|
35
|
+
"soak-testing",
|
|
36
|
+
"grpc",
|
|
37
|
+
"graphql",
|
|
38
|
+
"websocket",
|
|
39
|
+
"observability",
|
|
40
|
+
"ci-cd",
|
|
41
|
+
"performance-testing-best-practices",
|
|
42
|
+
"performance-testing-strategies",
|
|
43
|
+
"black-friday-performance-testing",
|
|
44
|
+
"cyber-monday-performance-testing",
|
|
45
|
+
"holiday-performance-testing",
|
|
46
|
+
"super-bowl-performance-testing"
|
|
47
|
+
],
|
|
48
|
+
"category": "testing",
|
|
49
|
+
"tags": [
|
|
50
|
+
"performance",
|
|
51
|
+
"load-testing",
|
|
52
|
+
"quality-engineering",
|
|
53
|
+
"testing",
|
|
54
|
+
"stress-testing",
|
|
55
|
+
"soak-testing",
|
|
56
|
+
"spike-testing",
|
|
57
|
+
"capacity-testing",
|
|
58
|
+
"breakpoint-testing",
|
|
59
|
+
"smoke-testing",
|
|
60
|
+
"regression-testing",
|
|
61
|
+
"performance-analysis",
|
|
62
|
+
"load-testing-tools",
|
|
63
|
+
"performance-testing-tools",
|
|
64
|
+
"load-testing-frameworks",
|
|
65
|
+
"performance-testing-frameworks",
|
|
66
|
+
"performance-testing-automation",
|
|
67
|
+
"jmeter",
|
|
68
|
+
"k6",
|
|
69
|
+
"gatling",
|
|
70
|
+
"locust",
|
|
71
|
+
"neoload",
|
|
72
|
+
"loadrunner",
|
|
73
|
+
"octoperf",
|
|
74
|
+
"performance-engineering",
|
|
75
|
+
"load-testing-automation",
|
|
76
|
+
"performance-testing-automation",
|
|
77
|
+
"performance-testing-best-practices",
|
|
78
|
+
"performance-testing-strategies"
|
|
79
|
+
]
|
|
80
|
+
}
|
|
81
|
+
]
|
|
82
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"name": "perf
|
|
2
|
+
"name": "perf",
|
|
3
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.
|
|
4
|
+
"version": "1.0.2",
|
|
5
|
+
"skills": "./skills/"
|
|
5
6
|
}
|
package/README.md
CHANGED
|
@@ -1,227 +1,238 @@
|
|
|
1
|
-
# perf-skills
|
|
2
|
-
|
|
3
|
-
> *"The more you sweat in training, the less you bleed in battle."* — Richard Marcinko
|
|
4
|
-
>
|
|
5
|
-
> The more relevant skills your AI loads during development, the fewer fires you fight in production.
|
|
6
|
-
|
|
7
|
-
## What Is This?
|
|
8
|
-
|
|
9
|
-
`perf-skills` is a structured knowledge base that gives AI coding assistants deep, opinionated expertise in performance testing. It works with any AI tool that supports custom instructions, rules, or skill files — helping you plan, script, execute, and analyze load tests using any major tool.
|
|
10
|
-
|
|
11
|
-
### Supported Tools
|
|
12
|
-
|
|
13
|
-
| Open Source | Commercial |
|
|
14
|
-
|---|---|
|
|
15
|
-
| Apache JMeter | NeoLoad (Tricentis) |
|
|
16
|
-
| k6 (Grafana Labs) | LoadRunner (OpenText) |
|
|
17
|
-
| Gatling | OctoPerf (SaaS) |
|
|
18
|
-
| Locust | |
|
|
19
|
-
|
|
20
|
-
### Topics Covered
|
|
21
|
-
|
|
22
|
-
- **Workload design** — concurrency models, Little's Law, transaction mix, SLA targets
|
|
23
|
-
- **Test data** — parameterization, CSV feeds, synthetic data, data isolation
|
|
24
|
-
- **Script generation** — correlation, assertions, error handling, session management
|
|
25
|
-
- **Test execution** — local, distributed, CI/CD pipelines, cloud execution
|
|
26
|
-
- **Results analysis** — percentiles, bottleneck identification, trend comparison, reporting
|
|
27
|
-
- **Observability** — APM integration, Prometheus/Grafana, distributed tracing, log correlation
|
|
28
|
-
- **Production testing** — canary, shadow traffic, chaos engineering, safety controls
|
|
29
|
-
- **Protocol testing** — gRPC, GraphQL, WebSocket/SSE, Kafka/message queues
|
|
30
|
-
- **Database testing** — JDBC load testing, connection pools, query concurrency, replication lag
|
|
31
|
-
- **Modern architectures** — microservices, Kubernetes (HPA, service mesh), serverless (cold starts), frontend (Core Web Vitals)
|
|
32
|
-
|
|
33
|
-
## Compatible AI Coding Assistants
|
|
34
|
-
|
|
35
|
-
| Tool | Integration Method | Setup |
|
|
36
|
-
|---|---|---|
|
|
37
|
-
| **Windsurf (Cascade)** | Skills | Copy to skills directory — auto-triggers on perf questions |
|
|
38
|
-
| **Cursor** | Rules / Docs | Add as project rules or index via `@Docs` |
|
|
39
|
-
| **Claude Code** | CLAUDE.md / Custom instructions | Reference files in `CLAUDE.md` or feed as context |
|
|
40
|
-
| **Cline** | Custom instructions / `.clinerules` | Add to `.clinerules` or workspace instructions |
|
|
41
|
-
| **Roo Code** | Custom instructions / Rules | Add as workspace rules or custom instructions |
|
|
42
|
-
| **Aider** | Conventions / Chat context | Add to `.aider.conf.yml` conventions or `/read` files |
|
|
43
|
-
| **OpenCode** | Custom instructions | Add to project-level instructions |
|
|
44
|
-
| **Antigravity** | Context files | Add as context / knowledge files |
|
|
45
|
-
| **Pochi** | Custom instructions | Reference files in project instructions |
|
|
46
|
-
| **GitHub Copilot** | Custom instructions / `.github/copilot-instructions.md` | Reference in repo-level instructions |
|
|
47
|
-
|
|
48
|
-
## Installation
|
|
49
|
-
|
|
50
|
-
### Claude Code Plugin (Recommended)
|
|
51
|
-
|
|
52
|
-
**Add the marketplace and install:**
|
|
53
|
-
```bash
|
|
54
|
-
/plugin marketplace add QAInsights/perf-skills
|
|
55
|
-
/plugin install perf
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
**Option
|
|
92
|
-
1.
|
|
93
|
-
2.
|
|
94
|
-
3.
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
###
|
|
130
|
-
|
|
131
|
-
1.
|
|
132
|
-
2.
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
1.
|
|
142
|
-
2.
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
├──
|
|
173
|
-
├──
|
|
174
|
-
├──
|
|
175
|
-
├──
|
|
176
|
-
├──
|
|
177
|
-
├──
|
|
178
|
-
├──
|
|
179
|
-
└──
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
1
|
+
# perf-skills
|
|
2
|
+
|
|
3
|
+
> *"The more you sweat in training, the less you bleed in battle."* — Richard Marcinko
|
|
4
|
+
>
|
|
5
|
+
> The more relevant skills your AI loads during development, the fewer fires you fight in production.
|
|
6
|
+
|
|
7
|
+
## What Is This?
|
|
8
|
+
|
|
9
|
+
`perf-skills` is a structured knowledge base that gives AI coding assistants deep, opinionated expertise in performance testing. It works with any AI tool that supports custom instructions, rules, or skill files — helping you plan, script, execute, and analyze load tests using any major tool.
|
|
10
|
+
|
|
11
|
+
### Supported Tools
|
|
12
|
+
|
|
13
|
+
| Open Source | Commercial |
|
|
14
|
+
|---|---|
|
|
15
|
+
| Apache JMeter | NeoLoad (Tricentis) |
|
|
16
|
+
| k6 (Grafana Labs) | LoadRunner (OpenText) |
|
|
17
|
+
| Gatling | OctoPerf (SaaS) |
|
|
18
|
+
| Locust | |
|
|
19
|
+
|
|
20
|
+
### Topics Covered
|
|
21
|
+
|
|
22
|
+
- **Workload design** — concurrency models, Little's Law, transaction mix, SLA targets
|
|
23
|
+
- **Test data** — parameterization, CSV feeds, synthetic data, data isolation
|
|
24
|
+
- **Script generation** — correlation, assertions, error handling, session management
|
|
25
|
+
- **Test execution** — local, distributed, CI/CD pipelines, cloud execution
|
|
26
|
+
- **Results analysis** — percentiles, bottleneck identification, trend comparison, reporting
|
|
27
|
+
- **Observability** — APM integration, Prometheus/Grafana, distributed tracing, log correlation
|
|
28
|
+
- **Production testing** — canary, shadow traffic, chaos engineering, safety controls
|
|
29
|
+
- **Protocol testing** — gRPC, GraphQL, WebSocket/SSE, Kafka/message queues
|
|
30
|
+
- **Database testing** — JDBC load testing, connection pools, query concurrency, replication lag
|
|
31
|
+
- **Modern architectures** — microservices, Kubernetes (HPA, service mesh), serverless (cold starts), frontend (Core Web Vitals)
|
|
32
|
+
|
|
33
|
+
## Compatible AI Coding Assistants
|
|
34
|
+
|
|
35
|
+
| Tool | Integration Method | Setup |
|
|
36
|
+
|---|---|---|
|
|
37
|
+
| **Windsurf (Cascade)** | Skills | Copy to skills directory — auto-triggers on perf questions |
|
|
38
|
+
| **Cursor** | Rules / Docs | Add as project rules or index via `@Docs` |
|
|
39
|
+
| **Claude Code** | CLAUDE.md / Custom instructions | Reference files in `CLAUDE.md` or feed as context |
|
|
40
|
+
| **Cline** | Custom instructions / `.clinerules` | Add to `.clinerules` or workspace instructions |
|
|
41
|
+
| **Roo Code** | Custom instructions / Rules | Add as workspace rules or custom instructions |
|
|
42
|
+
| **Aider** | Conventions / Chat context | Add to `.aider.conf.yml` conventions or `/read` files |
|
|
43
|
+
| **OpenCode** | Custom instructions | Add to project-level instructions |
|
|
44
|
+
| **Antigravity** | Context files | Add as context / knowledge files |
|
|
45
|
+
| **Pochi** | Custom instructions | Reference files in project instructions |
|
|
46
|
+
| **GitHub Copilot** | Custom instructions / `.github/copilot-instructions.md` | Reference in repo-level instructions |
|
|
47
|
+
|
|
48
|
+
## Installation
|
|
49
|
+
|
|
50
|
+
### Claude Code Plugin (Recommended)
|
|
51
|
+
|
|
52
|
+
**Add the marketplace and install:**
|
|
53
|
+
```bash
|
|
54
|
+
/plugin marketplace add QAInsights/perf-skills
|
|
55
|
+
/plugin install perf@qainsights
|
|
56
|
+
/reload-plugins
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
After install, the `/perf` skill is available and auto-activates on performance testing questions.
|
|
60
|
+
|
|
61
|
+
**Update to latest version:**
|
|
62
|
+
```bash
|
|
63
|
+
/plugin marketplace update
|
|
64
|
+
/plugin uninstall perf
|
|
65
|
+
/plugin install perf@qainsights
|
|
66
|
+
/reload-plugins
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### Install as Skills (npx)
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
npx skills add QAInsights/perf-skills
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Install as Skills (Manual)
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
# Clone and copy to Claude skills directory
|
|
79
|
+
git clone https://github.com/QAInsights/perf-skills.git
|
|
80
|
+
cp -r perf-skills/skills/perf ~/.claude/skills/
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### Windsurf (Skills)
|
|
84
|
+
|
|
85
|
+
1. Clone the repository: `git clone https://github.com/QAInsights/perf-skills.git`
|
|
86
|
+
2. Copy the skill directory: `cp -r perf-skills/skills/perf ~/.windsurf/skills/`
|
|
87
|
+
3. The skill auto-triggers when you ask about performance testing, load testing, or any supported tool.
|
|
88
|
+
|
|
89
|
+
### Cursor (Rules / Docs)
|
|
90
|
+
|
|
91
|
+
**Option A — Project Rules:**
|
|
92
|
+
1. Clone the repository: `git clone https://github.com/QAInsights/perf-skills.git`
|
|
93
|
+
2. Create `.cursor/rules/perf.mdc` in your project root.
|
|
94
|
+
3. Copy content from `perf-skills/skills/perf/SKILL.md` into the rule file.
|
|
95
|
+
|
|
96
|
+
**Option B — @Docs indexing:**
|
|
97
|
+
1. Clone the repository into your project or a known location.
|
|
98
|
+
2. Open Cursor Settings → Features → Docs.
|
|
99
|
+
3. Add the `perf-skills/skills/perf/` directory as a doc source.
|
|
100
|
+
4. Reference with `@Docs perf` in chat.
|
|
101
|
+
|
|
102
|
+
### Claude Code (CLAUDE.md)
|
|
103
|
+
|
|
104
|
+
1. Clone the repository: `git clone https://github.com/QAInsights/perf-skills.git`
|
|
105
|
+
2. Copy the skill directory into your project: `cp -r perf-skills/skills/perf ./perf`
|
|
106
|
+
3. In your `CLAUDE.md`, add:
|
|
107
|
+
```markdown
|
|
108
|
+
For performance testing questions, read `perf/SKILL.md` for routing,
|
|
109
|
+
then load the relevant reference file(s) from `perf/references/`.
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### Cline / Roo Code
|
|
113
|
+
|
|
114
|
+
1. Clone the repository: `git clone https://github.com/QAInsights/perf-skills.git`
|
|
115
|
+
2. Copy the skill directory into your project: `cp -r perf-skills/skills/perf ./perf`
|
|
116
|
+
3. Add to your custom instructions or `.clinerules`:
|
|
117
|
+
```
|
|
118
|
+
For performance testing guidance, consult the perf knowledge base.
|
|
119
|
+
Start with perf/SKILL.md for routing to the correct reference file.
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### Aider
|
|
123
|
+
|
|
124
|
+
1. Clone the repository: `git clone https://github.com/QAInsights/perf-skills.git`
|
|
125
|
+
2. Copy the skill directory into your project: `cp -r perf-skills/skills/perf ./perf`
|
|
126
|
+
3. Use `/read perf/SKILL.md` to load the routing file.
|
|
127
|
+
4. Then `/read` the specific reference file(s) relevant to your question.
|
|
128
|
+
|
|
129
|
+
### GitHub Copilot
|
|
130
|
+
|
|
131
|
+
1. Clone the repository: `git clone https://github.com/QAInsights/perf-skills.git`
|
|
132
|
+
2. Copy the skill directory into your project: `cp -r perf-skills/skills/perf ./perf`
|
|
133
|
+
3. In `.github/copilot-instructions.md`, add:
|
|
134
|
+
```markdown
|
|
135
|
+
For performance testing questions, reference the perf knowledge base.
|
|
136
|
+
Start with perf/SKILL.md, then load relevant files from perf/references/.
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
### OpenCode / Antigravity / Pochi
|
|
140
|
+
|
|
141
|
+
1. Clone the repository: `git clone https://github.com/QAInsights/perf-skills.git`
|
|
142
|
+
2. Copy the skill directory into your project: `cp -r perf-skills/skills/perf ./perf`
|
|
143
|
+
3. Add to your project-level custom instructions or context files:
|
|
144
|
+
```
|
|
145
|
+
For performance testing guidance, consult the perf knowledge base.
|
|
146
|
+
Start with perf/SKILL.md for routing to the correct reference file.
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
### Any Other AI Tool
|
|
150
|
+
|
|
151
|
+
The skill is plain markdown files. Any AI tool that can read files or accept custom instructions can use it:
|
|
152
|
+
1. Point the tool to `SKILL.md` as the entry point.
|
|
153
|
+
2. Let the Reference Map in `SKILL.md` guide which file(s) to load.
|
|
154
|
+
|
|
155
|
+
### As a Standalone Knowledge Base
|
|
156
|
+
|
|
157
|
+
Browse the markdown files directly — they're self-contained references useful even without an AI assistant.
|
|
158
|
+
|
|
159
|
+
## File Structure
|
|
160
|
+
|
|
161
|
+
```
|
|
162
|
+
perf-skills/ # Repository root
|
|
163
|
+
├── .claude-plugin/
|
|
164
|
+
│ ├── marketplace.json # Claude Code marketplace catalog
|
|
165
|
+
│ └── plugin.json # Claude Code plugin manifest
|
|
166
|
+
├── README.md
|
|
167
|
+
├── LICENSE.md
|
|
168
|
+
└── skills/
|
|
169
|
+
└── perf/ # Skill module
|
|
170
|
+
├── SKILL.md # Entry point — tool selection, lifecycle, key principles
|
|
171
|
+
└── references/
|
|
172
|
+
├── tools/ # Tool-specific syntax and configuration
|
|
173
|
+
│ ├── jmeter.md # JMeter 5.6+ — samplers, extractors, plugins, Groovy
|
|
174
|
+
│ ├── k6.md # k6 v0.50+ — executors, checks, thresholds, modules
|
|
175
|
+
│ ├── gatling.md # Gatling 3.10+ — Scala/Java DSL, feeders, injection
|
|
176
|
+
│ ├── locust.md # Locust 2.20+ — Python scripts, events, FastHttpUser
|
|
177
|
+
│ ├── neoload.md # NeoLoad — GUI workflow, CLI, API execution
|
|
178
|
+
│ ├── loadrunner.md # LoadRunner — VuGen, protocols, Controller scenarios
|
|
179
|
+
│ └── octoperf.md # OctoPerf — JMeter-based SaaS, HAR import, cloud
|
|
180
|
+
└── topics/ # Cross-cutting concepts (tool-agnostic)
|
|
181
|
+
├── workload-design.md # Concurrency models, load profiles, Little's Law
|
|
182
|
+
├── test-data.md # CSV, DB seeding, Faker, data isolation patterns
|
|
183
|
+
├── script-generation.md # Correlation, assertions, error handling, naming
|
|
184
|
+
├── test-execution.md # Distributed, CI/CD (GitHub Actions, GitLab, Jenkins)
|
|
185
|
+
├── results-analysis.md # Percentiles, bottleneck framework, reporting
|
|
186
|
+
├── observability.md # APM, Prometheus, Grafana, tracing, JVM metrics
|
|
187
|
+
├── production-testing.md # Canary, shadow traffic, chaos, safety controls
|
|
188
|
+
├── protocol-testing.md # gRPC, GraphQL, WebSocket, Kafka/message queues
|
|
189
|
+
├── database-testing.md # JDBC, connection pools, slow queries, deadlocks
|
|
190
|
+
└── modern-architectures.md # Microservices, K8s, serverless, browser/Web Vitals
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
## How the Skill Works
|
|
194
|
+
|
|
195
|
+
### Routing Logic
|
|
196
|
+
|
|
197
|
+
`SKILL.md` acts as the entry point and router. It contains:
|
|
198
|
+
|
|
199
|
+
1. **Loading Priority Rules** — tells the AI which file(s) to load based on the user's question (never all at once).
|
|
200
|
+
2. **Reference Map** — maps user intent to the right file.
|
|
201
|
+
3. **Protocol Routing Table** — maps protocols (gRPC, GraphQL, etc.) to recommended tools and reference files.
|
|
202
|
+
4. **Tool Selection Matrix** — helps recommend a tool when the user hasn't chosen one.
|
|
203
|
+
5. **Key Principles** — the single source of truth for cross-cutting best practices (assertions, think time, parameterization, correlation).
|
|
204
|
+
|
|
205
|
+
### Design Principles
|
|
206
|
+
|
|
207
|
+
- **Token-efficient**: Tool files contain only tool-specific syntax. Cross-cutting concepts live in topic files. No duplication.
|
|
208
|
+
- **Selective loading**: The AI loads 1–2 files per question, not the entire knowledge base.
|
|
209
|
+
- **Single source of truth**: Each concept is defined in exactly one place. Tool files cross-reference topic files for shared concepts.
|
|
210
|
+
- **Opinionated**: The skill prescribes best practices, not just documentation. It tells you what to do, not just what's possible.
|
|
211
|
+
|
|
212
|
+
## Example Questions This Skill Handles
|
|
213
|
+
|
|
214
|
+
| Question | Files Loaded |
|
|
215
|
+
|---|---|
|
|
216
|
+
| "Help me write a k6 load test for our REST API" | `k6.md` |
|
|
217
|
+
| "How should I design the workload for our e-commerce app?" | `workload-design.md` |
|
|
218
|
+
| "Set up JMeter in our GitHub Actions pipeline" | `test-execution.md` + `jmeter.md` |
|
|
219
|
+
| "Our p95 latency is spiking at 500 VUs — how do I debug?" | `results-analysis.md` + `observability.md` |
|
|
220
|
+
| "How do I load test a gRPC service?" | `protocol-testing.md` + `k6.md` |
|
|
221
|
+
| "What tool should I use? We're a Python team." | `SKILL.md` (Tool Selection Matrix) |
|
|
222
|
+
| "Test our Kafka consumer throughput" | `protocol-testing.md` |
|
|
223
|
+
| "Validate our K8s HPA scales correctly under load" | `modern-architectures.md` |
|
|
224
|
+
| "Load test our PostgreSQL connection pool" | `database-testing.md` + `jmeter.md` |
|
|
225
|
+
|
|
226
|
+
## Contributing
|
|
227
|
+
|
|
228
|
+
To add or update content:
|
|
229
|
+
|
|
230
|
+
1. **Tool-specific content** goes in `references/tools/<tool>.md` — syntax, config, tool-unique tips only.
|
|
231
|
+
2. **Cross-cutting concepts** go in `references/topics/<topic>.md` — patterns that apply across tools.
|
|
232
|
+
3. **Never duplicate** — if a concept exists in a topic file, tool files should cross-reference it, not restate it.
|
|
233
|
+
4. **Update SKILL.md** if you add a new file — add it to the Reference Map and Protocol Routing Table if applicable.
|
|
234
|
+
5. **Add a version indicator** (`> Targets: ...`) to new tool files.
|
|
235
|
+
|
|
236
|
+
## License
|
|
237
|
+
|
|
238
|
+
See repository license.
|
package/package.json
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "perf-skills",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "Expert AI skill for performance testing — covers JMeter, k6, Gatling, Locust, NeoLoad, LoadRunner, OctoPerf across the full lifecycle",
|
|
5
|
-
"main": "
|
|
5
|
+
"main": "skills/perf/SKILL.md",
|
|
6
6
|
"files": [
|
|
7
|
-
"
|
|
7
|
+
"skills/",
|
|
8
|
+
".claude-plugin/"
|
|
8
9
|
],
|
|
9
10
|
"keywords": [
|
|
10
11
|
"performance-testing",
|
|
@@ -32,7 +33,7 @@
|
|
|
32
33
|
},
|
|
33
34
|
"author": {
|
|
34
35
|
"name": "NaveenKumar Namachivayam",
|
|
35
|
-
"email": "
|
|
36
|
+
"email": "contact@qainsights.com"
|
|
36
37
|
},
|
|
37
38
|
"license": "MIT",
|
|
38
39
|
"homepage": "https://github.com/QAInsights/perf-skills#readme",
|
|
@@ -1,14 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: perf
|
|
3
|
-
description:
|
|
4
|
-
Expert guidance for performance testing: planning, scripting, executing, and analyzing
|
|
5
|
-
load/stress/soak/spike tests using JMeter, k6, Gatling, Locust, NeoLoad, LoadRunner,
|
|
6
|
-
OctoPerf. Covers workload design, test data, correlation, CI/CD integration,
|
|
7
|
-
distributed testing, observability, production testing, and protocol-specific guidance
|
|
8
|
-
for HTTP, gRPC, GraphQL, WebSocket, JDBC, and message queues.
|
|
2
|
+
name: perf
|
|
3
|
+
description: Use when load testing with JMeter, k6, Gatling, Locust, NeoLoad, LoadRunner, or OctoPerf.
|
|
9
4
|
---
|
|
10
5
|
|
|
11
|
-
# Performance Testing Skill
|
|
6
|
+
# Performance Testing Skill
|
|
12
7
|
|
|
13
8
|
This skill provides expert, opinionated guidance across the full performance testing lifecycle — from workload design through production observation. It covers both commercial tools (LoadRunner, NeoLoad, OctoPerf) and open-source tools (JMeter, k6, Gatling, Locust).
|
|
14
9
|
|
|
@@ -59,7 +54,7 @@ When the user's question is protocol-specific, use this to select the right tool
|
|
|
59
54
|
| gRPC | k6, Gatling, JMeter (plugin) | `references/topics/protocol-testing.md` + tool file |
|
|
60
55
|
| GraphQL | k6, Gatling | `references/topics/protocol-testing.md` + tool file |
|
|
61
56
|
| WebSocket / SSE | Gatling, k6 | `references/topics/protocol-testing.md` + tool file |
|
|
62
|
-
| JDBC / Database | JMeter | `references/topics/database-testing.md` + `jmeter.md` |
|
|
57
|
+
| JDBC / Database | JMeter | `references/topics/database-testing.md` + `references/tools/jmeter.md` |
|
|
63
58
|
| Kafka / Message Queues | k6 (xk6-kafka), JMeter | `references/topics/protocol-testing.md` |
|
|
64
59
|
| SOAP / WSDL | LoadRunner, JMeter | Tool file |
|
|
65
60
|
| SAP / Citrix | LoadRunner, NeoLoad | Tool file |
|