agent-skill-manager 2.5.0 → 2.6.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 +1 -1
  2. package/data/skill-index/Affitor_affiliate-skills.json +4089 -167
  3. package/data/skill-index/Eronred_aso-skills.json +2251 -31
  4. package/data/skill-index/GPTomics_bioSkills.json +33126 -640
  5. package/data/skill-index/Galaxy-Dawn_claude-scholar.json +3084 -765
  6. package/data/skill-index/Imbad0202_academic-research-skills.json +315 -19
  7. package/data/skill-index/K-Dense-AI_claude-scientific-skills.json +10060 -144
  8. package/data/skill-index/Leonxlnx_taste-skill.json +1150 -10
  9. package/data/skill-index/Master-cai_Research-Paper-Writing-Skills.json +76 -2
  10. package/data/skill-index/MiniMax-AI_skills.json +1730 -28
  11. package/data/skill-index/Paramchoudhary_ResumeSkills.json +10421 -0
  12. package/data/skill-index/affaan-m_everything-claude-code.json +35901 -2483
  13. package/data/skill-index/alirezarezvani_claude-skills.json +40310 -1896
  14. package/data/skill-index/anthropics_skills.json +1352 -20
  15. package/data/skill-index/antonbabenko_terraform-skill.json +15 -15
  16. package/data/skill-index/bytedance_deer-flow.json +1657 -29
  17. package/data/skill-index/coreyhaines31_marketingskills.json +3266 -54
  18. package/data/skill-index/github_awesome-copilot.json +36002 -902
  19. package/data/skill-index/google_skills.json +119 -119
  20. package/data/skill-index/heygen-com_hyperframes.json +1346 -17
  21. package/data/skill-index/himself65_finance-skills.json +1866 -38
  22. package/data/skill-index/kemiljk_fluid-design.json +76 -2
  23. package/data/skill-index/kepano_obsidian-skills.json +376 -6
  24. package/data/skill-index/luongnv89_skills.json +2425 -857
  25. package/data/skill-index/mattpocock_skills.json +1809 -118
  26. package/data/skill-index/nextlevelbuilder_ui-ux-pro-max-skill.json +538 -20
  27. package/data/skill-index/obra_superpowers.json +1051 -15
  28. package/data/skill-index/sickn33_antigravity-awesome-skills.json +346070 -13548
  29. package/data/skill-index/slavingia_skills.json +751 -11
  30. package/data/skill-index-resources.json +10 -1
  31. package/dist/agent-skill-manager.js +197 -197
  32. package/dist/{chunk-QY4LTOTR.js → chunk-5ADANJQ6.js} +1 -1
  33. package/dist/{src-YK2KIAU7.js → src-SVL3X6OZ.js} +1 -1
  34. package/package.json +1 -1
@@ -2,9 +2,146 @@
2
2
  "repoUrl": "https://github.com/himself65/finance-skills.git",
3
3
  "owner": "himself65",
4
4
  "repo": "finance-skills",
5
- "updatedAt": "2026-04-20T07:44:18.402Z",
6
- "skillCount": 21,
5
+ "updatedAt": "2026-04-30T23:05:19.253Z",
6
+ "skillCount": 23,
7
7
  "skills": [
8
+ {
9
+ "name": "company-valuation",
10
+ "description": "Estimate the intrinsic value of a public company using DCF, relative (peer multiple) and sum-of-parts (SOTP) methods, then triangulate to an implied share price with upside/downside versus the current market price. Use this skill whenever the user asks: \"what is AAPL worth\", \"valuation of NVDA\", \"fair value of TSLA\", \"intrinsic value\", \"DCF for MSFT\", \"build a DCF\", \"discounted cash flow\", \"WACC\", \"terminal value\", \"implied share price\", \"upside to fair value\", \"is X overvalued/undervalued\", \"relative valuation\", \"peer comparison valuation\", \"EV/EBITDA target\", \"SOTP\", \"sum of the parts\", \"how much is [company] worth\", \"price target from fundamentals\", \"value this company\", or any ticker in the context of computing intrinsic or relative valuation. Default to running ALL three methods (DCF + relative + SOTP-if-applicable) and presenting a blended implied price with a sensitivity table. Do not answer valuation questions from memory — always run the workflow.",
11
+ "version": "0.0.0",
12
+ "license": "",
13
+ "creator": "",
14
+ "compatibility": "",
15
+ "allowedTools": [],
16
+ "installUrl": "github:himself65/finance-skills:plugins/market-analysis/skills/company-valuation",
17
+ "relPath": "plugins/market-analysis/skills/company-valuation",
18
+ "verified": true,
19
+ "tokenCount": 3929,
20
+ "evalSummary": {
21
+ "overallScore": 59,
22
+ "grade": "D",
23
+ "categories": [
24
+ {
25
+ "id": "structure",
26
+ "name": "Structure & completeness",
27
+ "score": 7,
28
+ "max": 10
29
+ },
30
+ {
31
+ "id": "description",
32
+ "name": "Description quality",
33
+ "score": 3,
34
+ "max": 10
35
+ },
36
+ {
37
+ "id": "prompt-engineering",
38
+ "name": "Prompt engineering",
39
+ "score": 7,
40
+ "max": 10
41
+ },
42
+ {
43
+ "id": "context-efficiency",
44
+ "name": "Context efficiency",
45
+ "score": 7,
46
+ "max": 10
47
+ },
48
+ {
49
+ "id": "safety",
50
+ "name": "Safety & guardrails",
51
+ "score": 2,
52
+ "max": 10
53
+ },
54
+ {
55
+ "id": "testability",
56
+ "name": "Testability",
57
+ "score": 5,
58
+ "max": 10
59
+ },
60
+ {
61
+ "id": "naming",
62
+ "name": "Naming & conventions",
63
+ "score": 10,
64
+ "max": 10
65
+ }
66
+ ],
67
+ "evaluatedAt": "2026-04-30T23:05:19.210Z",
68
+ "evaluatedVersion": "0.0.0"
69
+ },
70
+ "evalSummaries": {
71
+ "quality": {
72
+ "providerId": "quality",
73
+ "providerVersion": "1.0.0",
74
+ "schemaVersion": 1,
75
+ "passed": true,
76
+ "overallScore": 59,
77
+ "grade": "D",
78
+ "categories": [
79
+ {
80
+ "id": "structure",
81
+ "name": "Structure & completeness",
82
+ "score": 7,
83
+ "max": 10
84
+ },
85
+ {
86
+ "id": "description",
87
+ "name": "Description quality",
88
+ "score": 3,
89
+ "max": 10
90
+ },
91
+ {
92
+ "id": "prompt-engineering",
93
+ "name": "Prompt engineering",
94
+ "score": 7,
95
+ "max": 10
96
+ },
97
+ {
98
+ "id": "context-efficiency",
99
+ "name": "Context efficiency",
100
+ "score": 7,
101
+ "max": 10
102
+ },
103
+ {
104
+ "id": "safety",
105
+ "name": "Safety & guardrails",
106
+ "score": 2,
107
+ "max": 10
108
+ },
109
+ {
110
+ "id": "testability",
111
+ "name": "Testability",
112
+ "score": 5,
113
+ "max": 10
114
+ },
115
+ {
116
+ "id": "naming",
117
+ "name": "Naming & conventions",
118
+ "score": 10,
119
+ "max": 10
120
+ }
121
+ ],
122
+ "evaluatedAt": "2026-04-30T23:05:19.210Z",
123
+ "evaluatedVersion": "0.0.0"
124
+ },
125
+ "skill-best-practice": {
126
+ "providerId": "skill-best-practice",
127
+ "providerVersion": "1.1.0",
128
+ "schemaVersion": 1,
129
+ "passed": false,
130
+ "overallScore": 69,
131
+ "grade": "C",
132
+ "categories": [
133
+ {
134
+ "id": "validation",
135
+ "name": "Deterministic validation",
136
+ "score": 9,
137
+ "max": 13
138
+ }
139
+ ],
140
+ "evaluatedAt": "2026-04-30T23:05:19.210Z",
141
+ "evaluatedVersion": "0.0.0"
142
+ }
143
+ }
144
+ },
8
145
  {
9
146
  "name": "discord-reader",
10
147
  "description": "Read Discord for financial research using opencli (read-only). Use this skill whenever the user wants to read Discord channels, search for messages in trading servers, view guild/channel info, monitor crypto or market discussion groups, or gather financial sentiment from Discord. Triggers include: \"check my Discord\", \"search Discord for\", \"read Discord messages\", \"what's happening in the trading Discord\", \"show Discord channels\", \"list my servers\", \"Discord sentiment on BTC\", \"what are people saying in Discord about AAPL\", \"monitor crypto Discord\", any mention of Discord in context of reading financial news, market research, or trading community discussions. This skill is READ-ONLY — it does NOT support sending messages, reacting, or any write operations.",
@@ -16,7 +153,7 @@
16
153
  "installUrl": "github:himself65/finance-skills:plugins/social-readers/skills/discord-reader",
17
154
  "relPath": "plugins/social-readers/skills/discord-reader",
18
155
  "verified": true,
19
- "tokenCount": 2163,
156
+ "tokenCount": 2219,
20
157
  "evalSummary": {
21
158
  "overallScore": 70,
22
159
  "grade": "C",
@@ -64,8 +201,82 @@
64
201
  "max": 10
65
202
  }
66
203
  ],
67
- "evaluatedAt": "2026-04-20T07:44:18.368Z",
204
+ "evaluatedAt": "2026-04-30T23:05:19.212Z",
68
205
  "evaluatedVersion": "0.0.0"
206
+ },
207
+ "evalSummaries": {
208
+ "quality": {
209
+ "providerId": "quality",
210
+ "providerVersion": "1.0.0",
211
+ "schemaVersion": 1,
212
+ "passed": true,
213
+ "overallScore": 70,
214
+ "grade": "C",
215
+ "categories": [
216
+ {
217
+ "id": "structure",
218
+ "name": "Structure & completeness",
219
+ "score": 7,
220
+ "max": 10
221
+ },
222
+ {
223
+ "id": "description",
224
+ "name": "Description quality",
225
+ "score": 3,
226
+ "max": 10
227
+ },
228
+ {
229
+ "id": "prompt-engineering",
230
+ "name": "Prompt engineering",
231
+ "score": 6,
232
+ "max": 10
233
+ },
234
+ {
235
+ "id": "context-efficiency",
236
+ "name": "Context efficiency",
237
+ "score": 10,
238
+ "max": 10
239
+ },
240
+ {
241
+ "id": "safety",
242
+ "name": "Safety & guardrails",
243
+ "score": 10,
244
+ "max": 10
245
+ },
246
+ {
247
+ "id": "testability",
248
+ "name": "Testability",
249
+ "score": 3,
250
+ "max": 10
251
+ },
252
+ {
253
+ "id": "naming",
254
+ "name": "Naming & conventions",
255
+ "score": 10,
256
+ "max": 10
257
+ }
258
+ ],
259
+ "evaluatedAt": "2026-04-30T23:05:19.212Z",
260
+ "evaluatedVersion": "0.0.0"
261
+ },
262
+ "skill-best-practice": {
263
+ "providerId": "skill-best-practice",
264
+ "providerVersion": "1.1.0",
265
+ "schemaVersion": 1,
266
+ "passed": false,
267
+ "overallScore": 69,
268
+ "grade": "C",
269
+ "categories": [
270
+ {
271
+ "id": "validation",
272
+ "name": "Deterministic validation",
273
+ "score": 9,
274
+ "max": 13
275
+ }
276
+ ],
277
+ "evaluatedAt": "2026-04-30T23:05:19.212Z",
278
+ "evaluatedVersion": "0.0.0"
279
+ }
69
280
  }
