agent-skill-manager 2.0.0 → 2.2.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.
Files changed (34) hide show
  1. package/README.md +2 -2
  2. package/data/skill-index/Affitor_affiliate-skills.json +2813 -50
  3. package/data/skill-index/Eronred_aso-skills.json +1561 -31
  4. package/data/skill-index/GPTomics_bioSkills.json +22988 -443
  5. package/data/skill-index/Galaxy-Dawn_claude-scholar.json +2509 -49
  6. package/data/skill-index/Imbad0202_academic-research-skills.json +223 -19
  7. package/data/skill-index/K-Dense-AI_claude-scientific-skills.json +7015 -697
  8. package/data/skill-index/Leonxlnx_taste-skill.json +429 -9
  9. package/data/skill-index/Master-cai_Research-Paper-Writing-Skills.json +53 -2
  10. package/data/skill-index/MiniMax-AI_skills.json +1291 -22
  11. package/data/skill-index/affaan-m_everything-claude-code.json +27501 -780
  12. package/data/skill-index/alirezarezvani_claude-skills.json +27045 -453
  13. package/data/skill-index/anthropics_skills.json +938 -20
  14. package/data/skill-index/bytedance_deer-flow.json +1201 -19
  15. package/data/skill-index/coreyhaines31_marketingskills.json +1913 -41
  16. package/data/skill-index/github_awesome-copilot.json +25089 -354
  17. package/data/skill-index/heygen-com_hyperframes.json +324 -0
  18. package/data/skill-index/himself65_finance-skills.json +1254 -27
  19. package/data/skill-index/kemiljk_fluid-design.json +53 -2
  20. package/data/skill-index/kepano_obsidian-skills.json +262 -7
  21. package/data/skill-index/luongnv89_skills.json +1917 -69
  22. package/data/skill-index/mattpocock_skills.json +1157 -50
  23. package/data/skill-index/nextlevelbuilder_ui-ux-pro-max-skill.json +365 -8
  24. package/data/skill-index/obra_superpowers.json +729 -15
  25. package/data/skill-index/sickn33_antigravity-awesome-skills.json +270593 -6809
  26. package/data/skill-index/slavingia_skills.json +521 -11
  27. package/data/skill-index-resources.json +10 -1
  28. package/dist/agent-skill-manager.js +161 -161
  29. package/dist/chunk-796ss41d.js +15 -0
  30. package/dist/{chunk-1becp2v6.js → chunk-d61nf7gg.js} +1 -1
  31. package/dist/{chunk-a26gjzjk.js → chunk-vgzgtfy6.js} +1 -1
  32. package/dist/{chunk-2kpv20e1.js → chunk-y89teqgt.js} +43 -42
  33. package/package.json +1 -1
  34. package/dist/chunk-b5czdh0p.js +0 -15
@@ -2,8 +2,8 @@
2
2
  "repoUrl": "https://github.com/luongnv89/skills.git",
3
3
  "owner": "luongnv89",
4
4
  "repo": "skills",
