perf-skills 1.0.2 → 1.0.3
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 +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/README.md +35 -35
- package/package.json +1 -1
|
@@ -6,14 +6,14 @@
|
|
|
6
6
|
},
|
|
7
7
|
"metadata": {
|
|
8
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.
|
|
9
|
+
"version": "1.0.3"
|
|
10
10
|
},
|
|
11
11
|
"plugins": [
|
|
12
12
|
{
|
|
13
13
|
"name": "perf",
|
|
14
14
|
"source": "./",
|
|
15
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.
|
|
16
|
+
"version": "1.0.3",
|
|
17
17
|
"author": {
|
|
18
18
|
"name": "NaveenKumar Namachivayam",
|
|
19
19
|
"email": "contact@qainsights.com"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
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.3",
|
|
5
5
|
"skills": "./skills/"
|
|
6
6
|
}
|
package/README.md
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# perf-skills
|
|
2
2
|
|
|
3
|
-
> *"The more you sweat in training, the less you bleed in battle."*
|
|
3
|
+
> *"The more you sweat in training, the less you bleed in battle."* - Richard Marcinko
|
|
4
4
|
>
|
|
5
5
|
> The more relevant skills your AI loads during development, the fewer fires you fight in production.
|
|
6
6
|
|
|
7
7
|
## What Is This?
|
|
8
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
|
|
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
10
|
|
|
11
11
|
### Supported Tools
|
|
12
12
|
|
|
@@ -19,22 +19,22 @@
|
|
|
19
19
|
|
|
20
20
|
### Topics Covered
|
|
21
21
|
|
|
22
|
-
- **Workload design**
|
|
23
|
-
- **Test data**
|
|
24
|
-
- **Script generation**
|
|
25
|
-
- **Test execution**
|
|
26
|
-
- **Results analysis**
|
|
27
|
-
- **Observability**
|
|
28
|
-
- **Production testing**
|
|
29
|
-
- **Protocol testing**
|
|
30
|
-
- **Database testing**
|
|
31
|
-
- **Modern architectures**
|
|
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
32
|
|
|
33
33
|
## Compatible AI Coding Assistants
|
|
34
34
|
|
|
35
35
|
| Tool | Integration Method | Setup |
|
|
36
36
|
|---|---|---|
|
|
37
|
-
| **Windsurf (Cascade)** | Skills | Copy to skills directory
|
|
37
|
+
| **Windsurf (Cascade)** | Skills | Copy to skills directory - auto-triggers on perf questions |
|
|
38
38
|
| **Cursor** | Rules / Docs | Add as project rules or index via `@Docs` |
|
|
39
39
|
| **Claude Code** | CLAUDE.md / Custom instructions | Reference files in `CLAUDE.md` or feed as context |
|
|
40
40
|
| **Cline** | Custom instructions / `.clinerules` | Add to `.clinerules` or workspace instructions |
|
|
@@ -88,12 +88,12 @@ cp -r perf-skills/skills/perf ~/.claude/skills/
|
|
|
88
88
|
|
|
89
89
|
### Cursor (Rules / Docs)
|
|
90
90
|
|
|
91
|
-
**Option A
|
|
91
|
+
**Option A - Project Rules:**
|
|
92
92
|
1. Clone the repository: `git clone https://github.com/QAInsights/perf-skills.git`
|
|
93
93
|
2. Create `.cursor/rules/perf.mdc` in your project root.
|
|
94
94
|
3. Copy content from `perf-skills/skills/perf/SKILL.md` into the rule file.
|
|
95
95
|
|
|
96
|
-
**Option B
|
|
96
|
+
**Option B - @Docs indexing:**
|
|
97
97
|
1. Clone the repository into your project or a known location.
|
|
98
98
|
2. Open Cursor Settings → Features → Docs.
|
|
99
99
|
3. Add the `perf-skills/skills/perf/` directory as a doc source.
|
|
@@ -154,7 +154,7 @@ The skill is plain markdown files. Any AI tool that can read files or accept cus
|
|
|
154
154
|
|
|
155
155
|
### As a Standalone Knowledge Base
|
|
156
156
|
|
|
157
|
-
Browse the markdown files directly
|
|
157
|
+
Browse the markdown files directly - they're self-contained references useful even without an AI assistant.
|
|
158
158
|
|
|
159
159
|
## File Structure
|
|
160
160
|
|
|
@@ -167,16 +167,16 @@ perf-skills/ # Repository root
|
|
|
167
167
|
├── LICENSE.md
|
|
168
168
|
└── skills/
|
|
169
169
|
└── perf/ # Skill module
|
|
170
|
-
├── SKILL.md # Entry point
|
|
170
|
+
├── SKILL.md # Entry point - tool selection, lifecycle, key principles
|
|
171
171
|
└── references/
|
|
172
172
|
├── tools/ # Tool-specific syntax and configuration
|
|
173
|
-
│ ├── jmeter.md # JMeter 5.6+
|
|
174
|
-
│ ├── k6.md # k6 v0.50+
|
|
175
|
-
│ ├── gatling.md # Gatling 3.10+
|
|
176
|
-
│ ├── locust.md # Locust 2.20+
|
|
177
|
-
│ ├── neoload.md # NeoLoad
|
|
178
|
-
│ ├── loadrunner.md # LoadRunner
|
|
179
|
-
│ └── octoperf.md # OctoPerf
|
|
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
180
|
└── topics/ # Cross-cutting concepts (tool-agnostic)
|
|
181
181
|
├── workload-design.md # Concurrency models, load profiles, Little's Law
|
|
182
182
|
├── test-data.md # CSV, DB seeding, Faker, data isolation patterns
|
|
@@ -196,16 +196,16 @@ perf-skills/ # Repository root
|
|
|
196
196
|
|
|
197
197
|
`SKILL.md` acts as the entry point and router. It contains:
|
|
198
198
|
|
|
199
|
-
1. **Loading Priority Rules**
|
|
200
|
-
2. **Reference Map**
|
|
201
|
-
3. **Protocol Routing Table**
|
|
202
|
-
4. **Tool Selection Matrix**
|
|
203
|
-
5. **Key Principles**
|
|
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
204
|
|
|
205
205
|
### Design Principles
|
|
206
206
|
|
|
207
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
|
|
208
|
+
- **Selective loading**: The AI loads 1-2 files per question, not the entire knowledge base.
|
|
209
209
|
- **Single source of truth**: Each concept is defined in exactly one place. Tool files cross-reference topic files for shared concepts.
|
|
210
210
|
- **Opinionated**: The skill prescribes best practices, not just documentation. It tells you what to do, not just what's possible.
|
|
211
211
|
|
|
@@ -216,7 +216,7 @@ perf-skills/ # Repository root
|
|
|
216
216
|
| "Help me write a k6 load test for our REST API" | `k6.md` |
|
|
217
217
|
| "How should I design the workload for our e-commerce app?" | `workload-design.md` |
|
|
218
218
|
| "Set up JMeter in our GitHub Actions pipeline" | `test-execution.md` + `jmeter.md` |
|
|
219
|
-
| "Our p95 latency is spiking at 500 VUs
|
|
219
|
+
| "Our p95 latency is spiking at 500 VUs - how do I debug?" | `results-analysis.md` + `observability.md` |
|
|
220
220
|
| "How do I load test a gRPC service?" | `protocol-testing.md` + `k6.md` |
|
|
221
221
|
| "What tool should I use? We're a Python team." | `SKILL.md` (Tool Selection Matrix) |
|
|
222
222
|
| "Test our Kafka consumer throughput" | `protocol-testing.md` |
|
|
@@ -227,10 +227,10 @@ perf-skills/ # Repository root
|
|
|
227
227
|
|
|
228
228
|
To add or update content:
|
|
229
229
|
|
|
230
|
-
1. **Tool-specific content** goes in `references/tools/<tool>.md`
|
|
231
|
-
2. **Cross-cutting concepts** go in `references/topics/<topic>.md`
|
|
232
|
-
3. **Never duplicate**
|
|
233
|
-
4. **Update SKILL.md** if you add a new file
|
|
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
234
|
5. **Add a version indicator** (`> Targets: ...`) to new tool files.
|
|
235
235
|
|
|
236
236
|
## License
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "perf-skills",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3",
|
|
4
4
|
"description": "Expert AI skill for performance testing — covers JMeter, k6, Gatling, Locust, NeoLoad, LoadRunner, OctoPerf across the full lifecycle",
|
|
5
5
|
"main": "skills/perf/SKILL.md",
|
|
6
6
|
"files": [
|