70
281
  },
71
282
  {
@@ -127,8 +338,82 @@
127
338
  "max": 10
128
339
  }
129
340
  ],
130
- "evaluatedAt": "2026-04-20T07:44:18.369Z",
341
+ "evaluatedAt": "2026-04-30T23:05:19.214Z",
131
342
  "evaluatedVersion": "0.0.0"
343
+ },
344
+ "evalSummaries": {
345
+ "quality": {
346
+ "providerId": "quality",
347
+ "providerVersion": "1.0.0",
348
+ "schemaVersion": 1,
349
+ "passed": true,
350
+ "overallScore": 70,
351
+ "grade": "C",
352
+ "categories": [
353
+ {
354
+ "id": "structure",
355
+ "name": "Structure & completeness",
356
+ "score": 7,
357
+ "max": 10
358
+ },
359
+ {
360
+ "id": "description",
361
+ "name": "Description quality",
362
+ "score": 6,
363
+ "max": 10
364
+ },
365
+ {
366
+ "id": "prompt-engineering",
367
+ "name": "Prompt engineering",
368
+ "score": 5,
369
+ "max": 10
370
+ },
371
+ {
372
+ "id": "context-efficiency",
373
+ "name": "Context efficiency",
374
+ "score": 9,
375
+ "max": 10
376
+ },
377
+ {
378
+ "id": "safety",
379
+ "name": "Safety & guardrails",
380
+ "score": 7,
381
+ "max": 10
382
+ },
383
+ {
384
+ "id": "testability",
385
+ "name": "Testability",
386
+ "score": 5,
387
+ "max": 10
388
+ },
389
+ {
390
+ "id": "naming",
391
+ "name": "Naming & conventions",
392
+ "score": 10,
393
+ "max": 10
394
+ }
395
+ ],
396
+ "evaluatedAt": "2026-04-30T23:05:19.214Z",
397
+ "evaluatedVersion": "0.0.0"
398
+ },
399
+ "skill-best-practice": {
400
+ "providerId": "skill-best-practice",
401
+ "providerVersion": "1.1.0",
402
+ "schemaVersion": 1,
403
+ "passed": false,
404
+ "overallScore": 69,
405
+ "grade": "C",
406
+ "categories": [
407
+ {
408
+ "id": "validation",
409
+ "name": "Deterministic validation",
410
+ "score": 9,
411
+ "max": 13
412
+ }
413
+ ],
414
+ "evaluatedAt": "2026-04-30T23:05:19.214Z",
415
+ "evaluatedVersion": "0.0.0"
416
+ }
132
417
  }
133
418
  },
134
419
  {
@@ -190,8 +475,82 @@
190
475
  "max": 10
191
476
  }
192
477
  ],
193
- "evaluatedAt": "2026-04-20T07:44:18.370Z",
478
+ "evaluatedAt": "2026-04-30T23:05:19.216Z",
194
479
  "evaluatedVersion": "0.0.0"
480
+ },
481
+ "evalSummaries": {
482
+ "quality": {
483
+ "providerId": "quality",
484
+ "providerVersion": "1.0.0",
485
+ "schemaVersion": 1,
486
+ "passed": true,
487
+ "overallScore": 70,
488
+ "grade": "C",
489
+ "categories": [
490
+ {
491
+ "id": "structure",
492
+ "name": "Structure & completeness",
493
+ "score": 7,
494
+ "max": 10
495
+ },
496
+ {
497
+ "id": "description",
498
+ "name": "Description quality",
499
+ "score": 6,
500
+ "max": 10
501
+ },
502
+ {
503
+ "id": "prompt-engineering",
504
+ "name": "Prompt engineering",
505
+ "score": 6,
506
+ "max": 10
507
+ },
508
+ {
509
+ "id": "context-efficiency",
510
+ "name": "Context efficiency",
511
+ "score": 9,
512
+ "max": 10
513
+ },
514
+ {
515
+ "id": "safety",
516
+ "name": "Safety & guardrails",
517
+ "score": 6,
518
+ "max": 10
519
+ },
520
+ {
521
+ "id": "testability",
522
+ "name": "Testability",
523
+ "score": 5,
524
+ "max": 10
525
+ },
526
+ {
527
+ "id": "naming",
528
+ "name": "Naming & conventions",
529
+ "score": 10,
530
+ "max": 10
531
+ }
532
+ ],
533
+ "evaluatedAt": "2026-04-30T23:05:19.216Z",
534
+ "evaluatedVersion": "0.0.0"
535
+ },
536
+ "skill-best-practice": {
537
+ "providerId": "skill-best-practice",
538
+ "providerVersion": "1.1.0",
539
+ "schemaVersion": 1,
540
+ "passed": false,
541
+ "overallScore": 69,
542
+ "grade": "C",
543
+ "categories": [
544
+ {
545
+ "id": "validation",
546
+ "name": "Deterministic validation",
547
+ "score": 9,
548
+ "max": 13
549
+ }
550
+ ],
551
+ "evaluatedAt": "2026-04-30T23:05:19.216Z",
552
+ "evaluatedVersion": "0.0.0"
553
+ }
195
554
  }
196
555
  },
197
556
  {
@@ -253,8 +612,82 @@
253
612
  "max": 10
254
613
  }
255
614
  ],
256
- "evaluatedAt": "2026-04-20T07:44:18.371Z",
615
+ "evaluatedAt": "2026-04-30T23:05:19.217Z",
257
616
  "evaluatedVersion": "0.0.0"
617
+ },
618
+ "evalSummaries": {
619
+ "quality": {
620
+ "providerId": "quality",
621
+ "providerVersion": "1.0.0",
622
+ "schemaVersion": 1,
623
+ "passed": true,
624
+ "overallScore": 60,
625
+ "grade": "D",
626
+ "categories": [
627
+ {
628
+ "id": "structure",
629
+ "name": "Structure & completeness",
630
+ "score": 7,
631
+ "max": 10
632
+ },
633
+ {
634
+ "id": "description",
635
+ "name": "Description quality",
636
+ "score": 3,
637
+ "max": 10
638
+ },
639
+ {
640
+ "id": "prompt-engineering",
641
+ "name": "Prompt engineering",
642
+ "score": 6,
643
+ "max": 10
644
+ },
645
+ {
646
+ "id": "context-efficiency",
647
+ "name": "Context efficiency",
648
+ "score": 9,
649
+ "max": 10
650
+ },
651
+ {
652
+ "id": "safety",
653
+ "name": "Safety & guardrails",
654
+ "score": 4,
655
+ "max": 10
656
+ },
657
+ {
658
+ "id": "testability",
659
+ "name": "Testability",
660
+ "score": 3,
661
+ "max": 10
662
+ },
663
+ {
664
+ "id": "naming",
665
+ "name": "Naming & conventions",
666
+ "score": 10,
667
+ "max": 10
668
+ }
669
+ ],
670
+ "evaluatedAt": "2026-04-30T23:05:19.217Z",
671
+ "evaluatedVersion": "0.0.0"
672
+ },
673
+ "skill-best-practice": {
674
+ "providerId": "skill-best-practice",
675
+ "providerVersion": "1.1.0",
676
+ "schemaVersion": 1,
677
+ "passed": false,
678
+ "overallScore": 69,
679
+ "grade": "C",
680
+ "categories": [
681
+ {
682
+ "id": "validation",
683
+ "name": "Deterministic validation",
684
+ "score": 9,
685
+ "max": 13
686
+ }
687
+ ],
688
+ "evaluatedAt": "2026-04-30T23:05:19.217Z",
689
+ "evaluatedVersion": "0.0.0"
690
+ }
258
691
  }
259
692
  },