5
- "updatedAt": "2026-03-27T23:21:28.162Z",
6
- "skillCount": 35,
5
+ "updatedAt": "2026-04-20T07:44:43.988Z",
6
+ "skillCount": 36,
7
7
  "skills": [
8
8
  {
9
9
  "name": "agent-config",
@@ -15,11 +15,62 @@
15
15
  "allowedTools": [],
16
16
  "installUrl": "github:luongnv89/skills:skills/agent-config",
17
17
  "relPath": "skills/agent-config",
18
- "verified": true
18
+ "verified": true,
19
+ "tokenCount": 3157,
20
+ "evalSummary": {
21
+ "overallScore": 89,
22
+ "grade": "B",
23
+ "categories": [
24
+ {
25
+ "id": "structure",
26
+ "name": "Structure & completeness",
27
+ "score": 10,
28
+ "max": 10
29
+ },
30
+ {
31
+ "id": "description",
32
+ "name": "Description quality",
33
+ "score": 10,
34
+ "max": 10
35
+ },
36
+ {
37
+ "id": "prompt-engineering",
38
+ "name": "Prompt engineering",
39
+ "score": 10,
40
+ "max": 10
41
+ },
42
+ {
43
+ "id": "context-efficiency",
44
+ "name": "Context efficiency",
45
+ "score": 8,
46
+ "max": 10
47
+ },
48
+ {
49
+ "id": "safety",
50
+ "name": "Safety & guardrails",
51
+ "score": 7,
52
+ "max": 10
53
+ },
54
+ {
55
+ "id": "testability",
56
+ "name": "Testability",
57
+ "score": 7,
58
+ "max": 10
59
+ },
60
+ {
61
+ "id": "naming",
62
+ "name": "Naming & conventions",
63
+ "score": 10,
64
+ "max": 10
65
+ }
66
+ ],
67
+ "evaluatedAt": "2026-04-20T07:44:43.929Z",
68
+ "evaluatedVersion": "1.1.1"
69
+ }
19
70
  },
20
71
  {
21
72
  "name": "appstore-review-checker",
22
- "description": "Pre-submission audit of iOS/macOS apps against 150+ Apple App Store Review Guidelines. Analyzes source code, project config, metadata, and screenshots to catch rejection risks before you submit. Provides per-guideline verdicts (PASS/FAIL/WARNING/N/A) with specific fix suggestions. Use this skill whenever someone wants to check if their app will pass App Store review, asks about App Store rejection risks, says \"will Apple approve this\", \"check my app for review\", \"pre-submission audit\", \"App Store compliance check\", \"why might my app get rejected\", \"review guidelines check\", or mentions preparing an app for App Store submission — even if they don't say \"review guidelines\" explicitly. Also trigger when someone is debugging a rejection and wants to know what else might fail.",
73
+ "description": "Audit iOS/macOS app projects against Apple App Store Review Guidelines to catch rejection risks before submission, with per-guideline PASS/FAIL/WARNING verdicts and fix suggestions.",
23
74
  "version": "1.1.1",
24
75
  "license": "",
25
76
  "creator": "",
@@ -27,11 +78,62 @@
27
78
  "allowedTools": [],
28
79
  "installUrl": "github:luongnv89/skills:skills/appstore-review-checker",
29
80
  "relPath": "skills/appstore-review-checker",
30
- "verified": true
81
+ "verified": true,
82
+ "tokenCount": 4956,
83
+ "evalSummary": {
84
+ "overallScore": 91,
85
+ "grade": "A",
86
+ "categories": [
87
+ {
88
+ "id": "structure",
89
+ "name": "Structure & completeness",
90
+ "score": 8,
91
+ "max": 10
92
+ },
93
+ {
94
+ "id": "description",
95
+ "name": "Description quality",
96
+ "score": 10,
97
+ "max": 10
98
+ },
99
+ {
100
+ "id": "prompt-engineering",
101
+ "name": "Prompt engineering",
102
+ "score": 9,
103
+ "max": 10
104
+ },
105
+ {
106
+ "id": "context-efficiency",
107
+ "name": "Context efficiency",
108
+ "score": 7,
109
+ "max": 10
110
+ },
111
+ {
112
+ "id": "safety",
113
+ "name": "Safety & guardrails",
114
+ "score": 10,
115
+ "max": 10
116
+ },
117
+ {
118
+ "id": "testability",
119
+ "name": "Testability",
120
+ "score": 10,
121
+ "max": 10
122
+ },
123
+ {
124
+ "id": "naming",
125
+ "name": "Naming & conventions",
126
+ "score": 10,
127
+ "max": 10
128
+ }
129
+ ],
130
+ "evaluatedAt": "2026-04-20T07:44:43.930Z",
131
+ "evaluatedVersion": "1.1.1"
132
+ }
31
133
  },
32
134
  {
33
135
  "name": "aso-marketing",
34
- "description": "Full-lifecycle App Store Optimization (ASO) for mobile apps keyword strategy, metadata optimization, visual assets, localization, conversion improvement, and store policy compliance for both Apple App Store and Google Play. Use when asked to \"optimize my app store listing\", \"ASO plan\", \"improve app visibility\", \"increase app downloads\", \"keyword strategy\", \"store listing optimization\", \"check listing compliance\", or any request about making a mobile app more discoverable. Also trigger when user mentions app store rankings, screenshot optimization, or app metadata — even without saying \"ASO\".",
136
+ "description": "Optimize App Store and Google Play listings with keyword strategy, metadata, and localization. Use when asked to improve app store visibility, ASO, or app discoverability.",
35
137
  "version": "1.1.1",
36
138
  "license": "MIT",
37
139
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -39,11 +141,62 @@
39
141
  "allowedTools": [],
40
142
  "installUrl": "github:luongnv89/skills:skills/aso-marketing",
41
143
  "relPath": "skills/aso-marketing",
42
- "verified": true
144
+ "verified": true,
145
+ "tokenCount": 9263,
146
+ "evalSummary": {
147
+ "overallScore": 86,
148
+ "grade": "B",
149
+ "categories": [
150
+ {
151
+ "id": "structure",
152
+ "name": "Structure & completeness",
153
+ "score": 10,
154
+ "max": 10
155
+ },
156
+ {
157
+ "id": "description",
158
+ "name": "Description quality",
159
+ "score": 10,
160
+ "max": 10
161
+ },
162
+ {
163
+ "id": "prompt-engineering",
164
+ "name": "Prompt engineering",
165
+ "score": 9,
166
+ "max": 10
167
+ },
168
+ {
169
+ "id": "context-efficiency",
170
+ "name": "Context efficiency",
171
+ "score": 4,
172
+ "max": 10
173
+ },
174
+ {
175
+ "id": "safety",
176
+ "name": "Safety & guardrails",
177
+ "score": 7,
178
+ "max": 10
179
+ },
180
+ {
181
+ "id": "testability",
182
+ "name": "Testability",
183
+ "score": 10,
184
+ "max": 10
185
+ },
186
+ {
187
+ "id": "naming",
188
+ "name": "Naming & conventions",
189
+ "score": 10,
190
+ "max": 10
191
+ }
192
+ ],
193
+ "evaluatedAt": "2026-04-20T07:44:43.933Z",
194
+ "evaluatedVersion": "1.1.1"
195
+ }
43
196
  },
44
197
  {
45
198
  "name": "auto-push",
46
- "description": "Stage all changes, create commit, and push to remote. Use when asked to \"push everything\", \"commit and push all\", \"push all my changes\", or for bulk operations. Includes safety checks for secrets, API keys, and large files. Execute immediately after safety checks (no extra confirmation step). Use with caution.",
199
+ "description": "Stage all changes, commit with a generated message, and push to remote with safety checks for secrets, large files, and protected branches. Executes immediately after checks pass; no extra confirmation needed.",
47
200
  "version": "1.0.1",
48
201
  "license": "MIT",
49
202
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -51,19 +204,121 @@
51
204
  "allowedTools": [],
52
205
  "installUrl": "github:luongnv89/skills:skills/auto-push",
53
206
  "relPath": "skills/auto-push",
54
- "verified": true
207
+ "verified": true,
208
+ "tokenCount": 1936,
209
+ "evalSummary": {
210
+ "overallScore": 89,
211
+ "grade": "B",
212
+ "categories": [
213
+ {
214
+ "id": "structure",
215
+ "name": "Structure & completeness",
216
+ "score": 10,
217
+ "max": 10
218
+ },
219
+ {
220
+ "id": "description",
221
+ "name": "Description quality",
222
+ "score": 7,
223
+ "max": 10
224
+ },
225
+ {
226
+ "id": "prompt-engineering",
227
+ "name": "Prompt engineering",
228
+ "score": 8,
229
+ "max": 10
230
+ },
231
+ {
232
+ "id": "context-efficiency",
233
+ "name": "Context efficiency",
234
+ "score": 7,
235
+ "max": 10
236
+ },
237
+ {
238
+ "id": "safety",
239
+ "name": "Safety & guardrails",
240
+ "score": 10,
241
+ "max": 10
242
+ },
243
+ {
244
+ "id": "testability",
245
+ "name": "Testability",
246
+ "score": 10,
247
+ "max": 10
248
+ },
249
+ {
250
+ "id": "naming",
251
+ "name": "Naming & conventions",
252
+ "score": 10,
253
+ "max": 10
254
+ }
255
+ ],
256
+ "evaluatedAt": "2026-04-20T07:44:43.934Z",
257
+ "evaluatedVersion": "1.0.1"
258
+ }
55
259
  },
56
260
  {
57
261
  "name": "cli-builder",
58
- "description": "Guide users through building a CLI tool for any module or application. Use when users ask to \"build a CLI\", \"create a command-line tool\", \"add CLI interface\", \"make this scriptable\", \"wrap this in a CLI\", \"add a terminal interface\", or mention specific CLI frameworks like argparse, click, typer, commander, yargs, cobra, clap, picocli, or thor. Follows a strict 5-step approval-gated workflow: Analyze -> Design -> Plan -> Execute -> Summarize. Language-agnostic — auto-detects the project's language and recommends appropriate CLI libraries.",
59
- "version": "1.0.1",
262
+ "description": "Build a production-quality CLI tool for any module or application. Auto-detects language, recommends CLI libraries, and follows a 5-step approval-gated workflow: Analyze, Design, Plan, Execute, Summarize.",
263
+ "version": "1.0.2",
60
264
  "license": "MIT",
61
265
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
62
266
  "compatibility": "",
63
267
  "allowedTools": [],
64
268
  "installUrl": "github:luongnv89/skills:skills/cli-builder",
65
269
  "relPath": "skills/cli-builder",
66
- "verified": true
270
+ "verified": true,
271
+ "tokenCount": 3049,
272
+ "evalSummary": {
273
+ "overallScore": 97,
274
+ "grade": "A",
275
+ "categories": [
276
+ {
277
+ "id": "structure",
278
+ "name": "Structure & completeness",
279
+ "score": 10,
280
+ "max": 10
281
+ },
282
+ {
283
+ "id": "description",
284
+ "name": "Description quality",
285
+ "score": 10,
286
+ "max": 10
287
+ },
288
+ {
289
+ "id": "prompt-engineering",
290
+ "name": "Prompt engineering",
291
+ "score": 10,
292
+ "max": 10
293
+ },
294
+ {
295
+ "id": "context-efficiency",
296
+ "name": "Context efficiency",
297
+ "score": 9,
298
+ "max": 10
299
+ },
300
+ {
301
+ "id": "safety",
302
+ "name": "Safety & guardrails",
303
+ "score": 9,
304
+ "max": 10
305
+ },
306
+ {
307
+ "id": "testability",
308
+ "name": "Testability",
309
+ "score": 10,
310
+ "max": 10
311
+ },
312
+ {
313
+ "id": "naming",
314
+ "name": "Naming & conventions",
315
+ "score": 10,
316
+ "max": 10
317
+ }
318
+ ],
319
+ "evaluatedAt": "2026-04-20T07:44:43.934Z",
320
+ "evaluatedVersion": "1.0.2"
321
+ }
67
322
  },
68
323
  {
69
324
  "name": "code-optimizer",
@@ -75,23 +330,125 @@
75
330
  "allowedTools": [],
76
331
  "installUrl": "github:luongnv89/skills:skills/code-optimizer",
77
332
  "relPath": "skills/code-optimizer",
78
- "verified": true
333
+ "verified": true,
334
+ "tokenCount": 1691,
335
+ "evalSummary": {
336
+ "overallScore": 87,
337
+ "grade": "B",
338
+ "categories": [
339
+ {
340
+ "id": "structure",
341
+ "name": "Structure & completeness",
342
+ "score": 10,
343
+ "max": 10
344
+ },
345
+ {
346
+ "id": "description",
347
+ "name": "Description quality",
348
+ "score": 10,
349
+ "max": 10
350
+ },
351
+ {
352
+ "id": "prompt-engineering",
353
+ "name": "Prompt engineering",
354
+ "score": 8,
355
+ "max": 10
356
+ },
357
+ {
358
+ "id": "context-efficiency",
359
+ "name": "Context efficiency",
360
+ "score": 9,
361
+ "max": 10
362
+ },
363
+ {
364
+ "id": "safety",
365
+ "name": "Safety & guardrails",
366
+ "score": 9,
367
+ "max": 10
368
+ },
369
+ {
370
+ "id": "testability",
371
+ "name": "Testability",
372
+ "score": 5,
373
+ "max": 10
374
+ },
375
+ {
376
+ "id": "naming",
377
+ "name": "Naming & conventions",
378
+ "score": 10,
379
+ "max": 10
380
+ }
381
+ ],
382
+ "evaluatedAt": "2026-04-20T07:44:43.935Z",
383
+ "evaluatedVersion": "1.2.1"
384
+ }
79
385
  },
80
386
  {
81
387
  "name": "code-review",
82
- "description": "Perform code reviews following best practices from Code Smells and The Pragmatic Programmer. Use when asked to \"review this code\", \"check for code smells\", \"review my PR\", \"audit the codebase\", or need quality feedback on code changes. Supports both full codebase audits and focused PR/diff reviews. Outputs structured markdown reports grouped by severity.",
83
- "version": "1.1.1",
388
+ "description": "Review code changes for bugs, security vulnerabilities, and code quality issues producing prioritized findings with specific fix suggestions.",
389
+ "version": "1.1.2",
84
390
  "license": "MIT",
85
391
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
86
392
  "compatibility": "",
87
393
  "allowedTools": [],
88
394
  "installUrl": "github:luongnv89/skills:skills/code-review",
89
395
  "relPath": "skills/code-review",
90
- "verified": true
396
+ "verified": false,
397
+ "tokenCount": 3844,
398
+ "evalSummary": {
399
+ "overallScore": 91,
400
+ "grade": "A",
401
+ "categories": [
402
+ {
403
+ "id": "structure",
404
+ "name": "Structure & completeness",
405
+ "score": 10,
406
+ "max": 10
407
+ },
408
+ {
409
+ "id": "description",
410
+ "name": "Description quality",
411
+ "score": 10,
412
+ "max": 10
413
+ },
414
+ {
415
+ "id": "prompt-engineering",
416
+ "name": "Prompt engineering",
417
+ "score": 7,
418
+ "max": 10
419
+ },
420
+ {
421
+ "id": "context-efficiency",
422
+ "name": "Context efficiency",
423
+ "score": 8,
424
+ "max": 10
425
+ },
426
+ {
427
+ "id": "safety",
428
+ "name": "Safety & guardrails",
429
+ "score": 9,
430
+ "max": 10
431
+ },
432
+ {
433
+ "id": "testability",
434
+ "name": "Testability",
435
+ "score": 10,
436
+ "max": 10
437
+ },
438
+ {
439
+ "id": "naming",
440
+ "name": "Naming & conventions",
441
+ "score": 10,
442
+ "max": 10
443
+ }
444
+ ],
445
+ "evaluatedAt": "2026-04-20T07:44:43.936Z",
446
+ "evaluatedVersion": "1.1.2"
447
+ }
91
448
  },
92
449
  {
93
450
  "name": "context-hub",
94
- "description": "Use Context Hub (`chub`) to fetch up-to-date third-party API/SDK docs before writing or reviewing integration code. Trigger this skill whenever a task mentions external APIs, SDKs, webhooks, auth flows, or library-specific method usage (OpenAI, Stripe, Anthropic, Pinecone, etc.), even if the user does not explicitly ask for documentation.",
451
+ "description": "Fetch up-to-date third-party API/SDK docs via `chub` before writing or reviewing integration code so method names, payload fields, and auth headers are always sourced from live docs, not stale training data.",
95
452
  "version": "1.0.1",
96
453
  "license": "MIT",
97
454
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -99,23 +456,125 @@
99
456
  "allowedTools": [],
100
457
  "installUrl": "github:luongnv89/skills:skills/context-hub",
101
458
  "relPath": "skills/context-hub",
102
- "verified": true
459
+ "verified": true,
460
+ "tokenCount": 1660,
461
+ "evalSummary": {
462
+ "overallScore": 91,
463
+ "grade": "A",
464
+ "categories": [
465
+ {
466
+ "id": "structure",
467
+ "name": "Structure & completeness",
468
+ "score": 10,
469
+ "max": 10
470
+ },
471
+ {
472
+ "id": "description",
473
+ "name": "Description quality",
474
+ "score": 10,
475
+ "max": 10
476
+ },
477
+ {
478
+ "id": "prompt-engineering",
479
+ "name": "Prompt engineering",
480
+ "score": 8,
481
+ "max": 10
482
+ },
483
+ {
484
+ "id": "context-efficiency",
485
+ "name": "Context efficiency",
486
+ "score": 7,
487
+ "max": 10
488
+ },
489
+ {
490
+ "id": "safety",
491
+ "name": "Safety & guardrails",
492
+ "score": 9,
493
+ "max": 10
494
+ },
495
+ {
496
+ "id": "testability",
497
+ "name": "Testability",
498
+ "score": 10,
499
+ "max": 10
500
+ },
501
+ {
502
+ "id": "naming",
503
+ "name": "Naming & conventions",
504
+ "score": 10,
505
+ "max": 10
506
+ }
507
+ ],
508
+ "evaluatedAt": "2026-04-20T07:44:43.937Z",
509
+ "evaluatedVersion": "1.0.1"
510
+ }
103
511
  },
104
512
  {
105
513
  "name": "devops-pipeline",
106
- "description": "Implement pre-commit hooks and GitHub Actions for quality assurance. Use when asked to \"setup CI/CD\", \"add pre-commit hooks\", \"create GitHub Actions\", \"setup quality gates\", \"automate testing\", \"add linting to CI\", or any DevOps automation for code quality. Detects project type and configures appropriate tools.",
107
- "version": "1.0.1",
514
+ "description": "Implement pre-commit hooks and lean GitHub Actions for shift-left quality assurance maximizing local test coverage and minimizing CI cost.",
515
+ "version": "2.0.0",
108
516
  "license": "MIT",
109
517
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
110
518
  "compatibility": "",
111
519
  "allowedTools": [],
112
520
  "installUrl": "github:luongnv89/skills:skills/devops-pipeline",
113
521
  "relPath": "skills/devops-pipeline",
114
- "verified": true
522
+ "verified": true,
523
+ "tokenCount": 3175,
524
+ "evalSummary": {
525
+ "overallScore": 89,
526
+ "grade": "B",
527
+ "categories": [
528
+ {
529
+ "id": "structure",
530
+ "name": "Structure & completeness",
531
+ "score": 10,
532
+ "max": 10
533
+ },
534
+ {
535
+ "id": "description",
536
+ "name": "Description quality",
537
+ "score": 7,
538
+ "max": 10
539
+ },
540
+ {
541
+ "id": "prompt-engineering",
542
+ "name": "Prompt engineering",
543
+ "score": 9,
544
+ "max": 10
545
+ },
546
+ {
547
+ "id": "context-efficiency",
548
+ "name": "Context efficiency",
549
+ "score": 7,
550
+ "max": 10
551
+ },
552
+ {
553
+ "id": "safety",
554
+ "name": "Safety & guardrails",
555
+ "score": 9,
556
+ "max": 10
557
+ },
558
+ {
559
+ "id": "testability",
560
+ "name": "Testability",
561
+ "score": 10,
562
+ "max": 10
563
+ },
564
+ {
565
+ "id": "naming",
566
+ "name": "Naming & conventions",
567
+ "score": 10,
568
+ "max": 10
569
+ }
570
+ ],
571
+ "evaluatedAt": "2026-04-20T07:44:43.938Z",
572
+ "evaluatedVersion": "2.0.0"
573
+ }
115
574
  },
116
575
  {
117
576
  "name": "docs-generator",
118
- "description": "Restructure project documentation for clarity and accessibility. Use when users ask to \"organize docs\", \"generate documentation\", \"improve doc structure\", \"restructure README\", or need to reorganize scattered documentation into a coherent structure. Analyzes project type and creates appropriate documentation hierarchy.",
577
+ "description": "Generate and restructure project documentation into a clear, accessible hierarchy. Use when asked to \"organize docs\", \"generate documentation\", \"improve doc structure\", or \"restructure README\".",
119
578
  "version": "1.2.1",
120
579
  "license": "MIT",
121
580
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -123,11 +582,62 @@
123
582
  "allowedTools": [],
124
583
  "installUrl": "github:luongnv89/skills:skills/docs-generator",
125
584
  "relPath": "skills/docs-generator",
126
- "verified": true
585
+ "verified": true,
586
+ "tokenCount": 1684,
587
+ "evalSummary": {
588
+ "overallScore": 93,
589
+ "grade": "A",
590
+ "categories": [
591
+ {
592
+ "id": "structure",
593
+ "name": "Structure & completeness",
594
+ "score": 10,
595
+ "max": 10
596
+ },
597
+ {
598
+ "id": "description",
599
+ "name": "Description quality",
600
+ "score": 10,
601
+ "max": 10
602
+ },
603
+ {
604
+ "id": "prompt-engineering",
605
+ "name": "Prompt engineering",
606
+ "score": 9,
607
+ "max": 10
608
+ },
609
+ {
610
+ "id": "context-efficiency",
611
+ "name": "Context efficiency",
612
+ "score": 9,
613
+ "max": 10
614
+ },
615
+ {
616
+ "id": "safety",
617
+ "name": "Safety & guardrails",
618
+ "score": 7,
619
+ "max": 10
620
+ },
621
+ {
622
+ "id": "testability",
623
+ "name": "Testability",
624
+ "score": 10,
625
+ "max": 10
626
+ },
627
+ {
628
+ "id": "naming",
629
+ "name": "Naming & conventions",
630
+ "score": 10,
631
+ "max": 10
632
+ }
633
+ ],
634
+ "evaluatedAt": "2026-04-20T07:44:43.938Z",
635
+ "evaluatedVersion": "1.2.1"
636
+ }
127
637
  },
128
638
  {
129
639
  "name": "dont-make-me-think",
130
- "description": "Review any UI for usability issues using Steve Krug's \"Don't Make Me Think\" principles, or redesign a UI to be more intuitive. Use this skill whenever the user asks to \"review my UI\", \"check usability\", \"is this interface confusing\", \"why do users get lost\", \"simplify this design\", \"make this more intuitive\", \"UX review\", \"usability audit\", \"Krug review\", \"don't make me think\", or shares a screenshot/URL/mockup and wants feedback on whether it's easy to use. Also trigger when the user describes user confusion, drop-off, or complaints about a flow being hard to understand — even if they don't mention \"usability\" explicitly. Works with screenshots, live URLs, HTML/CSS code, wireframes, and verbal descriptions of interfaces.",
640
+ "description": "Review UI for usability issues using Steve Krug's principles and produce a scannable report. Use when asked for a usability audit, UX review, or UI feedback on screenshots, URLs, or code.",
131
641
  "version": "1.1.1",
132
642
  "license": "MIT",
133
643
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -135,11 +645,62 @@
135
645
  "allowedTools": [],
136
646
  "installUrl": "github:luongnv89/skills:skills/dont-make-me-think",
137
647
  "relPath": "skills/dont-make-me-think",
138
- "verified": true
648
+ "verified": true,
649
+ "tokenCount": 3112,
650
+ "evalSummary": {
651
+ "overallScore": 87,
652
+ "grade": "B",
653
+ "categories": [
654
+ {
655
+ "id": "structure",
656
+ "name": "Structure & completeness",
657
+ "score": 10,
658
+ "max": 10
659
+ },
660
+ {
661
+ "id": "description",
662
+ "name": "Description quality",
663
+ "score": 10,
664
+ "max": 10
665
+ },
666
+ {
667
+ "id": "prompt-engineering",
668
+ "name": "Prompt engineering",
669
+ "score": 7,
670
+ "max": 10
671
+ },
672
+ {
673
+ "id": "context-efficiency",
674
+ "name": "Context efficiency",
675
+ "score": 7,
676
+ "max": 10
677
+ },
678
+ {
679
+ "id": "safety",
680
+ "name": "Safety & guardrails",
681
+ "score": 7,
682
+ "max": 10
683
+ },
684
+ {
685
+ "id": "testability",
686
+ "name": "Testability",
687
+ "score": 10,
688
+ "max": 10
689
+ },
690
+ {
691
+ "id": "naming",
692
+ "name": "Naming & conventions",
693
+ "score": 10,
694
+ "max": 10
695
+ }
696
+ ],
697
+ "evaluatedAt": "2026-04-20T07:44:43.939Z",
698
+ "evaluatedVersion": "1.1.1"
699
+ }
139
700
  },
140
701
  {
141
702
  "name": "drawio-generator",
142
- "description": "Generate diagrams and visualizations as draw.io (diagrams.net) XML files — flowcharts, architecture, C4 models, ER diagrams, sequence diagrams, mind maps, swimlanes, and more. Trigger when user says \"draw.io\", \"drawio\", \"diagrams.net\", \".drawio file\", or wants draw.io format. Also trigger when extending existing .drawio files or when context calls for draw.io (corporate environments, Confluence/Jira integration, multi-page diagrams).",
703
+ "description": "Generate professional diagrams as valid draw.io XML files — flowcharts, architecture, C4 models, ER diagrams, sequence diagrams, mind maps, and swimlanes.",
143
704
  "version": "1.1.1",
144
705
  "license": "MIT",
145
706
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -147,23 +708,125 @@
147
708
  "allowedTools": [],
148
709
  "installUrl": "github:luongnv89/skills:skills/drawio-generator",
149
710
  "relPath": "skills/drawio-generator",
150
- "verified": true
711
+ "verified": true,
712
+ "tokenCount": 4077,
713
+ "evalSummary": {
714
+ "overallScore": 91,
715
+ "grade": "A",
716
+ "categories": [
717
+ {
718
+ "id": "structure",
719
+ "name": "Structure & completeness",
720
+ "score": 10,
721
+ "max": 10
722
+ },
723
+ {
724
+ "id": "description",
725
+ "name": "Description quality",
726
+ "score": 7,
727
+ "max": 10
728
+ },
729
+ {
730
+ "id": "prompt-engineering",
731
+ "name": "Prompt engineering",
732
+ "score": 10,
733
+ "max": 10
734
+ },
735
+ {
736
+ "id": "context-efficiency",
737
+ "name": "Context efficiency",
738
+ "score": 7,
739
+ "max": 10
740
+ },
741
+ {
742
+ "id": "safety",
743
+ "name": "Safety & guardrails",
744
+ "score": 10,
745
+ "max": 10
746
+ },
747
+ {
748
+ "id": "testability",
749
+ "name": "Testability",
750
+ "score": 10,
751
+ "max": 10
752
+ },
753
+ {
754
+ "id": "naming",
755
+ "name": "Naming & conventions",
756
+ "score": 10,
757
+ "max": 10
758
+ }
759
+ ],
760
+ "evaluatedAt": "2026-04-20T07:44:43.940Z",
761
+ "evaluatedVersion": "1.1.1"
762
+ }
151
763
  },
152
764
  {
153
765
  "name": "excalidraw-generator",
154
- "description": "Generate diagrams and visualizations as Excalidraw JSON files — flowcharts, architecture, ER diagrams, mind maps, sequence diagrams, org charts, wireframes, C4 models, swimlanes, and more. Trigger when user asks to draw, diagram, visualize, sketch, or chart anything, says \"excalidraw\", \"draw this\", \"make a diagram of\", \"visualize this\", or shares data/structures that would benefit from visualization. Also suggest when the user describes relationships, flows, or hierarchies even without saying \"diagram\".",
155
- "version": "1.1.1",
766
+ "description": "Generate professional diagrams as valid Excalidraw JSON files — flowcharts, architecture, ER diagrams, mind maps, sequence diagrams, wireframes, C4 models, and more. Understands text, code, schemas, or verbal descriptions.",
767
+ "version": "1.2.0",
156
768
  "license": "MIT",
157
769
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
158
770
  "compatibility": "",
159
771
  "allowedTools": [],
160
772
  "installUrl": "github:luongnv89/skills:skills/excalidraw-generator",
161
773
  "relPath": "skills/excalidraw-generator",
162
- "verified": true
774
+ "verified": true,
775
+ "tokenCount": 5956,
776
+ "evalSummary": {
777
+ "overallScore": 91,
778
+ "grade": "A",
779
+ "categories": [
780
+ {
781
+ "id": "structure",
782
+ "name": "Structure & completeness",
783
+ "score": 10,
784
+ "max": 10
785
+ },
786
+ {
787
+ "id": "description",
788
+ "name": "Description quality",
789
+ "score": 7,
790
+ "max": 10
791
+ },
792
+ {
793
+ "id": "prompt-engineering",
794
+ "name": "Prompt engineering",
795
+ "score": 10,
796
+ "max": 10
797
+ },
798
+ {
799
+ "id": "context-efficiency",
800
+ "name": "Context efficiency",
801
+ "score": 7,
802
+ "max": 10
803
+ },
804
+ {
805
+ "id": "safety",
806
+ "name": "Safety & guardrails",
807
+ "score": 10,
808
+ "max": 10
809
+ },
810
+ {
811
+ "id": "testability",
812
+ "name": "Testability",
813
+ "score": 10,
814
+ "max": 10
815
+ },
816
+ {
817
+ "id": "naming",
818
+ "name": "Naming & conventions",
819
+ "score": 10,
820
+ "max": 10
821
+ }
822
+ ],
823
+ "evaluatedAt": "2026-04-20T07:44:43.942Z",
824
+ "evaluatedVersion": "1.2.0"
825
+ }
163
826
  },
164
827
  {
165
828
  "name": "frontend-design",
166
- "description": "Create distinctive, usability-focused, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include web apps, landing pages, dashboards, forms, portfolios). Generates creative, polished code that avoids generic AI aesthetics. Applies \"Don't Make Me Think\" usability principles and a default style guide (Black/White/Gray/Bright Green) when no style preference is provided.",
829
+ "description": "Design and implement production-grade frontend interfaces with distinctive aesthetics and working code. Use when asked to build a UI, component, page, or frontend feature.",
167
830
  "version": "1.2.1",
168
831
  "license": "MIT",
169
832
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -171,11 +834,62 @@
171
834
  "allowedTools": [],
172
835
  "installUrl": "github:luongnv89/skills:skills/frontend-design",
173
836
  "relPath": "skills/frontend-design",
174
- "verified": true
837
+ "verified": true,
838
+ "tokenCount": 3295,
839
+ "evalSummary": {
840
+ "overallScore": 90,
841
+ "grade": "A",
842
+ "categories": [
843
+ {
844
+ "id": "structure",
845
+ "name": "Structure & completeness",
846
+ "score": 10,
847
+ "max": 10
848
+ },
849
+ {
850
+ "id": "description",
851
+ "name": "Description quality",
852
+ "score": 7,
853
+ "max": 10
854
+ },
855
+ {
856
+ "id": "prompt-engineering",
857
+ "name": "Prompt engineering",
858
+ "score": 10,
859
+ "max": 10
860
+ },
861
+ {
862
+ "id": "context-efficiency",
863
+ "name": "Context efficiency",
864
+ "score": 7,
865
+ "max": 10
866
+ },
867
+ {
868
+ "id": "safety",
869
+ "name": "Safety & guardrails",
870
+ "score": 9,
871
+ "max": 10
872
+ },
873
+ {
874
+ "id": "testability",
875
+ "name": "Testability",
876
+ "score": 10,
877
+ "max": 10
878
+ },
879
+ {
880
+ "id": "naming",
881
+ "name": "Naming & conventions",
882
+ "score": 10,
883
+ "max": 10
884
+ }
885
+ ],
886
+ "evaluatedAt": "2026-04-20T07:44:43.943Z",
887
+ "evaluatedVersion": "1.2.1"
888
+ }
175
889
  },
176
890
  {
177
891
  "name": "github-issue-creator",
178
- "description": "Create or update GitHub issues from screenshots, bug report emails, messages, or any visual/text input. Extracts structured issue data from images or pasted text, detects the repo's issue templates, proposes issues for user approval, then creates or updates them via gh CLI. Use this skill whenever the user shares a screenshot of a bug, pastes an error report, forwards a bug email, wants to file issues from a conversation, says \"create an issue from this\", \"turn this into a GitHub issue\", \"file a bug for this\", \"update the issue with this info\", or has any visual or textual bug/feature report they want tracked as GitHub issues — even if they just drop an image and say \"handle this\".",
892
+ "description": "Create or update GitHub issues from screenshots, emails, messages, or any visual/text input. Extracts structured data, redacts PII, detects issue templates, proposes issues for approval, then files them via gh CLI.",
179
893
  "version": "1.0.0",
180
894
  "license": "MIT",
181
895
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -183,23 +897,125 @@
183
897
  "allowedTools": [],
184
898
  "installUrl": "github:luongnv89/skills:skills/github-issue-creator",
185
899
  "relPath": "skills/github-issue-creator",
186
- "verified": true
900
+ "verified": true,
901
+ "tokenCount": 4284,
902
+ "evalSummary": {
903
+ "overallScore": 96,
904
+ "grade": "A",
905
+ "categories": [
906
+ {
907
+ "id": "structure",
908
+ "name": "Structure & completeness",
909
+ "score": 10,
910
+ "max": 10
911
+ },
912
+ {
913
+ "id": "description",
914
+ "name": "Description quality",
915
+ "score": 10,
916
+ "max": 10
917
+ },
918
+ {
919
+ "id": "prompt-engineering",
920
+ "name": "Prompt engineering",
921
+ "score": 10,
922
+ "max": 10
923
+ },
924
+ {
925
+ "id": "context-efficiency",
926
+ "name": "Context efficiency",
927
+ "score": 7,
928
+ "max": 10
929
+ },
930
+ {
931
+ "id": "safety",
932
+ "name": "Safety & guardrails",
933
+ "score": 10,
934
+ "max": 10
935
+ },
936
+ {
937
+ "id": "testability",
938
+ "name": "Testability",
939
+ "score": 10,
940
+ "max": 10
941
+ },
942
+ {
943
+ "id": "naming",
944
+ "name": "Naming & conventions",
945
+ "score": 10,
946
+ "max": 10
947
+ }
948
+ ],
949
+ "evaluatedAt": "2026-04-20T07:44:43.944Z",
950
+ "evaluatedVersion": "1.0.0"
951
+ }
187
952
  },
188
953
  {
189
954
  "name": "idea-validator",
190
- "description": "Critically evaluate and enhance app ideas, startup concepts, and product proposals. Use when users ask to \"evaluate my idea\", \"review this concept\", \"is this a good idea\", \"validate my startup idea\", or want honest feedback on technical feasibility and market viability.",
191
- "version": "1.2.3",
955
+ "description": "Evaluate app ideas and startup concepts across market viability, technical feasibility, and competitive landscape. Use when asked to validate, review, or score a product idea.",
956
+ "version": "1.3.0",
192
957
  "license": "MIT",
193
958
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
194
959
  "compatibility": "",
195
960
  "allowedTools": [],
196
961
  "installUrl": "github:luongnv89/skills:skills/idea-validator",
197
962
  "relPath": "skills/idea-validator",
198
- "verified": true
963
+ "verified": true,
964
+ "tokenCount": 3921,
965
+ "evalSummary": {
966
+ "overallScore": 94,
967
+ "grade": "A",
968
+ "categories": [
969
+ {
970
+ "id": "structure",
971
+ "name": "Structure & completeness",
972
+ "score": 10,
973
+ "max": 10
974
+ },
975
+ {
976
+ "id": "description",
977
+ "name": "Description quality",
978
+ "score": 10,
979
+ "max": 10
980
+ },
981
+ {
982
+ "id": "prompt-engineering",
983
+ "name": "Prompt engineering",
984
+ "score": 9,
985
+ "max": 10
986
+ },
987
+ {
988
+ "id": "context-efficiency",
989
+ "name": "Context efficiency",
990
+ "score": 8,
991
+ "max": 10
992
+ },
993
+ {
994
+ "id": "safety",
995
+ "name": "Safety & guardrails",
996
+ "score": 9,
997
+ "max": 10
998
+ },
999
+ {
1000
+ "id": "testability",
1001
+ "name": "Testability",
1002
+ "score": 10,
1003
+ "max": 10
1004
+ },
1005
+ {
1006
+ "id": "naming",
1007
+ "name": "Naming & conventions",
1008
+ "score": 10,
1009
+ "max": 10
1010
+ }
1011
+ ],
1012
+ "evaluatedAt": "2026-04-20T07:44:43.945Z",
1013
+ "evaluatedVersion": "1.3.0"
1014
+ }
199
1015
  },
200
1016
  {
201
1017
  "name": "install-script-generator",
202
- "description": "Generate cross-platform installation scripts for any software, library, or module. Use when users ask to \"create an installer\", \"generate installation script\", \"automate installation\", \"setup script for X\", \"install X on any OS\", or need automated deployment across Windows, Linux, and macOS. Generates a standalone install.sh (and optionally install.ps1) that can be run via a single curl/wget one-liner. Follows a four-phase approach — environment exploration, installation planning, script generation, and documentation.",
1018
+ "description": "Generate cross-platform installation scripts for any software, library, or module. Produces a standalone install.sh runnable via a single curl/wget one-liner, with automatic OS, architecture, and package manager detection.",
203
1019
  "version": "2.0.1",
204
1020
  "license": "MIT",
205
1021
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -207,11 +1023,62 @@
207
1023
  "allowedTools": [],
208
1024
  "installUrl": "github:luongnv89/skills:skills/install-script-generator",
209
1025
  "relPath": "skills/install-script-generator",
210
- "verified": true
1026
+ "verified": true,
1027
+ "tokenCount": 4301,
1028
+ "evalSummary": {
1029
+ "overallScore": 91,
1030
+ "grade": "A",
1031
+ "categories": [
1032
+ {
1033
+ "id": "structure",
1034
+ "name": "Structure & completeness",
1035
+ "score": 10,
1036
+ "max": 10
1037
+ },
1038
+ {
1039
+ "id": "description",
1040
+ "name": "Description quality",
1041
+ "score": 10,
1042
+ "max": 10
1043
+ },
1044
+ {
1045
+ "id": "prompt-engineering",
1046
+ "name": "Prompt engineering",
1047
+ "score": 10,
1048
+ "max": 10
1049
+ },
1050
+ {
1051
+ "id": "context-efficiency",
1052
+ "name": "Context efficiency",
1053
+ "score": 5,
1054
+ "max": 10
1055
+ },
1056
+ {
1057
+ "id": "safety",
1058
+ "name": "Safety & guardrails",
1059
+ "score": 9,
1060
+ "max": 10
1061
+ },
1062
+ {
1063
+ "id": "testability",
1064
+ "name": "Testability",
1065
+ "score": 10,
1066
+ "max": 10
1067
+ },
1068
+ {
1069
+ "id": "naming",
1070
+ "name": "Naming & conventions",
1071
+ "score": 10,
1072
+ "max": 10
1073
+ }
1074
+ ],
1075
+ "evaluatedAt": "2026-04-20T07:44:43.946Z",
1076
+ "evaluatedVersion": "2.0.1"
1077
+ }
211
1078
  },
212
1079
  {
213
1080
  "name": "logo-designer",
214
- "description": "Design professional, modern logos with automatic project context detection. Use when users ask to \"create a logo\", \"design a logo\", \"generate brand identity\", \"make a favicon\", or need visual brand assets. Analyzes project files (README, package.json, etc.) to understand product name, purpose, and existing brand colors before generating logo concepts.",
1081
+ "description": "Design professional SVG logos by analyzing project context and generating 7 brand asset variants mark, full, wordmark, icon, favicon, white, and black plus a brand showcase HTML page.",
215
1082
  "version": "1.2.0",
216
1083
  "license": "MIT",
217
1084
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -219,11 +1086,62 @@
219
1086
  "allowedTools": [],
220
1087
  "installUrl": "github:luongnv89/skills:skills/logo-designer",
221
1088
  "relPath": "skills/logo-designer",
222
- "verified": true
1089
+ "verified": true,
1090
+ "tokenCount": 6379,
1091
+ "evalSummary": {
1092
+ "overallScore": 87,
1093
+ "grade": "B",
1094
+ "categories": [
1095
+ {
1096
+ "id": "structure",
1097
+ "name": "Structure & completeness",
1098
+ "score": 10,
1099
+ "max": 10
1100
+ },
1101
+ {
1102
+ "id": "description",
1103
+ "name": "Description quality",
1104
+ "score": 4,
1105
+ "max": 10
1106
+ },
1107
+ {
1108
+ "id": "prompt-engineering",
1109
+ "name": "Prompt engineering",
1110
+ "score": 10,
1111
+ "max": 10
1112
+ },
1113
+ {
1114
+ "id": "context-efficiency",
1115
+ "name": "Context efficiency",
1116
+ "score": 7,
1117
+ "max": 10
1118
+ },
1119
+ {
1120
+ "id": "safety",
1121
+ "name": "Safety & guardrails",
1122
+ "score": 10,
1123
+ "max": 10
1124
+ },
1125
+ {
1126
+ "id": "testability",
1127
+ "name": "Testability",
1128
+ "score": 10,
1129
+ "max": 10
1130
+ },
1131
+ {
1132
+ "id": "naming",
1133
+ "name": "Naming & conventions",
1134
+ "score": 10,
1135
+ "max": 10
1136
+ }
1137
+ ],
1138
+ "evaluatedAt": "2026-04-20T07:44:43.948Z",
1139
+ "evaluatedVersion": "1.2.0"
1140
+ }
223
1141
  },
224
1142
  {
225
1143
  "name": "name-checker",
226
- "description": "Check product/brand names for trademark, domain, social media, and package registry conflicts. Use when users ask to \"check this name\", \"validate a product name\", \"is this name available\", \"is this package name taken\", or need to assess naming risks before publishing to npm, PyPI, Homebrew, or apt. Provides risk assessment and alternative suggestions. Also use when users want to secure a name early across registries to prevent namespace squatting, or ask \"can I publish under this name\".",
1144
+ "description": "Check product and brand names for conflicts across trademarks, domains, social media handles, and package registries (npm, PyPI, Homebrew, apt). Delivers a risk assessment and actionable Proceed, Modify, or Abandon recommendation.",
227
1145
  "version": "1.1.1",
228
1146
  "license": "MIT",
229
1147
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -231,7 +1149,58 @@
231
1149
  "allowedTools": [],
232
1150
  "installUrl": "github:luongnv89/skills:skills/name-checker",
233
1151
  "relPath": "skills/name-checker",
234
- "verified": true
1152
+ "verified": true,
1153
+ "tokenCount": 3683,
1154
+ "evalSummary": {
1155
+ "overallScore": 91,
1156
+ "grade": "A",
1157
+ "categories": [
1158
+ {
1159
+ "id": "structure",
1160
+ "name": "Structure & completeness",
1161
+ "score": 10,
1162
+ "max": 10
1163
+ },
1164
+ {
1165
+ "id": "description",
1166
+ "name": "Description quality",
1167
+ "score": 10,
1168
+ "max": 10
1169
+ },
1170
+ {
1171
+ "id": "prompt-engineering",
1172
+ "name": "Prompt engineering",
1173
+ "score": 8,
1174
+ "max": 10
1175
+ },
1176
+ {
1177
+ "id": "context-efficiency",
1178
+ "name": "Context efficiency",
1179
+ "score": 7,
1180
+ "max": 10
1181
+ },
1182
+ {
1183
+ "id": "safety",
1184
+ "name": "Safety & guardrails",
1185
+ "score": 9,
1186
+ "max": 10
1187
+ },
1188
+ {
1189
+ "id": "testability",
1190
+ "name": "Testability",
1191
+ "score": 10,
1192
+ "max": 10
1193
+ },
1194
+ {
1195
+ "id": "naming",
1196
+ "name": "Naming & conventions",
1197
+ "score": 10,
1198
+ "max": 10
1199
+ }
1200
+ ],
1201
+ "evaluatedAt": "2026-04-20T07:44:43.949Z",
1202
+ "evaluatedVersion": "1.1.1"
1203
+ }
235
1204
  },
236
1205
  {
237
1206
  "name": "note-taker",
@@ -243,7 +1212,58 @@
243
1212
  "allowedTools": [],
244
1213
  "installUrl": "github:luongnv89/skills:skills/note-taker",
245
1214
  "relPath": "skills/note-taker",
246
- "verified": true
1215
+ "verified": true,
1216
+ "tokenCount": 2641,
1217
+ "evalSummary": {
1218
+ "overallScore": 86,
1219
+ "grade": "B",
1220
+ "categories": [
1221
+ {
1222
+ "id": "structure",
1223
+ "name": "Structure & completeness",
1224
+ "score": 10,
1225
+ "max": 10
1226
+ },
1227
+ {
1228
+ "id": "description",
1229
+ "name": "Description quality",
1230
+ "score": 5,
1231
+ "max": 10
1232
+ },
1233
+ {
1234
+ "id": "prompt-engineering",
1235
+ "name": "Prompt engineering",
1236
+ "score": 10,
1237
+ "max": 10
1238
+ },
1239
+ {
1240
+ "id": "context-efficiency",
1241
+ "name": "Context efficiency",
1242
+ "score": 9,
1243
+ "max": 10
1244
+ },
1245
+ {
1246
+ "id": "safety",
1247
+ "name": "Safety & guardrails",
1248
+ "score": 6,
1249
+ "max": 10
1250
+ },
1251
+ {
1252
+ "id": "testability",
1253
+ "name": "Testability",
1254
+ "score": 10,
1255
+ "max": 10
1256
+ },
1257
+ {
1258
+ "id": "naming",
1259
+ "name": "Naming & conventions",
1260
+ "score": 10,
1261
+ "max": 10
1262
+ }
1263
+ ],
1264
+ "evaluatedAt": "2026-04-20T07:44:43.950Z",
1265
+ "evaluatedVersion": "1.4.2"
1266
+ }
247
1267
  },
248
1268
  {
249
1269
  "name": "ollama-optimizer",
@@ -255,11 +1275,62 @@
255
1275
  "allowedTools": [],
256
1276
  "installUrl": "github:luongnv89/skills:skills/ollama-optimizer",
257
1277
  "relPath": "skills/ollama-optimizer",
258
- "verified": true
1278
+ "verified": true,
1279
+ "tokenCount": 2300,
1280
+ "evalSummary": {
1281
+ "overallScore": 86,
1282
+ "grade": "B",
1283
+ "categories": [
1284
+ {
1285
+ "id": "structure",
1286
+ "name": "Structure & completeness",
1287
+ "score": 10,
1288
+ "max": 10
1289
+ },
1290
+ {
1291
+ "id": "description",
1292
+ "name": "Description quality",
1293
+ "score": 6,
1294
+ "max": 10
1295
+ },
1296
+ {
1297
+ "id": "prompt-engineering",
1298
+ "name": "Prompt engineering",
1299
+ "score": 8,
1300
+ "max": 10
1301
+ },
1302
+ {
1303
+ "id": "context-efficiency",
1304
+ "name": "Context efficiency",
1305
+ "score": 9,
1306
+ "max": 10
1307
+ },
1308
+ {
1309
+ "id": "safety",
1310
+ "name": "Safety & guardrails",
1311
+ "score": 9,
1312
+ "max": 10
1313
+ },
1314
+ {
1315
+ "id": "testability",
1316
+ "name": "Testability",
1317
+ "score": 8,
1318
+ "max": 10
1319
+ },
1320
+ {
1321
+ "id": "naming",
1322
+ "name": "Naming & conventions",
1323
+ "score": 10,
1324
+ "max": 10
1325
+ }
1326
+ ],
1327
+ "evaluatedAt": "2026-04-20T07:44:43.951Z",
1328
+ "evaluatedVersion": "1.0.2"
1329
+ }
259
1330
  },
260
1331
  {
261
1332
  "name": "opencode-runner",
262
- "description": "Delegate coding tasks to opencode (opencode.ai) using free models. Checks installation, discovers free models, selects the best available one (preferring minimax > kimi > glm > MiMo, with Big Pickle as last resort), executes the task, and monitors progress. Use when asked to \"run this with opencode\", \"use opencode for this\", \"opencode this task\", \"delegate to opencode\", \"run with a free model\", or when the user wants to offload a coding task to opencode without paying for API credits. Also trigger when the user mentions opencode, free coding models, or wants a second AI opinion on a coding task.",
1333
+ "description": "Delegate coding tasks to opencode using free cloud models. Use when asked to run a task with opencode, use a free model, or offload coding work to opencode.ai.",
263
1334
  "version": "1.2.1",
264
1335
  "license": "MIT",
265
1336
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -267,11 +1338,62 @@
267
1338
  "allowedTools": [],
268
1339
  "installUrl": "github:luongnv89/skills:skills/opencode-runner",
269
1340
  "relPath": "skills/opencode-runner",
270
- "verified": true
1341
+ "verified": true,
1342
+ "tokenCount": 5409,
1343
+ "evalSummary": {
1344
+ "overallScore": 91,
1345
+ "grade": "A",
1346
+ "categories": [
1347
+ {
1348
+ "id": "structure",
1349
+ "name": "Structure & completeness",
1350
+ "score": 10,
1351
+ "max": 10
1352
+ },
1353
+ {
1354
+ "id": "description",
1355
+ "name": "Description quality",
1356
+ "score": 7,
1357
+ "max": 10
1358
+ },
1359
+ {
1360
+ "id": "prompt-engineering",
1361
+ "name": "Prompt engineering",
1362
+ "score": 9,
1363
+ "max": 10
1364
+ },
1365
+ {
1366
+ "id": "context-efficiency",
1367
+ "name": "Context efficiency",
1368
+ "score": 8,
1369
+ "max": 10
1370
+ },
1371
+ {
1372
+ "id": "safety",
1373
+ "name": "Safety & guardrails",
1374
+ "score": 10,
1375
+ "max": 10
1376
+ },
1377
+ {
1378
+ "id": "testability",
1379
+ "name": "Testability",
1380
+ "score": 10,
1381
+ "max": 10
1382
+ },
1383
+ {
1384
+ "id": "naming",
1385
+ "name": "Naming & conventions",
1386
+ "score": 10,
1387
+ "max": 10
1388
+ }
1389
+ ],
1390
+ "evaluatedAt": "2026-04-20T07:44:43.952Z",
1391
+ "evaluatedVersion": "1.2.1"
1392
+ }
271
1393
  },
272
1394
  {
273
1395
  "name": "openspec-task-loop",
274
- "description": "Apply OpenSpec OPSX in a strict one-task-at-a-time loop. Use when the user asks to execute work as single-task changes, wants spec-first implementation per task, or says to use OpenSpec method for each task from a task list. Supports both native /opsx command environments and manual fallback by creating OpenSpec artifact files directly.",
1396
+ "description": "Execute a spec-first one-task-at-a-time loop using OpenSpec OPSX. Use when asked to implement tasks from a list with single-task scope, spec artifacts, and sequential verification before archiving.",
275
1397
  "version": "1.1.1",
276
1398
  "license": "MIT",
277
1399
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -279,7 +1401,58 @@
279
1401
  "allowedTools": [],
280
1402
  "installUrl": "github:luongnv89/skills:skills/openspec-task-loop",
281
1403
  "relPath": "skills/openspec-task-loop",
282
- "verified": true
1404
+ "verified": true,
1405
+ "tokenCount": 2646,
1406
+ "evalSummary": {
1407
+ "overallScore": 93,
1408
+ "grade": "A",
1409
+ "categories": [
1410
+ {
1411
+ "id": "structure",
1412
+ "name": "Structure & completeness",
1413
+ "score": 10,
1414
+ "max": 10
1415
+ },
1416
+ {
1417
+ "id": "description",
1418
+ "name": "Description quality",
1419
+ "score": 7,
1420
+ "max": 10
1421
+ },
1422
+ {
1423
+ "id": "prompt-engineering",
1424
+ "name": "Prompt engineering",
1425
+ "score": 10,
1426
+ "max": 10
1427
+ },
1428
+ {
1429
+ "id": "context-efficiency",
1430
+ "name": "Context efficiency",
1431
+ "score": 9,
1432
+ "max": 10
1433
+ },
1434
+ {
1435
+ "id": "safety",
1436
+ "name": "Safety & guardrails",
1437
+ "score": 9,
1438
+ "max": 10
1439
+ },
1440
+ {
1441
+ "id": "testability",
1442
+ "name": "Testability",
1443
+ "score": 10,
1444
+ "max": 10
1445
+ },
1446
+ {
1447
+ "id": "naming",
1448
+ "name": "Naming & conventions",
1449
+ "score": 10,
1450
+ "max": 10
1451
+ }
1452
+ ],
1453
+ "evaluatedAt": "2026-04-20T07:44:43.953Z",
1454
+ "evaluatedVersion": "1.1.1"
1455
+ }
283
1456
  },
284
1457
  {
285
1458
  "name": "oss-ready",
@@ -291,7 +1464,58 @@
291
1464
  "allowedTools": [],
292
1465
  "installUrl": "github:luongnv89/skills:skills/oss-ready",
293
1466
  "relPath": "skills/oss-ready",
294
- "verified": true
1467
+ "verified": true,
1468
+ "tokenCount": 1821,
1469
+ "evalSummary": {
1470
+ "overallScore": 86,
1471
+ "grade": "B",
1472
+ "categories": [
1473
+ {
1474
+ "id": "structure",
1475
+ "name": "Structure & completeness",
1476
+ "score": 10,
1477
+ "max": 10
1478
+ },
1479
+ {
1480
+ "id": "description",
1481
+ "name": "Description quality",
1482
+ "score": 8,
1483
+ "max": 10
1484
+ },
1485
+ {
1486
+ "id": "prompt-engineering",
1487
+ "name": "Prompt engineering",
1488
+ "score": 9,
1489
+ "max": 10
1490
+ },
1491
+ {
1492
+ "id": "context-efficiency",
1493
+ "name": "Context efficiency",
1494
+ "score": 9,
1495
+ "max": 10
1496
+ },
1497
+ {
1498
+ "id": "safety",
1499
+ "name": "Safety & guardrails",
1500
+ "score": 9,
1501
+ "max": 10
1502
+ },
1503
+ {
1504
+ "id": "testability",
1505
+ "name": "Testability",
1506
+ "score": 5,
1507
+ "max": 10
1508
+ },
1509
+ {
1510
+ "id": "naming",
1511
+ "name": "Naming & conventions",
1512
+ "score": 10,
1513
+ "max": 10
1514
+ }
1515
+ ],
1516
+ "evaluatedAt": "2026-04-20T07:44:43.953Z",
1517
+ "evaluatedVersion": "1.1.1"
1518
+ }
295
1519
  },
296
1520
  {
297
1521
  "name": "prd-generator",
@@ -303,11 +1527,62 @@
303
1527
  "allowedTools": [],
304
1528
  "installUrl": "github:luongnv89/skills:skills/prd-generator",
305
1529
  "relPath": "skills/prd-generator",
306
- "verified": true
1530
+ "verified": true,
1531
+ "tokenCount": 2136,
1532
+ "evalSummary": {
1533
+ "overallScore": 86,
1534
+ "grade": "B",
1535
+ "categories": [
1536
+ {
1537
+ "id": "structure",
1538
+ "name": "Structure & completeness",
1539
+ "score": 10,
1540
+ "max": 10
1541
+ },
1542
+ {
1543
+ "id": "description",
1544
+ "name": "Description quality",
1545
+ "score": 10,
1546
+ "max": 10
1547
+ },
1548
+ {
1549
+ "id": "prompt-engineering",
1550
+ "name": "Prompt engineering",
1551
+ "score": 9,
1552
+ "max": 10
1553
+ },
1554
+ {
1555
+ "id": "context-efficiency",
1556
+ "name": "Context efficiency",
1557
+ "score": 9,
1558
+ "max": 10
1559
+ },
1560
+ {
1561
+ "id": "safety",
1562
+ "name": "Safety & guardrails",
1563
+ "score": 9,
1564
+ "max": 10
1565
+ },
1566
+ {
1567
+ "id": "testability",
1568
+ "name": "Testability",
1569
+ "score": 3,
1570
+ "max": 10
1571
+ },
1572
+ {
1573
+ "id": "naming",
1574
+ "name": "Naming & conventions",
1575
+ "score": 10,
1576
+ "max": 10
1577
+ }
1578
+ ],
1579
+ "evaluatedAt": "2026-04-20T07:44:43.954Z",
1580
+ "evaluatedVersion": "1.2.3"
1581
+ }
307
1582
  },
308
1583
  {
309
1584
  "name": "readme-to-landing-page",
310
- "description": "Transform any project README.md into a persuasive, landing-page-structured markdown file using proven copywriting frameworks (PAS, AIDA, StoryBrand). Reads the existing README and project files, extracts the product story, and rewrites the README.md to follow a conversion-optimized section flow — hero, problem, solution, how it works, social proof, FAQ, and CTA — all in pure markdown that renders natively on GitHub. Use when users ask to \"turn my README into a landing page\", \"make my README sell the project\", \"rewrite README as a landing page\", \"convert README to marketing style\", \"make my GitHub page more persuasive\", \"landing page my README\", \"optimize my README for conversions\", or want their GitHub front page to persuade visitors rather than just inform them. Also trigger when a user has a dry technical README and wants more stars, users, or contributors — even if they don't explicitly mention \"landing page\".",
1585
+ "description": "Transform a project README.md into a conversion-optimized landing page using PAS, AIDA, or StoryBrand frameworks — hero, value prop, how it works, quick start, and CTA in pure GitHub-renderable markdown.",
311
1586
  "version": "2.0.1",
312
1587
  "license": "MIT",
313
1588
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -315,23 +1590,125 @@
315
1590
  "allowedTools": [],
316
1591
  "installUrl": "github:luongnv89/skills:skills/readme-to-landing-page",
317
1592
  "relPath": "skills/readme-to-landing-page",
318
- "verified": true
1593
+ "verified": true,
1594
+ "tokenCount": 5201,
1595
+ "evalSummary": {
1596
+ "overallScore": 89,
1597
+ "grade": "B",
1598
+ "categories": [
1599
+ {
1600
+ "id": "structure",
1601
+ "name": "Structure & completeness",
1602
+ "score": 10,
1603
+ "max": 10
1604
+ },
1605
+ {
1606
+ "id": "description",
1607
+ "name": "Description quality",
1608
+ "score": 7,
1609
+ "max": 10
1610
+ },
1611
+ {
1612
+ "id": "prompt-engineering",
1613
+ "name": "Prompt engineering",
1614
+ "score": 9,
1615
+ "max": 10
1616
+ },
1617
+ {
1618
+ "id": "context-efficiency",
1619
+ "name": "Context efficiency",
1620
+ "score": 7,
1621
+ "max": 10
1622
+ },
1623
+ {
1624
+ "id": "safety",
1625
+ "name": "Safety & guardrails",
1626
+ "score": 9,
1627
+ "max": 10
1628
+ },
1629
+ {
1630
+ "id": "testability",
1631
+ "name": "Testability",
1632
+ "score": 10,
1633
+ "max": 10
1634
+ },
1635
+ {
1636
+ "id": "naming",
1637
+ "name": "Naming & conventions",
1638
+ "score": 10,
1639
+ "max": 10
1640
+ }
1641
+ ],
1642
+ "evaluatedAt": "2026-04-20T07:44:43.955Z",
1643
+ "evaluatedVersion": "2.0.1"
1644
+ }
319
1645
  },
320
1646
  {
321
1647
  "name": "release-manager",
322
- "description": "Complete release automation — version bumping, changelog generation, README updates, documentation sync, builds, git tags, GitHub releases, and publishing to PyPI/npm. Use when asked to \"prepare a release\", \"bump the version\", \"cut a release\", \"publish to npm/pypi\", \"update the changelog\", \"generate release notes\", \"what changed since last release\", or anything related to shipping a new version. Even if they only mention one part (like \"update changelog\"), use this skill because releases have interdependent steps.",
323
- "version": "2.3.1",
1648
+ "description": "Automate the full release lifecycle — version bump, changelog, README update, git tag, GitHub release, and PyPI/npm publishing. Use this skill whenever the user wants to cut a release, bump a version, tag and push, create a GitHub release, generate release notes or a changelog, publish to PyPI or npm, or asks what changed since the last release. Even if the user just says \"ship it\", \"make a release\", or \"tag this version\" this skill should handle it.",
1649
+ "version": "2.4.0",
324
1650
  "license": "MIT",
325
1651
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
326
1652
  "compatibility": "",
327
1653
  "allowedTools": [],
328
1654
  "installUrl": "github:luongnv89/skills:skills/release-manager",
329
1655
  "relPath": "skills/release-manager",
330
- "verified": true
1656
+ "verified": true,
1657
+ "tokenCount": 4720,
1658
+ "evalSummary": {
1659
+ "overallScore": 80,
1660
+ "grade": "B",
1661
+ "categories": [
1662
+ {
1663
+ "id": "structure",
1664
+ "name": "Structure & completeness",
1665
+ "score": 10,
1666
+ "max": 10
1667
+ },
1668
+ {
1669
+ "id": "description",
1670
+ "name": "Description quality",
1671
+ "score": 0,
1672
+ "max": 10
1673
+ },
1674
+ {
1675
+ "id": "prompt-engineering",
1676
+ "name": "Prompt engineering",
1677
+ "score": 9,
1678
+ "max": 10
1679
+ },
1680
+ {
1681
+ "id": "context-efficiency",
1682
+ "name": "Context efficiency",
1683
+ "score": 7,
1684
+ "max": 10
1685
+ },
1686
+ {
1687
+ "id": "safety",
1688
+ "name": "Safety & guardrails",
1689
+ "score": 10,
1690
+ "max": 10
1691
+ },
1692
+ {
1693
+ "id": "testability",
1694
+ "name": "Testability",
1695
+ "score": 10,
1696
+ "max": 10
1697
+ },
1698
+ {
1699
+ "id": "naming",
1700
+ "name": "Naming & conventions",
1701
+ "score": 10,
1702
+ "max": 10
1703
+ }
1704
+ ],
1705
+ "evaluatedAt": "2026-04-20T07:44:43.957Z",
1706
+ "evaluatedVersion": "2.4.0"
1707
+ }
331
1708
  },
332
1709
  {
333
1710
  "name": "seo-ai-optimizer",
334
- "description": "Audits and optimizes website codebases for SEO and AI bot scanning. Covers technical SEO (meta tags, sitemaps, robots.txt, canonical URLs, page speed hints, structured data), content SEO (heading structure, alt text, readability), and AI bot accessibility (llms.txt, GPTBot/ClaudeBot directives, ai-plugin.json, Schema.org/JSON-LD). Use when user asks to \"optimize for SEO\", \"audit SEO\", \"improve search rankings\", \"make site AI-friendly\", \"add structured data\", \"fix meta tags\", or \"optimize for AI bots\". Works with any web framework.",
1711
+ "description": "Audit and optimize website codebases for technical SEO, content SEO, and AI bot accessibility. Fixes meta tags, sitemaps, robots.txt, structured data, llms.txt, and GPTBot/ClaudeBot directives across any web framework.",
335
1712
  "version": "1.1.1",
336
1713
  "license": "MIT",
337
1714
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -339,23 +1716,125 @@
339
1716
  "allowedTools": [],
340
1717
  "installUrl": "github:luongnv89/skills:skills/seo-ai-optimizer",
341
1718
  "relPath": "skills/seo-ai-optimizer",
342
- "verified": true
1719
+ "verified": true,
1720
+ "tokenCount": 4393,
1721
+ "evalSummary": {
1722
+ "overallScore": 94,
1723
+ "grade": "A",
1724
+ "categories": [
1725
+ {
1726
+ "id": "structure",
1727
+ "name": "Structure & completeness",
1728
+ "score": 10,
1729
+ "max": 10
1730
+ },
1731
+ {
1732
+ "id": "description",
1733
+ "name": "Description quality",
1734
+ "score": 10,
1735
+ "max": 10
1736
+ },
1737
+ {
1738
+ "id": "prompt-engineering",
1739
+ "name": "Prompt engineering",
1740
+ "score": 10,
1741
+ "max": 10
1742
+ },
1743
+ {
1744
+ "id": "context-efficiency",
1745
+ "name": "Context efficiency",
1746
+ "score": 7,
1747
+ "max": 10
1748
+ },
1749
+ {
1750
+ "id": "safety",
1751
+ "name": "Safety & guardrails",
1752
+ "score": 9,
1753
+ "max": 10
1754
+ },
1755
+ {
1756
+ "id": "testability",
1757
+ "name": "Testability",
1758
+ "score": 10,
1759
+ "max": 10
1760
+ },
1761
+ {
1762
+ "id": "naming",
1763
+ "name": "Naming & conventions",
1764
+ "score": 10,
1765
+ "max": 10
1766
+ }
1767
+ ],
1768
+ "evaluatedAt": "2026-04-20T07:44:43.958Z",
1769
+ "evaluatedVersion": "1.1.1"
1770
+ }
343
1771
  },
344
1772
  {
345
1773
  "name": "skill-creator",
346
1774
  "description": "Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, update or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.",
347
- "version": "1.2.1",
1775
+ "version": "1.2.2",
348
1776
  "license": "MIT",
349
1777
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
350
1778
  "compatibility": "",
351
1779
  "allowedTools": [],
352
1780
  "installUrl": "github:luongnv89/skills:skills/skill-creator",
353
1781
  "relPath": "skills/skill-creator",
354
- "verified": true
1782
+ "verified": true,
1783
+ "tokenCount": 13818,
1784
+ "evalSummary": {
1785
+ "overallScore": 90,
1786
+ "grade": "A",
1787
+ "categories": [
1788
+ {
1789
+ "id": "structure",
1790
+ "name": "Structure & completeness",
1791
+ "score": 10,
1792
+ "max": 10
1793
+ },
1794
+ {
1795
+ "id": "description",
1796
+ "name": "Description quality",
1797
+ "score": 8,
1798
+ "max": 10
1799
+ },
1800
+ {
1801
+ "id": "prompt-engineering",
1802
+ "name": "Prompt engineering",
1803
+ "score": 9,
1804
+ "max": 10
1805
+ },
1806
+ {
1807
+ "id": "context-efficiency",
1808
+ "name": "Context efficiency",
1809
+ "score": 6,
1810
+ "max": 10
1811
+ },
1812
+ {
1813
+ "id": "safety",
1814
+ "name": "Safety & guardrails",
1815
+ "score": 10,
1816
+ "max": 10
1817
+ },
1818
+ {
1819
+ "id": "testability",
1820
+ "name": "Testability",
1821
+ "score": 10,
1822
+ "max": 10
1823
+ },
1824
+ {
1825
+ "id": "naming",
1826
+ "name": "Naming & conventions",
1827
+ "score": 10,
1828
+ "max": 10
1829
+ }
1830
+ ],
1831
+ "evaluatedAt": "2026-04-20T07:44:43.961Z",
1832
+ "evaluatedVersion": "1.2.2"
1833
+ }
355
1834
  },
356
1835
  {
357
1836
  "name": "skill-inventory-auditor",
358
- "description": "Audit all installed agent skills across global and project scopes to find and remove duplicate skills. Use when asked to \"audit my skills\", \"check for duplicate skills\", \"clean up skills\", \"deduplicate skills\", \"find duplicate skills\", or when the user wants to find and remove duplicated skill installations.",
1837
+ "description": "Audit all installed agent skills across global and project scopes to find and remove duplicate skills. Use when asked to \"audit my skills\", \"deduplicate skills\", \"clean up skills\", or \"find duplicate skill installations\".",
359
1838
  "version": "1.0.1",
360
1839
  "license": "MIT",
361
1840
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -363,7 +1842,121 @@
363
1842
  "allowedTools": [],
364
1843
  "installUrl": "github:luongnv89/skills:skills/skill-inventory-auditor",
365
1844
  "relPath": "skills/skill-inventory-auditor",
366
- "verified": true
1845
+ "verified": true,
1846
+ "tokenCount": 1953,
1847
+ "evalSummary": {
1848
+ "overallScore": 94,
1849
+ "grade": "A",
1850
+ "categories": [
1851
+ {
1852
+ "id": "structure",
1853
+ "name": "Structure & completeness",
1854
+ "score": 10,
1855
+ "max": 10
1856
+ },
1857
+ {
1858
+ "id": "description",
1859
+ "name": "Description quality",
1860
+ "score": 10,
1861
+ "max": 10
1862
+ },
1863
+ {
1864
+ "id": "prompt-engineering",
1865
+ "name": "Prompt engineering",
1866
+ "score": 7,
1867
+ "max": 10
1868
+ },
1869
+ {
1870
+ "id": "context-efficiency",
1871
+ "name": "Context efficiency",
1872
+ "score": 9,
1873
+ "max": 10
1874
+ },
1875
+ {
1876
+ "id": "safety",
1877
+ "name": "Safety & guardrails",
1878
+ "score": 10,
1879
+ "max": 10
1880
+ },
1881
+ {
1882
+ "id": "testability",
1883
+ "name": "Testability",
1884
+ "score": 10,
1885
+ "max": 10
1886
+ },
1887
+ {
1888
+ "id": "naming",
1889
+ "name": "Naming & conventions",
1890
+ "score": 10,
1891
+ "max": 10
1892
+ }
1893
+ ],
1894
+ "evaluatedAt": "2026-04-20T07:44:43.962Z",
1895
+ "evaluatedVersion": "1.0.1"
1896
+ }
1897
+ },
1898
+ {
1899
+ "name": "slop-code",
1900
+ "description": "Clean up a codebase by removing AI slop, dead code, weak types, duplication, defensive over-engineering, and legacy cruft using 8 parallel specialized subagents across two cleanup waves.",
1901
+ "version": "1.0.0",
1902
+ "license": "MIT",
1903
+ "creator": "Luong NGUYEN <luongnv89@gmail.com>",
1904
+ "compatibility": "",
1905
+ "allowedTools": [],
1906
+ "installUrl": "github:luongnv89/skills:skills/slop-code",
1907
+ "relPath": "skills/slop-code",
1908
+ "verified": true,
1909
+ "tokenCount": 4460,
1910
+ "evalSummary": {
1911
+ "overallScore": 87,
1912
+ "grade": "B",
1913
+ "categories": [
1914
+ {
1915
+ "id": "structure",
1916
+ "name": "Structure & completeness",
1917
+ "score": 10,
1918
+ "max": 10
1919
+ },
1920
+ {
1921
+ "id": "description",
1922
+ "name": "Description quality",
1923
+ "score": 4,
1924
+ "max": 10
1925
+ },
1926
+ {
1927
+ "id": "prompt-engineering",
1928
+ "name": "Prompt engineering",
1929
+ "score": 9,
1930
+ "max": 10
1931
+ },
1932
+ {
1933
+ "id": "context-efficiency",
1934
+ "name": "Context efficiency",
1935
+ "score": 8,
1936
+ "max": 10
1937
+ },
1938
+ {
1939
+ "id": "safety",
1940
+ "name": "Safety & guardrails",
1941
+ "score": 10,
1942
+ "max": 10
1943
+ },
1944
+ {
1945
+ "id": "testability",
1946
+ "name": "Testability",
1947
+ "score": 10,
1948
+ "max": 10
1949
+ },
1950
+ {
1951
+ "id": "naming",
1952
+ "name": "Naming & conventions",
1953
+ "score": 10,
1954
+ "max": 10
1955
+ }
1956
+ ],
1957
+ "evaluatedAt": "2026-04-20T07:44:43.963Z",
1958
+ "evaluatedVersion": "1.0.0"
1959
+ }
367
1960
  },
368
1961
  {
369
1962
  "name": "system-design",
@@ -375,7 +1968,58 @@
375
1968
  "allowedTools": [],
376
1969
  "installUrl": "github:luongnv89/skills:skills/system-design",
377
1970
  "relPath": "skills/system-design",
378
- "verified": true
1971
+ "verified": true,
1972
+ "tokenCount": 2514,
1973
+ "evalSummary": {
1974
+ "overallScore": 87,
1975
+ "grade": "B",
1976
+ "categories": [
1977
+ {
1978
+ "id": "structure",
1979
+ "name": "Structure & completeness",
1980
+ "score": 10,
1981
+ "max": 10
1982
+ },
1983
+ {
1984
+ "id": "description",
1985
+ "name": "Description quality",
1986
+ "score": 8,
1987
+ "max": 10
1988
+ },
1989
+ {
1990
+ "id": "prompt-engineering",
1991
+ "name": "Prompt engineering",
1992
+ "score": 9,
1993
+ "max": 10
1994
+ },
1995
+ {
1996
+ "id": "context-efficiency",
1997
+ "name": "Context efficiency",
1998
+ "score": 10,
1999
+ "max": 10
2000
+ },
2001
+ {
2002
+ "id": "safety",
2003
+ "name": "Safety & guardrails",
2004
+ "score": 9,
2005
+ "max": 10
2006
+ },
2007
+ {
2008
+ "id": "testability",
2009
+ "name": "Testability",
2010
+ "score": 5,
2011
+ "max": 10
2012
+ },
2013
+ {
2014
+ "id": "naming",
2015
+ "name": "Naming & conventions",
2016
+ "score": 10,
2017
+ "max": 10
2018
+ }
2019
+ ],
2020
+ "evaluatedAt": "2026-04-20T07:44:43.963Z",
2021
+ "evaluatedVersion": "1.1.1"
2022
+ }
379
2023
  },
380
2024
  {
381
2025
  "name": "tasks-generator",
@@ -387,11 +2031,62 @@
387
2031
  "allowedTools": [],
388
2032
  "installUrl": "github:luongnv89/skills:skills/tasks-generator",
389
2033
  "relPath": "skills/tasks-generator",
390
- "verified": true
2034
+ "verified": true,
2035
+ "tokenCount": 2235,
2036
+ "evalSummary": {
2037
+ "overallScore": 89,
2038
+ "grade": "B",
2039
+ "categories": [
2040
+ {
2041
+ "id": "structure",
2042
+ "name": "Structure & completeness",
2043
+ "score": 10,
2044
+ "max": 10
2045
+ },
2046
+ {
2047
+ "id": "description",
2048
+ "name": "Description quality",
2049
+ "score": 8,
2050
+ "max": 10
2051
+ },
2052
+ {
2053
+ "id": "prompt-engineering",
2054
+ "name": "Prompt engineering",
2055
+ "score": 9,
2056
+ "max": 10
2057
+ },
2058
+ {
2059
+ "id": "context-efficiency",
2060
+ "name": "Context efficiency",
2061
+ "score": 9,
2062
+ "max": 10
2063
+ },
2064
+ {
2065
+ "id": "safety",
2066
+ "name": "Safety & guardrails",
2067
+ "score": 9,
2068
+ "max": 10
2069
+ },
2070
+ {
2071
+ "id": "testability",
2072
+ "name": "Testability",
2073
+ "score": 7,
2074
+ "max": 10
2075
+ },
2076
+ {
2077
+ "id": "naming",
2078
+ "name": "Naming & conventions",
2079
+ "score": 10,
2080
+ "max": 10
2081
+ }
2082
+ ],
2083
+ "evaluatedAt": "2026-04-20T07:44:43.964Z",
2084
+ "evaluatedVersion": "1.1.1"
2085
+ }
391
2086
  },
392
2087
  {
393
2088
  "name": "test-coverage",
394
- "description": "Expand unit test coverage by targeting untested branches and edge cases. Use when users ask to \"increase test coverage\", \"add more tests\", \"expand unit tests\", \"cover edge cases\", \"improve test coverage\", or want to identify and fill gaps in existing test suites. Adapts to project's testing framework.",
2089
+ "description": "Expand unit test coverage by targeting untested branches and edge cases in any language. Identifies coverage gaps, writes new tests using the project's existing framework, and verifies measurable improvement.",
395
2090
  "version": "1.2.1",
396
2091
  "license": "MIT",
397
2092
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -399,11 +2094,62 @@
399
2094
  "allowedTools": [],
400
2095
  "installUrl": "github:luongnv89/skills:skills/test-coverage",
401
2096
  "relPath": "skills/test-coverage",
402
- "verified": true
2097
+ "verified": true,
2098
+ "tokenCount": 1922,
2099
+ "evalSummary": {
2100
+ "overallScore": 89,
2101
+ "grade": "B",
2102
+ "categories": [
2103
+ {
2104
+ "id": "structure",
2105
+ "name": "Structure & completeness",
2106
+ "score": 10,
2107
+ "max": 10
2108
+ },
2109
+ {
2110
+ "id": "description",
2111
+ "name": "Description quality",
2112
+ "score": 4,
2113
+ "max": 10
2114
+ },
2115
+ {
2116
+ "id": "prompt-engineering",
2117
+ "name": "Prompt engineering",
2118
+ "score": 9,
2119
+ "max": 10
2120
+ },
2121
+ {
2122
+ "id": "context-efficiency",
2123
+ "name": "Context efficiency",
2124
+ "score": 10,
2125
+ "max": 10
2126
+ },
2127
+ {
2128
+ "id": "safety",
2129
+ "name": "Safety & guardrails",
2130
+ "score": 9,
2131
+ "max": 10
2132
+ },
2133
+ {
2134
+ "id": "testability",
2135
+ "name": "Testability",
2136
+ "score": 10,
2137
+ "max": 10
2138
+ },
2139
+ {
2140
+ "id": "naming",
2141
+ "name": "Naming & conventions",
2142
+ "score": 10,
2143
+ "max": 10
2144
+ }
2145
+ ],
2146
+ "evaluatedAt": "2026-04-20T07:44:43.965Z",
2147
+ "evaluatedVersion": "1.2.1"
2148
+ }
403
2149
  },
404
2150
  {
405
2151
  "name": "theme-transformer",
406
- "description": "Transform an existing website/app UI into a futuristic cyberpunk, neon, space, or digital-dark theme with user-adjustable colors. Use when asked to \"reskin the UI\", \"apply a dark theme\", \"cyberpunk style this app\", \"make the interface futuristic\", \"apply neon command center style\", or migrate a product to a new visual theme.",
2152
+ "description": "Transform an existing website/app UI into a futuristic cyberpunk, neon, space, or digital-dark theme with user-adjustable colors. Use when asked to \"reskin the UI\", \"dark theme\", \"cyberpunk style\", or \"make the interface futuristic\".",
407
2153
  "version": "1.0.1",
408
2154
  "license": "MIT",
409
2155
  "creator": "Luong NGUYEN <luongnv89@gmail.com>",
@@ -411,7 +2157,58 @@
411
2157
  "allowedTools": [],
412
2158
  "installUrl": "github:luongnv89/skills:skills/theme-transformer",
413
2159
  "relPath": "skills/theme-transformer",
414
- "verified": true
2160
+ "verified": true,
2161
+ "tokenCount": 2164,
2162
+ "evalSummary": {
2163
+ "overallScore": 99,
2164
+ "grade": "A",
2165
+ "categories": [
2166
+ {
2167
+ "id": "structure",
2168
+ "name": "Structure & completeness",
2169
+ "score": 10,
2170
+ "max": 10
2171
+ },
2172
+ {
2173
+ "id": "description",
2174
+ "name": "Description quality",
2175
+ "score": 10,
2176
+ "max": 10
2177
+ },
2178
+ {
2179
+ "id": "prompt-engineering",
2180
+ "name": "Prompt engineering",
2181
+ "score": 10,
2182
+ "max": 10
2183
+ },
2184
+ {
2185
+ "id": "context-efficiency",
2186
+ "name": "Context efficiency",
2187
+ "score": 10,
2188
+ "max": 10
2189
+ },
2190
+ {
2191
+ "id": "safety",
2192
+ "name": "Safety & guardrails",
2193
+ "score": 9,
2194
+ "max": 10
2195
+ },
2196
+ {
2197
+ "id": "testability",
2198
+ "name": "Testability",
2199
+ "score": 10,
2200
+ "max": 10
2201
+ },
2202
+ {
2203
+ "id": "naming",
2204
+ "name": "Naming & conventions",
2205
+ "score": 10,
2206
+ "max": 10
2207
+ }
2208
+ ],
2209
+ "evaluatedAt": "2026-04-20T07:44:43.965Z",
2210
+ "evaluatedVersion": "1.0.1"
2211
+ }
415
2212
  },
416
2213
  {
417
2214
  "name": "vscode-extension-publisher",
@@ -423,7 +2220,58 @@
423
2220
  "allowedTools": [],
424
2221
  "installUrl": "github:luongnv89/skills:skills/vscode-extension-publisher",
425
2222
  "relPath": "skills/vscode-extension-publisher",
426
- "verified": true
2223
+ "verified": true,
2224
+ "tokenCount": 2629,
2225
+ "evalSummary": {
2226
+ "overallScore": 89,
2227
+ "grade": "B",
2228
+ "categories": [
2229
+ {
2230
+ "id": "structure",
2231
+ "name": "Structure & completeness",
2232
+ "score": 10,
2233
+ "max": 10
2234
+ },
2235
+ {
2236
+ "id": "description",
2237
+ "name": "Description quality",
2238
+ "score": 8,
2239
+ "max": 10
2240
+ },
2241
+ {
2242
+ "id": "prompt-engineering",
2243
+ "name": "Prompt engineering",
2244
+ "score": 10,
2245
+ "max": 10
2246
+ },
2247
+ {
2248
+ "id": "context-efficiency",
2249
+ "name": "Context efficiency",
2250
+ "score": 10,
2251
+ "max": 10
2252
+ },
2253
+ {
2254
+ "id": "safety",
2255
+ "name": "Safety & guardrails",
2256
+ "score": 9,
2257
+ "max": 10
2258
+ },
2259
+ {
2260
+ "id": "testability",
2261
+ "name": "Testability",
2262
+ "score": 5,
2263
+ "max": 10
2264
+ },
2265
+ {
2266
+ "id": "naming",
2267
+ "name": "Naming & conventions",
2268
+ "score": 10,
2269
+ "max": 10
2270
+ }
2271
+ ],
2272
+ "evaluatedAt": "2026-04-20T07:44:43.966Z",
2273
+ "evaluatedVersion": "1.0.1"
2274
+ }
427
2275
  }
428
2276
  ]
429
2277
  }