260
693
  {
@@ -316,8 +749,82 @@
316
749
  "max": 10
317
750
  }
318
751
  ],
319
- "evaluatedAt": "2026-04-20T07:44:18.373Z",
752
+ "evaluatedAt": "2026-04-30T23:05:19.219Z",
320
753
  "evaluatedVersion": "0.0.0"
754
+ },
755
+ "evalSummaries": {
756
+ "quality": {
757
+ "providerId": "quality",
758
+ "providerVersion": "1.0.0",
759
+ "schemaVersion": 1,
760
+ "passed": true,
761
+ "overallScore": 57,
762
+ "grade": "D",
763
+ "categories": [
764
+ {
765
+ "id": "structure",
766
+ "name": "Structure & completeness",
767
+ "score": 7,
768
+ "max": 10
769
+ },
770
+ {
771
+ "id": "description",
772
+ "name": "Description quality",
773
+ "score": 3,
774
+ "max": 10
775
+ },
776
+ {
777
+ "id": "prompt-engineering",
778
+ "name": "Prompt engineering",
779
+ "score": 7,
780
+ "max": 10
781
+ },
782
+ {
783
+ "id": "context-efficiency",
784
+ "name": "Context efficiency",
785
+ "score": 5,
786
+ "max": 10
787
+ },
788
+ {
789
+ "id": "safety",
790
+ "name": "Safety & guardrails",
791
+ "score": 5,
792
+ "max": 10
793
+ },
794
+ {
795
+ "id": "testability",
796
+ "name": "Testability",
797
+ "score": 3,
798
+ "max": 10
799
+ },
800
+ {
801
+ "id": "naming",
802
+ "name": "Naming & conventions",
803
+ "score": 10,
804
+ "max": 10
805
+ }
806
+ ],
807
+ "evaluatedAt": "2026-04-30T23:05:19.219Z",
808
+ "evaluatedVersion": "0.0.0"
809
+ },
810
+ "skill-best-practice": {
811
+ "providerId": "skill-best-practice",
812
+ "providerVersion": "1.1.0",
813
+ "schemaVersion": 1,
814
+ "passed": false,
815
+ "overallScore": 69,
816
+ "grade": "C",
817
+ "categories": [
818
+ {
819
+ "id": "validation",
820
+ "name": "Deterministic validation",
821
+ "score": 9,
822
+ "max": 13
823
+ }
824
+ ],
825
+ "evaluatedAt": "2026-04-30T23:05:19.220Z",
826
+ "evaluatedVersion": "0.0.0"
827
+ }
321
828
  }
322
829
  },
323
830
  {
@@ -379,13 +886,87 @@
379
886
  "max": 10
380
887
  }
381
888
  ],
382
- "evaluatedAt": "2026-04-20T07:44:18.373Z",
889
+ "evaluatedAt": "2026-04-30T23:05:19.222Z",
383
890
  "evaluatedVersion": "0.0.0"
891
+ },
892
+ "evalSummaries": {
893
+ "quality": {
894
+ "providerId": "quality",
895
+ "providerVersion": "1.0.0",
896
+ "schemaVersion": 1,
897
+ "passed": true,
898
+ "overallScore": 67,
899
+ "grade": "C",
900
+ "categories": [
901
+ {
902
+ "id": "structure",
903
+ "name": "Structure & completeness",
904
+ "score": 7,
905
+ "max": 10
906
+ },
907
+ {
908
+ "id": "description",
909
+ "name": "Description quality",
910
+ "score": 6,
911
+ "max": 10
912
+ },
913
+ {
914
+ "id": "prompt-engineering",
915
+ "name": "Prompt engineering",
916
+ "score": 10,
917
+ "max": 10
918
+ },
919
+ {
920
+ "id": "context-efficiency",
921
+ "name": "Context efficiency",
922
+ "score": 9,
923
+ "max": 10
924
+ },
925
+ {
926
+ "id": "safety",
927
+ "name": "Safety & guardrails",
928
+ "score": 2,
929
+ "max": 10
930
+ },
931
+ {
932
+ "id": "testability",
933
+ "name": "Testability",
934
+ "score": 3,
935
+ "max": 10
936
+ },
937
+ {
938
+ "id": "naming",
939
+ "name": "Naming & conventions",
940
+ "score": 10,
941
+ "max": 10
942
+ }
943
+ ],
944
+ "evaluatedAt": "2026-04-30T23:05:19.222Z",
945
+ "evaluatedVersion": "0.0.0"
946
+ },
947
+ "skill-best-practice": {
948
+ "providerId": "skill-best-practice",
949
+ "providerVersion": "1.1.0",
950
+ "schemaVersion": 1,
951
+ "passed": false,
952
+ "overallScore": 69,
953
+ "grade": "C",
954
+ "categories": [
955
+ {
956
+ "id": "validation",
957
+ "name": "Deterministic validation",
958
+ "score": 9,
959
+ "max": 13
960
+ }
961
+ ],
962
+ "evaluatedAt": "2026-04-30T23:05:19.222Z",
963
+ "evaluatedVersion": "0.0.0"
964
+ }
384
965
  }
385
966
  },
386
967
  {
387
968
  "name": "funda-data",
388
- "description": "Fetch financial data from the Funda AI API (https://api.funda.ai). Covers quotes, historical prices, financials, SEC filings, earnings transcripts, analyst estimates, options flow/greeks/GEX, supply chain graph, social sentiment, prediction markets, congressional trades, economic indicators, ESG, and news. Triggers: stock quotes, fundamentals, balance sheet, income statement, cash flow, analyst targets, DCF, options chain/flow/unusual activity, GEX, IV rank, max pain, earnings/dividend/IPO calendar, SEC filings (10-K/10-Q/8-K), transcripts, supply chain (suppliers/customers/competitors), congressional trading, insider trades, institutional holdings (13F), Reddit/Twitter sentiment, Polymarket, treasury rates, GDP, CPI, FRED data, ESG scores, commodity/forex/crypto prices, stock screener, sector performance, ETF holdings, news, COT reports. Also triggers for \"funda\" or \"funda.ai\". If only a ticker is provided and Funda API can answer, use this skill.",
969
+ "description": "Fetch financial data from the Funda AI API (https://api.funda.ai). Covers quotes, historical prices, financials, SEC filings, transcripts, analyst estimates, options flow/greeks/GEX, supply chain graph, social sentiment, Polymarket, congressional trades, economics, ESG, news, AI-enriched news (sentiment + event timeline), AI-company recruit signals, and a Claude API proxy via Bedrock. Triggers: stock quotes, balance sheet, income statement, cash flow, analyst targets, DCF, options chain/flow, GEX, IV rank, max pain, earnings/dividend/IPO calendar, 10-K/10-Q/8-K, suppliers/customers/competitors, insider trades, 13F, Reddit/Twitter sentiment, Polymarket, treasury rates, GDP, CPI, FRED, commodity/forex/crypto, stock screener, ETF holdings, COT, ticker sentiment, OpenAI/Anthropic/xAI/Google/Mercor/SurgeAI job postings, product launch probabilities, AI threat to public stocks. Also triggers for \"funda\" or \"funda.ai\". If only a ticker is provided and Funda API can answer, use this skill.",
389
970
  "version": "0.0.0",
390
971
  "license": "",
391
972
  "creator": "",
@@ -394,9 +975,9 @@
394
975
  "installUrl": "github:himself65/finance-skills:plugins/data-providers/skills/funda-data",
395
976
  "relPath": "plugins/data-providers/skills/funda-data",
396
977
  "verified": true,
397
- "tokenCount": 2844,
978
+ "tokenCount": 3828,
398
979
  "evalSummary": {
399
- "overallScore": 70,
980
+ "overallScore": 67,
400
981
  "grade": "C",
401
982
  "categories": [
402
983
  {
@@ -420,7 +1001,7 @@
420
1001
  {
421
1002
  "id": "context-efficiency",
422
1003
  "name": "Context efficiency",
423
- "score": 10,
1004
+ "score": 8,
424
1005
  "max": 10
425
1006
  },
426
1007
  {
@@ -442,8 +1023,82 @@
442
1023
  "max": 10
443
1024
  }
444
1025
  ],
445
- "evaluatedAt": "2026-04-20T07:44:18.375Z",
1026
+ "evaluatedAt": "2026-04-30T23:05:19.224Z",
446
1027
  "evaluatedVersion": "0.0.0"
1028
+ },
1029
+ "evalSummaries": {
1030
+ "quality": {
1031
+ "providerId": "quality",
1032
+ "providerVersion": "1.0.0",
1033
+ "schemaVersion": 1,
1034
+ "passed": true,
1035
+ "overallScore": 67,
1036
+ "grade": "C",
1037
+ "categories": [
1038
+ {
1039
+ "id": "structure",
1040
+ "name": "Structure & completeness",
1041
+ "score": 7,
1042
+ "max": 10
1043
+ },
1044
+ {
1045
+ "id": "description",
1046
+ "name": "Description quality",
1047
+ "score": 6,
1048
+ "max": 10
1049
+ },
1050
+ {
1051
+ "id": "prompt-engineering",
1052
+ "name": "Prompt engineering",
1053
+ "score": 6,
1054
+ "max": 10
1055
+ },
1056
+ {
1057
+ "id": "context-efficiency",
1058
+ "name": "Context efficiency",
1059
+ "score": 8,
1060
+ "max": 10
1061
+ },
1062
+ {
1063
+ "id": "safety",
1064
+ "name": "Safety & guardrails",
1065
+ "score": 7,
1066
+ "max": 10
1067
+ },
1068
+ {
1069
+ "id": "testability",
1070
+ "name": "Testability",
1071
+ "score": 3,
1072
+ "max": 10
1073
+ },
1074
+ {
1075
+ "id": "naming",
1076
+ "name": "Naming & conventions",
1077
+ "score": 10,
1078
+ "max": 10
1079
+ }
1080
+ ],
1081
+ "evaluatedAt": "2026-04-30T23:05:19.224Z",
1082
+ "evaluatedVersion": "0.0.0"
1083
+ },
1084
+ "skill-best-practice": {
1085
+ "providerId": "skill-best-practice",
1086
+ "providerVersion": "1.1.0",
1087
+ "schemaVersion": 1,
1088
+ "passed": false,
1089
+ "overallScore": 69,
1090
+ "grade": "C",
1091
+ "categories": [
1092
+ {
1093
+ "id": "validation",
1094
+ "name": "Deterministic validation",
1095
+ "score": 9,
1096
+ "max": 13
1097
+ }
1098
+ ],
1099
+ "evaluatedAt": "2026-04-30T23:05:19.224Z",
1100
+ "evaluatedVersion": "0.0.0"
1101
+ }
447
1102
  }
448
1103
  },
449
1104
  {
@@ -505,8 +1160,82 @@
505
1160
  "max": 10
506
1161
  }
507
1162
  ],
508
- "evaluatedAt": "2026-04-20T07:44:18.376Z",
1163
+ "evaluatedAt": "2026-04-30T23:05:19.226Z",
509
1164
  "evaluatedVersion": "0.0.0"
1165
+ },
1166
+ "evalSummaries": {
1167
+ "quality": {
1168
+ "providerId": "quality",
1169
+ "providerVersion": "1.0.0",
1170
+ "schemaVersion": 1,
1171
+ "passed": true,
1172
+ "overallScore": 61,
1173
+ "grade": "D",
1174
+ "categories": [
1175
+ {
1176
+ "id": "structure",
1177
+ "name": "Structure & completeness",
1178
+ "score": 7,
1179
+ "max": 10
1180
+ },
1181
+ {
1182
+ "id": "description",
1183
+ "name": "Description quality",
1184
+ "score": 3,
1185
+ "max": 10
1186
+ },
1187
+ {
1188
+ "id": "prompt-engineering",
1189
+ "name": "Prompt engineering",
1190
+ "score": 7,
1191
+ "max": 10
1192
+ },
1193
+ {
1194
+ "id": "context-efficiency",
1195
+ "name": "Context efficiency",
1196
+ "score": 10,
1197
+ "max": 10
1198
+ },
1199
+ {
1200
+ "id": "safety",
1201
+ "name": "Safety & guardrails",
1202
+ "score": 5,
1203
+ "max": 10
1204
+ },
1205
+ {
1206
+ "id": "testability",
1207
+ "name": "Testability",
1208
+ "score": 1,
1209
+ "max": 10
1210
+ },
1211
+ {
1212
+ "id": "naming",
1213
+ "name": "Naming & conventions",
1214
+ "score": 10,
1215
+ "max": 10
1216
+ }
1217
+ ],
1218
+ "evaluatedAt": "2026-04-30T23:05:19.226Z",
1219
+ "evaluatedVersion": "0.0.0"
1220
+ },
1221
+ "skill-best-practice": {
1222
+ "providerId": "skill-best-practice",
1223
+ "providerVersion": "1.1.0",
1224
+ "schemaVersion": 1,
1225
+ "passed": false,
1226
+ "overallScore": 69,
1227
+ "grade": "C",
1228
+ "categories": [
1229
+ {
1230
+ "id": "validation",
1231
+ "name": "Deterministic validation",
1232
+ "score": 9,
1233
+ "max": 13
1234
+ }
1235
+ ],
1236
+ "evaluatedAt": "2026-04-30T23:05:19.226Z",
1237
+ "evaluatedVersion": "0.0.0"
1238
+ }
510
1239
  }
511
1240
  },
512
1241
  {
@@ -520,7 +1249,7 @@
520
1249
  "installUrl": "github:himself65/finance-skills:plugins/data-providers/skills/hormuz-strait",
521
1250
  "relPath": "plugins/data-providers/skills/hormuz-strait",
522
1251
  "verified": true,
523
- "tokenCount": 1681,
1252
+ "tokenCount": 1791,
524
1253
  "evalSummary": {
525
1254
  "overallScore": 64,
526
1255
  "grade": "D",
@@ -568,8 +1297,82 @@
568
1297
  "max": 10
569
1298
  }
570
1299
  ],
571
- "evaluatedAt": "2026-04-20T07:44:18.376Z",
1300
+ "evaluatedAt": "2026-04-30T23:05:19.228Z",
572
1301
  "evaluatedVersion": "0.0.0"
1302
+ },
1303
+ "evalSummaries": {
1304
+ "quality": {
1305
+ "providerId": "quality",
1306
+ "providerVersion": "1.0.0",
1307
+ "schemaVersion": 1,
1308
+ "passed": true,
1309
+ "overallScore": 64,
1310
+ "grade": "D",
1311
+ "categories": [
1312
+ {
1313
+ "id": "structure",
1314
+ "name": "Structure & completeness",
1315
+ "score": 7,
1316
+ "max": 10
1317
+ },
1318
+ {
1319
+ "id": "description",
1320
+ "name": "Description quality",
1321
+ "score": 3,
1322
+ "max": 10
1323
+ },
1324
+ {
1325
+ "id": "prompt-engineering",
1326
+ "name": "Prompt engineering",
1327
+ "score": 6,
1328
+ "max": 10
1329
+ },
1330
+ {
1331
+ "id": "context-efficiency",
1332
+ "name": "Context efficiency",
1333
+ "score": 9,
1334
+ "max": 10
1335
+ },
1336
+ {
1337
+ "id": "safety",
1338
+ "name": "Safety & guardrails",
1339
+ "score": 7,
1340
+ "max": 10
1341
+ },
1342
+ {
1343
+ "id": "testability",
1344
+ "name": "Testability",
1345
+ "score": 3,
1346
+ "max": 10
1347
+ },
1348
+ {
1349
+ "id": "naming",
1350
+ "name": "Naming & conventions",
1351
+ "score": 10,
1352
+ "max": 10
1353
+ }
1354
+ ],
1355
+ "evaluatedAt": "2026-04-30T23:05:19.228Z",
1356
+ "evaluatedVersion": "0.0.0"
1357
+ },
1358
+ "skill-best-practice": {
1359
+ "providerId": "skill-best-practice",
1360
+ "providerVersion": "1.1.0",
1361
+ "schemaVersion": 1,
1362
+ "passed": false,
1363
+ "overallScore": 69,
1364
+ "grade": "C",
1365
+ "categories": [
1366
+ {
1367
+ "id": "validation",
1368
+ "name": "Deterministic validation",
1369
+ "score": 9,
1370
+ "max": 13
1371
+ }
1372
+ ],
1373
+ "evaluatedAt": "2026-04-30T23:05:19.228Z",
1374
+ "evaluatedVersion": "0.0.0"
1375
+ }
573
1376
  }
574
1377
  },
575
1378
  {
@@ -583,10 +1386,10 @@
583
1386
  "installUrl": "github:himself65/finance-skills:plugins/social-readers/skills/linkedin-reader",
584
1387
  "relPath": "plugins/social-readers/skills/linkedin-reader",
585
1388
  "verified": true,
586
- "tokenCount": 1949,
1389
+ "tokenCount": 2029,
587
1390
  "evalSummary": {
588
- "overallScore": 67,
589
- "grade": "C",
1391
+ "overallScore": 64,
1392
+ "grade": "D",
590
1393
  "categories": [
591
1394
  {
592
1395
  "id": "structure",
@@ -603,7 +1406,7 @@
603
1406
  {
604
1407
  "id": "prompt-engineering",
605
1408
  "name": "Prompt engineering",
606
- "score": 8,
1409
+ "score": 6,
607
1410
  "max": 10
608
1411
  },
609
1412
  {
@@ -631,8 +1434,219 @@
631
1434
  "max": 10
632
1435
  }
633
1436
  ],
634
- "evaluatedAt": "2026-04-20T07:44:18.377Z",
1437
+ "evaluatedAt": "2026-04-30T23:05:19.230Z",
1438
+ "evaluatedVersion": "0.0.0"
1439
+ },
1440
+ "evalSummaries": {
1441
+ "quality": {
1442
+ "providerId": "quality",
1443
+ "providerVersion": "1.0.0",
1444
+ "schemaVersion": 1,
1445
+ "passed": true,
1446
+ "overallScore": 64,
1447
+ "grade": "D",
1448
+ "categories": [
1449
+ {
1450
+ "id": "structure",
1451
+ "name": "Structure & completeness",
1452
+ "score": 7,
1453
+ "max": 10
1454
+ },
1455
+ {
1456
+ "id": "description",
1457
+ "name": "Description quality",
1458
+ "score": 3,
1459
+ "max": 10
1460
+ },
1461
+ {
1462
+ "id": "prompt-engineering",
1463
+ "name": "Prompt engineering",
1464
+ "score": 6,
1465
+ "max": 10
1466
+ },
1467
+ {
1468
+ "id": "context-efficiency",
1469
+ "name": "Context efficiency",
1470
+ "score": 9,
1471
+ "max": 10
1472
+ },
1473
+ {
1474
+ "id": "safety",
1475
+ "name": "Safety & guardrails",
1476
+ "score": 7,
1477
+ "max": 10
1478
+ },
1479
+ {
1480
+ "id": "testability",
1481
+ "name": "Testability",
1482
+ "score": 3,
1483
+ "max": 10
1484
+ },
1485
+ {
1486
+ "id": "naming",
1487
+ "name": "Naming & conventions",
1488
+ "score": 10,
1489
+ "max": 10
1490
+ }
1491
+ ],
1492
+ "evaluatedAt": "2026-04-30T23:05:19.230Z",
1493
+ "evaluatedVersion": "0.0.0"
1494
+ },
1495
+ "skill-best-practice": {
1496
+ "providerId": "skill-best-practice",
1497
+ "providerVersion": "1.1.0",
1498
+ "schemaVersion": 1,
1499
+ "passed": false,
1500
+ "overallScore": 69,
1501
+ "grade": "C",
1502
+ "categories": [
1503
+ {
1504
+ "id": "validation",
1505
+ "name": "Deterministic validation",
1506
+ "score": 9,
1507
+ "max": 13
1508
+ }
1509
+ ],
1510
+ "evaluatedAt": "2026-04-30T23:05:19.230Z",
1511
+ "evaluatedVersion": "0.0.0"
1512
+ }
1513
+ }
1514
+ },
1515
+ {
1516
+ "name": "opencli-reader",
1517
+ "description": "Generic read-only fallback for any source opencli covers but this repo has no dedicated reader for — Yahoo Finance, Bloomberg, Reuters, Barchart, Eastmoney, Xueqiu, Sinafinance, Reddit, HackerNews, Substack, Medium, Weibo, Bilibili, Xiaohongshu, Zhihu, arXiv, Google Scholar, Apple Podcasts, Xiaoyuzhou, Spotify, YouTube, Weixin, Amazon, and more. Triggers: \"use opencli to read\", \"grab the frontpage from hackernews\", \"read reddit r/wallstreetbets\", \"fetch Eastmoney hot stocks\", \"pull Xueqiu feed\", \"get Bloomberg markets headlines\", \"search arXiv for\", any request to read from a site where a specialized skill does not exist but opencli does. FALLBACK — prefer twitter-reader, linkedin-reader, discord-reader, telegram-reader, or yc-reader when the source matches. READ-ONLY — never invoke write operations.",
1518
+ "version": "0.0.0",
1519
+ "license": "",
1520
+ "creator": "",
1521
+ "compatibility": "",
1522
+ "allowedTools": [],
1523
+ "installUrl": "github:himself65/finance-skills:plugins/social-readers/skills/opencli-reader",
1524
+ "relPath": "plugins/social-readers/skills/opencli-reader",
1525
+ "verified": true,
1526
+ "tokenCount": 3296,
1527
+ "evalSummary": {
1528
+ "overallScore": 67,
1529
+ "grade": "C",
1530
+ "categories": [
1531
+ {
1532
+ "id": "structure",
1533
+ "name": "Structure & completeness",
1534
+ "score": 7,
1535
+ "max": 10
1536
+ },
1537
+ {
1538
+ "id": "description",
1539
+ "name": "Description quality",
1540
+ "score": 3,
1541
+ "max": 10
1542
+ },
1543
+ {
1544
+ "id": "prompt-engineering",
1545
+ "name": "Prompt engineering",
1546
+ "score": 7,
1547
+ "max": 10
1548
+ },
1549
+ {
1550
+ "id": "context-efficiency",
1551
+ "name": "Context efficiency",
1552
+ "score": 7,
1553
+ "max": 10
1554
+ },
1555
+ {
1556
+ "id": "safety",
1557
+ "name": "Safety & guardrails",
1558
+ "score": 10,
1559
+ "max": 10
1560
+ },
1561
+ {
1562
+ "id": "testability",
1563
+ "name": "Testability",
1564
+ "score": 3,
1565
+ "max": 10
1566
+ },
1567
+ {
1568
+ "id": "naming",
1569
+ "name": "Naming & conventions",
1570
+ "score": 10,
1571
+ "max": 10
1572
+ }
1573
+ ],
1574
+ "evaluatedAt": "2026-04-30T23:05:19.231Z",
635
1575
  "evaluatedVersion": "0.0.0"
1576
+ },
1577
+ "evalSummaries": {
1578
+ "quality": {
1579
+ "providerId": "quality",
1580
+ "providerVersion": "1.0.0",
1581
+ "schemaVersion": 1,
1582
+ "passed": true,
1583
+ "overallScore": 67,
1584
+ "grade": "C",
1585
+ "categories": [
1586
+ {
1587
+ "id": "structure",
1588
+ "name": "Structure & completeness",
1589
+ "score": 7,
1590
+ "max": 10
1591
+ },
1592
+ {
1593
+ "id": "description",
1594
+ "name": "Description quality",
1595
+ "score": 3,
1596
+ "max": 10
1597
+ },
1598
+ {
1599
+ "id": "prompt-engineering",
1600
+ "name": "Prompt engineering",
1601
+ "score": 7,
1602
+ "max": 10
1603
+ },
1604
+ {
1605
+ "id": "context-efficiency",
1606
+ "name": "Context efficiency",
1607
+ "score": 7,
1608
+ "max": 10
1609
+ },
1610
+ {
1611
+ "id": "safety",
1612
+ "name": "Safety & guardrails",
1613
+ "score": 10,
1614
+ "max": 10
1615
+ },
1616
+ {
1617
+ "id": "testability",
1618
+ "name": "Testability",
1619
+ "score": 3,
1620
+ "max": 10
1621
+ },
1622
+ {
1623
+ "id": "naming",
1624
+ "name": "Naming & conventions",
1625
+ "score": 10,
1626
+ "max": 10
1627
+ }
1628
+ ],
1629
+ "evaluatedAt": "2026-04-30T23:05:19.231Z",
1630
+ "evaluatedVersion": "0.0.0"
1631
+ },
1632
+ "skill-best-practice": {
1633
+ "providerId": "skill-best-practice",
1634
+ "providerVersion": "1.1.0",
1635
+ "schemaVersion": 1,
1636
+ "passed": false,
1637
+ "overallScore": 69,
1638
+ "grade": "C",
1639
+ "categories": [
1640
+ {
1641
+ "id": "validation",
1642
+ "name": "Deterministic validation",
1643
+ "score": 9,
1644
+ "max": 13
1645
+ }
1646
+ ],
1647
+ "evaluatedAt": "2026-04-30T23:05:19.231Z",
1648
+ "evaluatedVersion": "0.0.0"
1649
+ }
636
1650
  }
637
1651
  },
638
1652
  {
@@ -694,8 +1708,82 @@
694
1708
  "max": 10
695
1709
  }
696
1710
  ],
697
- "evaluatedAt": "2026-04-20T07:44:18.378Z",
1711
+ "evaluatedAt": "2026-04-30T23:05:19.233Z",
698
1712
  "evaluatedVersion": "0.0.0"
1713
+ },
1714
+ "evalSummaries": {
1715
+ "quality": {
1716
+ "providerId": "quality",
1717
+ "providerVersion": "1.0.0",
1718
+ "schemaVersion": 1,
1719
+ "passed": true,
1720
+ "overallScore": 73,
1721
+ "grade": "C",
1722
+ "categories": [
1723
+ {
1724
+ "id": "structure",
1725
+ "name": "Structure & completeness",
1726
+ "score": 7,
1727
+ "max": 10
1728
+ },
1729
+ {
1730
+ "id": "description",
1731
+ "name": "Description quality",
1732
+ "score": 6,
1733
+ "max": 10
1734
+ },
1735
+ {
1736
+ "id": "prompt-engineering",
1737
+ "name": "Prompt engineering",
1738
+ "score": 6,
1739
+ "max": 10
1740
+ },
1741
+ {
1742
+ "id": "context-efficiency",
1743
+ "name": "Context efficiency",
1744
+ "score": 9,
1745
+ "max": 10
1746
+ },
1747
+ {
1748
+ "id": "safety",
1749
+ "name": "Safety & guardrails",
1750
+ "score": 6,
1751
+ "max": 10
1752
+ },
1753
+ {
1754
+ "id": "testability",
1755
+ "name": "Testability",
1756
+ "score": 7,
1757
+ "max": 10
1758
+ },
1759
+ {
1760
+ "id": "naming",
1761
+ "name": "Naming & conventions",
1762
+ "score": 10,
1763
+ "max": 10
1764
+ }
1765
+ ],
1766
+ "evaluatedAt": "2026-04-30T23:05:19.233Z",
1767
+ "evaluatedVersion": "0.0.0"
1768
+ },
1769
+ "skill-best-practice": {
1770
+ "providerId": "skill-best-practice",
1771
+ "providerVersion": "1.1.0",
1772
+ "schemaVersion": 1,
1773
+ "passed": false,
1774
+ "overallScore": 69,
1775
+ "grade": "C",
1776
+ "categories": [
1777
+ {
1778
+ "id": "validation",
1779
+ "name": "Deterministic validation",
1780
+ "score": 9,
1781
+ "max": 13
1782
+ }
1783
+ ],
1784
+ "evaluatedAt": "2026-04-30T23:05:19.233Z",
1785
+ "evaluatedVersion": "0.0.0"
1786
+ }
699
1787
  }
700
1788
  },
701
1789
  {
@@ -757,8 +1845,82 @@
757
1845
  "max": 10
758
1846
  }
759
1847
  ],
760
- "evaluatedAt": "2026-04-20T07:44:18.379Z",
1848
+ "evaluatedAt": "2026-04-30T23:05:19.235Z",
761
1849
  "evaluatedVersion": "0.0.0"
1850
+ },
1851
+ "evalSummaries": {
1852
+ "quality": {
1853
+ "providerId": "quality",
1854
+ "providerVersion": "1.0.0",
1855
+ "schemaVersion": 1,
1856
+ "passed": true,
1857
+ "overallScore": 66,
1858
+ "grade": "C",
1859
+ "categories": [
1860
+ {
1861
+ "id": "structure",
1862
+ "name": "Structure & completeness",
1863
+ "score": 7,
1864
+ "max": 10
1865
+ },
1866
+ {
1867
+ "id": "description",
1868
+ "name": "Description quality",
1869
+ "score": 6,
1870
+ "max": 10
1871
+ },
1872
+ {
1873
+ "id": "prompt-engineering",
1874
+ "name": "Prompt engineering",
1875
+ "score": 7,
1876
+ "max": 10
1877
+ },
1878
+ {
1879
+ "id": "context-efficiency",
1880
+ "name": "Context efficiency",
1881
+ "score": 7,
1882
+ "max": 10
1883
+ },
1884
+ {
1885
+ "id": "safety",
1886
+ "name": "Safety & guardrails",
1887
+ "score": 2,
1888
+ "max": 10
1889
+ },
1890
+ {
1891
+ "id": "testability",
1892
+ "name": "Testability",
1893
+ "score": 7,
1894
+ "max": 10
1895
+ },
1896
+ {
1897
+ "id": "naming",
1898
+ "name": "Naming & conventions",
1899
+ "score": 10,
1900
+ "max": 10
1901
+ }
1902
+ ],
1903
+ "evaluatedAt": "2026-04-30T23:05:19.235Z",
1904
+ "evaluatedVersion": "0.0.0"
1905
+ },
1906
+ "skill-best-practice": {
1907
+ "providerId": "skill-best-practice",
1908
+ "providerVersion": "1.1.0",
1909
+ "schemaVersion": 1,
1910
+ "passed": false,
1911
+ "overallScore": 69,
1912
+ "grade": "C",
1913
+ "categories": [
1914
+ {
1915
+ "id": "validation",
1916
+ "name": "Deterministic validation",
1917
+ "score": 9,
1918
+ "max": 13
1919
+ }
1920
+ ],
1921
+ "evaluatedAt": "2026-04-30T23:05:19.235Z",
1922
+ "evaluatedVersion": "0.0.0"
1923
+ }
762
1924
  }
763
1925
  },
764
1926
  {
@@ -820,8 +1982,82 @@
820
1982
  "max": 10
821
1983
  }
822
1984
  ],
823
- "evaluatedAt": "2026-04-20T07:44:18.380Z",
1985
+ "evaluatedAt": "2026-04-30T23:05:19.237Z",
824
1986
  "evaluatedVersion": "0.0.0"
1987
+ },
1988
+ "evalSummaries": {
1989
+ "quality": {
1990
+ "providerId": "quality",
1991
+ "providerVersion": "1.0.0",
1992
+ "schemaVersion": 1,
1993
+ "passed": true,
1994
+ "overallScore": 71,
1995
+ "grade": "C",
1996
+ "categories": [
1997
+ {
1998
+ "id": "structure",
1999
+ "name": "Structure & completeness",
2000
+ "score": 7,
2001
+ "max": 10
2002
+ },
2003
+ {
2004
+ "id": "description",
2005
+ "name": "Description quality",
2006
+ "score": 6,
2007
+ "max": 10
2008
+ },
2009
+ {
2010
+ "id": "prompt-engineering",
2011
+ "name": "Prompt engineering",
2012
+ "score": 8,
2013
+ "max": 10
2014
+ },
2015
+ {
2016
+ "id": "context-efficiency",
2017
+ "name": "Context efficiency",
2018
+ "score": 7,
2019
+ "max": 10
2020
+ },
2021
+ {
2022
+ "id": "safety",
2023
+ "name": "Safety & guardrails",
2024
+ "score": 9,
2025
+ "max": 10
2026
+ },
2027
+ {
2028
+ "id": "testability",
2029
+ "name": "Testability",
2030
+ "score": 3,
2031
+ "max": 10
2032
+ },
2033
+ {
2034
+ "id": "naming",
2035
+ "name": "Naming & conventions",
2036
+ "score": 10,
2037
+ "max": 10
2038
+ }
2039
+ ],
2040
+ "evaluatedAt": "2026-04-30T23:05:19.237Z",
2041
+ "evaluatedVersion": "0.0.0"
2042
+ },
2043
+ "skill-best-practice": {
2044
+ "providerId": "skill-best-practice",
2045
+ "providerVersion": "1.1.0",
2046
+ "schemaVersion": 1,
2047
+ "passed": false,
2048
+ "overallScore": 69,
2049
+ "grade": "C",
2050
+ "categories": [
2051
+ {
2052
+ "id": "validation",
2053
+ "name": "Deterministic validation",
2054
+ "score": 9,
2055
+ "max": 13
2056
+ }
2057
+ ],
2058
+ "evaluatedAt": "2026-04-30T23:05:19.237Z",
2059
+ "evaluatedVersion": "0.0.0"
2060
+ }
825
2061
  }
826
2062
  },
827
2063
  {
@@ -883,8 +2119,82 @@
883
2119
  "max": 10
884
2120
  }
885
2121
  ],
886
- "evaluatedAt": "2026-04-20T07:44:18.381Z",
2122
+ "evaluatedAt": "2026-04-30T23:05:19.239Z",
887
2123
  "evaluatedVersion": "0.0.0"
2124
+ },
2125
+ "evalSummaries": {
2126
+ "quality": {
2127
+ "providerId": "quality",
2128
+ "providerVersion": "1.0.0",
2129
+ "schemaVersion": 1,
2130
+ "passed": true,
2131
+ "overallScore": 80,
2132
+ "grade": "B",
2133
+ "categories": [
2134
+ {
2135
+ "id": "structure",
2136
+ "name": "Structure & completeness",
2137
+ "score": 7,
2138
+ "max": 10
2139
+ },
2140
+ {
2141
+ "id": "description",
2142
+ "name": "Description quality",
2143
+ "score": 6,
2144
+ "max": 10
2145
+ },
2146
+ {
2147
+ "id": "prompt-engineering",
2148
+ "name": "Prompt engineering",
2149
+ "score": 10,
2150
+ "max": 10
2151
+ },
2152
+ {
2153
+ "id": "context-efficiency",
2154
+ "name": "Context efficiency",
2155
+ "score": 7,
2156
+ "max": 10
2157
+ },
2158
+ {
2159
+ "id": "safety",
2160
+ "name": "Safety & guardrails",
2161
+ "score": 9,
2162
+ "max": 10
2163
+ },
2164
+ {
2165
+ "id": "testability",
2166
+ "name": "Testability",
2167
+ "score": 7,
2168
+ "max": 10
2169
+ },
2170
+ {
2171
+ "id": "naming",
2172
+ "name": "Naming & conventions",
2173
+ "score": 10,
2174
+ "max": 10
2175
+ }
2176
+ ],
2177
+ "evaluatedAt": "2026-04-30T23:05:19.239Z",
2178
+ "evaluatedVersion": "0.0.0"
2179
+ },
2180
+ "skill-best-practice": {
2181
+ "providerId": "skill-best-practice",
2182
+ "providerVersion": "1.1.0",
2183
+ "schemaVersion": 1,
2184
+ "passed": false,
2185
+ "overallScore": 69,
2186
+ "grade": "C",
2187
+ "categories": [
2188
+ {
2189
+ "id": "validation",
2190
+ "name": "Deterministic validation",
2191
+ "score": 9,
2192
+ "max": 13
2193
+ }
2194
+ ],
2195
+ "evaluatedAt": "2026-04-30T23:05:19.239Z",
2196
+ "evaluatedVersion": "0.0.0"
2197
+ }
888
2198
  }
889
2199
  },
890
2200
  {
@@ -946,8 +2256,82 @@
946
2256
  "max": 10
947
2257
  }
948
2258
  ],
949
- "evaluatedAt": "2026-04-20T07:44:18.382Z",
2259
+ "evaluatedAt": "2026-04-30T23:05:19.241Z",
950
2260
  "evaluatedVersion": "0.0.0"
2261
+ },
2262
+ "evalSummaries": {
2263
+ "quality": {
2264
+ "providerId": "quality",
2265
+ "providerVersion": "1.0.0",
2266
+ "schemaVersion": 1,
2267
+ "passed": true,
2268
+ "overallScore": 67,
2269
+ "grade": "C",
2270
+ "categories": [
2271
+ {
2272
+ "id": "structure",
2273
+ "name": "Structure & completeness",
2274
+ "score": 7,
2275
+ "max": 10
2276
+ },
2277
+ {
2278
+ "id": "description",
2279
+ "name": "Description quality",
2280
+ "score": 6,
2281
+ "max": 10
2282
+ },
2283
+ {
2284
+ "id": "prompt-engineering",
2285
+ "name": "Prompt engineering",
2286
+ "score": 7,
2287
+ "max": 10
2288
+ },
2289
+ {
2290
+ "id": "context-efficiency",
2291
+ "name": "Context efficiency",
2292
+ "score": 9,
2293
+ "max": 10
2294
+ },
2295
+ {
2296
+ "id": "safety",
2297
+ "name": "Safety & guardrails",
2298
+ "score": 7,
2299
+ "max": 10
2300
+ },
2301
+ {
2302
+ "id": "testability",
2303
+ "name": "Testability",
2304
+ "score": 1,
2305
+ "max": 10
2306
+ },
2307
+ {
2308
+ "id": "naming",
2309
+ "name": "Naming & conventions",
2310
+ "score": 10,
2311
+ "max": 10
2312
+ }
2313
+ ],
2314
+ "evaluatedAt": "2026-04-30T23:05:19.241Z",
2315
+ "evaluatedVersion": "0.0.0"
2316
+ },
2317
+ "skill-best-practice": {
2318
+ "providerId": "skill-best-practice",
2319
+ "providerVersion": "1.1.0",
2320
+ "schemaVersion": 1,
2321
+ "passed": false,
2322
+ "overallScore": 69,
2323
+ "grade": "C",
2324
+ "categories": [
2325
+ {
2326
+ "id": "validation",
2327
+ "name": "Deterministic validation",
2328
+ "score": 9,
2329
+ "max": 13
2330
+ }
2331
+ ],
2332
+ "evaluatedAt": "2026-04-30T23:05:19.241Z",
2333
+ "evaluatedVersion": "0.0.0"
2334
+ }
951
2335
  }
952
2336
  },
953
2337
  {
@@ -1009,8 +2393,82 @@
1009
2393
  "max": 10
1010
2394
  }
1011
2395
  ],
1012
- "evaluatedAt": "2026-04-20T07:44:18.383Z",
2396
+ "evaluatedAt": "2026-04-30T23:05:19.243Z",
1013
2397
  "evaluatedVersion": "0.0.0"
2398
+ },
2399
+ "evalSummaries": {
2400
+ "quality": {
2401
+ "providerId": "quality",
2402
+ "providerVersion": "1.0.0",
2403
+ "schemaVersion": 1,
2404
+ "passed": true,
2405
+ "overallScore": 63,
2406
+ "grade": "D",
2407
+ "categories": [
2408
+ {
2409
+ "id": "structure",
2410
+ "name": "Structure & completeness",
2411
+ "score": 7,
2412
+ "max": 10
2413
+ },
2414
+ {
2415
+ "id": "description",
2416
+ "name": "Description quality",
2417
+ "score": 6,
2418
+ "max": 10
2419
+ },
2420
+ {
2421
+ "id": "prompt-engineering",
2422
+ "name": "Prompt engineering",
2423
+ "score": 6,
2424
+ "max": 10
2425
+ },
2426
+ {
2427
+ "id": "context-efficiency",
2428
+ "name": "Context efficiency",
2429
+ "score": 7,
2430
+ "max": 10
2431
+ },
2432
+ {
2433
+ "id": "safety",
2434
+ "name": "Safety & guardrails",
2435
+ "score": 7,
2436
+ "max": 10
2437
+ },
2438
+ {
2439
+ "id": "testability",
2440
+ "name": "Testability",
2441
+ "score": 1,
2442
+ "max": 10
2443
+ },
2444
+ {
2445
+ "id": "naming",
2446
+ "name": "Naming & conventions",
2447
+ "score": 10,
2448
+ "max": 10
2449
+ }
2450
+ ],
2451
+ "evaluatedAt": "2026-04-30T23:05:19.243Z",
2452
+ "evaluatedVersion": "0.0.0"
2453
+ },
2454
+ "skill-best-practice": {
2455
+ "providerId": "skill-best-practice",
2456
+ "providerVersion": "1.1.0",
2457
+ "schemaVersion": 1,
2458
+ "passed": false,
2459
+ "overallScore": 69,
2460
+ "grade": "C",
2461
+ "categories": [
2462
+ {
2463
+ "id": "validation",
2464
+ "name": "Deterministic validation",
2465
+ "score": 9,
2466
+ "max": 13
2467
+ }
2468
+ ],
2469
+ "evaluatedAt": "2026-04-30T23:05:19.243Z",
2470
+ "evaluatedVersion": "0.0.0"
2471
+ }
1014
2472
  }
1015
2473
  },
1016
2474
  {
@@ -1072,8 +2530,82 @@
1072
2530
  "max": 10
1073
2531
  }
1074
2532
  ],
1075
- "evaluatedAt": "2026-04-20T07:44:18.385Z",
2533
+ "evaluatedAt": "2026-04-30T23:05:19.245Z",
1076
2534
  "evaluatedVersion": "0.0.0"
2535
+ },
2536
+ "evalSummaries": {
2537
+ "quality": {
2538
+ "providerId": "quality",
2539
+ "providerVersion": "1.0.0",
2540
+ "schemaVersion": 1,
2541
+ "passed": true,
2542
+ "overallScore": 61,
2543
+ "grade": "D",
2544
+ "categories": [
2545
+ {
2546
+ "id": "structure",
2547
+ "name": "Structure & completeness",
2548
+ "score": 7,
2549
+ "max": 10
2550
+ },
2551
+ {
2552
+ "id": "description",
2553
+ "name": "Description quality",
2554
+ "score": 3,
2555
+ "max": 10
2556
+ },
2557
+ {
2558
+ "id": "prompt-engineering",
2559
+ "name": "Prompt engineering",
2560
+ "score": 6,
2561
+ "max": 10
2562
+ },
2563
+ {
2564
+ "id": "context-efficiency",
2565
+ "name": "Context efficiency",
2566
+ "score": 5,
2567
+ "max": 10
2568
+ },
2569
+ {
2570
+ "id": "safety",
2571
+ "name": "Safety & guardrails",
2572
+ "score": 7,
2573
+ "max": 10
2574
+ },
2575
+ {
2576
+ "id": "testability",
2577
+ "name": "Testability",
2578
+ "score": 5,
2579
+ "max": 10
2580
+ },
2581
+ {
2582
+ "id": "naming",
2583
+ "name": "Naming & conventions",
2584
+ "score": 10,
2585
+ "max": 10
2586
+ }
2587
+ ],
2588
+ "evaluatedAt": "2026-04-30T23:05:19.245Z",
2589
+ "evaluatedVersion": "0.0.0"
2590
+ },
2591
+ "skill-best-practice": {
2592
+ "providerId": "skill-best-practice",
2593
+ "providerVersion": "1.1.0",
2594
+ "schemaVersion": 1,
2595
+ "passed": false,
2596
+ "overallScore": 69,
2597
+ "grade": "C",
2598
+ "categories": [
2599
+ {
2600
+ "id": "validation",
2601
+ "name": "Deterministic validation",
2602
+ "score": 9,
2603
+ "max": 13
2604
+ }
2605
+ ],
2606
+ "evaluatedAt": "2026-04-30T23:05:19.245Z",
2607
+ "evaluatedVersion": "0.0.0"
2608
+ }
1077
2609
  }
1078
2610
  },
1079
2611
  {
@@ -1135,13 +2667,87 @@
1135
2667
  "max": 10
1136
2668
  }
1137
2669
  ],
1138
- "evaluatedAt": "2026-04-20T07:44:18.386Z",
2670
+ "evaluatedAt": "2026-04-30T23:05:19.248Z",
1139
2671
  "evaluatedVersion": "0.0.0"
2672
+ },
2673
+ "evalSummaries": {
2674
+ "quality": {
2675
+ "providerId": "quality",
2676
+ "providerVersion": "1.0.0",
2677
+ "schemaVersion": 1,
2678
+ "passed": true,
2679
+ "overallScore": 71,
2680
+ "grade": "C",
2681
+ "categories": [
2682
+ {
2683
+ "id": "structure",
2684
+ "name": "Structure & completeness",
2685
+ "score": 7,
2686
+ "max": 10
2687
+ },
2688
+ {
2689
+ "id": "description",
2690
+ "name": "Description quality",
2691
+ "score": 3,
2692
+ "max": 10
2693
+ },
2694
+ {
2695
+ "id": "prompt-engineering",
2696
+ "name": "Prompt engineering",
2697
+ "score": 7,
2698
+ "max": 10
2699
+ },
2700
+ {
2701
+ "id": "context-efficiency",
2702
+ "name": "Context efficiency",
2703
+ "score": 9,
2704
+ "max": 10
2705
+ },
2706
+ {
2707
+ "id": "safety",
2708
+ "name": "Safety & guardrails",
2709
+ "score": 9,
2710
+ "max": 10
2711
+ },
2712
+ {
2713
+ "id": "testability",
2714
+ "name": "Testability",
2715
+ "score": 5,
2716
+ "max": 10
2717
+ },
2718
+ {
2719
+ "id": "naming",
2720
+ "name": "Naming & conventions",
2721
+ "score": 10,
2722
+ "max": 10
2723
+ }
2724
+ ],
2725
+ "evaluatedAt": "2026-04-30T23:05:19.248Z",
2726
+ "evaluatedVersion": "0.0.0"
2727
+ },
2728
+ "skill-best-practice": {
2729
+ "providerId": "skill-best-practice",
2730
+ "providerVersion": "1.1.0",
2731
+ "schemaVersion": 1,
2732
+ "passed": false,
2733
+ "overallScore": 69,
2734
+ "grade": "C",
2735
+ "categories": [
2736
+ {
2737
+ "id": "validation",
2738
+ "name": "Deterministic validation",
2739
+ "score": 9,
2740
+ "max": 13
2741
+ }
2742
+ ],
2743
+ "evaluatedAt": "2026-04-30T23:05:19.248Z",
2744
+ "evaluatedVersion": "0.0.0"
2745
+ }
1140
2746
  }
1141
2747
  },
1142
2748
  {
1143
2749
  "name": "twitter-reader",
1144
- "description": "Read Twitter/X for financial research using opencli (read-only). Use this skill whenever the user wants to read their Twitter feed, search for financial tweets, view bookmarks, look up user profiles, or gather market sentiment from Twitter/X. Triggers include: \"check my feed\", \"search Twitter for\", \"show my bookmarks\", \"who follows\", \"look up @user\", \"what's trending about\", \"market sentiment on Twitter\", \"what are people saying about AAPL\", \"fintwit\", any mention of Twitter/X in context of reading financial news or market research. This skill is READ-ONLY — it does NOT support posting, liking, retweeting, or any write operations.",
2750
+ "description": "Read Twitter/X for financial research using opencli (read-only). Use this skill whenever the user wants to read their Twitter feed, search for financial tweets, view bookmarks, look up user profiles, or gather market sentiment from Twitter/X. Triggers include: \"check my feed\", \"search Twitter for\", \"show my bookmarks\", \"who follows\", \"look up @user\", \"what's trending about\", \"market sentiment on Twitter\", \"what are people saying about AAPL\", \"recent tweets from @elonmusk\", \"show me @user's posts\", \"fintwit\", any mention of Twitter/X in context of reading financial news or market research. This skill is READ-ONLY — it does NOT support posting, liking, retweeting, or any write operations.",
1145
2751
  "version": "0.0.0",
1146
2752
  "license": "",
1147
2753
  "creator": "",
@@ -1150,10 +2756,10 @@
1150
2756
  "installUrl": "github:himself65/finance-skills:plugins/social-readers/skills/twitter-reader",
1151
2757
  "relPath": "plugins/social-readers/skills/twitter-reader",
1152
2758
  "verified": true,
1153
- "tokenCount": 2009,
2759
+ "tokenCount": 2279,
1154
2760
  "evalSummary": {
1155
- "overallScore": 66,
1156
- "grade": "C",
2761
+ "overallScore": 63,
2762
+ "grade": "D",
1157
2763
  "categories": [
1158
2764
  {
1159
2765
  "id": "structure",
@@ -1170,7 +2776,7 @@
1170
2776
  {
1171
2777
  "id": "prompt-engineering",
1172
2778
  "name": "Prompt engineering",
1173
- "score": 8,
2779
+ "score": 6,
1174
2780
  "max": 10
1175
2781
  },
1176
2782
  {
@@ -1198,8 +2804,82 @@
1198
2804
  "max": 10
1199
2805
  }
1200
2806
  ],
1201
- "evaluatedAt": "2026-04-20T07:44:18.387Z",
2807
+ "evaluatedAt": "2026-04-30T23:05:19.249Z",
1202
2808
  "evaluatedVersion": "0.0.0"
2809
+ },
2810
+ "evalSummaries": {
2811
+ "quality": {
2812
+ "providerId": "quality",
2813
+ "providerVersion": "1.0.0",
2814
+ "schemaVersion": 1,
2815
+ "passed": true,
2816
+ "overallScore": 63,
2817
+ "grade": "D",
2818
+ "categories": [
2819
+ {
2820
+ "id": "structure",
2821
+ "name": "Structure & completeness",
2822
+ "score": 7,
2823
+ "max": 10
2824
+ },
2825
+ {
2826
+ "id": "description",
2827
+ "name": "Description quality",
2828
+ "score": 3,
2829
+ "max": 10
2830
+ },
2831
+ {
2832
+ "id": "prompt-engineering",
2833
+ "name": "Prompt engineering",
2834
+ "score": 6,
2835
+ "max": 10
2836
+ },
2837
+ {
2838
+ "id": "context-efficiency",
2839
+ "name": "Context efficiency",
2840
+ "score": 10,
2841
+ "max": 10
2842
+ },
2843
+ {
2844
+ "id": "safety",
2845
+ "name": "Safety & guardrails",
2846
+ "score": 5,
2847
+ "max": 10
2848
+ },
2849
+ {
2850
+ "id": "testability",
2851
+ "name": "Testability",
2852
+ "score": 3,
2853
+ "max": 10
2854
+ },
2855
+ {
2856
+ "id": "naming",
2857
+ "name": "Naming & conventions",
2858
+ "score": 10,
2859
+ "max": 10
2860
+ }
2861
+ ],
2862
+ "evaluatedAt": "2026-04-30T23:05:19.249Z",
2863
+ "evaluatedVersion": "0.0.0"
2864
+ },
2865
+ "skill-best-practice": {
2866
+ "providerId": "skill-best-practice",
2867
+ "providerVersion": "1.1.0",
2868
+ "schemaVersion": 1,
2869
+ "passed": false,
2870
+ "overallScore": 69,
2871
+ "grade": "C",
2872
+ "categories": [
2873
+ {
2874
+ "id": "validation",
2875
+ "name": "Deterministic validation",
2876
+ "score": 9,
2877
+ "max": 13
2878
+ }
2879
+ ],
2880
+ "evaluatedAt": "2026-04-30T23:05:19.249Z",
2881
+ "evaluatedVersion": "0.0.0"
2882
+ }
1203
2883
  }
1204
2884
  },
1205
2885
  {
@@ -1261,8 +2941,82 @@
1261
2941
  "max": 10
1262
2942
  }
1263
2943
  ],
1264
- "evaluatedAt": "2026-04-20T07:44:18.388Z",
2944
+ "evaluatedAt": "2026-04-30T23:05:19.251Z",
1265
2945
  "evaluatedVersion": "0.0.0"
2946
+ },
2947
+ "evalSummaries": {
2948
+ "quality": {
2949
+ "providerId": "quality",
2950
+ "providerVersion": "1.0.0",
2951
+ "schemaVersion": 1,
2952
+ "passed": true,
2953
+ "overallScore": 63,
2954
+ "grade": "D",
2955
+ "categories": [
2956
+ {
2957
+ "id": "structure",
2958
+ "name": "Structure & completeness",
2959
+ "score": 7,
2960
+ "max": 10
2961
+ },
2962
+ {
2963
+ "id": "description",
2964
+ "name": "Description quality",
2965
+ "score": 0,
2966
+ "max": 10
2967
+ },
2968
+ {
2969
+ "id": "prompt-engineering",
2970
+ "name": "Prompt engineering",
2971
+ "score": 6,
2972
+ "max": 10
2973
+ },
2974
+ {
2975
+ "id": "context-efficiency",
2976
+ "name": "Context efficiency",
2977
+ "score": 9,
2978
+ "max": 10
2979
+ },
2980
+ {
2981
+ "id": "safety",
2982
+ "name": "Safety & guardrails",
2983
+ "score": 9,
2984
+ "max": 10
2985
+ },
2986
+ {
2987
+ "id": "testability",
2988
+ "name": "Testability",
2989
+ "score": 3,
2990
+ "max": 10
2991
+ },
2992
+ {
2993
+ "id": "naming",
2994
+ "name": "Naming & conventions",
2995
+ "score": 10,
2996
+ "max": 10
2997
+ }
2998
+ ],
2999
+ "evaluatedAt": "2026-04-30T23:05:19.251Z",
3000
+ "evaluatedVersion": "0.0.0"
3001
+ },
3002
+ "skill-best-practice": {
3003
+ "providerId": "skill-best-practice",
3004
+ "providerVersion": "1.1.0",
3005
+ "schemaVersion": 1,
3006
+ "passed": false,
3007
+ "overallScore": 69,
3008
+ "grade": "C",
3009
+ "categories": [
3010
+ {
3011
+ "id": "validation",
3012
+ "name": "Deterministic validation",
3013
+ "score": 9,
3014
+ "max": 13
3015
+ }
3016
+ ],
3017
+ "evaluatedAt": "2026-04-30T23:05:19.251Z",
3018
+ "evaluatedVersion": "0.0.0"
3019
+ }
1266
3020
  }
1267
3021
  },
1268
3022
  {
@@ -1324,8 +3078,82 @@
1324
3078
  "max": 10
1325
3079
  }
1326
3080
  ],
1327
- "evaluatedAt": "2026-04-20T07:44:18.388Z",
3081
+ "evaluatedAt": "2026-04-30T23:05:19.252Z",
1328
3082
  "evaluatedVersion": "0.0.0"
3083
+ },
3084
+ "evalSummaries": {
3085
+ "quality": {
3086
+ "providerId": "quality",
3087
+ "providerVersion": "1.0.0",
3088
+ "schemaVersion": 1,
3089
+ "passed": true,
3090
+ "overallScore": 66,
3091
+ "grade": "C",
3092
+ "categories": [
3093
+ {
3094
+ "id": "structure",
3095
+ "name": "Structure & completeness",
3096
+ "score": 7,
3097
+ "max": 10
3098
+ },
3099
+ {
3100
+ "id": "description",
3101
+ "name": "Description quality",
3102
+ "score": 6,
3103
+ "max": 10
3104
+ },
3105
+ {
3106
+ "id": "prompt-engineering",
3107
+ "name": "Prompt engineering",
3108
+ "score": 6,
3109
+ "max": 10
3110
+ },
3111
+ {
3112
+ "id": "context-efficiency",
3113
+ "name": "Context efficiency",
3114
+ "score": 9,
3115
+ "max": 10
3116
+ },
3117
+ {
3118
+ "id": "safety",
3119
+ "name": "Safety & guardrails",
3120
+ "score": 3,
3121
+ "max": 10
3122
+ },
3123
+ {
3124
+ "id": "testability",
3125
+ "name": "Testability",
3126
+ "score": 5,
3127
+ "max": 10
3128
+ },
3129
+ {
3130
+ "id": "naming",
3131
+ "name": "Naming & conventions",
3132
+ "score": 10,
3133
+ "max": 10
3134
+ }
3135
+ ],
3136
+ "evaluatedAt": "2026-04-30T23:05:19.252Z",
3137
+ "evaluatedVersion": "0.0.0"
3138
+ },
3139
+ "skill-best-practice": {
3140
+ "providerId": "skill-best-practice",
3141
+ "providerVersion": "1.1.0",
3142
+ "schemaVersion": 1,
3143
+ "passed": false,
3144
+ "overallScore": 69,
3145
+ "grade": "C",
3146
+ "categories": [
3147
+ {
3148
+ "id": "validation",
3149
+ "name": "Deterministic validation",
3150
+ "score": 9,
3151
+ "max": 13
3152
+ }
3153
+ ],
3154
+ "evaluatedAt": "2026-04-30T23:05:19.252Z",
3155
+ "evaluatedVersion": "0.0.0"
3156
+ }
1329
3157
  }
1330
3158
  }
1331
3159
  ]