agent-skill-manager 2.15.0 → 2.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -4
- package/data/skill-index/ComposioHQ_awesome-claude-skills.json +153443 -0
- package/data/skill-index/Egonex-AI_Understand-Anything.json +2 -2
- package/data/skill-index/JuliusBrussee_caveman.json +3985 -0
- package/data/skill-index/Leonxlnx_taste-skill.json +47 -47
- package/data/skill-index/Nutlope_hallmark.json +185 -0
- package/data/skill-index/addyosmani_agent-skills.json +81 -81
- package/data/skill-index/anthropics_skills.json +69 -69
- package/data/skill-index/antithesishq_antithesis-skills.json +2567 -0
- package/data/skill-index/ayghri_i-have-adhd.json +185 -0
- package/data/skill-index/blader_humanizer.json +185 -0
- package/data/skill-index/cathrynlavery_diagram-design.json +185 -0
- package/data/skill-index/charlie947_answer-first.json +185 -0
- package/data/skill-index/charlie947_voiceprint.json +185 -0
- package/data/skill-index/google-labs-code_design.md.json +891 -0
- package/data/skill-index/hardikpandya_stop-slop.json +185 -0
- package/data/skill-index/mattpocock_skills.json +482 -114
- package/data/skill-index/multica-ai_andrej-karpathy-skills.json +185 -0
- package/data/skill-index/nextlevelbuilder_ui-ux-pro-max-skill.json +44 -44
- package/data/skill-index/obra_superpowers.json +49 -49
- package/data/skill-index/pbakaus_impeccable.json +185 -0
- package/data/skill-index/tt-a1i_archify.json +185 -0
- package/data/skill-index/zarazhangrui_frontend-slides.json +185 -0
- package/data/skill-index-resources.json +145 -10
- package/dist/agent-skill-manager.js +283 -239
- package/dist/chunk-54VC5E5G.js +23 -0
- package/dist/chunk-ESKBKSXS.js +2 -0
- package/dist/{chunk-LS24FFOX.js → chunk-VGQYV246.js} +2 -2
- package/dist/{chunk-LH2C3PE7.js → chunk-ZAOVB3X2.js} +1 -1
- package/dist/config-PQRMSV7F.js +2 -0
- package/dist/{lock-NN2MADX7.js → lock-RVOMV2LT.js} +1 -1
- package/dist/spawn-JDSII5L3.js +2 -0
- package/dist/src-SP66WR5V.js +119 -0
- package/package.json +1 -1
- package/dist/chunk-BQ4RW237.js +0 -20
- package/dist/config-AZYQEQOQ.js +0 -2
- package/dist/src-BD3KFE5H.js +0 -119
|
@@ -0,0 +1,3985 @@
|
|
|
1
|
+
{
|
|
2
|
+
"repoUrl": "https://github.com/JuliusBrussee/caveman.git",
|
|
3
|
+
"owner": "JuliusBrussee",
|
|
4
|
+
"repo": "caveman",
|
|
5
|
+
"updatedAt": "2026-08-27T10:21:34.039Z",
|
|
6
|
+
"skillCount": 20,
|
|
7
|
+
"skills": [
|
|
8
|
+
{
|
|
9
|
+
"name": "cavecrew",
|
|
10
|
+
"description": "Decision guide for delegating to caveman-style subagents. Tells the main thread WHEN to spawn `cavecrew-investigator` (locate code), `cavecrew-builder` (1-2 file edit), or `cavecrew-reviewer` (diff review) instead of doing the work inline or using vanilla `Explore`. Subagent output is caveman-compressed so the tool-result injected back into main context is ~60% smaller — main context lasts longer across long sessions. Trigger: \"delegate to subagent\", \"use cavecrew\", \"spawn investigator/builder/reviewer\", \"save context\", \"compressed agent output\".",
|
|
11
|
+
"version": "0.0.0",
|
|
12
|
+
"license": "",
|
|
13
|
+
"creator": "",
|
|
14
|
+
"compatibility": "",
|
|
15
|
+
"allowedTools": [],
|
|
16
|
+
"modelInvocable": true,
|
|
17
|
+
"userInvocable": true,
|
|
18
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/cavecrew",
|
|
19
|
+
"relPath": "skills/cavecrew",
|
|
20
|
+
"verified": true,
|
|
21
|
+
"tokenCount": 1077,
|
|
22
|
+
"evalSummary": {
|
|
23
|
+
"overallScore": 60,
|
|
24
|
+
"grade": "D",
|
|
25
|
+
"categories": [
|
|
26
|
+
{
|
|
27
|
+
"id": "structure",
|
|
28
|
+
"name": "Structure & completeness",
|
|
29
|
+
"score": 7,
|
|
30
|
+
"max": 10
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"id": "description",
|
|
34
|
+
"name": "Description quality",
|
|
35
|
+
"score": 3,
|
|
36
|
+
"max": 10
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"id": "prompt-engineering",
|
|
40
|
+
"name": "Prompt engineering",
|
|
41
|
+
"score": 5,
|
|
42
|
+
"max": 10
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"id": "context-efficiency",
|
|
46
|
+
"name": "Context efficiency",
|
|
47
|
+
"score": 7,
|
|
48
|
+
"max": 10
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"id": "safety",
|
|
52
|
+
"name": "Safety & guardrails",
|
|
53
|
+
"score": 5,
|
|
54
|
+
"max": 10
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"id": "testability",
|
|
58
|
+
"name": "Testability",
|
|
59
|
+
"score": 3,
|
|
60
|
+
"max": 10
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"id": "license",
|
|
64
|
+
"name": "License verification",
|
|
65
|
+
"score": 0,
|
|
66
|
+
"max": 10
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"id": "naming",
|
|
70
|
+
"name": "Naming & conventions",
|
|
71
|
+
"score": 10,
|
|
72
|
+
"max": 10
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"id": "pii",
|
|
76
|
+
"name": "PII detection",
|
|
77
|
+
"score": 10,
|
|
78
|
+
"max": 10
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"id": "script-lint",
|
|
82
|
+
"name": "Script linting",
|
|
83
|
+
"score": 10,
|
|
84
|
+
"max": 10
|
|
85
|
+
}
|
|
86
|
+
],
|
|
87
|
+
"evaluatedAt": "2026-08-27T10:21:33.556Z",
|
|
88
|
+
"evaluatedVersion": "0.0.0"
|
|
89
|
+
},
|
|
90
|
+
"evalSummaries": {
|
|
91
|
+
"quality": {
|
|
92
|
+
"providerId": "quality",
|
|
93
|
+
"providerVersion": "1.0.0",
|
|
94
|
+
"schemaVersion": 1,
|
|
95
|
+
"passed": true,
|
|
96
|
+
"overallScore": 60,
|
|
97
|
+
"grade": "D",
|
|
98
|
+
"categories": [
|
|
99
|
+
{
|
|
100
|
+
"id": "structure",
|
|
101
|
+
"name": "Structure & completeness",
|
|
102
|
+
"score": 7,
|
|
103
|
+
"max": 10
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
"id": "description",
|
|
107
|
+
"name": "Description quality",
|
|
108
|
+
"score": 3,
|
|
109
|
+
"max": 10
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"id": "prompt-engineering",
|
|
113
|
+
"name": "Prompt engineering",
|
|
114
|
+
"score": 5,
|
|
115
|
+
"max": 10
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"id": "context-efficiency",
|
|
119
|
+
"name": "Context efficiency",
|
|
120
|
+
"score": 7,
|
|
121
|
+
"max": 10
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
"id": "safety",
|
|
125
|
+
"name": "Safety & guardrails",
|
|
126
|
+
"score": 5,
|
|
127
|
+
"max": 10
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
"id": "testability",
|
|
131
|
+
"name": "Testability",
|
|
132
|
+
"score": 3,
|
|
133
|
+
"max": 10
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
"id": "license",
|
|
137
|
+
"name": "License verification",
|
|
138
|
+
"score": 0,
|
|
139
|
+
"max": 10
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"id": "naming",
|
|
143
|
+
"name": "Naming & conventions",
|
|
144
|
+
"score": 10,
|
|
145
|
+
"max": 10
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
"id": "pii",
|
|
149
|
+
"name": "PII detection",
|
|
150
|
+
"score": 10,
|
|
151
|
+
"max": 10
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"id": "script-lint",
|
|
155
|
+
"name": "Script linting",
|
|
156
|
+
"score": 10,
|
|
157
|
+
"max": 10
|
|
158
|
+
}
|
|
159
|
+
],
|
|
160
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
161
|
+
"evaluatedVersion": "0.0.0"
|
|
162
|
+
},
|
|
163
|
+
"skill-best-practice": {
|
|
164
|
+
"providerId": "skill-best-practice",
|
|
165
|
+
"providerVersion": "1.1.0",
|
|
166
|
+
"schemaVersion": 1,
|
|
167
|
+
"passed": false,
|
|
168
|
+
"overallScore": 69,
|
|
169
|
+
"grade": "C",
|
|
170
|
+
"categories": [
|
|
171
|
+
{
|
|
172
|
+
"id": "validation",
|
|
173
|
+
"name": "Deterministic validation",
|
|
174
|
+
"score": 9,
|
|
175
|
+
"max": 13
|
|
176
|
+
}
|
|
177
|
+
],
|
|
178
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
179
|
+
"evaluatedVersion": "0.0.0"
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
"name": "caveman",
|
|
185
|
+
"description": "Ultra-compressed communication mode. Cuts output tokens 65% (measured) by speaking like caveman while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra, wenyan-lite, wenyan-full, wenyan-ultra. Use when user says \"caveman mode\", \"talk like caveman\", \"use caveman\", \"less tokens\", \"be brief\", or invokes /caveman. Also auto-triggers when token efficiency is requested.",
|
|
186
|
+
"version": "0.0.0",
|
|
187
|
+
"license": "",
|
|
188
|
+
"creator": "",
|
|
189
|
+
"compatibility": "",
|
|
190
|
+
"allowedTools": [],
|
|
191
|
+
"modelInvocable": true,
|
|
192
|
+
"userInvocable": true,
|
|
193
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman",
|
|
194
|
+
"relPath": "skills/caveman",
|
|
195
|
+
"verified": true,
|
|
196
|
+
"tokenCount": 1788,
|
|
197
|
+
"evalSummary": {
|
|
198
|
+
"overallScore": 68,
|
|
199
|
+
"grade": "C",
|
|
200
|
+
"categories": [
|
|
201
|
+
{
|
|
202
|
+
"id": "structure",
|
|
203
|
+
"name": "Structure & completeness",
|
|
204
|
+
"score": 7,
|
|
205
|
+
"max": 10
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
"id": "description",
|
|
209
|
+
"name": "Description quality",
|
|
210
|
+
"score": 5,
|
|
211
|
+
"max": 10
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
"id": "prompt-engineering",
|
|
215
|
+
"name": "Prompt engineering",
|
|
216
|
+
"score": 6,
|
|
217
|
+
"max": 10
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
"id": "context-efficiency",
|
|
221
|
+
"name": "Context efficiency",
|
|
222
|
+
"score": 10,
|
|
223
|
+
"max": 10
|
|
224
|
+
},
|
|
225
|
+
{
|
|
226
|
+
"id": "safety",
|
|
227
|
+
"name": "Safety & guardrails",
|
|
228
|
+
"score": 7,
|
|
229
|
+
"max": 10
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"id": "testability",
|
|
233
|
+
"name": "Testability",
|
|
234
|
+
"score": 3,
|
|
235
|
+
"max": 10
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"id": "license",
|
|
239
|
+
"name": "License verification",
|
|
240
|
+
"score": 0,
|
|
241
|
+
"max": 10
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
"id": "naming",
|
|
245
|
+
"name": "Naming & conventions",
|
|
246
|
+
"score": 10,
|
|
247
|
+
"max": 10
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
"id": "pii",
|
|
251
|
+
"name": "PII detection",
|
|
252
|
+
"score": 10,
|
|
253
|
+
"max": 10
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
"id": "script-lint",
|
|
257
|
+
"name": "Script linting",
|
|
258
|
+
"score": 10,
|
|
259
|
+
"max": 10
|
|
260
|
+
}
|
|
261
|
+
],
|
|
262
|
+
"evaluatedAt": "2026-08-27T10:21:33.556Z",
|
|
263
|
+
"evaluatedVersion": "0.0.0"
|
|
264
|
+
},
|
|
265
|
+
"evalSummaries": {
|
|
266
|
+
"quality": {
|
|
267
|
+
"providerId": "quality",
|
|
268
|
+
"providerVersion": "1.0.0",
|
|
269
|
+
"schemaVersion": 1,
|
|
270
|
+
"passed": true,
|
|
271
|
+
"overallScore": 68,
|
|
272
|
+
"grade": "C",
|
|
273
|
+
"categories": [
|
|
274
|
+
{
|
|
275
|
+
"id": "structure",
|
|
276
|
+
"name": "Structure & completeness",
|
|
277
|
+
"score": 7,
|
|
278
|
+
"max": 10
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
"id": "description",
|
|
282
|
+
"name": "Description quality",
|
|
283
|
+
"score": 5,
|
|
284
|
+
"max": 10
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
"id": "prompt-engineering",
|
|
288
|
+
"name": "Prompt engineering",
|
|
289
|
+
"score": 6,
|
|
290
|
+
"max": 10
|
|
291
|
+
},
|
|
292
|
+
{
|
|
293
|
+
"id": "context-efficiency",
|
|
294
|
+
"name": "Context efficiency",
|
|
295
|
+
"score": 10,
|
|
296
|
+
"max": 10
|
|
297
|
+
},
|
|
298
|
+
{
|
|
299
|
+
"id": "safety",
|
|
300
|
+
"name": "Safety & guardrails",
|
|
301
|
+
"score": 7,
|
|
302
|
+
"max": 10
|
|
303
|
+
},
|
|
304
|
+
{
|
|
305
|
+
"id": "testability",
|
|
306
|
+
"name": "Testability",
|
|
307
|
+
"score": 3,
|
|
308
|
+
"max": 10
|
|
309
|
+
},
|
|
310
|
+
{
|
|
311
|
+
"id": "license",
|
|
312
|
+
"name": "License verification",
|
|
313
|
+
"score": 0,
|
|
314
|
+
"max": 10
|
|
315
|
+
},
|
|
316
|
+
{
|
|
317
|
+
"id": "naming",
|
|
318
|
+
"name": "Naming & conventions",
|
|
319
|
+
"score": 10,
|
|
320
|
+
"max": 10
|
|
321
|
+
},
|
|
322
|
+
{
|
|
323
|
+
"id": "pii",
|
|
324
|
+
"name": "PII detection",
|
|
325
|
+
"score": 10,
|
|
326
|
+
"max": 10
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
"id": "script-lint",
|
|
330
|
+
"name": "Script linting",
|
|
331
|
+
"score": 10,
|
|
332
|
+
"max": 10
|
|
333
|
+
}
|
|
334
|
+
],
|
|
335
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
336
|
+
"evaluatedVersion": "0.0.0"
|
|
337
|
+
},
|
|
338
|
+
"skill-best-practice": {
|
|
339
|
+
"providerId": "skill-best-practice",
|
|
340
|
+
"providerVersion": "1.1.0",
|
|
341
|
+
"schemaVersion": 1,
|
|
342
|
+
"passed": false,
|
|
343
|
+
"overallScore": 69,
|
|
344
|
+
"grade": "C",
|
|
345
|
+
"categories": [
|
|
346
|
+
{
|
|
347
|
+
"id": "validation",
|
|
348
|
+
"name": "Deterministic validation",
|
|
349
|
+
"score": 9,
|
|
350
|
+
"max": 13
|
|
351
|
+
}
|
|
352
|
+
],
|
|
353
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
354
|
+
"evaluatedVersion": "0.0.0"
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
},
|
|
358
|
+
{
|
|
359
|
+
"name": "caveman-commit",
|
|
360
|
+
"description": "Ultra-compressed commit message generator. Cuts noise from commit messages while preserving intent and reasoning. Conventional Commits format. Subject ≤50 chars, body only when \"why\" isn't obvious. Use when user says \"write a commit\", \"commit message\", \"generate commit\", \"/commit\", or invokes /caveman-commit. Auto-triggers when staging changes.",
|
|
361
|
+
"version": "0.0.0",
|
|
362
|
+
"license": "",
|
|
363
|
+
"creator": "",
|
|
364
|
+
"compatibility": "",
|
|
365
|
+
"allowedTools": [],
|
|
366
|
+
"modelInvocable": true,
|
|
367
|
+
"userInvocable": true,
|
|
368
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-commit",
|
|
369
|
+
"relPath": "skills/caveman-commit",
|
|
370
|
+
"verified": true,
|
|
371
|
+
"tokenCount": 748,
|
|
372
|
+
"evalSummary": {
|
|
373
|
+
"overallScore": 64,
|
|
374
|
+
"grade": "D",
|
|
375
|
+
"categories": [
|
|
376
|
+
{
|
|
377
|
+
"id": "structure",
|
|
378
|
+
"name": "Structure & completeness",
|
|
379
|
+
"score": 7,
|
|
380
|
+
"max": 10
|
|
381
|
+
},
|
|
382
|
+
{
|
|
383
|
+
"id": "description",
|
|
384
|
+
"name": "Description quality",
|
|
385
|
+
"score": 5,
|
|
386
|
+
"max": 10
|
|
387
|
+
},
|
|
388
|
+
{
|
|
389
|
+
"id": "prompt-engineering",
|
|
390
|
+
"name": "Prompt engineering",
|
|
391
|
+
"score": 5,
|
|
392
|
+
"max": 10
|
|
393
|
+
},
|
|
394
|
+
{
|
|
395
|
+
"id": "context-efficiency",
|
|
396
|
+
"name": "Context efficiency",
|
|
397
|
+
"score": 9,
|
|
398
|
+
"max": 10
|
|
399
|
+
},
|
|
400
|
+
{
|
|
401
|
+
"id": "safety",
|
|
402
|
+
"name": "Safety & guardrails",
|
|
403
|
+
"score": 5,
|
|
404
|
+
"max": 10
|
|
405
|
+
},
|
|
406
|
+
{
|
|
407
|
+
"id": "testability",
|
|
408
|
+
"name": "Testability",
|
|
409
|
+
"score": 3,
|
|
410
|
+
"max": 10
|
|
411
|
+
},
|
|
412
|
+
{
|
|
413
|
+
"id": "license",
|
|
414
|
+
"name": "License verification",
|
|
415
|
+
"score": 0,
|
|
416
|
+
"max": 10
|
|
417
|
+
},
|
|
418
|
+
{
|
|
419
|
+
"id": "naming",
|
|
420
|
+
"name": "Naming & conventions",
|
|
421
|
+
"score": 10,
|
|
422
|
+
"max": 10
|
|
423
|
+
},
|
|
424
|
+
{
|
|
425
|
+
"id": "pii",
|
|
426
|
+
"name": "PII detection",
|
|
427
|
+
"score": 10,
|
|
428
|
+
"max": 10
|
|
429
|
+
},
|
|
430
|
+
{
|
|
431
|
+
"id": "script-lint",
|
|
432
|
+
"name": "Script linting",
|
|
433
|
+
"score": 10,
|
|
434
|
+
"max": 10
|
|
435
|
+
}
|
|
436
|
+
],
|
|
437
|
+
"evaluatedAt": "2026-08-27T10:21:33.557Z",
|
|
438
|
+
"evaluatedVersion": "0.0.0"
|
|
439
|
+
},
|
|
440
|
+
"evalSummaries": {
|
|
441
|
+
"quality": {
|
|
442
|
+
"providerId": "quality",
|
|
443
|
+
"providerVersion": "1.0.0",
|
|
444
|
+
"schemaVersion": 1,
|
|
445
|
+
"passed": true,
|
|
446
|
+
"overallScore": 64,
|
|
447
|
+
"grade": "D",
|
|
448
|
+
"categories": [
|
|
449
|
+
{
|
|
450
|
+
"id": "structure",
|
|
451
|
+
"name": "Structure & completeness",
|
|
452
|
+
"score": 7,
|
|
453
|
+
"max": 10
|
|
454
|
+
},
|
|
455
|
+
{
|
|
456
|
+
"id": "description",
|
|
457
|
+
"name": "Description quality",
|
|
458
|
+
"score": 5,
|
|
459
|
+
"max": 10
|
|
460
|
+
},
|
|
461
|
+
{
|
|
462
|
+
"id": "prompt-engineering",
|
|
463
|
+
"name": "Prompt engineering",
|
|
464
|
+
"score": 5,
|
|
465
|
+
"max": 10
|
|
466
|
+
},
|
|
467
|
+
{
|
|
468
|
+
"id": "context-efficiency",
|
|
469
|
+
"name": "Context efficiency",
|
|
470
|
+
"score": 9,
|
|
471
|
+
"max": 10
|
|
472
|
+
},
|
|
473
|
+
{
|
|
474
|
+
"id": "safety",
|
|
475
|
+
"name": "Safety & guardrails",
|
|
476
|
+
"score": 5,
|
|
477
|
+
"max": 10
|
|
478
|
+
},
|
|
479
|
+
{
|
|
480
|
+
"id": "testability",
|
|
481
|
+
"name": "Testability",
|
|
482
|
+
"score": 3,
|
|
483
|
+
"max": 10
|
|
484
|
+
},
|
|
485
|
+
{
|
|
486
|
+
"id": "license",
|
|
487
|
+
"name": "License verification",
|
|
488
|
+
"score": 0,
|
|
489
|
+
"max": 10
|
|
490
|
+
},
|
|
491
|
+
{
|
|
492
|
+
"id": "naming",
|
|
493
|
+
"name": "Naming & conventions",
|
|
494
|
+
"score": 10,
|
|
495
|
+
"max": 10
|
|
496
|
+
},
|
|
497
|
+
{
|
|
498
|
+
"id": "pii",
|
|
499
|
+
"name": "PII detection",
|
|
500
|
+
"score": 10,
|
|
501
|
+
"max": 10
|
|
502
|
+
},
|
|
503
|
+
{
|
|
504
|
+
"id": "script-lint",
|
|
505
|
+
"name": "Script linting",
|
|
506
|
+
"score": 10,
|
|
507
|
+
"max": 10
|
|
508
|
+
}
|
|
509
|
+
],
|
|
510
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
511
|
+
"evaluatedVersion": "0.0.0"
|
|
512
|
+
},
|
|
513
|
+
"skill-best-practice": {
|
|
514
|
+
"providerId": "skill-best-practice",
|
|
515
|
+
"providerVersion": "1.1.0",
|
|
516
|
+
"schemaVersion": 1,
|
|
517
|
+
"passed": false,
|
|
518
|
+
"overallScore": 69,
|
|
519
|
+
"grade": "C",
|
|
520
|
+
"categories": [
|
|
521
|
+
{
|
|
522
|
+
"id": "validation",
|
|
523
|
+
"name": "Deterministic validation",
|
|
524
|
+
"score": 9,
|
|
525
|
+
"max": 13
|
|
526
|
+
}
|
|
527
|
+
],
|
|
528
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
529
|
+
"evaluatedVersion": "0.0.0"
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
},
|
|
533
|
+
{
|
|
534
|
+
"name": "caveman-compress",
|
|
535
|
+
"description": "Compress natural language memory files (CLAUDE.md, todos, preferences) into caveman format to save input tokens. Preserves all technical substance, code, URLs, and structure. Compressed version overwrites the original file. Human-readable backup saved as FILE.original.md. Trigger: /caveman-compress FILEPATH or \"compress memory file\"",
|
|
536
|
+
"version": "0.0.0",
|
|
537
|
+
"license": "",
|
|
538
|
+
"creator": "",
|
|
539
|
+
"compatibility": "",
|
|
540
|
+
"allowedTools": [],
|
|
541
|
+
"modelInvocable": true,
|
|
542
|
+
"userInvocable": true,
|
|
543
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-compress",
|
|
544
|
+
"relPath": "skills/caveman-compress",
|
|
545
|
+
"verified": true,
|
|
546
|
+
"tokenCount": 1363,
|
|
547
|
+
"evalSummary": {
|
|
548
|
+
"overallScore": 68,
|
|
549
|
+
"grade": "C",
|
|
550
|
+
"categories": [
|
|
551
|
+
{
|
|
552
|
+
"id": "structure",
|
|
553
|
+
"name": "Structure & completeness",
|
|
554
|
+
"score": 7,
|
|
555
|
+
"max": 10
|
|
556
|
+
},
|
|
557
|
+
{
|
|
558
|
+
"id": "description",
|
|
559
|
+
"name": "Description quality",
|
|
560
|
+
"score": 5,
|
|
561
|
+
"max": 10
|
|
562
|
+
},
|
|
563
|
+
{
|
|
564
|
+
"id": "prompt-engineering",
|
|
565
|
+
"name": "Prompt engineering",
|
|
566
|
+
"score": 7,
|
|
567
|
+
"max": 10
|
|
568
|
+
},
|
|
569
|
+
{
|
|
570
|
+
"id": "context-efficiency",
|
|
571
|
+
"name": "Context efficiency",
|
|
572
|
+
"score": 9,
|
|
573
|
+
"max": 10
|
|
574
|
+
},
|
|
575
|
+
{
|
|
576
|
+
"id": "safety",
|
|
577
|
+
"name": "Safety & guardrails",
|
|
578
|
+
"score": 7,
|
|
579
|
+
"max": 10
|
|
580
|
+
},
|
|
581
|
+
{
|
|
582
|
+
"id": "testability",
|
|
583
|
+
"name": "Testability",
|
|
584
|
+
"score": 3,
|
|
585
|
+
"max": 10
|
|
586
|
+
},
|
|
587
|
+
{
|
|
588
|
+
"id": "license",
|
|
589
|
+
"name": "License verification",
|
|
590
|
+
"score": 0,
|
|
591
|
+
"max": 10
|
|
592
|
+
},
|
|
593
|
+
{
|
|
594
|
+
"id": "naming",
|
|
595
|
+
"name": "Naming & conventions",
|
|
596
|
+
"score": 10,
|
|
597
|
+
"max": 10
|
|
598
|
+
},
|
|
599
|
+
{
|
|
600
|
+
"id": "pii",
|
|
601
|
+
"name": "PII detection",
|
|
602
|
+
"score": 10,
|
|
603
|
+
"max": 10
|
|
604
|
+
},
|
|
605
|
+
{
|
|
606
|
+
"id": "script-lint",
|
|
607
|
+
"name": "Script linting",
|
|
608
|
+
"score": 10,
|
|
609
|
+
"max": 10
|
|
610
|
+
}
|
|
611
|
+
],
|
|
612
|
+
"evaluatedAt": "2026-08-27T10:21:33.557Z",
|
|
613
|
+
"evaluatedVersion": "0.0.0"
|
|
614
|
+
},
|
|
615
|
+
"evalSummaries": {
|
|
616
|
+
"quality": {
|
|
617
|
+
"providerId": "quality",
|
|
618
|
+
"providerVersion": "1.0.0",
|
|
619
|
+
"schemaVersion": 1,
|
|
620
|
+
"passed": true,
|
|
621
|
+
"overallScore": 68,
|
|
622
|
+
"grade": "C",
|
|
623
|
+
"categories": [
|
|
624
|
+
{
|
|
625
|
+
"id": "structure",
|
|
626
|
+
"name": "Structure & completeness",
|
|
627
|
+
"score": 7,
|
|
628
|
+
"max": 10
|
|
629
|
+
},
|
|
630
|
+
{
|
|
631
|
+
"id": "description",
|
|
632
|
+
"name": "Description quality",
|
|
633
|
+
"score": 5,
|
|
634
|
+
"max": 10
|
|
635
|
+
},
|
|
636
|
+
{
|
|
637
|
+
"id": "prompt-engineering",
|
|
638
|
+
"name": "Prompt engineering",
|
|
639
|
+
"score": 7,
|
|
640
|
+
"max": 10
|
|
641
|
+
},
|
|
642
|
+
{
|
|
643
|
+
"id": "context-efficiency",
|
|
644
|
+
"name": "Context efficiency",
|
|
645
|
+
"score": 9,
|
|
646
|
+
"max": 10
|
|
647
|
+
},
|
|
648
|
+
{
|
|
649
|
+
"id": "safety",
|
|
650
|
+
"name": "Safety & guardrails",
|
|
651
|
+
"score": 7,
|
|
652
|
+
"max": 10
|
|
653
|
+
},
|
|
654
|
+
{
|
|
655
|
+
"id": "testability",
|
|
656
|
+
"name": "Testability",
|
|
657
|
+
"score": 3,
|
|
658
|
+
"max": 10
|
|
659
|
+
},
|
|
660
|
+
{
|
|
661
|
+
"id": "license",
|
|
662
|
+
"name": "License verification",
|
|
663
|
+
"score": 0,
|
|
664
|
+
"max": 10
|
|
665
|
+
},
|
|
666
|
+
{
|
|
667
|
+
"id": "naming",
|
|
668
|
+
"name": "Naming & conventions",
|
|
669
|
+
"score": 10,
|
|
670
|
+
"max": 10
|
|
671
|
+
},
|
|
672
|
+
{
|
|
673
|
+
"id": "pii",
|
|
674
|
+
"name": "PII detection",
|
|
675
|
+
"score": 10,
|
|
676
|
+
"max": 10
|
|
677
|
+
},
|
|
678
|
+
{
|
|
679
|
+
"id": "script-lint",
|
|
680
|
+
"name": "Script linting",
|
|
681
|
+
"score": 10,
|
|
682
|
+
"max": 10
|
|
683
|
+
}
|
|
684
|
+
],
|
|
685
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
686
|
+
"evaluatedVersion": "0.0.0"
|
|
687
|
+
},
|
|
688
|
+
"skill-best-practice": {
|
|
689
|
+
"providerId": "skill-best-practice",
|
|
690
|
+
"providerVersion": "1.1.0",
|
|
691
|
+
"schemaVersion": 1,
|
|
692
|
+
"passed": false,
|
|
693
|
+
"overallScore": 69,
|
|
694
|
+
"grade": "C",
|
|
695
|
+
"categories": [
|
|
696
|
+
{
|
|
697
|
+
"id": "validation",
|
|
698
|
+
"name": "Deterministic validation",
|
|
699
|
+
"score": 9,
|
|
700
|
+
"max": 13
|
|
701
|
+
}
|
|
702
|
+
],
|
|
703
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
704
|
+
"evaluatedVersion": "0.0.0"
|
|
705
|
+
}
|
|
706
|
+
}
|
|
707
|
+
},
|
|
708
|
+
{
|
|
709
|
+
"name": "caveman-discover",
|
|
710
|
+
"description": "Find every LLM workflow in the current repository and label it, so Caveman Cloud groups spend by what the code actually does (support-reply, nightly-digest) instead of one anonymous bucket. Use when the user pastes the Caveman discovery prompt, says \"discover workflows\", or asks to break LLM spend down by workflow. The repo should already route through the Caveman gateway (the caveman-setup skill does that part).",
|
|
711
|
+
"version": "0.0.0",
|
|
712
|
+
"license": "",
|
|
713
|
+
"creator": "",
|
|
714
|
+
"compatibility": "",
|
|
715
|
+
"allowedTools": [],
|
|
716
|
+
"modelInvocable": true,
|
|
717
|
+
"userInvocable": true,
|
|
718
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-discover",
|
|
719
|
+
"relPath": "skills/caveman-discover",
|
|
720
|
+
"verified": true,
|
|
721
|
+
"tokenCount": 1616,
|
|
722
|
+
"evalSummary": {
|
|
723
|
+
"overallScore": 64,
|
|
724
|
+
"grade": "D",
|
|
725
|
+
"categories": [
|
|
726
|
+
{
|
|
727
|
+
"id": "structure",
|
|
728
|
+
"name": "Structure & completeness",
|
|
729
|
+
"score": 7,
|
|
730
|
+
"max": 10
|
|
731
|
+
},
|
|
732
|
+
{
|
|
733
|
+
"id": "description",
|
|
734
|
+
"name": "Description quality",
|
|
735
|
+
"score": 6,
|
|
736
|
+
"max": 10
|
|
737
|
+
},
|
|
738
|
+
{
|
|
739
|
+
"id": "prompt-engineering",
|
|
740
|
+
"name": "Prompt engineering",
|
|
741
|
+
"score": 6,
|
|
742
|
+
"max": 10
|
|
743
|
+
},
|
|
744
|
+
{
|
|
745
|
+
"id": "context-efficiency",
|
|
746
|
+
"name": "Context efficiency",
|
|
747
|
+
"score": 9,
|
|
748
|
+
"max": 10
|
|
749
|
+
},
|
|
750
|
+
{
|
|
751
|
+
"id": "safety",
|
|
752
|
+
"name": "Safety & guardrails",
|
|
753
|
+
"score": 3,
|
|
754
|
+
"max": 10
|
|
755
|
+
},
|
|
756
|
+
{
|
|
757
|
+
"id": "testability",
|
|
758
|
+
"name": "Testability",
|
|
759
|
+
"score": 3,
|
|
760
|
+
"max": 10
|
|
761
|
+
},
|
|
762
|
+
{
|
|
763
|
+
"id": "license",
|
|
764
|
+
"name": "License verification",
|
|
765
|
+
"score": 0,
|
|
766
|
+
"max": 10
|
|
767
|
+
},
|
|
768
|
+
{
|
|
769
|
+
"id": "naming",
|
|
770
|
+
"name": "Naming & conventions",
|
|
771
|
+
"score": 10,
|
|
772
|
+
"max": 10
|
|
773
|
+
},
|
|
774
|
+
{
|
|
775
|
+
"id": "pii",
|
|
776
|
+
"name": "PII detection",
|
|
777
|
+
"score": 10,
|
|
778
|
+
"max": 10
|
|
779
|
+
},
|
|
780
|
+
{
|
|
781
|
+
"id": "script-lint",
|
|
782
|
+
"name": "Script linting",
|
|
783
|
+
"score": 10,
|
|
784
|
+
"max": 10
|
|
785
|
+
}
|
|
786
|
+
],
|
|
787
|
+
"evaluatedAt": "2026-08-27T10:21:33.557Z",
|
|
788
|
+
"evaluatedVersion": "0.0.0"
|
|
789
|
+
},
|
|
790
|
+
"evalSummaries": {
|
|
791
|
+
"quality": {
|
|
792
|
+
"providerId": "quality",
|
|
793
|
+
"providerVersion": "1.0.0",
|
|
794
|
+
"schemaVersion": 1,
|
|
795
|
+
"passed": true,
|
|
796
|
+
"overallScore": 64,
|
|
797
|
+
"grade": "D",
|
|
798
|
+
"categories": [
|
|
799
|
+
{
|
|
800
|
+
"id": "structure",
|
|
801
|
+
"name": "Structure & completeness",
|
|
802
|
+
"score": 7,
|
|
803
|
+
"max": 10
|
|
804
|
+
},
|
|
805
|
+
{
|
|
806
|
+
"id": "description",
|
|
807
|
+
"name": "Description quality",
|
|
808
|
+
"score": 6,
|
|
809
|
+
"max": 10
|
|
810
|
+
},
|
|
811
|
+
{
|
|
812
|
+
"id": "prompt-engineering",
|
|
813
|
+
"name": "Prompt engineering",
|
|
814
|
+
"score": 6,
|
|
815
|
+
"max": 10
|
|
816
|
+
},
|
|
817
|
+
{
|
|
818
|
+
"id": "context-efficiency",
|
|
819
|
+
"name": "Context efficiency",
|
|
820
|
+
"score": 9,
|
|
821
|
+
"max": 10
|
|
822
|
+
},
|
|
823
|
+
{
|
|
824
|
+
"id": "safety",
|
|
825
|
+
"name": "Safety & guardrails",
|
|
826
|
+
"score": 3,
|
|
827
|
+
"max": 10
|
|
828
|
+
},
|
|
829
|
+
{
|
|
830
|
+
"id": "testability",
|
|
831
|
+
"name": "Testability",
|
|
832
|
+
"score": 3,
|
|
833
|
+
"max": 10
|
|
834
|
+
},
|
|
835
|
+
{
|
|
836
|
+
"id": "license",
|
|
837
|
+
"name": "License verification",
|
|
838
|
+
"score": 0,
|
|
839
|
+
"max": 10
|
|
840
|
+
},
|
|
841
|
+
{
|
|
842
|
+
"id": "naming",
|
|
843
|
+
"name": "Naming & conventions",
|
|
844
|
+
"score": 10,
|
|
845
|
+
"max": 10
|
|
846
|
+
},
|
|
847
|
+
{
|
|
848
|
+
"id": "pii",
|
|
849
|
+
"name": "PII detection",
|
|
850
|
+
"score": 10,
|
|
851
|
+
"max": 10
|
|
852
|
+
},
|
|
853
|
+
{
|
|
854
|
+
"id": "script-lint",
|
|
855
|
+
"name": "Script linting",
|
|
856
|
+
"score": 10,
|
|
857
|
+
"max": 10
|
|
858
|
+
}
|
|
859
|
+
],
|
|
860
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
861
|
+
"evaluatedVersion": "0.0.0"
|
|
862
|
+
},
|
|
863
|
+
"skill-best-practice": {
|
|
864
|
+
"providerId": "skill-best-practice",
|
|
865
|
+
"providerVersion": "1.1.0",
|
|
866
|
+
"schemaVersion": 1,
|
|
867
|
+
"passed": false,
|
|
868
|
+
"overallScore": 69,
|
|
869
|
+
"grade": "C",
|
|
870
|
+
"categories": [
|
|
871
|
+
{
|
|
872
|
+
"id": "validation",
|
|
873
|
+
"name": "Deterministic validation",
|
|
874
|
+
"score": 9,
|
|
875
|
+
"max": 13
|
|
876
|
+
}
|
|
877
|
+
],
|
|
878
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
879
|
+
"evaluatedVersion": "0.0.0"
|
|
880
|
+
}
|
|
881
|
+
}
|
|
882
|
+
},
|
|
883
|
+
{
|
|
884
|
+
"name": "caveman-evidence-review",
|
|
885
|
+
"description": "Review Caveman Cloud evidence read-only: costs, Cave Score, Cave Plan, workflows, traces, latency, errors, compression, routing, and verified savings. Use when the user asks what Caveman found, where LLM spend goes, why cost or quality changed, which workflows need attention, or asks for a trace or analytics review. Prefer Caveman MCP tools; fall back to CLI JSON.",
|
|
886
|
+
"version": "0.0.0",
|
|
887
|
+
"license": "",
|
|
888
|
+
"creator": "",
|
|
889
|
+
"compatibility": "",
|
|
890
|
+
"allowedTools": [],
|
|
891
|
+
"modelInvocable": true,
|
|
892
|
+
"userInvocable": true,
|
|
893
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-evidence-review",
|
|
894
|
+
"relPath": "skills/caveman-evidence-review",
|
|
895
|
+
"verified": true,
|
|
896
|
+
"tokenCount": 1118,
|
|
897
|
+
"evalSummary": {
|
|
898
|
+
"overallScore": 70,
|
|
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": 8,
|
|
911
|
+
"max": 10
|
|
912
|
+
},
|
|
913
|
+
{
|
|
914
|
+
"id": "prompt-engineering",
|
|
915
|
+
"name": "Prompt engineering",
|
|
916
|
+
"score": 9,
|
|
917
|
+
"max": 10
|
|
918
|
+
},
|
|
919
|
+
{
|
|
920
|
+
"id": "context-efficiency",
|
|
921
|
+
"name": "Context efficiency",
|
|
922
|
+
"score": 7,
|
|
923
|
+
"max": 10
|
|
924
|
+
},
|
|
925
|
+
{
|
|
926
|
+
"id": "safety",
|
|
927
|
+
"name": "Safety & guardrails",
|
|
928
|
+
"score": 6,
|
|
929
|
+
"max": 10
|
|
930
|
+
},
|
|
931
|
+
{
|
|
932
|
+
"id": "testability",
|
|
933
|
+
"name": "Testability",
|
|
934
|
+
"score": 3,
|
|
935
|
+
"max": 10
|
|
936
|
+
},
|
|
937
|
+
{
|
|
938
|
+
"id": "license",
|
|
939
|
+
"name": "License verification",
|
|
940
|
+
"score": 0,
|
|
941
|
+
"max": 10
|
|
942
|
+
},
|
|
943
|
+
{
|
|
944
|
+
"id": "naming",
|
|
945
|
+
"name": "Naming & conventions",
|
|
946
|
+
"score": 10,
|
|
947
|
+
"max": 10
|
|
948
|
+
},
|
|
949
|
+
{
|
|
950
|
+
"id": "pii",
|
|
951
|
+
"name": "PII detection",
|
|
952
|
+
"score": 10,
|
|
953
|
+
"max": 10
|
|
954
|
+
},
|
|
955
|
+
{
|
|
956
|
+
"id": "script-lint",
|
|
957
|
+
"name": "Script linting",
|
|
958
|
+
"score": 10,
|
|
959
|
+
"max": 10
|
|
960
|
+
}
|
|
961
|
+
],
|
|
962
|
+
"evaluatedAt": "2026-08-27T10:21:33.557Z",
|
|
963
|
+
"evaluatedVersion": "0.0.0"
|
|
964
|
+
},
|
|
965
|
+
"evalSummaries": {
|
|
966
|
+
"quality": {
|
|
967
|
+
"providerId": "quality",
|
|
968
|
+
"providerVersion": "1.0.0",
|
|
969
|
+
"schemaVersion": 1,
|
|
970
|
+
"passed": true,
|
|
971
|
+
"overallScore": 70,
|
|
972
|
+
"grade": "C",
|
|
973
|
+
"categories": [
|
|
974
|
+
{
|
|
975
|
+
"id": "structure",
|
|
976
|
+
"name": "Structure & completeness",
|
|
977
|
+
"score": 7,
|
|
978
|
+
"max": 10
|
|
979
|
+
},
|
|
980
|
+
{
|
|
981
|
+
"id": "description",
|
|
982
|
+
"name": "Description quality",
|
|
983
|
+
"score": 8,
|
|
984
|
+
"max": 10
|
|
985
|
+
},
|
|
986
|
+
{
|
|
987
|
+
"id": "prompt-engineering",
|
|
988
|
+
"name": "Prompt engineering",
|
|
989
|
+
"score": 9,
|
|
990
|
+
"max": 10
|
|
991
|
+
},
|
|
992
|
+
{
|
|
993
|
+
"id": "context-efficiency",
|
|
994
|
+
"name": "Context efficiency",
|
|
995
|
+
"score": 7,
|
|
996
|
+
"max": 10
|
|
997
|
+
},
|
|
998
|
+
{
|
|
999
|
+
"id": "safety",
|
|
1000
|
+
"name": "Safety & guardrails",
|
|
1001
|
+
"score": 6,
|
|
1002
|
+
"max": 10
|
|
1003
|
+
},
|
|
1004
|
+
{
|
|
1005
|
+
"id": "testability",
|
|
1006
|
+
"name": "Testability",
|
|
1007
|
+
"score": 3,
|
|
1008
|
+
"max": 10
|
|
1009
|
+
},
|
|
1010
|
+
{
|
|
1011
|
+
"id": "license",
|
|
1012
|
+
"name": "License verification",
|
|
1013
|
+
"score": 0,
|
|
1014
|
+
"max": 10
|
|
1015
|
+
},
|
|
1016
|
+
{
|
|
1017
|
+
"id": "naming",
|
|
1018
|
+
"name": "Naming & conventions",
|
|
1019
|
+
"score": 10,
|
|
1020
|
+
"max": 10
|
|
1021
|
+
},
|
|
1022
|
+
{
|
|
1023
|
+
"id": "pii",
|
|
1024
|
+
"name": "PII detection",
|
|
1025
|
+
"score": 10,
|
|
1026
|
+
"max": 10
|
|
1027
|
+
},
|
|
1028
|
+
{
|
|
1029
|
+
"id": "script-lint",
|
|
1030
|
+
"name": "Script linting",
|
|
1031
|
+
"score": 10,
|
|
1032
|
+
"max": 10
|
|
1033
|
+
}
|
|
1034
|
+
],
|
|
1035
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
1036
|
+
"evaluatedVersion": "0.0.0"
|
|
1037
|
+
},
|
|
1038
|
+
"skill-best-practice": {
|
|
1039
|
+
"providerId": "skill-best-practice",
|
|
1040
|
+
"providerVersion": "1.1.0",
|
|
1041
|
+
"schemaVersion": 1,
|
|
1042
|
+
"passed": false,
|
|
1043
|
+
"overallScore": 69,
|
|
1044
|
+
"grade": "C",
|
|
1045
|
+
"categories": [
|
|
1046
|
+
{
|
|
1047
|
+
"id": "validation",
|
|
1048
|
+
"name": "Deterministic validation",
|
|
1049
|
+
"score": 9,
|
|
1050
|
+
"max": 13
|
|
1051
|
+
}
|
|
1052
|
+
],
|
|
1053
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
1054
|
+
"evaluatedVersion": "0.0.0"
|
|
1055
|
+
}
|
|
1056
|
+
}
|
|
1057
|
+
},
|
|
1058
|
+
{
|
|
1059
|
+
"name": "caveman-explore",
|
|
1060
|
+
"description": "Read-only repository explorer. Use PROACTIVELY for cold-start exploration, broad cross-file localization, or when a direct search has failed and you need to find where something lives. Skip it when the issue already names the exact file or symbol, or a previous turn already returned usable file:line evidence. Returns only compact path:line citations; its reads and greps never enter the main conversation.",
|
|
1061
|
+
"version": "0.0.0",
|
|
1062
|
+
"license": "",
|
|
1063
|
+
"creator": "",
|
|
1064
|
+
"compatibility": "",
|
|
1065
|
+
"allowedTools": [],
|
|
1066
|
+
"modelInvocable": true,
|
|
1067
|
+
"userInvocable": true,
|
|
1068
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-explore",
|
|
1069
|
+
"relPath": "skills/caveman-explore",
|
|
1070
|
+
"verified": true,
|
|
1071
|
+
"tokenCount": 682,
|
|
1072
|
+
"evalSummary": {
|
|
1073
|
+
"overallScore": 51,
|
|
1074
|
+
"grade": "D",
|
|
1075
|
+
"categories": [
|
|
1076
|
+
{
|
|
1077
|
+
"id": "structure",
|
|
1078
|
+
"name": "Structure & completeness",
|
|
1079
|
+
"score": 6,
|
|
1080
|
+
"max": 10
|
|
1081
|
+
},
|
|
1082
|
+
{
|
|
1083
|
+
"id": "description",
|
|
1084
|
+
"name": "Description quality",
|
|
1085
|
+
"score": 3,
|
|
1086
|
+
"max": 10
|
|
1087
|
+
},
|
|
1088
|
+
{
|
|
1089
|
+
"id": "prompt-engineering",
|
|
1090
|
+
"name": "Prompt engineering",
|
|
1091
|
+
"score": 5,
|
|
1092
|
+
"max": 10
|
|
1093
|
+
},
|
|
1094
|
+
{
|
|
1095
|
+
"id": "context-efficiency",
|
|
1096
|
+
"name": "Context efficiency",
|
|
1097
|
+
"score": 7,
|
|
1098
|
+
"max": 10
|
|
1099
|
+
},
|
|
1100
|
+
{
|
|
1101
|
+
"id": "safety",
|
|
1102
|
+
"name": "Safety & guardrails",
|
|
1103
|
+
"score": 2,
|
|
1104
|
+
"max": 10
|
|
1105
|
+
},
|
|
1106
|
+
{
|
|
1107
|
+
"id": "testability",
|
|
1108
|
+
"name": "Testability",
|
|
1109
|
+
"score": 1,
|
|
1110
|
+
"max": 10
|
|
1111
|
+
},
|
|
1112
|
+
{
|
|
1113
|
+
"id": "license",
|
|
1114
|
+
"name": "License verification",
|
|
1115
|
+
"score": 0,
|
|
1116
|
+
"max": 10
|
|
1117
|
+
},
|
|
1118
|
+
{
|
|
1119
|
+
"id": "naming",
|
|
1120
|
+
"name": "Naming & conventions",
|
|
1121
|
+
"score": 7,
|
|
1122
|
+
"max": 10
|
|
1123
|
+
},
|
|
1124
|
+
{
|
|
1125
|
+
"id": "pii",
|
|
1126
|
+
"name": "PII detection",
|
|
1127
|
+
"score": 10,
|
|
1128
|
+
"max": 10
|
|
1129
|
+
},
|
|
1130
|
+
{
|
|
1131
|
+
"id": "script-lint",
|
|
1132
|
+
"name": "Script linting",
|
|
1133
|
+
"score": 10,
|
|
1134
|
+
"max": 10
|
|
1135
|
+
}
|
|
1136
|
+
],
|
|
1137
|
+
"evaluatedAt": "2026-08-27T10:21:33.557Z",
|
|
1138
|
+
"evaluatedVersion": "0.0.0"
|
|
1139
|
+
},
|
|
1140
|
+
"evalSummaries": {
|
|
1141
|
+
"quality": {
|
|
1142
|
+
"providerId": "quality",
|
|
1143
|
+
"providerVersion": "1.0.0",
|
|
1144
|
+
"schemaVersion": 1,
|
|
1145
|
+
"passed": true,
|
|
1146
|
+
"overallScore": 51,
|
|
1147
|
+
"grade": "D",
|
|
1148
|
+
"categories": [
|
|
1149
|
+
{
|
|
1150
|
+
"id": "structure",
|
|
1151
|
+
"name": "Structure & completeness",
|
|
1152
|
+
"score": 6,
|
|
1153
|
+
"max": 10
|
|
1154
|
+
},
|
|
1155
|
+
{
|
|
1156
|
+
"id": "description",
|
|
1157
|
+
"name": "Description quality",
|
|
1158
|
+
"score": 3,
|
|
1159
|
+
"max": 10
|
|
1160
|
+
},
|
|
1161
|
+
{
|
|
1162
|
+
"id": "prompt-engineering",
|
|
1163
|
+
"name": "Prompt engineering",
|
|
1164
|
+
"score": 5,
|
|
1165
|
+
"max": 10
|
|
1166
|
+
},
|
|
1167
|
+
{
|
|
1168
|
+
"id": "context-efficiency",
|
|
1169
|
+
"name": "Context efficiency",
|
|
1170
|
+
"score": 7,
|
|
1171
|
+
"max": 10
|
|
1172
|
+
},
|
|
1173
|
+
{
|
|
1174
|
+
"id": "safety",
|
|
1175
|
+
"name": "Safety & guardrails",
|
|
1176
|
+
"score": 2,
|
|
1177
|
+
"max": 10
|
|
1178
|
+
},
|
|
1179
|
+
{
|
|
1180
|
+
"id": "testability",
|
|
1181
|
+
"name": "Testability",
|
|
1182
|
+
"score": 1,
|
|
1183
|
+
"max": 10
|
|
1184
|
+
},
|
|
1185
|
+
{
|
|
1186
|
+
"id": "license",
|
|
1187
|
+
"name": "License verification",
|
|
1188
|
+
"score": 0,
|
|
1189
|
+
"max": 10
|
|
1190
|
+
},
|
|
1191
|
+
{
|
|
1192
|
+
"id": "naming",
|
|
1193
|
+
"name": "Naming & conventions",
|
|
1194
|
+
"score": 7,
|
|
1195
|
+
"max": 10
|
|
1196
|
+
},
|
|
1197
|
+
{
|
|
1198
|
+
"id": "pii",
|
|
1199
|
+
"name": "PII detection",
|
|
1200
|
+
"score": 10,
|
|
1201
|
+
"max": 10
|
|
1202
|
+
},
|
|
1203
|
+
{
|
|
1204
|
+
"id": "script-lint",
|
|
1205
|
+
"name": "Script linting",
|
|
1206
|
+
"score": 10,
|
|
1207
|
+
"max": 10
|
|
1208
|
+
}
|
|
1209
|
+
],
|
|
1210
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
1211
|
+
"evaluatedVersion": "0.0.0"
|
|
1212
|
+
},
|
|
1213
|
+
"skill-best-practice": {
|
|
1214
|
+
"providerId": "skill-best-practice",
|
|
1215
|
+
"providerVersion": "1.1.0",
|
|
1216
|
+
"schemaVersion": 1,
|
|
1217
|
+
"passed": false,
|
|
1218
|
+
"overallScore": 62,
|
|
1219
|
+
"grade": "D",
|
|
1220
|
+
"categories": [
|
|
1221
|
+
{
|
|
1222
|
+
"id": "validation",
|
|
1223
|
+
"name": "Deterministic validation",
|
|
1224
|
+
"score": 8,
|
|
1225
|
+
"max": 13
|
|
1226
|
+
}
|
|
1227
|
+
],
|
|
1228
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
1229
|
+
"evaluatedVersion": "0.0.0"
|
|
1230
|
+
}
|
|
1231
|
+
}
|
|
1232
|
+
},
|
|
1233
|
+
{
|
|
1234
|
+
"name": "caveman-help",
|
|
1235
|
+
"description": "Quick-reference card for all caveman modes, skills, and commands. One-shot display, not a persistent mode. Trigger: /caveman-help, \"caveman help\", \"what caveman commands\", \"how do I use caveman\".",
|
|
1236
|
+
"version": "0.0.0",
|
|
1237
|
+
"license": "",
|
|
1238
|
+
"creator": "",
|
|
1239
|
+
"compatibility": "",
|
|
1240
|
+
"allowedTools": [],
|
|
1241
|
+
"modelInvocable": true,
|
|
1242
|
+
"userInvocable": true,
|
|
1243
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-help",
|
|
1244
|
+
"relPath": "skills/caveman-help",
|
|
1245
|
+
"verified": true,
|
|
1246
|
+
"tokenCount": 608,
|
|
1247
|
+
"evalSummary": {
|
|
1248
|
+
"overallScore": 57,
|
|
1249
|
+
"grade": "D",
|
|
1250
|
+
"categories": [
|
|
1251
|
+
{
|
|
1252
|
+
"id": "structure",
|
|
1253
|
+
"name": "Structure & completeness",
|
|
1254
|
+
"score": 7,
|
|
1255
|
+
"max": 10
|
|
1256
|
+
},
|
|
1257
|
+
{
|
|
1258
|
+
"id": "description",
|
|
1259
|
+
"name": "Description quality",
|
|
1260
|
+
"score": 7,
|
|
1261
|
+
"max": 10
|
|
1262
|
+
},
|
|
1263
|
+
{
|
|
1264
|
+
"id": "prompt-engineering",
|
|
1265
|
+
"name": "Prompt engineering",
|
|
1266
|
+
"score": 2,
|
|
1267
|
+
"max": 10
|
|
1268
|
+
},
|
|
1269
|
+
{
|
|
1270
|
+
"id": "context-efficiency",
|
|
1271
|
+
"name": "Context efficiency",
|
|
1272
|
+
"score": 10,
|
|
1273
|
+
"max": 10
|
|
1274
|
+
},
|
|
1275
|
+
{
|
|
1276
|
+
"id": "safety",
|
|
1277
|
+
"name": "Safety & guardrails",
|
|
1278
|
+
"score": 1,
|
|
1279
|
+
"max": 10
|
|
1280
|
+
},
|
|
1281
|
+
{
|
|
1282
|
+
"id": "testability",
|
|
1283
|
+
"name": "Testability",
|
|
1284
|
+
"score": 0,
|
|
1285
|
+
"max": 10
|
|
1286
|
+
},
|
|
1287
|
+
{
|
|
1288
|
+
"id": "license",
|
|
1289
|
+
"name": "License verification",
|
|
1290
|
+
"score": 0,
|
|
1291
|
+
"max": 10
|
|
1292
|
+
},
|
|
1293
|
+
{
|
|
1294
|
+
"id": "naming",
|
|
1295
|
+
"name": "Naming & conventions",
|
|
1296
|
+
"score": 10,
|
|
1297
|
+
"max": 10
|
|
1298
|
+
},
|
|
1299
|
+
{
|
|
1300
|
+
"id": "pii",
|
|
1301
|
+
"name": "PII detection",
|
|
1302
|
+
"score": 10,
|
|
1303
|
+
"max": 10
|
|
1304
|
+
},
|
|
1305
|
+
{
|
|
1306
|
+
"id": "script-lint",
|
|
1307
|
+
"name": "Script linting",
|
|
1308
|
+
"score": 10,
|
|
1309
|
+
"max": 10
|
|
1310
|
+
}
|
|
1311
|
+
],
|
|
1312
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
1313
|
+
"evaluatedVersion": "0.0.0"
|
|
1314
|
+
},
|
|
1315
|
+
"evalSummaries": {
|
|
1316
|
+
"quality": {
|
|
1317
|
+
"providerId": "quality",
|
|
1318
|
+
"providerVersion": "1.0.0",
|
|
1319
|
+
"schemaVersion": 1,
|
|
1320
|
+
"passed": true,
|
|
1321
|
+
"overallScore": 57,
|
|
1322
|
+
"grade": "D",
|
|
1323
|
+
"categories": [
|
|
1324
|
+
{
|
|
1325
|
+
"id": "structure",
|
|
1326
|
+
"name": "Structure & completeness",
|
|
1327
|
+
"score": 7,
|
|
1328
|
+
"max": 10
|
|
1329
|
+
},
|
|
1330
|
+
{
|
|
1331
|
+
"id": "description",
|
|
1332
|
+
"name": "Description quality",
|
|
1333
|
+
"score": 7,
|
|
1334
|
+
"max": 10
|
|
1335
|
+
},
|
|
1336
|
+
{
|
|
1337
|
+
"id": "prompt-engineering",
|
|
1338
|
+
"name": "Prompt engineering",
|
|
1339
|
+
"score": 2,
|
|
1340
|
+
"max": 10
|
|
1341
|
+
},
|
|
1342
|
+
{
|
|
1343
|
+
"id": "context-efficiency",
|
|
1344
|
+
"name": "Context efficiency",
|
|
1345
|
+
"score": 10,
|
|
1346
|
+
"max": 10
|
|
1347
|
+
},
|
|
1348
|
+
{
|
|
1349
|
+
"id": "safety",
|
|
1350
|
+
"name": "Safety & guardrails",
|
|
1351
|
+
"score": 1,
|
|
1352
|
+
"max": 10
|
|
1353
|
+
},
|
|
1354
|
+
{
|
|
1355
|
+
"id": "testability",
|
|
1356
|
+
"name": "Testability",
|
|
1357
|
+
"score": 0,
|
|
1358
|
+
"max": 10
|
|
1359
|
+
},
|
|
1360
|
+
{
|
|
1361
|
+
"id": "license",
|
|
1362
|
+
"name": "License verification",
|
|
1363
|
+
"score": 0,
|
|
1364
|
+
"max": 10
|
|
1365
|
+
},
|
|
1366
|
+
{
|
|
1367
|
+
"id": "naming",
|
|
1368
|
+
"name": "Naming & conventions",
|
|
1369
|
+
"score": 10,
|
|
1370
|
+
"max": 10
|
|
1371
|
+
},
|
|
1372
|
+
{
|
|
1373
|
+
"id": "pii",
|
|
1374
|
+
"name": "PII detection",
|
|
1375
|
+
"score": 10,
|
|
1376
|
+
"max": 10
|
|
1377
|
+
},
|
|
1378
|
+
{
|
|
1379
|
+
"id": "script-lint",
|
|
1380
|
+
"name": "Script linting",
|
|
1381
|
+
"score": 10,
|
|
1382
|
+
"max": 10
|
|
1383
|
+
}
|
|
1384
|
+
],
|
|
1385
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
1386
|
+
"evaluatedVersion": "0.0.0"
|
|
1387
|
+
},
|
|
1388
|
+
"skill-best-practice": {
|
|
1389
|
+
"providerId": "skill-best-practice",
|
|
1390
|
+
"providerVersion": "1.1.0",
|
|
1391
|
+
"schemaVersion": 1,
|
|
1392
|
+
"passed": false,
|
|
1393
|
+
"overallScore": 77,
|
|
1394
|
+
"grade": "C",
|
|
1395
|
+
"categories": [
|
|
1396
|
+
{
|
|
1397
|
+
"id": "validation",
|
|
1398
|
+
"name": "Deterministic validation",
|
|
1399
|
+
"score": 10,
|
|
1400
|
+
"max": 13
|
|
1401
|
+
}
|
|
1402
|
+
],
|
|
1403
|
+
"evaluatedAt": "2026-08-27T10:21:33.558Z",
|
|
1404
|
+
"evaluatedVersion": "0.0.0"
|
|
1405
|
+
}
|
|
1406
|
+
}
|
|
1407
|
+
},
|
|
1408
|
+
{
|
|
1409
|
+
"name": "caveman-learn",
|
|
1410
|
+
"description": "Close the loop on a Caveman learn report — review the ranked token sinks, apply cost-lowering fixes (trim config, offload recurring context to cavemem) with per-edit consent, and report what those fixes returned with their attribution. Use when the user runs \"caveman learn\", asks to lower their agent's token cost, asks what caveman has saved them, wants to trim a heavy CLAUDE.md, or wants to offload context they re-paste every session into cavemem.",
|
|
1411
|
+
"version": "0.0.0",
|
|
1412
|
+
"license": "",
|
|
1413
|
+
"creator": "",
|
|
1414
|
+
"compatibility": "",
|
|
1415
|
+
"allowedTools": [],
|
|
1416
|
+
"modelInvocable": true,
|
|
1417
|
+
"userInvocable": true,
|
|
1418
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-learn",
|
|
1419
|
+
"relPath": "skills/caveman-learn",
|
|
1420
|
+
"verified": true,
|
|
1421
|
+
"tokenCount": 3096,
|
|
1422
|
+
"evalSummary": {
|
|
1423
|
+
"overallScore": 62,
|
|
1424
|
+
"grade": "D",
|
|
1425
|
+
"categories": [
|
|
1426
|
+
{
|
|
1427
|
+
"id": "structure",
|
|
1428
|
+
"name": "Structure & completeness",
|
|
1429
|
+
"score": 6,
|
|
1430
|
+
"max": 10
|
|
1431
|
+
},
|
|
1432
|
+
{
|
|
1433
|
+
"id": "description",
|
|
1434
|
+
"name": "Description quality",
|
|
1435
|
+
"score": 3,
|
|
1436
|
+
"max": 10
|
|
1437
|
+
},
|
|
1438
|
+
{
|
|
1439
|
+
"id": "prompt-engineering",
|
|
1440
|
+
"name": "Prompt engineering",
|
|
1441
|
+
"score": 6,
|
|
1442
|
+
"max": 10
|
|
1443
|
+
},
|
|
1444
|
+
{
|
|
1445
|
+
"id": "context-efficiency",
|
|
1446
|
+
"name": "Context efficiency",
|
|
1447
|
+
"score": 10,
|
|
1448
|
+
"max": 10
|
|
1449
|
+
},
|
|
1450
|
+
{
|
|
1451
|
+
"id": "safety",
|
|
1452
|
+
"name": "Safety & guardrails",
|
|
1453
|
+
"score": 7,
|
|
1454
|
+
"max": 10
|
|
1455
|
+
},
|
|
1456
|
+
{
|
|
1457
|
+
"id": "testability",
|
|
1458
|
+
"name": "Testability",
|
|
1459
|
+
"score": 3,
|
|
1460
|
+
"max": 10
|
|
1461
|
+
},
|
|
1462
|
+
{
|
|
1463
|
+
"id": "license",
|
|
1464
|
+
"name": "License verification",
|
|
1465
|
+
"score": 0,
|
|
1466
|
+
"max": 10
|
|
1467
|
+
},
|
|
1468
|
+
{
|
|
1469
|
+
"id": "naming",
|
|
1470
|
+
"name": "Naming & conventions",
|
|
1471
|
+
"score": 7,
|
|
1472
|
+
"max": 10
|
|
1473
|
+
},
|
|
1474
|
+
{
|
|
1475
|
+
"id": "pii",
|
|
1476
|
+
"name": "PII detection",
|
|
1477
|
+
"score": 10,
|
|
1478
|
+
"max": 10
|
|
1479
|
+
},
|
|
1480
|
+
{
|
|
1481
|
+
"id": "script-lint",
|
|
1482
|
+
"name": "Script linting",
|
|
1483
|
+
"score": 10,
|
|
1484
|
+
"max": 10
|
|
1485
|
+
}
|
|
1486
|
+
],
|
|
1487
|
+
"evaluatedAt": "2026-08-27T10:21:33.582Z",
|
|
1488
|
+
"evaluatedVersion": "0.0.0"
|
|
1489
|
+
},
|
|
1490
|
+
"evalSummaries": {
|
|
1491
|
+
"quality": {
|
|
1492
|
+
"providerId": "quality",
|
|
1493
|
+
"providerVersion": "1.0.0",
|
|
1494
|
+
"schemaVersion": 1,
|
|
1495
|
+
"passed": true,
|
|
1496
|
+
"overallScore": 62,
|
|
1497
|
+
"grade": "D",
|
|
1498
|
+
"categories": [
|
|
1499
|
+
{
|
|
1500
|
+
"id": "structure",
|
|
1501
|
+
"name": "Structure & completeness",
|
|
1502
|
+
"score": 6,
|
|
1503
|
+
"max": 10
|
|
1504
|
+
},
|
|
1505
|
+
{
|
|
1506
|
+
"id": "description",
|
|
1507
|
+
"name": "Description quality",
|
|
1508
|
+
"score": 3,
|
|
1509
|
+
"max": 10
|
|
1510
|
+
},
|
|
1511
|
+
{
|
|
1512
|
+
"id": "prompt-engineering",
|
|
1513
|
+
"name": "Prompt engineering",
|
|
1514
|
+
"score": 6,
|
|
1515
|
+
"max": 10
|
|
1516
|
+
},
|
|
1517
|
+
{
|
|
1518
|
+
"id": "context-efficiency",
|
|
1519
|
+
"name": "Context efficiency",
|
|
1520
|
+
"score": 10,
|
|
1521
|
+
"max": 10
|
|
1522
|
+
},
|
|
1523
|
+
{
|
|
1524
|
+
"id": "safety",
|
|
1525
|
+
"name": "Safety & guardrails",
|
|
1526
|
+
"score": 7,
|
|
1527
|
+
"max": 10
|
|
1528
|
+
},
|
|
1529
|
+
{
|
|
1530
|
+
"id": "testability",
|
|
1531
|
+
"name": "Testability",
|
|
1532
|
+
"score": 3,
|
|
1533
|
+
"max": 10
|
|
1534
|
+
},
|
|
1535
|
+
{
|
|
1536
|
+
"id": "license",
|
|
1537
|
+
"name": "License verification",
|
|
1538
|
+
"score": 0,
|
|
1539
|
+
"max": 10
|
|
1540
|
+
},
|
|
1541
|
+
{
|
|
1542
|
+
"id": "naming",
|
|
1543
|
+
"name": "Naming & conventions",
|
|
1544
|
+
"score": 7,
|
|
1545
|
+
"max": 10
|
|
1546
|
+
},
|
|
1547
|
+
{
|
|
1548
|
+
"id": "pii",
|
|
1549
|
+
"name": "PII detection",
|
|
1550
|
+
"score": 10,
|
|
1551
|
+
"max": 10
|
|
1552
|
+
},
|
|
1553
|
+
{
|
|
1554
|
+
"id": "script-lint",
|
|
1555
|
+
"name": "Script linting",
|
|
1556
|
+
"score": 10,
|
|
1557
|
+
"max": 10
|
|
1558
|
+
}
|
|
1559
|
+
],
|
|
1560
|
+
"evaluatedAt": "2026-08-27T10:21:33.583Z",
|
|
1561
|
+
"evaluatedVersion": "0.0.0"
|
|
1562
|
+
},
|
|
1563
|
+
"skill-best-practice": {
|
|
1564
|
+
"providerId": "skill-best-practice",
|
|
1565
|
+
"providerVersion": "1.1.0",
|
|
1566
|
+
"schemaVersion": 1,
|
|
1567
|
+
"passed": false,
|
|
1568
|
+
"overallScore": 69,
|
|
1569
|
+
"grade": "C",
|
|
1570
|
+
"categories": [
|
|
1571
|
+
{
|
|
1572
|
+
"id": "validation",
|
|
1573
|
+
"name": "Deterministic validation",
|
|
1574
|
+
"score": 9,
|
|
1575
|
+
"max": 13
|
|
1576
|
+
}
|
|
1577
|
+
],
|
|
1578
|
+
"evaluatedAt": "2026-08-27T10:21:33.583Z",
|
|
1579
|
+
"evaluatedVersion": "0.0.0"
|
|
1580
|
+
}
|
|
1581
|
+
}
|
|
1582
|
+
},
|
|
1583
|
+
{
|
|
1584
|
+
"name": "caveman-manage",
|
|
1585
|
+
"description": "Inspect Caveman Cloud's eval-gated experiment lifecycle and block unsafe execution. Use when the user asks to start, approve, cancel, promote, or roll back a Caveman experiment, or asks what action an experiment's evidence supports. Read evidence first; do not execute lifecycle mutations until server-authoritative transition and evidence gates ship.",
|
|
1586
|
+
"version": "0.0.0",
|
|
1587
|
+
"license": "",
|
|
1588
|
+
"creator": "",
|
|
1589
|
+
"compatibility": "",
|
|
1590
|
+
"allowedTools": [],
|
|
1591
|
+
"modelInvocable": true,
|
|
1592
|
+
"userInvocable": true,
|
|
1593
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-manage",
|
|
1594
|
+
"relPath": "skills/caveman-manage",
|
|
1595
|
+
"verified": true,
|
|
1596
|
+
"tokenCount": 1097,
|
|
1597
|
+
"evalSummary": {
|
|
1598
|
+
"overallScore": 66,
|
|
1599
|
+
"grade": "C",
|
|
1600
|
+
"categories": [
|
|
1601
|
+
{
|
|
1602
|
+
"id": "structure",
|
|
1603
|
+
"name": "Structure & completeness",
|
|
1604
|
+
"score": 7,
|
|
1605
|
+
"max": 10
|
|
1606
|
+
},
|
|
1607
|
+
{
|
|
1608
|
+
"id": "description",
|
|
1609
|
+
"name": "Description quality",
|
|
1610
|
+
"score": 8,
|
|
1611
|
+
"max": 10
|
|
1612
|
+
},
|
|
1613
|
+
{
|
|
1614
|
+
"id": "prompt-engineering",
|
|
1615
|
+
"name": "Prompt engineering",
|
|
1616
|
+
"score": 6,
|
|
1617
|
+
"max": 10
|
|
1618
|
+
},
|
|
1619
|
+
{
|
|
1620
|
+
"id": "context-efficiency",
|
|
1621
|
+
"name": "Context efficiency",
|
|
1622
|
+
"score": 7,
|
|
1623
|
+
"max": 10
|
|
1624
|
+
},
|
|
1625
|
+
{
|
|
1626
|
+
"id": "safety",
|
|
1627
|
+
"name": "Safety & guardrails",
|
|
1628
|
+
"score": 7,
|
|
1629
|
+
"max": 10
|
|
1630
|
+
},
|
|
1631
|
+
{
|
|
1632
|
+
"id": "testability",
|
|
1633
|
+
"name": "Testability",
|
|
1634
|
+
"score": 1,
|
|
1635
|
+
"max": 10
|
|
1636
|
+
},
|
|
1637
|
+
{
|
|
1638
|
+
"id": "license",
|
|
1639
|
+
"name": "License verification",
|
|
1640
|
+
"score": 0,
|
|
1641
|
+
"max": 10
|
|
1642
|
+
},
|
|
1643
|
+
{
|
|
1644
|
+
"id": "naming",
|
|
1645
|
+
"name": "Naming & conventions",
|
|
1646
|
+
"score": 10,
|
|
1647
|
+
"max": 10
|
|
1648
|
+
},
|
|
1649
|
+
{
|
|
1650
|
+
"id": "pii",
|
|
1651
|
+
"name": "PII detection",
|
|
1652
|
+
"score": 10,
|
|
1653
|
+
"max": 10
|
|
1654
|
+
},
|
|
1655
|
+
{
|
|
1656
|
+
"id": "script-lint",
|
|
1657
|
+
"name": "Script linting",
|
|
1658
|
+
"score": 10,
|
|
1659
|
+
"max": 10
|
|
1660
|
+
}
|
|
1661
|
+
],
|
|
1662
|
+
"evaluatedAt": "2026-08-27T10:21:33.582Z",
|
|
1663
|
+
"evaluatedVersion": "0.0.0"
|
|
1664
|
+
},
|
|
1665
|
+
"evalSummaries": {
|
|
1666
|
+
"quality": {
|
|
1667
|
+
"providerId": "quality",
|
|
1668
|
+
"providerVersion": "1.0.0",
|
|
1669
|
+
"schemaVersion": 1,
|
|
1670
|
+
"passed": true,
|
|
1671
|
+
"overallScore": 66,
|
|
1672
|
+
"grade": "C",
|
|
1673
|
+
"categories": [
|
|
1674
|
+
{
|
|
1675
|
+
"id": "structure",
|
|
1676
|
+
"name": "Structure & completeness",
|
|
1677
|
+
"score": 7,
|
|
1678
|
+
"max": 10
|
|
1679
|
+
},
|
|
1680
|
+
{
|
|
1681
|
+
"id": "description",
|
|
1682
|
+
"name": "Description quality",
|
|
1683
|
+
"score": 8,
|
|
1684
|
+
"max": 10
|
|
1685
|
+
},
|
|
1686
|
+
{
|
|
1687
|
+
"id": "prompt-engineering",
|
|
1688
|
+
"name": "Prompt engineering",
|
|
1689
|
+
"score": 6,
|
|
1690
|
+
"max": 10
|
|
1691
|
+
},
|
|
1692
|
+
{
|
|
1693
|
+
"id": "context-efficiency",
|
|
1694
|
+
"name": "Context efficiency",
|
|
1695
|
+
"score": 7,
|
|
1696
|
+
"max": 10
|
|
1697
|
+
},
|
|
1698
|
+
{
|
|
1699
|
+
"id": "safety",
|
|
1700
|
+
"name": "Safety & guardrails",
|
|
1701
|
+
"score": 7,
|
|
1702
|
+
"max": 10
|
|
1703
|
+
},
|
|
1704
|
+
{
|
|
1705
|
+
"id": "testability",
|
|
1706
|
+
"name": "Testability",
|
|
1707
|
+
"score": 1,
|
|
1708
|
+
"max": 10
|
|
1709
|
+
},
|
|
1710
|
+
{
|
|
1711
|
+
"id": "license",
|
|
1712
|
+
"name": "License verification",
|
|
1713
|
+
"score": 0,
|
|
1714
|
+
"max": 10
|
|
1715
|
+
},
|
|
1716
|
+
{
|
|
1717
|
+
"id": "naming",
|
|
1718
|
+
"name": "Naming & conventions",
|
|
1719
|
+
"score": 10,
|
|
1720
|
+
"max": 10
|
|
1721
|
+
},
|
|
1722
|
+
{
|
|
1723
|
+
"id": "pii",
|
|
1724
|
+
"name": "PII detection",
|
|
1725
|
+
"score": 10,
|
|
1726
|
+
"max": 10
|
|
1727
|
+
},
|
|
1728
|
+
{
|
|
1729
|
+
"id": "script-lint",
|
|
1730
|
+
"name": "Script linting",
|
|
1731
|
+
"score": 10,
|
|
1732
|
+
"max": 10
|
|
1733
|
+
}
|
|
1734
|
+
],
|
|
1735
|
+
"evaluatedAt": "2026-08-27T10:21:33.583Z",
|
|
1736
|
+
"evaluatedVersion": "0.0.0"
|
|
1737
|
+
},
|
|
1738
|
+
"skill-best-practice": {
|
|
1739
|
+
"providerId": "skill-best-practice",
|
|
1740
|
+
"providerVersion": "1.1.0",
|
|
1741
|
+
"schemaVersion": 1,
|
|
1742
|
+
"passed": false,
|
|
1743
|
+
"overallScore": 69,
|
|
1744
|
+
"grade": "C",
|
|
1745
|
+
"categories": [
|
|
1746
|
+
{
|
|
1747
|
+
"id": "validation",
|
|
1748
|
+
"name": "Deterministic validation",
|
|
1749
|
+
"score": 9,
|
|
1750
|
+
"max": 13
|
|
1751
|
+
}
|
|
1752
|
+
],
|
|
1753
|
+
"evaluatedAt": "2026-08-27T10:21:33.583Z",
|
|
1754
|
+
"evaluatedVersion": "0.0.0"
|
|
1755
|
+
}
|
|
1756
|
+
}
|
|
1757
|
+
},
|
|
1758
|
+
{
|
|
1759
|
+
"name": "caveman-optimize",
|
|
1760
|
+
"description": "Turn Caveman's exact report-only repository observations into an operator-chosen optimization candidate with a paired baseline/candidate evaluation. Use when the user asks to inspect an optimization observation, evaluate a candidate change, or act on the current Caveman optimization report. Require a logged-in Caveman CLI connection and explicit approval; never infer money or actuation from a profile.",
|
|
1761
|
+
"version": "0.0.0",
|
|
1762
|
+
"license": "",
|
|
1763
|
+
"creator": "",
|
|
1764
|
+
"compatibility": "",
|
|
1765
|
+
"allowedTools": [],
|
|
1766
|
+
"modelInvocable": true,
|
|
1767
|
+
"userInvocable": true,
|
|
1768
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-optimize",
|
|
1769
|
+
"relPath": "skills/caveman-optimize",
|
|
1770
|
+
"verified": true,
|
|
1771
|
+
"tokenCount": 1322,
|
|
1772
|
+
"evalSummary": {
|
|
1773
|
+
"overallScore": 65,
|
|
1774
|
+
"grade": "C",
|
|
1775
|
+
"categories": [
|
|
1776
|
+
{
|
|
1777
|
+
"id": "structure",
|
|
1778
|
+
"name": "Structure & completeness",
|
|
1779
|
+
"score": 7,
|
|
1780
|
+
"max": 10
|
|
1781
|
+
},
|
|
1782
|
+
{
|
|
1783
|
+
"id": "description",
|
|
1784
|
+
"name": "Description quality",
|
|
1785
|
+
"score": 5,
|
|
1786
|
+
"max": 10
|
|
1787
|
+
},
|
|
1788
|
+
{
|
|
1789
|
+
"id": "prompt-engineering",
|
|
1790
|
+
"name": "Prompt engineering",
|
|
1791
|
+
"score": 7,
|
|
1792
|
+
"max": 10
|
|
1793
|
+
},
|
|
1794
|
+
{
|
|
1795
|
+
"id": "context-efficiency",
|
|
1796
|
+
"name": "Context efficiency",
|
|
1797
|
+
"score": 8,
|
|
1798
|
+
"max": 10
|
|
1799
|
+
},
|
|
1800
|
+
{
|
|
1801
|
+
"id": "safety",
|
|
1802
|
+
"name": "Safety & guardrails",
|
|
1803
|
+
"score": 7,
|
|
1804
|
+
"max": 10
|
|
1805
|
+
},
|
|
1806
|
+
{
|
|
1807
|
+
"id": "testability",
|
|
1808
|
+
"name": "Testability",
|
|
1809
|
+
"score": 3,
|
|
1810
|
+
"max": 10
|
|
1811
|
+
},
|
|
1812
|
+
{
|
|
1813
|
+
"id": "license",
|
|
1814
|
+
"name": "License verification",
|
|
1815
|
+
"score": 0,
|
|
1816
|
+
"max": 10
|
|
1817
|
+
},
|
|
1818
|
+
{
|
|
1819
|
+
"id": "naming",
|
|
1820
|
+
"name": "Naming & conventions",
|
|
1821
|
+
"score": 8,
|
|
1822
|
+
"max": 10
|
|
1823
|
+
},
|
|
1824
|
+
{
|
|
1825
|
+
"id": "pii",
|
|
1826
|
+
"name": "PII detection",
|
|
1827
|
+
"score": 10,
|
|
1828
|
+
"max": 10
|
|
1829
|
+
},
|
|
1830
|
+
{
|
|
1831
|
+
"id": "script-lint",
|
|
1832
|
+
"name": "Script linting",
|
|
1833
|
+
"score": 10,
|
|
1834
|
+
"max": 10
|
|
1835
|
+
}
|
|
1836
|
+
],
|
|
1837
|
+
"evaluatedAt": "2026-08-27T10:21:33.588Z",
|
|
1838
|
+
"evaluatedVersion": "0.0.0"
|
|
1839
|
+
},
|
|
1840
|
+
"evalSummaries": {
|
|
1841
|
+
"quality": {
|
|
1842
|
+
"providerId": "quality",
|
|
1843
|
+
"providerVersion": "1.0.0",
|
|
1844
|
+
"schemaVersion": 1,
|
|
1845
|
+
"passed": true,
|
|
1846
|
+
"overallScore": 65,
|
|
1847
|
+
"grade": "C",
|
|
1848
|
+
"categories": [
|
|
1849
|
+
{
|
|
1850
|
+
"id": "structure",
|
|
1851
|
+
"name": "Structure & completeness",
|
|
1852
|
+
"score": 7,
|
|
1853
|
+
"max": 10
|
|
1854
|
+
},
|
|
1855
|
+
{
|
|
1856
|
+
"id": "description",
|
|
1857
|
+
"name": "Description quality",
|
|
1858
|
+
"score": 5,
|
|
1859
|
+
"max": 10
|
|
1860
|
+
},
|
|
1861
|
+
{
|
|
1862
|
+
"id": "prompt-engineering",
|
|
1863
|
+
"name": "Prompt engineering",
|
|
1864
|
+
"score": 7,
|
|
1865
|
+
"max": 10
|
|
1866
|
+
},
|
|
1867
|
+
{
|
|
1868
|
+
"id": "context-efficiency",
|
|
1869
|
+
"name": "Context efficiency",
|
|
1870
|
+
"score": 8,
|
|
1871
|
+
"max": 10
|
|
1872
|
+
},
|
|
1873
|
+
{
|
|
1874
|
+
"id": "safety",
|
|
1875
|
+
"name": "Safety & guardrails",
|
|
1876
|
+
"score": 7,
|
|
1877
|
+
"max": 10
|
|
1878
|
+
},
|
|
1879
|
+
{
|
|
1880
|
+
"id": "testability",
|
|
1881
|
+
"name": "Testability",
|
|
1882
|
+
"score": 3,
|
|
1883
|
+
"max": 10
|
|
1884
|
+
},
|
|
1885
|
+
{
|
|
1886
|
+
"id": "license",
|
|
1887
|
+
"name": "License verification",
|
|
1888
|
+
"score": 0,
|
|
1889
|
+
"max": 10
|
|
1890
|
+
},
|
|
1891
|
+
{
|
|
1892
|
+
"id": "naming",
|
|
1893
|
+
"name": "Naming & conventions",
|
|
1894
|
+
"score": 8,
|
|
1895
|
+
"max": 10
|
|
1896
|
+
},
|
|
1897
|
+
{
|
|
1898
|
+
"id": "pii",
|
|
1899
|
+
"name": "PII detection",
|
|
1900
|
+
"score": 10,
|
|
1901
|
+
"max": 10
|
|
1902
|
+
},
|
|
1903
|
+
{
|
|
1904
|
+
"id": "script-lint",
|
|
1905
|
+
"name": "Script linting",
|
|
1906
|
+
"score": 10,
|
|
1907
|
+
"max": 10
|
|
1908
|
+
}
|
|
1909
|
+
],
|
|
1910
|
+
"evaluatedAt": "2026-08-27T10:21:33.591Z",
|
|
1911
|
+
"evaluatedVersion": "0.0.0"
|
|
1912
|
+
},
|
|
1913
|
+
"skill-best-practice": {
|
|
1914
|
+
"providerId": "skill-best-practice",
|
|
1915
|
+
"providerVersion": "1.1.0",
|
|
1916
|
+
"schemaVersion": 1,
|
|
1917
|
+
"passed": false,
|
|
1918
|
+
"overallScore": 69,
|
|
1919
|
+
"grade": "C",
|
|
1920
|
+
"categories": [
|
|
1921
|
+
{
|
|
1922
|
+
"id": "validation",
|
|
1923
|
+
"name": "Deterministic validation",
|
|
1924
|
+
"score": 9,
|
|
1925
|
+
"max": 13
|
|
1926
|
+
}
|
|
1927
|
+
],
|
|
1928
|
+
"evaluatedAt": "2026-08-27T10:21:33.591Z",
|
|
1929
|
+
"evaluatedVersion": "0.0.0"
|
|
1930
|
+
}
|
|
1931
|
+
}
|
|
1932
|
+
},
|
|
1933
|
+
{
|
|
1934
|
+
"name": "caveman-review",
|
|
1935
|
+
"description": "Ultra-compressed code review comments. Cuts noise from PR feedback while preserving the actionable signal. Each comment is one line: location, problem, fix. Use when user says \"review this PR\", \"code review\", \"review the diff\", \"/review\", or invokes /caveman-review. Auto-triggers when reviewing pull requests.",
|
|
1936
|
+
"version": "0.0.0",
|
|
1937
|
+
"license": "",
|
|
1938
|
+
"creator": "",
|
|
1939
|
+
"compatibility": "",
|
|
1940
|
+
"allowedTools": [],
|
|
1941
|
+
"modelInvocable": true,
|
|
1942
|
+
"userInvocable": true,
|
|
1943
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-review",
|
|
1944
|
+
"relPath": "skills/caveman-review",
|
|
1945
|
+
"verified": true,
|
|
1946
|
+
"tokenCount": 834,
|
|
1947
|
+
"evalSummary": {
|
|
1948
|
+
"overallScore": 58,
|
|
1949
|
+
"grade": "D",
|
|
1950
|
+
"categories": [
|
|
1951
|
+
{
|
|
1952
|
+
"id": "structure",
|
|
1953
|
+
"name": "Structure & completeness",
|
|
1954
|
+
"score": 7,
|
|
1955
|
+
"max": 10
|
|
1956
|
+
},
|
|
1957
|
+
{
|
|
1958
|
+
"id": "description",
|
|
1959
|
+
"name": "Description quality",
|
|
1960
|
+
"score": 5,
|
|
1961
|
+
"max": 10
|
|
1962
|
+
},
|
|
1963
|
+
{
|
|
1964
|
+
"id": "prompt-engineering",
|
|
1965
|
+
"name": "Prompt engineering",
|
|
1966
|
+
"score": 4,
|
|
1967
|
+
"max": 10
|
|
1968
|
+
},
|
|
1969
|
+
{
|
|
1970
|
+
"id": "context-efficiency",
|
|
1971
|
+
"name": "Context efficiency",
|
|
1972
|
+
"score": 9,
|
|
1973
|
+
"max": 10
|
|
1974
|
+
},
|
|
1975
|
+
{
|
|
1976
|
+
"id": "safety",
|
|
1977
|
+
"name": "Safety & guardrails",
|
|
1978
|
+
"score": 2,
|
|
1979
|
+
"max": 10
|
|
1980
|
+
},
|
|
1981
|
+
{
|
|
1982
|
+
"id": "testability",
|
|
1983
|
+
"name": "Testability",
|
|
1984
|
+
"score": 1,
|
|
1985
|
+
"max": 10
|
|
1986
|
+
},
|
|
1987
|
+
{
|
|
1988
|
+
"id": "license",
|
|
1989
|
+
"name": "License verification",
|
|
1990
|
+
"score": 0,
|
|
1991
|
+
"max": 10
|
|
1992
|
+
},
|
|
1993
|
+
{
|
|
1994
|
+
"id": "naming",
|
|
1995
|
+
"name": "Naming & conventions",
|
|
1996
|
+
"score": 10,
|
|
1997
|
+
"max": 10
|
|
1998
|
+
},
|
|
1999
|
+
{
|
|
2000
|
+
"id": "pii",
|
|
2001
|
+
"name": "PII detection",
|
|
2002
|
+
"score": 10,
|
|
2003
|
+
"max": 10
|
|
2004
|
+
},
|
|
2005
|
+
{
|
|
2006
|
+
"id": "script-lint",
|
|
2007
|
+
"name": "Script linting",
|
|
2008
|
+
"score": 10,
|
|
2009
|
+
"max": 10
|
|
2010
|
+
}
|
|
2011
|
+
],
|
|
2012
|
+
"evaluatedAt": "2026-08-27T10:21:33.588Z",
|
|
2013
|
+
"evaluatedVersion": "0.0.0"
|
|
2014
|
+
},
|
|
2015
|
+
"evalSummaries": {
|
|
2016
|
+
"quality": {
|
|
2017
|
+
"providerId": "quality",
|
|
2018
|
+
"providerVersion": "1.0.0",
|
|
2019
|
+
"schemaVersion": 1,
|
|
2020
|
+
"passed": true,
|
|
2021
|
+
"overallScore": 58,
|
|
2022
|
+
"grade": "D",
|
|
2023
|
+
"categories": [
|
|
2024
|
+
{
|
|
2025
|
+
"id": "structure",
|
|
2026
|
+
"name": "Structure & completeness",
|
|
2027
|
+
"score": 7,
|
|
2028
|
+
"max": 10
|
|
2029
|
+
},
|
|
2030
|
+
{
|
|
2031
|
+
"id": "description",
|
|
2032
|
+
"name": "Description quality",
|
|
2033
|
+
"score": 5,
|
|
2034
|
+
"max": 10
|
|
2035
|
+
},
|
|
2036
|
+
{
|
|
2037
|
+
"id": "prompt-engineering",
|
|
2038
|
+
"name": "Prompt engineering",
|
|
2039
|
+
"score": 4,
|
|
2040
|
+
"max": 10
|
|
2041
|
+
},
|
|
2042
|
+
{
|
|
2043
|
+
"id": "context-efficiency",
|
|
2044
|
+
"name": "Context efficiency",
|
|
2045
|
+
"score": 9,
|
|
2046
|
+
"max": 10
|
|
2047
|
+
},
|
|
2048
|
+
{
|
|
2049
|
+
"id": "safety",
|
|
2050
|
+
"name": "Safety & guardrails",
|
|
2051
|
+
"score": 2,
|
|
2052
|
+
"max": 10
|
|
2053
|
+
},
|
|
2054
|
+
{
|
|
2055
|
+
"id": "testability",
|
|
2056
|
+
"name": "Testability",
|
|
2057
|
+
"score": 1,
|
|
2058
|
+
"max": 10
|
|
2059
|
+
},
|
|
2060
|
+
{
|
|
2061
|
+
"id": "license",
|
|
2062
|
+
"name": "License verification",
|
|
2063
|
+
"score": 0,
|
|
2064
|
+
"max": 10
|
|
2065
|
+
},
|
|
2066
|
+
{
|
|
2067
|
+
"id": "naming",
|
|
2068
|
+
"name": "Naming & conventions",
|
|
2069
|
+
"score": 10,
|
|
2070
|
+
"max": 10
|
|
2071
|
+
},
|
|
2072
|
+
{
|
|
2073
|
+
"id": "pii",
|
|
2074
|
+
"name": "PII detection",
|
|
2075
|
+
"score": 10,
|
|
2076
|
+
"max": 10
|
|
2077
|
+
},
|
|
2078
|
+
{
|
|
2079
|
+
"id": "script-lint",
|
|
2080
|
+
"name": "Script linting",
|
|
2081
|
+
"score": 10,
|
|
2082
|
+
"max": 10
|
|
2083
|
+
}
|
|
2084
|
+
],
|
|
2085
|
+
"evaluatedAt": "2026-08-27T10:21:33.591Z",
|
|
2086
|
+
"evaluatedVersion": "0.0.0"
|
|
2087
|
+
},
|
|
2088
|
+
"skill-best-practice": {
|
|
2089
|
+
"providerId": "skill-best-practice",
|
|
2090
|
+
"providerVersion": "1.1.0",
|
|
2091
|
+
"schemaVersion": 1,
|
|
2092
|
+
"passed": false,
|
|
2093
|
+
"overallScore": 69,
|
|
2094
|
+
"grade": "C",
|
|
2095
|
+
"categories": [
|
|
2096
|
+
{
|
|
2097
|
+
"id": "validation",
|
|
2098
|
+
"name": "Deterministic validation",
|
|
2099
|
+
"score": 9,
|
|
2100
|
+
"max": 13
|
|
2101
|
+
}
|
|
2102
|
+
],
|
|
2103
|
+
"evaluatedAt": "2026-08-27T10:21:33.591Z",
|
|
2104
|
+
"evaluatedVersion": "0.0.0"
|
|
2105
|
+
}
|
|
2106
|
+
}
|
|
2107
|
+
},
|
|
2108
|
+
{
|
|
2109
|
+
"name": "caveman-setup",
|
|
2110
|
+
"description": "Wire the current repository through the Caveman Cloud gateway so every LLM request is measured — cost, tokens, latency — with zero behavior change. Use when the user pastes the Caveman setup prompt, says \"set up caveman\", or wants LLM spend observability added to an app. Requires the gateway URL and a Cave API key (the setup prompt carries both).",
|
|
2111
|
+
"version": "0.0.0",
|
|
2112
|
+
"license": "",
|
|
2113
|
+
"creator": "",
|
|
2114
|
+
"compatibility": "",
|
|
2115
|
+
"allowedTools": [],
|
|
2116
|
+
"modelInvocable": true,
|
|
2117
|
+
"userInvocable": true,
|
|
2118
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-setup",
|
|
2119
|
+
"relPath": "skills/caveman-setup",
|
|
2120
|
+
"verified": true,
|
|
2121
|
+
"tokenCount": 2901,
|
|
2122
|
+
"evalSummary": {
|
|
2123
|
+
"overallScore": 68,
|
|
2124
|
+
"grade": "C",
|
|
2125
|
+
"categories": [
|
|
2126
|
+
{
|
|
2127
|
+
"id": "structure",
|
|
2128
|
+
"name": "Structure & completeness",
|
|
2129
|
+
"score": 7,
|
|
2130
|
+
"max": 10
|
|
2131
|
+
},
|
|
2132
|
+
{
|
|
2133
|
+
"id": "description",
|
|
2134
|
+
"name": "Description quality",
|
|
2135
|
+
"score": 5,
|
|
2136
|
+
"max": 10
|
|
2137
|
+
},
|
|
2138
|
+
{
|
|
2139
|
+
"id": "prompt-engineering",
|
|
2140
|
+
"name": "Prompt engineering",
|
|
2141
|
+
"score": 7,
|
|
2142
|
+
"max": 10
|
|
2143
|
+
},
|
|
2144
|
+
{
|
|
2145
|
+
"id": "context-efficiency",
|
|
2146
|
+
"name": "Context efficiency",
|
|
2147
|
+
"score": 9,
|
|
2148
|
+
"max": 10
|
|
2149
|
+
},
|
|
2150
|
+
{
|
|
2151
|
+
"id": "safety",
|
|
2152
|
+
"name": "Safety & guardrails",
|
|
2153
|
+
"score": 7,
|
|
2154
|
+
"max": 10
|
|
2155
|
+
},
|
|
2156
|
+
{
|
|
2157
|
+
"id": "testability",
|
|
2158
|
+
"name": "Testability",
|
|
2159
|
+
"score": 3,
|
|
2160
|
+
"max": 10
|
|
2161
|
+
},
|
|
2162
|
+
{
|
|
2163
|
+
"id": "license",
|
|
2164
|
+
"name": "License verification",
|
|
2165
|
+
"score": 0,
|
|
2166
|
+
"max": 10
|
|
2167
|
+
},
|
|
2168
|
+
{
|
|
2169
|
+
"id": "naming",
|
|
2170
|
+
"name": "Naming & conventions",
|
|
2171
|
+
"score": 10,
|
|
2172
|
+
"max": 10
|
|
2173
|
+
},
|
|
2174
|
+
{
|
|
2175
|
+
"id": "pii",
|
|
2176
|
+
"name": "PII detection",
|
|
2177
|
+
"score": 10,
|
|
2178
|
+
"max": 10
|
|
2179
|
+
},
|
|
2180
|
+
{
|
|
2181
|
+
"id": "script-lint",
|
|
2182
|
+
"name": "Script linting",
|
|
2183
|
+
"score": 10,
|
|
2184
|
+
"max": 10
|
|
2185
|
+
}
|
|
2186
|
+
],
|
|
2187
|
+
"evaluatedAt": "2026-08-27T10:21:33.588Z",
|
|
2188
|
+
"evaluatedVersion": "0.0.0"
|
|
2189
|
+
},
|
|
2190
|
+
"evalSummaries": {
|
|
2191
|
+
"quality": {
|
|
2192
|
+
"providerId": "quality",
|
|
2193
|
+
"providerVersion": "1.0.0",
|
|
2194
|
+
"schemaVersion": 1,
|
|
2195
|
+
"passed": true,
|
|
2196
|
+
"overallScore": 68,
|
|
2197
|
+
"grade": "C",
|
|
2198
|
+
"categories": [
|
|
2199
|
+
{
|
|
2200
|
+
"id": "structure",
|
|
2201
|
+
"name": "Structure & completeness",
|
|
2202
|
+
"score": 7,
|
|
2203
|
+
"max": 10
|
|
2204
|
+
},
|
|
2205
|
+
{
|
|
2206
|
+
"id": "description",
|
|
2207
|
+
"name": "Description quality",
|
|
2208
|
+
"score": 5,
|
|
2209
|
+
"max": 10
|
|
2210
|
+
},
|
|
2211
|
+
{
|
|
2212
|
+
"id": "prompt-engineering",
|
|
2213
|
+
"name": "Prompt engineering",
|
|
2214
|
+
"score": 7,
|
|
2215
|
+
"max": 10
|
|
2216
|
+
},
|
|
2217
|
+
{
|
|
2218
|
+
"id": "context-efficiency",
|
|
2219
|
+
"name": "Context efficiency",
|
|
2220
|
+
"score": 9,
|
|
2221
|
+
"max": 10
|
|
2222
|
+
},
|
|
2223
|
+
{
|
|
2224
|
+
"id": "safety",
|
|
2225
|
+
"name": "Safety & guardrails",
|
|
2226
|
+
"score": 7,
|
|
2227
|
+
"max": 10
|
|
2228
|
+
},
|
|
2229
|
+
{
|
|
2230
|
+
"id": "testability",
|
|
2231
|
+
"name": "Testability",
|
|
2232
|
+
"score": 3,
|
|
2233
|
+
"max": 10
|
|
2234
|
+
},
|
|
2235
|
+
{
|
|
2236
|
+
"id": "license",
|
|
2237
|
+
"name": "License verification",
|
|
2238
|
+
"score": 0,
|
|
2239
|
+
"max": 10
|
|
2240
|
+
},
|
|
2241
|
+
{
|
|
2242
|
+
"id": "naming",
|
|
2243
|
+
"name": "Naming & conventions",
|
|
2244
|
+
"score": 10,
|
|
2245
|
+
"max": 10
|
|
2246
|
+
},
|
|
2247
|
+
{
|
|
2248
|
+
"id": "pii",
|
|
2249
|
+
"name": "PII detection",
|
|
2250
|
+
"score": 10,
|
|
2251
|
+
"max": 10
|
|
2252
|
+
},
|
|
2253
|
+
{
|
|
2254
|
+
"id": "script-lint",
|
|
2255
|
+
"name": "Script linting",
|
|
2256
|
+
"score": 10,
|
|
2257
|
+
"max": 10
|
|
2258
|
+
}
|
|
2259
|
+
],
|
|
2260
|
+
"evaluatedAt": "2026-08-27T10:21:33.591Z",
|
|
2261
|
+
"evaluatedVersion": "0.0.0"
|
|
2262
|
+
},
|
|
2263
|
+
"skill-best-practice": {
|
|
2264
|
+
"providerId": "skill-best-practice",
|
|
2265
|
+
"providerVersion": "1.1.0",
|
|
2266
|
+
"schemaVersion": 1,
|
|
2267
|
+
"passed": false,
|
|
2268
|
+
"overallScore": 69,
|
|
2269
|
+
"grade": "C",
|
|
2270
|
+
"categories": [
|
|
2271
|
+
{
|
|
2272
|
+
"id": "validation",
|
|
2273
|
+
"name": "Deterministic validation",
|
|
2274
|
+
"score": 9,
|
|
2275
|
+
"max": 13
|
|
2276
|
+
}
|
|
2277
|
+
],
|
|
2278
|
+
"evaluatedAt": "2026-08-27T10:21:33.591Z",
|
|
2279
|
+
"evaluatedVersion": "0.0.0"
|
|
2280
|
+
}
|
|
2281
|
+
}
|
|
2282
|
+
},
|
|
2283
|
+
{
|
|
2284
|
+
"name": "caveman-stats",
|
|
2285
|
+
"description": "Show real token usage and estimated savings for the current session. Reads directly from the Claude Code session log — no AI estimation. Triggers on /caveman-stats. Output is injected by the mode-tracker hook; the model itself does not compute the numbers.",
|
|
2286
|
+
"version": "0.0.0",
|
|
2287
|
+
"license": "",
|
|
2288
|
+
"creator": "",
|
|
2289
|
+
"compatibility": "",
|
|
2290
|
+
"allowedTools": [],
|
|
2291
|
+
"modelInvocable": true,
|
|
2292
|
+
"userInvocable": true,
|
|
2293
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-stats",
|
|
2294
|
+
"relPath": "skills/caveman-stats",
|
|
2295
|
+
"verified": true,
|
|
2296
|
+
"tokenCount": 330,
|
|
2297
|
+
"evalSummary": {
|
|
2298
|
+
"overallScore": 50,
|
|
2299
|
+
"grade": "D",
|
|
2300
|
+
"categories": [
|
|
2301
|
+
{
|
|
2302
|
+
"id": "structure",
|
|
2303
|
+
"name": "Structure & completeness",
|
|
2304
|
+
"score": 6,
|
|
2305
|
+
"max": 10
|
|
2306
|
+
},
|
|
2307
|
+
{
|
|
2308
|
+
"id": "description",
|
|
2309
|
+
"name": "Description quality",
|
|
2310
|
+
"score": 8,
|
|
2311
|
+
"max": 10
|
|
2312
|
+
},
|
|
2313
|
+
{
|
|
2314
|
+
"id": "prompt-engineering",
|
|
2315
|
+
"name": "Prompt engineering",
|
|
2316
|
+
"score": 1,
|
|
2317
|
+
"max": 10
|
|
2318
|
+
},
|
|
2319
|
+
{
|
|
2320
|
+
"id": "context-efficiency",
|
|
2321
|
+
"name": "Context efficiency",
|
|
2322
|
+
"score": 6,
|
|
2323
|
+
"max": 10
|
|
2324
|
+
},
|
|
2325
|
+
{
|
|
2326
|
+
"id": "safety",
|
|
2327
|
+
"name": "Safety & guardrails",
|
|
2328
|
+
"score": 2,
|
|
2329
|
+
"max": 10
|
|
2330
|
+
},
|
|
2331
|
+
{
|
|
2332
|
+
"id": "testability",
|
|
2333
|
+
"name": "Testability",
|
|
2334
|
+
"score": 0,
|
|
2335
|
+
"max": 10
|
|
2336
|
+
},
|
|
2337
|
+
{
|
|
2338
|
+
"id": "license",
|
|
2339
|
+
"name": "License verification",
|
|
2340
|
+
"score": 0,
|
|
2341
|
+
"max": 10
|
|
2342
|
+
},
|
|
2343
|
+
{
|
|
2344
|
+
"id": "naming",
|
|
2345
|
+
"name": "Naming & conventions",
|
|
2346
|
+
"score": 7,
|
|
2347
|
+
"max": 10
|
|
2348
|
+
},
|
|
2349
|
+
{
|
|
2350
|
+
"id": "pii",
|
|
2351
|
+
"name": "PII detection",
|
|
2352
|
+
"score": 10,
|
|
2353
|
+
"max": 10
|
|
2354
|
+
},
|
|
2355
|
+
{
|
|
2356
|
+
"id": "script-lint",
|
|
2357
|
+
"name": "Script linting",
|
|
2358
|
+
"score": 10,
|
|
2359
|
+
"max": 10
|
|
2360
|
+
}
|
|
2361
|
+
],
|
|
2362
|
+
"evaluatedAt": "2026-08-27T10:21:33.591Z",
|
|
2363
|
+
"evaluatedVersion": "0.0.0"
|
|
2364
|
+
},
|
|
2365
|
+
"evalSummaries": {
|
|
2366
|
+
"quality": {
|
|
2367
|
+
"providerId": "quality",
|
|
2368
|
+
"providerVersion": "1.0.0",
|
|
2369
|
+
"schemaVersion": 1,
|
|
2370
|
+
"passed": true,
|
|
2371
|
+
"overallScore": 50,
|
|
2372
|
+
"grade": "D",
|
|
2373
|
+
"categories": [
|
|
2374
|
+
{
|
|
2375
|
+
"id": "structure",
|
|
2376
|
+
"name": "Structure & completeness",
|
|
2377
|
+
"score": 6,
|
|
2378
|
+
"max": 10
|
|
2379
|
+
},
|
|
2380
|
+
{
|
|
2381
|
+
"id": "description",
|
|
2382
|
+
"name": "Description quality",
|
|
2383
|
+
"score": 8,
|
|
2384
|
+
"max": 10
|
|
2385
|
+
},
|
|
2386
|
+
{
|
|
2387
|
+
"id": "prompt-engineering",
|
|
2388
|
+
"name": "Prompt engineering",
|
|
2389
|
+
"score": 1,
|
|
2390
|
+
"max": 10
|
|
2391
|
+
},
|
|
2392
|
+
{
|
|
2393
|
+
"id": "context-efficiency",
|
|
2394
|
+
"name": "Context efficiency",
|
|
2395
|
+
"score": 6,
|
|
2396
|
+
"max": 10
|
|
2397
|
+
},
|
|
2398
|
+
{
|
|
2399
|
+
"id": "safety",
|
|
2400
|
+
"name": "Safety & guardrails",
|
|
2401
|
+
"score": 2,
|
|
2402
|
+
"max": 10
|
|
2403
|
+
},
|
|
2404
|
+
{
|
|
2405
|
+
"id": "testability",
|
|
2406
|
+
"name": "Testability",
|
|
2407
|
+
"score": 0,
|
|
2408
|
+
"max": 10
|
|
2409
|
+
},
|
|
2410
|
+
{
|
|
2411
|
+
"id": "license",
|
|
2412
|
+
"name": "License verification",
|
|
2413
|
+
"score": 0,
|
|
2414
|
+
"max": 10
|
|
2415
|
+
},
|
|
2416
|
+
{
|
|
2417
|
+
"id": "naming",
|
|
2418
|
+
"name": "Naming & conventions",
|
|
2419
|
+
"score": 7,
|
|
2420
|
+
"max": 10
|
|
2421
|
+
},
|
|
2422
|
+
{
|
|
2423
|
+
"id": "pii",
|
|
2424
|
+
"name": "PII detection",
|
|
2425
|
+
"score": 10,
|
|
2426
|
+
"max": 10
|
|
2427
|
+
},
|
|
2428
|
+
{
|
|
2429
|
+
"id": "script-lint",
|
|
2430
|
+
"name": "Script linting",
|
|
2431
|
+
"score": 10,
|
|
2432
|
+
"max": 10
|
|
2433
|
+
}
|
|
2434
|
+
],
|
|
2435
|
+
"evaluatedAt": "2026-08-27T10:21:33.592Z",
|
|
2436
|
+
"evaluatedVersion": "0.0.0"
|
|
2437
|
+
},
|
|
2438
|
+
"skill-best-practice": {
|
|
2439
|
+
"providerId": "skill-best-practice",
|
|
2440
|
+
"providerVersion": "1.1.0",
|
|
2441
|
+
"schemaVersion": 1,
|
|
2442
|
+
"passed": false,
|
|
2443
|
+
"overallScore": 69,
|
|
2444
|
+
"grade": "C",
|
|
2445
|
+
"categories": [
|
|
2446
|
+
{
|
|
2447
|
+
"id": "validation",
|
|
2448
|
+
"name": "Deterministic validation",
|
|
2449
|
+
"score": 9,
|
|
2450
|
+
"max": 13
|
|
2451
|
+
}
|
|
2452
|
+
],
|
|
2453
|
+
"evaluatedAt": "2026-08-27T10:21:33.592Z",
|
|
2454
|
+
"evaluatedVersion": "0.0.0"
|
|
2455
|
+
}
|
|
2456
|
+
}
|
|
2457
|
+
},
|
|
2458
|
+
{
|
|
2459
|
+
"name": "investigate-first",
|
|
2460
|
+
"description": "Diagnose ambiguous failures before editing. Use for unknown causes, intermittent behavior, performance regressions, or investigations needing evidence-ranked hypotheses.",
|
|
2461
|
+
"version": "0.0.0",
|
|
2462
|
+
"license": "",
|
|
2463
|
+
"creator": "",
|
|
2464
|
+
"compatibility": "",
|
|
2465
|
+
"allowedTools": [],
|
|
2466
|
+
"modelInvocable": true,
|
|
2467
|
+
"userInvocable": true,
|
|
2468
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/investigate-first",
|
|
2469
|
+
"relPath": "skills/investigate-first",
|
|
2470
|
+
"verified": true,
|
|
2471
|
+
"tokenCount": 172,
|
|
2472
|
+
"evalSummary": {
|
|
2473
|
+
"overallScore": 55,
|
|
2474
|
+
"grade": "D",
|
|
2475
|
+
"categories": [
|
|
2476
|
+
{
|
|
2477
|
+
"id": "structure",
|
|
2478
|
+
"name": "Structure & completeness",
|
|
2479
|
+
"score": 7,
|
|
2480
|
+
"max": 10
|
|
2481
|
+
},
|
|
2482
|
+
{
|
|
2483
|
+
"id": "description",
|
|
2484
|
+
"name": "Description quality",
|
|
2485
|
+
"score": 7,
|
|
2486
|
+
"max": 10
|
|
2487
|
+
},
|
|
2488
|
+
{
|
|
2489
|
+
"id": "prompt-engineering",
|
|
2490
|
+
"name": "Prompt engineering",
|
|
2491
|
+
"score": 3,
|
|
2492
|
+
"max": 10
|
|
2493
|
+
},
|
|
2494
|
+
{
|
|
2495
|
+
"id": "context-efficiency",
|
|
2496
|
+
"name": "Context efficiency",
|
|
2497
|
+
"score": 4,
|
|
2498
|
+
"max": 10
|
|
2499
|
+
},
|
|
2500
|
+
{
|
|
2501
|
+
"id": "safety",
|
|
2502
|
+
"name": "Safety & guardrails",
|
|
2503
|
+
"score": 4,
|
|
2504
|
+
"max": 10
|
|
2505
|
+
},
|
|
2506
|
+
{
|
|
2507
|
+
"id": "testability",
|
|
2508
|
+
"name": "Testability",
|
|
2509
|
+
"score": 0,
|
|
2510
|
+
"max": 10
|
|
2511
|
+
},
|
|
2512
|
+
{
|
|
2513
|
+
"id": "license",
|
|
2514
|
+
"name": "License verification",
|
|
2515
|
+
"score": 0,
|
|
2516
|
+
"max": 10
|
|
2517
|
+
},
|
|
2518
|
+
{
|
|
2519
|
+
"id": "naming",
|
|
2520
|
+
"name": "Naming & conventions",
|
|
2521
|
+
"score": 10,
|
|
2522
|
+
"max": 10
|
|
2523
|
+
},
|
|
2524
|
+
{
|
|
2525
|
+
"id": "pii",
|
|
2526
|
+
"name": "PII detection",
|
|
2527
|
+
"score": 10,
|
|
2528
|
+
"max": 10
|
|
2529
|
+
},
|
|
2530
|
+
{
|
|
2531
|
+
"id": "script-lint",
|
|
2532
|
+
"name": "Script linting",
|
|
2533
|
+
"score": 10,
|
|
2534
|
+
"max": 10
|
|
2535
|
+
}
|
|
2536
|
+
],
|
|
2537
|
+
"evaluatedAt": "2026-08-27T10:21:33.596Z",
|
|
2538
|
+
"evaluatedVersion": "0.0.0"
|
|
2539
|
+
},
|
|
2540
|
+
"evalSummaries": {
|
|
2541
|
+
"quality": {
|
|
2542
|
+
"providerId": "quality",
|
|
2543
|
+
"providerVersion": "1.0.0",
|
|
2544
|
+
"schemaVersion": 1,
|
|
2545
|
+
"passed": true,
|
|
2546
|
+
"overallScore": 55,
|
|
2547
|
+
"grade": "D",
|
|
2548
|
+
"categories": [
|
|
2549
|
+
{
|
|
2550
|
+
"id": "structure",
|
|
2551
|
+
"name": "Structure & completeness",
|
|
2552
|
+
"score": 7,
|
|
2553
|
+
"max": 10
|
|
2554
|
+
},
|
|
2555
|
+
{
|
|
2556
|
+
"id": "description",
|
|
2557
|
+
"name": "Description quality",
|
|
2558
|
+
"score": 7,
|
|
2559
|
+
"max": 10
|
|
2560
|
+
},
|
|
2561
|
+
{
|
|
2562
|
+
"id": "prompt-engineering",
|
|
2563
|
+
"name": "Prompt engineering",
|
|
2564
|
+
"score": 3,
|
|
2565
|
+
"max": 10
|
|
2566
|
+
},
|
|
2567
|
+
{
|
|
2568
|
+
"id": "context-efficiency",
|
|
2569
|
+
"name": "Context efficiency",
|
|
2570
|
+
"score": 4,
|
|
2571
|
+
"max": 10
|
|
2572
|
+
},
|
|
2573
|
+
{
|
|
2574
|
+
"id": "safety",
|
|
2575
|
+
"name": "Safety & guardrails",
|
|
2576
|
+
"score": 4,
|
|
2577
|
+
"max": 10
|
|
2578
|
+
},
|
|
2579
|
+
{
|
|
2580
|
+
"id": "testability",
|
|
2581
|
+
"name": "Testability",
|
|
2582
|
+
"score": 0,
|
|
2583
|
+
"max": 10
|
|
2584
|
+
},
|
|
2585
|
+
{
|
|
2586
|
+
"id": "license",
|
|
2587
|
+
"name": "License verification",
|
|
2588
|
+
"score": 0,
|
|
2589
|
+
"max": 10
|
|
2590
|
+
},
|
|
2591
|
+
{
|
|
2592
|
+
"id": "naming",
|
|
2593
|
+
"name": "Naming & conventions",
|
|
2594
|
+
"score": 10,
|
|
2595
|
+
"max": 10
|
|
2596
|
+
},
|
|
2597
|
+
{
|
|
2598
|
+
"id": "pii",
|
|
2599
|
+
"name": "PII detection",
|
|
2600
|
+
"score": 10,
|
|
2601
|
+
"max": 10
|
|
2602
|
+
},
|
|
2603
|
+
{
|
|
2604
|
+
"id": "script-lint",
|
|
2605
|
+
"name": "Script linting",
|
|
2606
|
+
"score": 10,
|
|
2607
|
+
"max": 10
|
|
2608
|
+
}
|
|
2609
|
+
],
|
|
2610
|
+
"evaluatedAt": "2026-08-27T10:21:33.597Z",
|
|
2611
|
+
"evaluatedVersion": "0.0.0"
|
|
2612
|
+
},
|
|
2613
|
+
"skill-best-practice": {
|
|
2614
|
+
"providerId": "skill-best-practice",
|
|
2615
|
+
"providerVersion": "1.1.0",
|
|
2616
|
+
"schemaVersion": 1,
|
|
2617
|
+
"passed": false,
|
|
2618
|
+
"overallScore": 77,
|
|
2619
|
+
"grade": "C",
|
|
2620
|
+
"categories": [
|
|
2621
|
+
{
|
|
2622
|
+
"id": "validation",
|
|
2623
|
+
"name": "Deterministic validation",
|
|
2624
|
+
"score": 10,
|
|
2625
|
+
"max": 13
|
|
2626
|
+
}
|
|
2627
|
+
],
|
|
2628
|
+
"evaluatedAt": "2026-08-27T10:21:33.597Z",
|
|
2629
|
+
"evaluatedVersion": "0.0.0"
|
|
2630
|
+
}
|
|
2631
|
+
}
|
|
2632
|
+
},
|
|
2633
|
+
{
|
|
2634
|
+
"name": "lean-build",
|
|
2635
|
+
"description": "Build feature work with high overbuilding risk. Use for new behavior, product slices, or integrations where repository reuse, strict scope, and an explicit stop condition matter.",
|
|
2636
|
+
"version": "0.0.0",
|
|
2637
|
+
"license": "",
|
|
2638
|
+
"creator": "",
|
|
2639
|
+
"compatibility": "",
|
|
2640
|
+
"allowedTools": [],
|
|
2641
|
+
"modelInvocable": true,
|
|
2642
|
+
"userInvocable": true,
|
|
2643
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/lean-build",
|
|
2644
|
+
"relPath": "skills/lean-build",
|
|
2645
|
+
"verified": true,
|
|
2646
|
+
"tokenCount": 290,
|
|
2647
|
+
"evalSummary": {
|
|
2648
|
+
"overallScore": 60,
|
|
2649
|
+
"grade": "D",
|
|
2650
|
+
"categories": [
|
|
2651
|
+
{
|
|
2652
|
+
"id": "structure",
|
|
2653
|
+
"name": "Structure & completeness",
|
|
2654
|
+
"score": 7,
|
|
2655
|
+
"max": 10
|
|
2656
|
+
},
|
|
2657
|
+
{
|
|
2658
|
+
"id": "description",
|
|
2659
|
+
"name": "Description quality",
|
|
2660
|
+
"score": 10,
|
|
2661
|
+
"max": 10
|
|
2662
|
+
},
|
|
2663
|
+
{
|
|
2664
|
+
"id": "prompt-engineering",
|
|
2665
|
+
"name": "Prompt engineering",
|
|
2666
|
+
"score": 3,
|
|
2667
|
+
"max": 10
|
|
2668
|
+
},
|
|
2669
|
+
{
|
|
2670
|
+
"id": "context-efficiency",
|
|
2671
|
+
"name": "Context efficiency",
|
|
2672
|
+
"score": 6,
|
|
2673
|
+
"max": 10
|
|
2674
|
+
},
|
|
2675
|
+
{
|
|
2676
|
+
"id": "safety",
|
|
2677
|
+
"name": "Safety & guardrails",
|
|
2678
|
+
"score": 4,
|
|
2679
|
+
"max": 10
|
|
2680
|
+
},
|
|
2681
|
+
{
|
|
2682
|
+
"id": "testability",
|
|
2683
|
+
"name": "Testability",
|
|
2684
|
+
"score": 0,
|
|
2685
|
+
"max": 10
|
|
2686
|
+
},
|
|
2687
|
+
{
|
|
2688
|
+
"id": "license",
|
|
2689
|
+
"name": "License verification",
|
|
2690
|
+
"score": 0,
|
|
2691
|
+
"max": 10
|
|
2692
|
+
},
|
|
2693
|
+
{
|
|
2694
|
+
"id": "naming",
|
|
2695
|
+
"name": "Naming & conventions",
|
|
2696
|
+
"score": 10,
|
|
2697
|
+
"max": 10
|
|
2698
|
+
},
|
|
2699
|
+
{
|
|
2700
|
+
"id": "pii",
|
|
2701
|
+
"name": "PII detection",
|
|
2702
|
+
"score": 10,
|
|
2703
|
+
"max": 10
|
|
2704
|
+
},
|
|
2705
|
+
{
|
|
2706
|
+
"id": "script-lint",
|
|
2707
|
+
"name": "Script linting",
|
|
2708
|
+
"score": 10,
|
|
2709
|
+
"max": 10
|
|
2710
|
+
}
|
|
2711
|
+
],
|
|
2712
|
+
"evaluatedAt": "2026-08-27T10:21:33.606Z",
|
|
2713
|
+
"evaluatedVersion": "0.0.0"
|
|
2714
|
+
},
|
|
2715
|
+
"evalSummaries": {
|
|
2716
|
+
"quality": {
|
|
2717
|
+
"providerId": "quality",
|
|
2718
|
+
"providerVersion": "1.0.0",
|
|
2719
|
+
"schemaVersion": 1,
|
|
2720
|
+
"passed": true,
|
|
2721
|
+
"overallScore": 60,
|
|
2722
|
+
"grade": "D",
|
|
2723
|
+
"categories": [
|
|
2724
|
+
{
|
|
2725
|
+
"id": "structure",
|
|
2726
|
+
"name": "Structure & completeness",
|
|
2727
|
+
"score": 7,
|
|
2728
|
+
"max": 10
|
|
2729
|
+
},
|
|
2730
|
+
{
|
|
2731
|
+
"id": "description",
|
|
2732
|
+
"name": "Description quality",
|
|
2733
|
+
"score": 10,
|
|
2734
|
+
"max": 10
|
|
2735
|
+
},
|
|
2736
|
+
{
|
|
2737
|
+
"id": "prompt-engineering",
|
|
2738
|
+
"name": "Prompt engineering",
|
|
2739
|
+
"score": 3,
|
|
2740
|
+
"max": 10
|
|
2741
|
+
},
|
|
2742
|
+
{
|
|
2743
|
+
"id": "context-efficiency",
|
|
2744
|
+
"name": "Context efficiency",
|
|
2745
|
+
"score": 6,
|
|
2746
|
+
"max": 10
|
|
2747
|
+
},
|
|
2748
|
+
{
|
|
2749
|
+
"id": "safety",
|
|
2750
|
+
"name": "Safety & guardrails",
|
|
2751
|
+
"score": 4,
|
|
2752
|
+
"max": 10
|
|
2753
|
+
},
|
|
2754
|
+
{
|
|
2755
|
+
"id": "testability",
|
|
2756
|
+
"name": "Testability",
|
|
2757
|
+
"score": 0,
|
|
2758
|
+
"max": 10
|
|
2759
|
+
},
|
|
2760
|
+
{
|
|
2761
|
+
"id": "license",
|
|
2762
|
+
"name": "License verification",
|
|
2763
|
+
"score": 0,
|
|
2764
|
+
"max": 10
|
|
2765
|
+
},
|
|
2766
|
+
{
|
|
2767
|
+
"id": "naming",
|
|
2768
|
+
"name": "Naming & conventions",
|
|
2769
|
+
"score": 10,
|
|
2770
|
+
"max": 10
|
|
2771
|
+
},
|
|
2772
|
+
{
|
|
2773
|
+
"id": "pii",
|
|
2774
|
+
"name": "PII detection",
|
|
2775
|
+
"score": 10,
|
|
2776
|
+
"max": 10
|
|
2777
|
+
},
|
|
2778
|
+
{
|
|
2779
|
+
"id": "script-lint",
|
|
2780
|
+
"name": "Script linting",
|
|
2781
|
+
"score": 10,
|
|
2782
|
+
"max": 10
|
|
2783
|
+
}
|
|
2784
|
+
],
|
|
2785
|
+
"evaluatedAt": "2026-08-27T10:21:33.606Z",
|
|
2786
|
+
"evaluatedVersion": "0.0.0"
|
|
2787
|
+
},
|
|
2788
|
+
"skill-best-practice": {
|
|
2789
|
+
"providerId": "skill-best-practice",
|
|
2790
|
+
"providerVersion": "1.1.0",
|
|
2791
|
+
"schemaVersion": 1,
|
|
2792
|
+
"passed": false,
|
|
2793
|
+
"overallScore": 77,
|
|
2794
|
+
"grade": "C",
|
|
2795
|
+
"categories": [
|
|
2796
|
+
{
|
|
2797
|
+
"id": "validation",
|
|
2798
|
+
"name": "Deterministic validation",
|
|
2799
|
+
"score": 10,
|
|
2800
|
+
"max": 13
|
|
2801
|
+
}
|
|
2802
|
+
],
|
|
2803
|
+
"evaluatedAt": "2026-08-27T10:21:33.607Z",
|
|
2804
|
+
"evaluatedVersion": "0.0.0"
|
|
2805
|
+
}
|
|
2806
|
+
}
|
|
2807
|
+
},
|
|
2808
|
+
{
|
|
2809
|
+
"name": "migration",
|
|
2810
|
+
"description": "Implement reversible compatibility-safe transitions. Use for schema, data, API, protocol, configuration, or dependency migrations requiring rollback and preservation proof.",
|
|
2811
|
+
"version": "0.0.0",
|
|
2812
|
+
"license": "",
|
|
2813
|
+
"creator": "",
|
|
2814
|
+
"compatibility": "",
|
|
2815
|
+
"allowedTools": [],
|
|
2816
|
+
"modelInvocable": true,
|
|
2817
|
+
"userInvocable": true,
|
|
2818
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/migration",
|
|
2819
|
+
"relPath": "skills/migration",
|
|
2820
|
+
"verified": true,
|
|
2821
|
+
"tokenCount": 195,
|
|
2822
|
+
"evalSummary": {
|
|
2823
|
+
"overallScore": 60,
|
|
2824
|
+
"grade": "D",
|
|
2825
|
+
"categories": [
|
|
2826
|
+
{
|
|
2827
|
+
"id": "structure",
|
|
2828
|
+
"name": "Structure & completeness",
|
|
2829
|
+
"score": 7,
|
|
2830
|
+
"max": 10
|
|
2831
|
+
},
|
|
2832
|
+
{
|
|
2833
|
+
"id": "description",
|
|
2834
|
+
"name": "Description quality",
|
|
2835
|
+
"score": 7,
|
|
2836
|
+
"max": 10
|
|
2837
|
+
},
|
|
2838
|
+
{
|
|
2839
|
+
"id": "prompt-engineering",
|
|
2840
|
+
"name": "Prompt engineering",
|
|
2841
|
+
"score": 4,
|
|
2842
|
+
"max": 10
|
|
2843
|
+
},
|
|
2844
|
+
{
|
|
2845
|
+
"id": "context-efficiency",
|
|
2846
|
+
"name": "Context efficiency",
|
|
2847
|
+
"score": 4,
|
|
2848
|
+
"max": 10
|
|
2849
|
+
},
|
|
2850
|
+
{
|
|
2851
|
+
"id": "safety",
|
|
2852
|
+
"name": "Safety & guardrails",
|
|
2853
|
+
"score": 5,
|
|
2854
|
+
"max": 10
|
|
2855
|
+
},
|
|
2856
|
+
{
|
|
2857
|
+
"id": "testability",
|
|
2858
|
+
"name": "Testability",
|
|
2859
|
+
"score": 3,
|
|
2860
|
+
"max": 10
|
|
2861
|
+
},
|
|
2862
|
+
{
|
|
2863
|
+
"id": "license",
|
|
2864
|
+
"name": "License verification",
|
|
2865
|
+
"score": 0,
|
|
2866
|
+
"max": 10
|
|
2867
|
+
},
|
|
2868
|
+
{
|
|
2869
|
+
"id": "naming",
|
|
2870
|
+
"name": "Naming & conventions",
|
|
2871
|
+
"score": 10,
|
|
2872
|
+
"max": 10
|
|
2873
|
+
},
|
|
2874
|
+
{
|
|
2875
|
+
"id": "pii",
|
|
2876
|
+
"name": "PII detection",
|
|
2877
|
+
"score": 10,
|
|
2878
|
+
"max": 10
|
|
2879
|
+
},
|
|
2880
|
+
{
|
|
2881
|
+
"id": "script-lint",
|
|
2882
|
+
"name": "Script linting",
|
|
2883
|
+
"score": 10,
|
|
2884
|
+
"max": 10
|
|
2885
|
+
}
|
|
2886
|
+
],
|
|
2887
|
+
"evaluatedAt": "2026-08-27T10:21:33.610Z",
|
|
2888
|
+
"evaluatedVersion": "0.0.0"
|
|
2889
|
+
},
|
|
2890
|
+
"evalSummaries": {
|
|
2891
|
+
"quality": {
|
|
2892
|
+
"providerId": "quality",
|
|
2893
|
+
"providerVersion": "1.0.0",
|
|
2894
|
+
"schemaVersion": 1,
|
|
2895
|
+
"passed": true,
|
|
2896
|
+
"overallScore": 60,
|
|
2897
|
+
"grade": "D",
|
|
2898
|
+
"categories": [
|
|
2899
|
+
{
|
|
2900
|
+
"id": "structure",
|
|
2901
|
+
"name": "Structure & completeness",
|
|
2902
|
+
"score": 7,
|
|
2903
|
+
"max": 10
|
|
2904
|
+
},
|
|
2905
|
+
{
|
|
2906
|
+
"id": "description",
|
|
2907
|
+
"name": "Description quality",
|
|
2908
|
+
"score": 7,
|
|
2909
|
+
"max": 10
|
|
2910
|
+
},
|
|
2911
|
+
{
|
|
2912
|
+
"id": "prompt-engineering",
|
|
2913
|
+
"name": "Prompt engineering",
|
|
2914
|
+
"score": 4,
|
|
2915
|
+
"max": 10
|
|
2916
|
+
},
|
|
2917
|
+
{
|
|
2918
|
+
"id": "context-efficiency",
|
|
2919
|
+
"name": "Context efficiency",
|
|
2920
|
+
"score": 4,
|
|
2921
|
+
"max": 10
|
|
2922
|
+
},
|
|
2923
|
+
{
|
|
2924
|
+
"id": "safety",
|
|
2925
|
+
"name": "Safety & guardrails",
|
|
2926
|
+
"score": 5,
|
|
2927
|
+
"max": 10
|
|
2928
|
+
},
|
|
2929
|
+
{
|
|
2930
|
+
"id": "testability",
|
|
2931
|
+
"name": "Testability",
|
|
2932
|
+
"score": 3,
|
|
2933
|
+
"max": 10
|
|
2934
|
+
},
|
|
2935
|
+
{
|
|
2936
|
+
"id": "license",
|
|
2937
|
+
"name": "License verification",
|
|
2938
|
+
"score": 0,
|
|
2939
|
+
"max": 10
|
|
2940
|
+
},
|
|
2941
|
+
{
|
|
2942
|
+
"id": "naming",
|
|
2943
|
+
"name": "Naming & conventions",
|
|
2944
|
+
"score": 10,
|
|
2945
|
+
"max": 10
|
|
2946
|
+
},
|
|
2947
|
+
{
|
|
2948
|
+
"id": "pii",
|
|
2949
|
+
"name": "PII detection",
|
|
2950
|
+
"score": 10,
|
|
2951
|
+
"max": 10
|
|
2952
|
+
},
|
|
2953
|
+
{
|
|
2954
|
+
"id": "script-lint",
|
|
2955
|
+
"name": "Script linting",
|
|
2956
|
+
"score": 10,
|
|
2957
|
+
"max": 10
|
|
2958
|
+
}
|
|
2959
|
+
],
|
|
2960
|
+
"evaluatedAt": "2026-08-27T10:21:33.611Z",
|
|
2961
|
+
"evaluatedVersion": "0.0.0"
|
|
2962
|
+
},
|
|
2963
|
+
"skill-best-practice": {
|
|
2964
|
+
"providerId": "skill-best-practice",
|
|
2965
|
+
"providerVersion": "1.1.0",
|
|
2966
|
+
"schemaVersion": 1,
|
|
2967
|
+
"passed": false,
|
|
2968
|
+
"overallScore": 77,
|
|
2969
|
+
"grade": "C",
|
|
2970
|
+
"categories": [
|
|
2971
|
+
{
|
|
2972
|
+
"id": "validation",
|
|
2973
|
+
"name": "Deterministic validation",
|
|
2974
|
+
"score": 10,
|
|
2975
|
+
"max": 13
|
|
2976
|
+
}
|
|
2977
|
+
],
|
|
2978
|
+
"evaluatedAt": "2026-08-27T10:21:33.611Z",
|
|
2979
|
+
"evaluatedVersion": "0.0.0"
|
|
2980
|
+
}
|
|
2981
|
+
}
|
|
2982
|
+
},
|
|
2983
|
+
{
|
|
2984
|
+
"name": "safe-refactor",
|
|
2985
|
+
"description": "Restructure code while preserving behavior. Use for extraction, consolidation, ownership moves, or cleanup where verification must bracket structural edits.",
|
|
2986
|
+
"version": "0.0.0",
|
|
2987
|
+
"license": "",
|
|
2988
|
+
"creator": "",
|
|
2989
|
+
"compatibility": "",
|
|
2990
|
+
"allowedTools": [],
|
|
2991
|
+
"modelInvocable": true,
|
|
2992
|
+
"userInvocable": true,
|
|
2993
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/safe-refactor",
|
|
2994
|
+
"relPath": "skills/safe-refactor",
|
|
2995
|
+
"verified": true,
|
|
2996
|
+
"tokenCount": 172,
|
|
2997
|
+
"evalSummary": {
|
|
2998
|
+
"overallScore": 61,
|
|
2999
|
+
"grade": "D",
|
|
3000
|
+
"categories": [
|
|
3001
|
+
{
|
|
3002
|
+
"id": "structure",
|
|
3003
|
+
"name": "Structure & completeness",
|
|
3004
|
+
"score": 7,
|
|
3005
|
+
"max": 10
|
|
3006
|
+
},
|
|
3007
|
+
{
|
|
3008
|
+
"id": "description",
|
|
3009
|
+
"name": "Description quality",
|
|
3010
|
+
"score": 7,
|
|
3011
|
+
"max": 10
|
|
3012
|
+
},
|
|
3013
|
+
{
|
|
3014
|
+
"id": "prompt-engineering",
|
|
3015
|
+
"name": "Prompt engineering",
|
|
3016
|
+
"score": 3,
|
|
3017
|
+
"max": 10
|
|
3018
|
+
},
|
|
3019
|
+
{
|
|
3020
|
+
"id": "context-efficiency",
|
|
3021
|
+
"name": "Context efficiency",
|
|
3022
|
+
"score": 4,
|
|
3023
|
+
"max": 10
|
|
3024
|
+
},
|
|
3025
|
+
{
|
|
3026
|
+
"id": "safety",
|
|
3027
|
+
"name": "Safety & guardrails",
|
|
3028
|
+
"score": 7,
|
|
3029
|
+
"max": 10
|
|
3030
|
+
},
|
|
3031
|
+
{
|
|
3032
|
+
"id": "testability",
|
|
3033
|
+
"name": "Testability",
|
|
3034
|
+
"score": 3,
|
|
3035
|
+
"max": 10
|
|
3036
|
+
},
|
|
3037
|
+
{
|
|
3038
|
+
"id": "license",
|
|
3039
|
+
"name": "License verification",
|
|
3040
|
+
"score": 0,
|
|
3041
|
+
"max": 10
|
|
3042
|
+
},
|
|
3043
|
+
{
|
|
3044
|
+
"id": "naming",
|
|
3045
|
+
"name": "Naming & conventions",
|
|
3046
|
+
"score": 10,
|
|
3047
|
+
"max": 10
|
|
3048
|
+
},
|
|
3049
|
+
{
|
|
3050
|
+
"id": "pii",
|
|
3051
|
+
"name": "PII detection",
|
|
3052
|
+
"score": 10,
|
|
3053
|
+
"max": 10
|
|
3054
|
+
},
|
|
3055
|
+
{
|
|
3056
|
+
"id": "script-lint",
|
|
3057
|
+
"name": "Script linting",
|
|
3058
|
+
"score": 10,
|
|
3059
|
+
"max": 10
|
|
3060
|
+
}
|
|
3061
|
+
],
|
|
3062
|
+
"evaluatedAt": "2026-08-27T10:21:33.610Z",
|
|
3063
|
+
"evaluatedVersion": "0.0.0"
|
|
3064
|
+
},
|
|
3065
|
+
"evalSummaries": {
|
|
3066
|
+
"quality": {
|
|
3067
|
+
"providerId": "quality",
|
|
3068
|
+
"providerVersion": "1.0.0",
|
|
3069
|
+
"schemaVersion": 1,
|
|
3070
|
+
"passed": true,
|
|
3071
|
+
"overallScore": 61,
|
|
3072
|
+
"grade": "D",
|
|
3073
|
+
"categories": [
|
|
3074
|
+
{
|
|
3075
|
+
"id": "structure",
|
|
3076
|
+
"name": "Structure & completeness",
|
|
3077
|
+
"score": 7,
|
|
3078
|
+
"max": 10
|
|
3079
|
+
},
|
|
3080
|
+
{
|
|
3081
|
+
"id": "description",
|
|
3082
|
+
"name": "Description quality",
|
|
3083
|
+
"score": 7,
|
|
3084
|
+
"max": 10
|
|
3085
|
+
},
|
|
3086
|
+
{
|
|
3087
|
+
"id": "prompt-engineering",
|
|
3088
|
+
"name": "Prompt engineering",
|
|
3089
|
+
"score": 3,
|
|
3090
|
+
"max": 10
|
|
3091
|
+
},
|
|
3092
|
+
{
|
|
3093
|
+
"id": "context-efficiency",
|
|
3094
|
+
"name": "Context efficiency",
|
|
3095
|
+
"score": 4,
|
|
3096
|
+
"max": 10
|
|
3097
|
+
},
|
|
3098
|
+
{
|
|
3099
|
+
"id": "safety",
|
|
3100
|
+
"name": "Safety & guardrails",
|
|
3101
|
+
"score": 7,
|
|
3102
|
+
"max": 10
|
|
3103
|
+
},
|
|
3104
|
+
{
|
|
3105
|
+
"id": "testability",
|
|
3106
|
+
"name": "Testability",
|
|
3107
|
+
"score": 3,
|
|
3108
|
+
"max": 10
|
|
3109
|
+
},
|
|
3110
|
+
{
|
|
3111
|
+
"id": "license",
|
|
3112
|
+
"name": "License verification",
|
|
3113
|
+
"score": 0,
|
|
3114
|
+
"max": 10
|
|
3115
|
+
},
|
|
3116
|
+
{
|
|
3117
|
+
"id": "naming",
|
|
3118
|
+
"name": "Naming & conventions",
|
|
3119
|
+
"score": 10,
|
|
3120
|
+
"max": 10
|
|
3121
|
+
},
|
|
3122
|
+
{
|
|
3123
|
+
"id": "pii",
|
|
3124
|
+
"name": "PII detection",
|
|
3125
|
+
"score": 10,
|
|
3126
|
+
"max": 10
|
|
3127
|
+
},
|
|
3128
|
+
{
|
|
3129
|
+
"id": "script-lint",
|
|
3130
|
+
"name": "Script linting",
|
|
3131
|
+
"score": 10,
|
|
3132
|
+
"max": 10
|
|
3133
|
+
}
|
|
3134
|
+
],
|
|
3135
|
+
"evaluatedAt": "2026-08-27T10:21:33.611Z",
|
|
3136
|
+
"evaluatedVersion": "0.0.0"
|
|
3137
|
+
},
|
|
3138
|
+
"skill-best-practice": {
|
|
3139
|
+
"providerId": "skill-best-practice",
|
|
3140
|
+
"providerVersion": "1.1.0",
|
|
3141
|
+
"schemaVersion": 1,
|
|
3142
|
+
"passed": false,
|
|
3143
|
+
"overallScore": 77,
|
|
3144
|
+
"grade": "C",
|
|
3145
|
+
"categories": [
|
|
3146
|
+
{
|
|
3147
|
+
"id": "validation",
|
|
3148
|
+
"name": "Deterministic validation",
|
|
3149
|
+
"score": 10,
|
|
3150
|
+
"max": 13
|
|
3151
|
+
}
|
|
3152
|
+
],
|
|
3153
|
+
"evaluatedAt": "2026-08-27T10:21:33.611Z",
|
|
3154
|
+
"evaluatedVersion": "0.0.0"
|
|
3155
|
+
}
|
|
3156
|
+
}
|
|
3157
|
+
},
|
|
3158
|
+
{
|
|
3159
|
+
"name": "surgical-patch",
|
|
3160
|
+
"description": "Fix bugs and small behavior changes at the narrowest responsible layer. Use when regression proof, preserved surrounding behavior, and task-relevant tests matter.",
|
|
3161
|
+
"version": "0.0.0",
|
|
3162
|
+
"license": "",
|
|
3163
|
+
"creator": "",
|
|
3164
|
+
"compatibility": "",
|
|
3165
|
+
"allowedTools": [],
|
|
3166
|
+
"modelInvocable": true,
|
|
3167
|
+
"userInvocable": true,
|
|
3168
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/surgical-patch",
|
|
3169
|
+
"relPath": "skills/surgical-patch",
|
|
3170
|
+
"verified": true,
|
|
3171
|
+
"tokenCount": 174,
|
|
3172
|
+
"evalSummary": {
|
|
3173
|
+
"overallScore": 58,
|
|
3174
|
+
"grade": "D",
|
|
3175
|
+
"categories": [
|
|
3176
|
+
{
|
|
3177
|
+
"id": "structure",
|
|
3178
|
+
"name": "Structure & completeness",
|
|
3179
|
+
"score": 7,
|
|
3180
|
+
"max": 10
|
|
3181
|
+
},
|
|
3182
|
+
{
|
|
3183
|
+
"id": "description",
|
|
3184
|
+
"name": "Description quality",
|
|
3185
|
+
"score": 10,
|
|
3186
|
+
"max": 10
|
|
3187
|
+
},
|
|
3188
|
+
{
|
|
3189
|
+
"id": "prompt-engineering",
|
|
3190
|
+
"name": "Prompt engineering",
|
|
3191
|
+
"score": 3,
|
|
3192
|
+
"max": 10
|
|
3193
|
+
},
|
|
3194
|
+
{
|
|
3195
|
+
"id": "context-efficiency",
|
|
3196
|
+
"name": "Context efficiency",
|
|
3197
|
+
"score": 4,
|
|
3198
|
+
"max": 10
|
|
3199
|
+
},
|
|
3200
|
+
{
|
|
3201
|
+
"id": "safety",
|
|
3202
|
+
"name": "Safety & guardrails",
|
|
3203
|
+
"score": 4,
|
|
3204
|
+
"max": 10
|
|
3205
|
+
},
|
|
3206
|
+
{
|
|
3207
|
+
"id": "testability",
|
|
3208
|
+
"name": "Testability",
|
|
3209
|
+
"score": 0,
|
|
3210
|
+
"max": 10
|
|
3211
|
+
},
|
|
3212
|
+
{
|
|
3213
|
+
"id": "license",
|
|
3214
|
+
"name": "License verification",
|
|
3215
|
+
"score": 0,
|
|
3216
|
+
"max": 10
|
|
3217
|
+
},
|
|
3218
|
+
{
|
|
3219
|
+
"id": "naming",
|
|
3220
|
+
"name": "Naming & conventions",
|
|
3221
|
+
"score": 10,
|
|
3222
|
+
"max": 10
|
|
3223
|
+
},
|
|
3224
|
+
{
|
|
3225
|
+
"id": "pii",
|
|
3226
|
+
"name": "PII detection",
|
|
3227
|
+
"score": 10,
|
|
3228
|
+
"max": 10
|
|
3229
|
+
},
|
|
3230
|
+
{
|
|
3231
|
+
"id": "script-lint",
|
|
3232
|
+
"name": "Script linting",
|
|
3233
|
+
"score": 10,
|
|
3234
|
+
"max": 10
|
|
3235
|
+
}
|
|
3236
|
+
],
|
|
3237
|
+
"evaluatedAt": "2026-08-27T10:21:33.613Z",
|
|
3238
|
+
"evaluatedVersion": "0.0.0"
|
|
3239
|
+
},
|
|
3240
|
+
"evalSummaries": {
|
|
3241
|
+
"quality": {
|
|
3242
|
+
"providerId": "quality",
|
|
3243
|
+
"providerVersion": "1.0.0",
|
|
3244
|
+
"schemaVersion": 1,
|
|
3245
|
+
"passed": true,
|
|
3246
|
+
"overallScore": 58,
|
|
3247
|
+
"grade": "D",
|
|
3248
|
+
"categories": [
|
|
3249
|
+
{
|
|
3250
|
+
"id": "structure",
|
|
3251
|
+
"name": "Structure & completeness",
|
|
3252
|
+
"score": 7,
|
|
3253
|
+
"max": 10
|
|
3254
|
+
},
|
|
3255
|
+
{
|
|
3256
|
+
"id": "description",
|
|
3257
|
+
"name": "Description quality",
|
|
3258
|
+
"score": 10,
|
|
3259
|
+
"max": 10
|
|
3260
|
+
},
|
|
3261
|
+
{
|
|
3262
|
+
"id": "prompt-engineering",
|
|
3263
|
+
"name": "Prompt engineering",
|
|
3264
|
+
"score": 3,
|
|
3265
|
+
"max": 10
|
|
3266
|
+
},
|
|
3267
|
+
{
|
|
3268
|
+
"id": "context-efficiency",
|
|
3269
|
+
"name": "Context efficiency",
|
|
3270
|
+
"score": 4,
|
|
3271
|
+
"max": 10
|
|
3272
|
+
},
|
|
3273
|
+
{
|
|
3274
|
+
"id": "safety",
|
|
3275
|
+
"name": "Safety & guardrails",
|
|
3276
|
+
"score": 4,
|
|
3277
|
+
"max": 10
|
|
3278
|
+
},
|
|
3279
|
+
{
|
|
3280
|
+
"id": "testability",
|
|
3281
|
+
"name": "Testability",
|
|
3282
|
+
"score": 0,
|
|
3283
|
+
"max": 10
|
|
3284
|
+
},
|
|
3285
|
+
{
|
|
3286
|
+
"id": "license",
|
|
3287
|
+
"name": "License verification",
|
|
3288
|
+
"score": 0,
|
|
3289
|
+
"max": 10
|
|
3290
|
+
},
|
|
3291
|
+
{
|
|
3292
|
+
"id": "naming",
|
|
3293
|
+
"name": "Naming & conventions",
|
|
3294
|
+
"score": 10,
|
|
3295
|
+
"max": 10
|
|
3296
|
+
},
|
|
3297
|
+
{
|
|
3298
|
+
"id": "pii",
|
|
3299
|
+
"name": "PII detection",
|
|
3300
|
+
"score": 10,
|
|
3301
|
+
"max": 10
|
|
3302
|
+
},
|
|
3303
|
+
{
|
|
3304
|
+
"id": "script-lint",
|
|
3305
|
+
"name": "Script linting",
|
|
3306
|
+
"score": 10,
|
|
3307
|
+
"max": 10
|
|
3308
|
+
}
|
|
3309
|
+
],
|
|
3310
|
+
"evaluatedAt": "2026-08-27T10:21:33.614Z",
|
|
3311
|
+
"evaluatedVersion": "0.0.0"
|
|
3312
|
+
},
|
|
3313
|
+
"skill-best-practice": {
|
|
3314
|
+
"providerId": "skill-best-practice",
|
|
3315
|
+
"providerVersion": "1.1.0",
|
|
3316
|
+
"schemaVersion": 1,
|
|
3317
|
+
"passed": false,
|
|
3318
|
+
"overallScore": 77,
|
|
3319
|
+
"grade": "C",
|
|
3320
|
+
"categories": [
|
|
3321
|
+
{
|
|
3322
|
+
"id": "validation",
|
|
3323
|
+
"name": "Deterministic validation",
|
|
3324
|
+
"score": 10,
|
|
3325
|
+
"max": 13
|
|
3326
|
+
}
|
|
3327
|
+
],
|
|
3328
|
+
"evaluatedAt": "2026-08-27T10:21:33.614Z",
|
|
3329
|
+
"evaluatedVersion": "0.0.0"
|
|
3330
|
+
}
|
|
3331
|
+
}
|
|
3332
|
+
},
|
|
3333
|
+
{
|
|
3334
|
+
"name": "verify-and-stop",
|
|
3335
|
+
"description": "Prove existing work meets acceptance conditions without expanding scope. Use for validation-only tasks, completion checks, focused gate runs, and last-mile proof.",
|
|
3336
|
+
"version": "0.0.0",
|
|
3337
|
+
"license": "",
|
|
3338
|
+
"creator": "",
|
|
3339
|
+
"compatibility": "",
|
|
3340
|
+
"allowedTools": [],
|
|
3341
|
+
"modelInvocable": true,
|
|
3342
|
+
"userInvocable": true,
|
|
3343
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/verify-and-stop",
|
|
3344
|
+
"relPath": "skills/verify-and-stop",
|
|
3345
|
+
"verified": true,
|
|
3346
|
+
"tokenCount": 184,
|
|
3347
|
+
"evalSummary": {
|
|
3348
|
+
"overallScore": 61,
|
|
3349
|
+
"grade": "D",
|
|
3350
|
+
"categories": [
|
|
3351
|
+
{
|
|
3352
|
+
"id": "structure",
|
|
3353
|
+
"name": "Structure & completeness",
|
|
3354
|
+
"score": 7,
|
|
3355
|
+
"max": 10
|
|
3356
|
+
},
|
|
3357
|
+
{
|
|
3358
|
+
"id": "description",
|
|
3359
|
+
"name": "Description quality",
|
|
3360
|
+
"score": 7,
|
|
3361
|
+
"max": 10
|
|
3362
|
+
},
|
|
3363
|
+
{
|
|
3364
|
+
"id": "prompt-engineering",
|
|
3365
|
+
"name": "Prompt engineering",
|
|
3366
|
+
"score": 4,
|
|
3367
|
+
"max": 10
|
|
3368
|
+
},
|
|
3369
|
+
{
|
|
3370
|
+
"id": "context-efficiency",
|
|
3371
|
+
"name": "Context efficiency",
|
|
3372
|
+
"score": 4,
|
|
3373
|
+
"max": 10
|
|
3374
|
+
},
|
|
3375
|
+
{
|
|
3376
|
+
"id": "safety",
|
|
3377
|
+
"name": "Safety & guardrails",
|
|
3378
|
+
"score": 4,
|
|
3379
|
+
"max": 10
|
|
3380
|
+
},
|
|
3381
|
+
{
|
|
3382
|
+
"id": "testability",
|
|
3383
|
+
"name": "Testability",
|
|
3384
|
+
"score": 5,
|
|
3385
|
+
"max": 10
|
|
3386
|
+
},
|
|
3387
|
+
{
|
|
3388
|
+
"id": "license",
|
|
3389
|
+
"name": "License verification",
|
|
3390
|
+
"score": 0,
|
|
3391
|
+
"max": 10
|
|
3392
|
+
},
|
|
3393
|
+
{
|
|
3394
|
+
"id": "naming",
|
|
3395
|
+
"name": "Naming & conventions",
|
|
3396
|
+
"score": 10,
|
|
3397
|
+
"max": 10
|
|
3398
|
+
},
|
|
3399
|
+
{
|
|
3400
|
+
"id": "pii",
|
|
3401
|
+
"name": "PII detection",
|
|
3402
|
+
"score": 10,
|
|
3403
|
+
"max": 10
|
|
3404
|
+
},
|
|
3405
|
+
{
|
|
3406
|
+
"id": "script-lint",
|
|
3407
|
+
"name": "Script linting",
|
|
3408
|
+
"score": 10,
|
|
3409
|
+
"max": 10
|
|
3410
|
+
}
|
|
3411
|
+
],
|
|
3412
|
+
"evaluatedAt": "2026-08-27T10:21:33.614Z",
|
|
3413
|
+
"evaluatedVersion": "0.0.0"
|
|
3414
|
+
},
|
|
3415
|
+
"evalSummaries": {
|
|
3416
|
+
"quality": {
|
|
3417
|
+
"providerId": "quality",
|
|
3418
|
+
"providerVersion": "1.0.0",
|
|
3419
|
+
"schemaVersion": 1,
|
|
3420
|
+
"passed": true,
|
|
3421
|
+
"overallScore": 61,
|
|
3422
|
+
"grade": "D",
|
|
3423
|
+
"categories": [
|
|
3424
|
+
{
|
|
3425
|
+
"id": "structure",
|
|
3426
|
+
"name": "Structure & completeness",
|
|
3427
|
+
"score": 7,
|
|
3428
|
+
"max": 10
|
|
3429
|
+
},
|
|
3430
|
+
{
|
|
3431
|
+
"id": "description",
|
|
3432
|
+
"name": "Description quality",
|
|
3433
|
+
"score": 7,
|
|
3434
|
+
"max": 10
|
|
3435
|
+
},
|
|
3436
|
+
{
|
|
3437
|
+
"id": "prompt-engineering",
|
|
3438
|
+
"name": "Prompt engineering",
|
|
3439
|
+
"score": 4,
|
|
3440
|
+
"max": 10
|
|
3441
|
+
},
|
|
3442
|
+
{
|
|
3443
|
+
"id": "context-efficiency",
|
|
3444
|
+
"name": "Context efficiency",
|
|
3445
|
+
"score": 4,
|
|
3446
|
+
"max": 10
|
|
3447
|
+
},
|
|
3448
|
+
{
|
|
3449
|
+
"id": "safety",
|
|
3450
|
+
"name": "Safety & guardrails",
|
|
3451
|
+
"score": 4,
|
|
3452
|
+
"max": 10
|
|
3453
|
+
},
|
|
3454
|
+
{
|
|
3455
|
+
"id": "testability",
|
|
3456
|
+
"name": "Testability",
|
|
3457
|
+
"score": 5,
|
|
3458
|
+
"max": 10
|
|
3459
|
+
},
|
|
3460
|
+
{
|
|
3461
|
+
"id": "license",
|
|
3462
|
+
"name": "License verification",
|
|
3463
|
+
"score": 0,
|
|
3464
|
+
"max": 10
|
|
3465
|
+
},
|
|
3466
|
+
{
|
|
3467
|
+
"id": "naming",
|
|
3468
|
+
"name": "Naming & conventions",
|
|
3469
|
+
"score": 10,
|
|
3470
|
+
"max": 10
|
|
3471
|
+
},
|
|
3472
|
+
{
|
|
3473
|
+
"id": "pii",
|
|
3474
|
+
"name": "PII detection",
|
|
3475
|
+
"score": 10,
|
|
3476
|
+
"max": 10
|
|
3477
|
+
},
|
|
3478
|
+
{
|
|
3479
|
+
"id": "script-lint",
|
|
3480
|
+
"name": "Script linting",
|
|
3481
|
+
"score": 10,
|
|
3482
|
+
"max": 10
|
|
3483
|
+
}
|
|
3484
|
+
],
|
|
3485
|
+
"evaluatedAt": "2026-08-27T10:21:33.615Z",
|
|
3486
|
+
"evaluatedVersion": "0.0.0"
|
|
3487
|
+
},
|
|
3488
|
+
"skill-best-practice": {
|
|
3489
|
+
"providerId": "skill-best-practice",
|
|
3490
|
+
"providerVersion": "1.1.0",
|
|
3491
|
+
"schemaVersion": 1,
|
|
3492
|
+
"passed": false,
|
|
3493
|
+
"overallScore": 77,
|
|
3494
|
+
"grade": "C",
|
|
3495
|
+
"categories": [
|
|
3496
|
+
{
|
|
3497
|
+
"id": "validation",
|
|
3498
|
+
"name": "Deterministic validation",
|
|
3499
|
+
"score": 10,
|
|
3500
|
+
"max": 13
|
|
3501
|
+
}
|
|
3502
|
+
],
|
|
3503
|
+
"evaluatedAt": "2026-08-27T10:21:33.615Z",
|
|
3504
|
+
"evaluatedVersion": "0.0.0"
|
|
3505
|
+
}
|
|
3506
|
+
}
|
|
3507
|
+
}
|
|
3508
|
+
],
|
|
3509
|
+
"bundles": [
|
|
3510
|
+
{
|
|
3511
|
+
"version": 1,
|
|
3512
|
+
"name": "juliusbrussee-caveman-data-ai",
|
|
3513
|
+
"description": "Data, analytics, AI, model, prompt, agent, and automation skills. Derived from JuliusBrussee/caveman.",
|
|
3514
|
+
"author": "ASM (JuliusBrussee/caveman)",
|
|
3515
|
+
"createdAt": "2026-08-27T10:21:34.039Z",
|
|
3516
|
+
"tags": [
|
|
3517
|
+
"repo-derived",
|
|
3518
|
+
"inferred",
|
|
3519
|
+
"data",
|
|
3520
|
+
"ai",
|
|
3521
|
+
"agents",
|
|
3522
|
+
"juliusbrussee",
|
|
3523
|
+
"caveman"
|
|
3524
|
+
],
|
|
3525
|
+
"skills": [
|
|
3526
|
+
{
|
|
3527
|
+
"name": "cavecrew",
|
|
3528
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/cavecrew",
|
|
3529
|
+
"description": "Decision guide for delegating to caveman-style subagents. Tells the main thread WHEN to spawn `cavecrew-investigator` (locate code), `cavecrew-builder` (1-2 file edit), or `cavecrew-reviewer` (diff review) instead of doing the work inline or using vanilla `Explore`. Subagent output is caveman-compressed so the tool-result injected back into main context is ~60% smaller — main context lasts longer across long sessions. Trigger: \"delegate to subagent\", \"use cavecrew\", \"spawn investigator/builder/reviewer\", \"save context\", \"compressed agent output\".",
|
|
3530
|
+
"version": "0.0.0"
|
|
3531
|
+
},
|
|
3532
|
+
{
|
|
3533
|
+
"name": "caveman-compress",
|
|
3534
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-compress",
|
|
3535
|
+
"description": "Compress natural language memory files (CLAUDE.md, todos, preferences) into caveman format to save input tokens. Preserves all technical substance, code, URLs, and structure. Compressed version overwrites the original file. Human-readable backup saved as FILE.original.md. Trigger: /caveman-compress FILEPATH or \"compress memory file\"",
|
|
3536
|
+
"version": "0.0.0"
|
|
3537
|
+
},
|
|
3538
|
+
{
|
|
3539
|
+
"name": "caveman-discover",
|
|
3540
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-discover",
|
|
3541
|
+
"description": "Find every LLM workflow in the current repository and label it, so Caveman Cloud groups spend by what the code actually does (support-reply, nightly-digest) instead of one anonymous bucket. Use when the user pastes the Caveman discovery prompt, says \"discover workflows\", or asks to break LLM spend down by workflow. The repo should already route through the Caveman gateway (the caveman-setup skill does that part).",
|
|
3542
|
+
"version": "0.0.0"
|
|
3543
|
+
},
|
|
3544
|
+
{
|
|
3545
|
+
"name": "caveman-evidence-review",
|
|
3546
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-evidence-review",
|
|
3547
|
+
"description": "Review Caveman Cloud evidence read-only: costs, Cave Score, Cave Plan, workflows, traces, latency, errors, compression, routing, and verified savings. Use when the user asks what Caveman found, where LLM spend goes, why cost or quality changed, which workflows need attention, or asks for a trace or analytics review. Prefer Caveman MCP tools; fall back to CLI JSON.",
|
|
3548
|
+
"version": "0.0.0"
|
|
3549
|
+
},
|
|
3550
|
+
{
|
|
3551
|
+
"name": "caveman-explore",
|
|
3552
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-explore",
|
|
3553
|
+
"description": "Read-only repository explorer. Use PROACTIVELY for cold-start exploration, broad cross-file localization, or when a direct search has failed and you need to find where something lives. Skip it when the issue already names the exact file or symbol, or a previous turn already returned usable file:line evidence. Returns only compact path:line citations; its reads and greps never enter the main conversation.",
|
|
3554
|
+
"version": "0.0.0"
|
|
3555
|
+
},
|
|
3556
|
+
{
|
|
3557
|
+
"name": "caveman-learn",
|
|
3558
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-learn",
|
|
3559
|
+
"description": "Close the loop on a Caveman learn report — review the ranked token sinks, apply cost-lowering fixes (trim config, offload recurring context to cavemem) with per-edit consent, and report what those fixes returned with their attribution. Use when the user runs \"caveman learn\", asks to lower their agent's token cost, asks what caveman has saved them, wants to trim a heavy CLAUDE.md, or wants to offload context they re-paste every session into cavemem.",
|
|
3560
|
+
"version": "0.0.0"
|
|
3561
|
+
},
|
|
3562
|
+
{
|
|
3563
|
+
"name": "caveman-optimize",
|
|
3564
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-optimize",
|
|
3565
|
+
"description": "Turn Caveman's exact report-only repository observations into an operator-chosen optimization candidate with a paired baseline/candidate evaluation. Use when the user asks to inspect an optimization observation, evaluate a candidate change, or act on the current Caveman optimization report. Require a logged-in Caveman CLI connection and explicit approval; never infer money or actuation from a profile.",
|
|
3566
|
+
"version": "0.0.0"
|
|
3567
|
+
},
|
|
3568
|
+
{
|
|
3569
|
+
"name": "caveman-setup",
|
|
3570
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-setup",
|
|
3571
|
+
"description": "Wire the current repository through the Caveman Cloud gateway so every LLM request is measured — cost, tokens, latency — with zero behavior change. Use when the user pastes the Caveman setup prompt, says \"set up caveman\", or wants LLM spend observability added to an app. Requires the gateway URL and a Cave API key (the setup prompt carries both).",
|
|
3572
|
+
"version": "0.0.0"
|
|
3573
|
+
},
|
|
3574
|
+
{
|
|
3575
|
+
"name": "caveman-stats",
|
|
3576
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-stats",
|
|
3577
|
+
"description": "Show real token usage and estimated savings for the current session. Reads directly from the Claude Code session log — no AI estimation. Triggers on /caveman-stats. Output is injected by the mode-tracker hook; the model itself does not compute the numbers.",
|
|
3578
|
+
"version": "0.0.0"
|
|
3579
|
+
},
|
|
3580
|
+
{
|
|
3581
|
+
"name": "investigate-first",
|
|
3582
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/investigate-first",
|
|
3583
|
+
"description": "Diagnose ambiguous failures before editing. Use for unknown causes, intermittent behavior, performance regressions, or investigations needing evidence-ranked hypotheses.",
|
|
3584
|
+
"version": "0.0.0"
|
|
3585
|
+
},
|
|
3586
|
+
{
|
|
3587
|
+
"name": "migration",
|
|
3588
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/migration",
|
|
3589
|
+
"description": "Implement reversible compatibility-safe transitions. Use for schema, data, API, protocol, configuration, or dependency migrations requiring rollback and preservation proof.",
|
|
3590
|
+
"version": "0.0.0"
|
|
3591
|
+
}
|
|
3592
|
+
],
|
|
3593
|
+
"sourceRepo": {
|
|
3594
|
+
"owner": "JuliusBrussee",
|
|
3595
|
+
"repo": "caveman",
|
|
3596
|
+
"repoUrl": "https://github.com/JuliusBrussee/caveman.git"
|
|
3597
|
+
},
|
|
3598
|
+
"inferred": true
|
|
3599
|
+
},
|
|
3600
|
+
{
|
|
3601
|
+
"version": 1,
|
|
3602
|
+
"name": "juliusbrussee-caveman-devops",
|
|
3603
|
+
"description": "Deployment, CI/CD, infrastructure, cloud, Docker, Kubernetes, and automation skills. Derived from JuliusBrussee/caveman.",
|
|
3604
|
+
"author": "ASM (JuliusBrussee/caveman)",
|
|
3605
|
+
"createdAt": "2026-08-27T10:21:34.039Z",
|
|
3606
|
+
"tags": [
|
|
3607
|
+
"repo-derived",
|
|
3608
|
+
"inferred",
|
|
3609
|
+
"devops",
|
|
3610
|
+
"infra",
|
|
3611
|
+
"automation",
|
|
3612
|
+
"juliusbrussee",
|
|
3613
|
+
"caveman"
|
|
3614
|
+
],
|
|
3615
|
+
"skills": [
|
|
3616
|
+
{
|
|
3617
|
+
"name": "cavecrew",
|
|
3618
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/cavecrew",
|
|
3619
|
+
"description": "Decision guide for delegating to caveman-style subagents. Tells the main thread WHEN to spawn `cavecrew-investigator` (locate code), `cavecrew-builder` (1-2 file edit), or `cavecrew-reviewer` (diff review) instead of doing the work inline or using vanilla `Explore`. Subagent output is caveman-compressed so the tool-result injected back into main context is ~60% smaller — main context lasts longer across long sessions. Trigger: \"delegate to subagent\", \"use cavecrew\", \"spawn investigator/builder/reviewer\", \"save context\", \"compressed agent output\".",
|
|
3620
|
+
"version": "0.0.0"
|
|
3621
|
+
},
|
|
3622
|
+
{
|
|
3623
|
+
"name": "caveman",
|
|
3624
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman",
|
|
3625
|
+
"description": "Ultra-compressed communication mode. Cuts output tokens 65% (measured) by speaking like caveman while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra, wenyan-lite, wenyan-full, wenyan-ultra. Use when user says \"caveman mode\", \"talk like caveman\", \"use caveman\", \"less tokens\", \"be brief\", or invokes /caveman. Also auto-triggers when token efficiency is requested.",
|
|
3626
|
+
"version": "0.0.0"
|
|
3627
|
+
},
|
|
3628
|
+
{
|
|
3629
|
+
"name": "caveman-discover",
|
|
3630
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-discover",
|
|
3631
|
+
"description": "Find every LLM workflow in the current repository and label it, so Caveman Cloud groups spend by what the code actually does (support-reply, nightly-digest) instead of one anonymous bucket. Use when the user pastes the Caveman discovery prompt, says \"discover workflows\", or asks to break LLM spend down by workflow. The repo should already route through the Caveman gateway (the caveman-setup skill does that part).",
|
|
3632
|
+
"version": "0.0.0"
|
|
3633
|
+
},
|
|
3634
|
+
{
|
|
3635
|
+
"name": "caveman-evidence-review",
|
|
3636
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-evidence-review",
|
|
3637
|
+
"description": "Review Caveman Cloud evidence read-only: costs, Cave Score, Cave Plan, workflows, traces, latency, errors, compression, routing, and verified savings. Use when the user asks what Caveman found, where LLM spend goes, why cost or quality changed, which workflows need attention, or asks for a trace or analytics review. Prefer Caveman MCP tools; fall back to CLI JSON.",
|
|
3638
|
+
"version": "0.0.0"
|
|
3639
|
+
},
|
|
3640
|
+
{
|
|
3641
|
+
"name": "caveman-explore",
|
|
3642
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-explore",
|
|
3643
|
+
"description": "Read-only repository explorer. Use PROACTIVELY for cold-start exploration, broad cross-file localization, or when a direct search has failed and you need to find where something lives. Skip it when the issue already names the exact file or symbol, or a previous turn already returned usable file:line evidence. Returns only compact path:line citations; its reads and greps never enter the main conversation.",
|
|
3644
|
+
"version": "0.0.0"
|
|
3645
|
+
},
|
|
3646
|
+
{
|
|
3647
|
+
"name": "caveman-manage",
|
|
3648
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-manage",
|
|
3649
|
+
"description": "Inspect Caveman Cloud's eval-gated experiment lifecycle and block unsafe execution. Use when the user asks to start, approve, cancel, promote, or roll back a Caveman experiment, or asks what action an experiment's evidence supports. Read evidence first; do not execute lifecycle mutations until server-authoritative transition and evidence gates ship.",
|
|
3650
|
+
"version": "0.0.0"
|
|
3651
|
+
},
|
|
3652
|
+
{
|
|
3653
|
+
"name": "caveman-optimize",
|
|
3654
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-optimize",
|
|
3655
|
+
"description": "Turn Caveman's exact report-only repository observations into an operator-chosen optimization candidate with a paired baseline/candidate evaluation. Use when the user asks to inspect an optimization observation, evaluate a candidate change, or act on the current Caveman optimization report. Require a logged-in Caveman CLI connection and explicit approval; never infer money or actuation from a profile.",
|
|
3656
|
+
"version": "0.0.0"
|
|
3657
|
+
},
|
|
3658
|
+
{
|
|
3659
|
+
"name": "caveman-setup",
|
|
3660
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-setup",
|
|
3661
|
+
"description": "Wire the current repository through the Caveman Cloud gateway so every LLM request is measured — cost, tokens, latency — with zero behavior change. Use when the user pastes the Caveman setup prompt, says \"set up caveman\", or wants LLM spend observability added to an app. Requires the gateway URL and a Cave API key (the setup prompt carries both).",
|
|
3662
|
+
"version": "0.0.0"
|
|
3663
|
+
},
|
|
3664
|
+
{
|
|
3665
|
+
"name": "lean-build",
|
|
3666
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/lean-build",
|
|
3667
|
+
"description": "Build feature work with high overbuilding risk. Use for new behavior, product slices, or integrations where repository reuse, strict scope, and an explicit stop condition matter.",
|
|
3668
|
+
"version": "0.0.0"
|
|
3669
|
+
}
|
|
3670
|
+
],
|
|
3671
|
+
"sourceRepo": {
|
|
3672
|
+
"owner": "JuliusBrussee",
|
|
3673
|
+
"repo": "caveman",
|
|
3674
|
+
"repoUrl": "https://github.com/JuliusBrussee/caveman.git"
|
|
3675
|
+
},
|
|
3676
|
+
"inferred": true
|
|
3677
|
+
},
|
|
3678
|
+
{
|
|
3679
|
+
"version": 1,
|
|
3680
|
+
"name": "juliusbrussee-caveman-engineering",
|
|
3681
|
+
"description": "Coding, debugging, testing, architecture, review, and software engineering skills. Derived from JuliusBrussee/caveman.",
|
|
3682
|
+
"author": "ASM (JuliusBrussee/caveman)",
|
|
3683
|
+
"createdAt": "2026-08-27T10:21:34.039Z",
|
|
3684
|
+
"tags": [
|
|
3685
|
+
"repo-derived",
|
|
3686
|
+
"inferred",
|
|
3687
|
+
"engineering",
|
|
3688
|
+
"coding",
|
|
3689
|
+
"testing",
|
|
3690
|
+
"juliusbrussee",
|
|
3691
|
+
"caveman"
|
|
3692
|
+
],
|
|
3693
|
+
"skills": [
|
|
3694
|
+
{
|
|
3695
|
+
"name": "cavecrew",
|
|
3696
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/cavecrew",
|
|
3697
|
+
"description": "Decision guide for delegating to caveman-style subagents. Tells the main thread WHEN to spawn `cavecrew-investigator` (locate code), `cavecrew-builder` (1-2 file edit), or `cavecrew-reviewer` (diff review) instead of doing the work inline or using vanilla `Explore`. Subagent output is caveman-compressed so the tool-result injected back into main context is ~60% smaller — main context lasts longer across long sessions. Trigger: \"delegate to subagent\", \"use cavecrew\", \"spawn investigator/builder/reviewer\", \"save context\", \"compressed agent output\".",
|
|
3698
|
+
"version": "0.0.0"
|
|
3699
|
+
},
|
|
3700
|
+
{
|
|
3701
|
+
"name": "caveman-compress",
|
|
3702
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-compress",
|
|
3703
|
+
"description": "Compress natural language memory files (CLAUDE.md, todos, preferences) into caveman format to save input tokens. Preserves all technical substance, code, URLs, and structure. Compressed version overwrites the original file. Human-readable backup saved as FILE.original.md. Trigger: /caveman-compress FILEPATH or \"compress memory file\"",
|
|
3704
|
+
"version": "0.0.0"
|
|
3705
|
+
},
|
|
3706
|
+
{
|
|
3707
|
+
"name": "caveman-discover",
|
|
3708
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-discover",
|
|
3709
|
+
"description": "Find every LLM workflow in the current repository and label it, so Caveman Cloud groups spend by what the code actually does (support-reply, nightly-digest) instead of one anonymous bucket. Use when the user pastes the Caveman discovery prompt, says \"discover workflows\", or asks to break LLM spend down by workflow. The repo should already route through the Caveman gateway (the caveman-setup skill does that part).",
|
|
3710
|
+
"version": "0.0.0"
|
|
3711
|
+
},
|
|
3712
|
+
{
|
|
3713
|
+
"name": "caveman-evidence-review",
|
|
3714
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-evidence-review",
|
|
3715
|
+
"description": "Review Caveman Cloud evidence read-only: costs, Cave Score, Cave Plan, workflows, traces, latency, errors, compression, routing, and verified savings. Use when the user asks what Caveman found, where LLM spend goes, why cost or quality changed, which workflows need attention, or asks for a trace or analytics review. Prefer Caveman MCP tools; fall back to CLI JSON.",
|
|
3716
|
+
"version": "0.0.0"
|
|
3717
|
+
},
|
|
3718
|
+
{
|
|
3719
|
+
"name": "caveman-learn",
|
|
3720
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-learn",
|
|
3721
|
+
"description": "Close the loop on a Caveman learn report — review the ranked token sinks, apply cost-lowering fixes (trim config, offload recurring context to cavemem) with per-edit consent, and report what those fixes returned with their attribution. Use when the user runs \"caveman learn\", asks to lower their agent's token cost, asks what caveman has saved them, wants to trim a heavy CLAUDE.md, or wants to offload context they re-paste every session into cavemem.",
|
|
3722
|
+
"version": "0.0.0"
|
|
3723
|
+
},
|
|
3724
|
+
{
|
|
3725
|
+
"name": "caveman-optimize",
|
|
3726
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-optimize",
|
|
3727
|
+
"description": "Turn Caveman's exact report-only repository observations into an operator-chosen optimization candidate with a paired baseline/candidate evaluation. Use when the user asks to inspect an optimization observation, evaluate a candidate change, or act on the current Caveman optimization report. Require a logged-in Caveman CLI connection and explicit approval; never infer money or actuation from a profile.",
|
|
3728
|
+
"version": "0.0.0"
|
|
3729
|
+
},
|
|
3730
|
+
{
|
|
3731
|
+
"name": "caveman-review",
|
|
3732
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-review",
|
|
3733
|
+
"description": "Ultra-compressed code review comments. Cuts noise from PR feedback while preserving the actionable signal. Each comment is one line: location, problem, fix. Use when user says \"review this PR\", \"code review\", \"review the diff\", \"/review\", or invokes /caveman-review. Auto-triggers when reviewing pull requests.",
|
|
3734
|
+
"version": "0.0.0"
|
|
3735
|
+
},
|
|
3736
|
+
{
|
|
3737
|
+
"name": "caveman-setup",
|
|
3738
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-setup",
|
|
3739
|
+
"description": "Wire the current repository through the Caveman Cloud gateway so every LLM request is measured — cost, tokens, latency — with zero behavior change. Use when the user pastes the Caveman setup prompt, says \"set up caveman\", or wants LLM spend observability added to an app. Requires the gateway URL and a Cave API key (the setup prompt carries both).",
|
|
3740
|
+
"version": "0.0.0"
|
|
3741
|
+
},
|
|
3742
|
+
{
|
|
3743
|
+
"name": "caveman-stats",
|
|
3744
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-stats",
|
|
3745
|
+
"description": "Show real token usage and estimated savings for the current session. Reads directly from the Claude Code session log — no AI estimation. Triggers on /caveman-stats. Output is injected by the mode-tracker hook; the model itself does not compute the numbers.",
|
|
3746
|
+
"version": "0.0.0"
|
|
3747
|
+
},
|
|
3748
|
+
{
|
|
3749
|
+
"name": "lean-build",
|
|
3750
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/lean-build",
|
|
3751
|
+
"description": "Build feature work with high overbuilding risk. Use for new behavior, product slices, or integrations where repository reuse, strict scope, and an explicit stop condition matter.",
|
|
3752
|
+
"version": "0.0.0"
|
|
3753
|
+
},
|
|
3754
|
+
{
|
|
3755
|
+
"name": "migration",
|
|
3756
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/migration",
|
|
3757
|
+
"description": "Implement reversible compatibility-safe transitions. Use for schema, data, API, protocol, configuration, or dependency migrations requiring rollback and preservation proof.",
|
|
3758
|
+
"version": "0.0.0"
|
|
3759
|
+
},
|
|
3760
|
+
{
|
|
3761
|
+
"name": "safe-refactor",
|
|
3762
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/safe-refactor",
|
|
3763
|
+
"description": "Restructure code while preserving behavior. Use for extraction, consolidation, ownership moves, or cleanup where verification must bracket structural edits.",
|
|
3764
|
+
"version": "0.0.0"
|
|
3765
|
+
},
|
|
3766
|
+
{
|
|
3767
|
+
"name": "surgical-patch",
|
|
3768
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/surgical-patch",
|
|
3769
|
+
"description": "Fix bugs and small behavior changes at the narrowest responsible layer. Use when regression proof, preserved surrounding behavior, and task-relevant tests matter.",
|
|
3770
|
+
"version": "0.0.0"
|
|
3771
|
+
}
|
|
3772
|
+
],
|
|
3773
|
+
"sourceRepo": {
|
|
3774
|
+
"owner": "JuliusBrussee",
|
|
3775
|
+
"repo": "caveman",
|
|
3776
|
+
"repoUrl": "https://github.com/JuliusBrussee/caveman.git"
|
|
3777
|
+
},
|
|
3778
|
+
"inferred": true
|
|
3779
|
+
},
|
|
3780
|
+
{
|
|
3781
|
+
"version": 1,
|
|
3782
|
+
"name": "juliusbrussee-caveman-frontend-design",
|
|
3783
|
+
"description": "Frontend, UI, UX, visual design, component, theme, and landing-page skills. Derived from JuliusBrussee/caveman.",
|
|
3784
|
+
"author": "ASM (JuliusBrussee/caveman)",
|
|
3785
|
+
"createdAt": "2026-08-27T10:21:34.039Z",
|
|
3786
|
+
"tags": [
|
|
3787
|
+
"repo-derived",
|
|
3788
|
+
"inferred",
|
|
3789
|
+
"frontend",
|
|
3790
|
+
"design",
|
|
3791
|
+
"ui",
|
|
3792
|
+
"juliusbrussee",
|
|
3793
|
+
"caveman"
|
|
3794
|
+
],
|
|
3795
|
+
"skills": [
|
|
3796
|
+
{
|
|
3797
|
+
"name": "cavecrew",
|
|
3798
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/cavecrew",
|
|
3799
|
+
"description": "Decision guide for delegating to caveman-style subagents. Tells the main thread WHEN to spawn `cavecrew-investigator` (locate code), `cavecrew-builder` (1-2 file edit), or `cavecrew-reviewer` (diff review) instead of doing the work inline or using vanilla `Explore`. Subagent output is caveman-compressed so the tool-result injected back into main context is ~60% smaller — main context lasts longer across long sessions. Trigger: \"delegate to subagent\", \"use cavecrew\", \"spawn investigator/builder/reviewer\", \"save context\", \"compressed agent output\".",
|
|
3800
|
+
"version": "0.0.0"
|
|
3801
|
+
},
|
|
3802
|
+
{
|
|
3803
|
+
"name": "caveman-help",
|
|
3804
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-help",
|
|
3805
|
+
"description": "Quick-reference card for all caveman modes, skills, and commands. One-shot display, not a persistent mode. Trigger: /caveman-help, \"caveman help\", \"what caveman commands\", \"how do I use caveman\".",
|
|
3806
|
+
"version": "0.0.0"
|
|
3807
|
+
},
|
|
3808
|
+
{
|
|
3809
|
+
"name": "caveman-optimize",
|
|
3810
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-optimize",
|
|
3811
|
+
"description": "Turn Caveman's exact report-only repository observations into an operator-chosen optimization candidate with a paired baseline/candidate evaluation. Use when the user asks to inspect an optimization observation, evaluate a candidate change, or act on the current Caveman optimization report. Require a logged-in Caveman CLI connection and explicit approval; never infer money or actuation from a profile.",
|
|
3812
|
+
"version": "0.0.0"
|
|
3813
|
+
},
|
|
3814
|
+
{
|
|
3815
|
+
"name": "caveman-setup",
|
|
3816
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-setup",
|
|
3817
|
+
"description": "Wire the current repository through the Caveman Cloud gateway so every LLM request is measured — cost, tokens, latency — with zero behavior change. Use when the user pastes the Caveman setup prompt, says \"set up caveman\", or wants LLM spend observability added to an app. Requires the gateway URL and a Cave API key (the setup prompt carries both).",
|
|
3818
|
+
"version": "0.0.0"
|
|
3819
|
+
},
|
|
3820
|
+
{
|
|
3821
|
+
"name": "lean-build",
|
|
3822
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/lean-build",
|
|
3823
|
+
"description": "Build feature work with high overbuilding risk. Use for new behavior, product slices, or integrations where repository reuse, strict scope, and an explicit stop condition matter.",
|
|
3824
|
+
"version": "0.0.0"
|
|
3825
|
+
},
|
|
3826
|
+
{
|
|
3827
|
+
"name": "migration",
|
|
3828
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/migration",
|
|
3829
|
+
"description": "Implement reversible compatibility-safe transitions. Use for schema, data, API, protocol, configuration, or dependency migrations requiring rollback and preservation proof.",
|
|
3830
|
+
"version": "0.0.0"
|
|
3831
|
+
}
|
|
3832
|
+
],
|
|
3833
|
+
"sourceRepo": {
|
|
3834
|
+
"owner": "JuliusBrussee",
|
|
3835
|
+
"repo": "caveman",
|
|
3836
|
+
"repoUrl": "https://github.com/JuliusBrussee/caveman.git"
|
|
3837
|
+
},
|
|
3838
|
+
"inferred": true
|
|
3839
|
+
},
|
|
3840
|
+
{
|
|
3841
|
+
"version": 1,
|
|
3842
|
+
"name": "juliusbrussee-caveman-marketing",
|
|
3843
|
+
"description": "Marketing, growth, SEO, ASO, affiliate, sales, and conversion skills. Derived from JuliusBrussee/caveman.",
|
|
3844
|
+
"author": "ASM (JuliusBrussee/caveman)",
|
|
3845
|
+
"createdAt": "2026-08-27T10:21:34.039Z",
|
|
3846
|
+
"tags": [
|
|
3847
|
+
"repo-derived",
|
|
3848
|
+
"inferred",
|
|
3849
|
+
"marketing",
|
|
3850
|
+
"growth",
|
|
3851
|
+
"seo",
|
|
3852
|
+
"juliusbrussee",
|
|
3853
|
+
"caveman"
|
|
3854
|
+
],
|
|
3855
|
+
"skills": [
|
|
3856
|
+
{
|
|
3857
|
+
"name": "cavecrew",
|
|
3858
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/cavecrew",
|
|
3859
|
+
"description": "Decision guide for delegating to caveman-style subagents. Tells the main thread WHEN to spawn `cavecrew-investigator` (locate code), `cavecrew-builder` (1-2 file edit), or `cavecrew-reviewer` (diff review) instead of doing the work inline or using vanilla `Explore`. Subagent output is caveman-compressed so the tool-result injected back into main context is ~60% smaller — main context lasts longer across long sessions. Trigger: \"delegate to subagent\", \"use cavecrew\", \"spawn investigator/builder/reviewer\", \"save context\", \"compressed agent output\".",
|
|
3860
|
+
"version": "0.0.0"
|
|
3861
|
+
},
|
|
3862
|
+
{
|
|
3863
|
+
"name": "caveman-commit",
|
|
3864
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-commit",
|
|
3865
|
+
"description": "Ultra-compressed commit message generator. Cuts noise from commit messages while preserving intent and reasoning. Conventional Commits format. Subject ≤50 chars, body only when \"why\" isn't obvious. Use when user says \"write a commit\", \"commit message\", \"generate commit\", \"/commit\", or invokes /caveman-commit. Auto-triggers when staging changes.",
|
|
3866
|
+
"version": "0.0.0"
|
|
3867
|
+
},
|
|
3868
|
+
{
|
|
3869
|
+
"name": "caveman-explore",
|
|
3870
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-explore",
|
|
3871
|
+
"description": "Read-only repository explorer. Use PROACTIVELY for cold-start exploration, broad cross-file localization, or when a direct search has failed and you need to find where something lives. Skip it when the issue already names the exact file or symbol, or a previous turn already returned usable file:line evidence. Returns only compact path:line citations; its reads and greps never enter the main conversation.",
|
|
3872
|
+
"version": "0.0.0"
|
|
3873
|
+
}
|
|
3874
|
+
],
|
|
3875
|
+
"sourceRepo": {
|
|
3876
|
+
"owner": "JuliusBrussee",
|
|
3877
|
+
"repo": "caveman",
|
|
3878
|
+
"repoUrl": "https://github.com/JuliusBrussee/caveman.git"
|
|
3879
|
+
},
|
|
3880
|
+
"inferred": true
|
|
3881
|
+
},
|
|
3882
|
+
{
|
|
3883
|
+
"version": 1,
|
|
3884
|
+
"name": "juliusbrussee-caveman-research",
|
|
3885
|
+
"description": "Research, academic, literature-review, citation, paper, and analysis skills. Derived from JuliusBrussee/caveman.",
|
|
3886
|
+
"author": "ASM (JuliusBrussee/caveman)",
|
|
3887
|
+
"createdAt": "2026-08-27T10:21:34.039Z",
|
|
3888
|
+
"tags": [
|
|
3889
|
+
"repo-derived",
|
|
3890
|
+
"inferred",
|
|
3891
|
+
"research",
|
|
3892
|
+
"academic",
|
|
3893
|
+
"analysis",
|
|
3894
|
+
"juliusbrussee",
|
|
3895
|
+
"caveman"
|
|
3896
|
+
],
|
|
3897
|
+
"skills": [
|
|
3898
|
+
{
|
|
3899
|
+
"name": "cavecrew",
|
|
3900
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/cavecrew",
|
|
3901
|
+
"description": "Decision guide for delegating to caveman-style subagents. Tells the main thread WHEN to spawn `cavecrew-investigator` (locate code), `cavecrew-builder` (1-2 file edit), or `cavecrew-reviewer` (diff review) instead of doing the work inline or using vanilla `Explore`. Subagent output is caveman-compressed so the tool-result injected back into main context is ~60% smaller — main context lasts longer across long sessions. Trigger: \"delegate to subagent\", \"use cavecrew\", \"spawn investigator/builder/reviewer\", \"save context\", \"compressed agent output\".",
|
|
3902
|
+
"version": "0.0.0"
|
|
3903
|
+
},
|
|
3904
|
+
{
|
|
3905
|
+
"name": "caveman-evidence-review",
|
|
3906
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-evidence-review",
|
|
3907
|
+
"description": "Review Caveman Cloud evidence read-only: costs, Cave Score, Cave Plan, workflows, traces, latency, errors, compression, routing, and verified savings. Use when the user asks what Caveman found, where LLM spend goes, why cost or quality changed, which workflows need attention, or asks for a trace or analytics review. Prefer Caveman MCP tools; fall back to CLI JSON.",
|
|
3908
|
+
"version": "0.0.0"
|
|
3909
|
+
},
|
|
3910
|
+
{
|
|
3911
|
+
"name": "caveman-explore",
|
|
3912
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-explore",
|
|
3913
|
+
"description": "Read-only repository explorer. Use PROACTIVELY for cold-start exploration, broad cross-file localization, or when a direct search has failed and you need to find where something lives. Skip it when the issue already names the exact file or symbol, or a previous turn already returned usable file:line evidence. Returns only compact path:line citations; its reads and greps never enter the main conversation.",
|
|
3914
|
+
"version": "0.0.0"
|
|
3915
|
+
},
|
|
3916
|
+
{
|
|
3917
|
+
"name": "caveman-learn",
|
|
3918
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-learn",
|
|
3919
|
+
"description": "Close the loop on a Caveman learn report — review the ranked token sinks, apply cost-lowering fixes (trim config, offload recurring context to cavemem) with per-edit consent, and report what those fixes returned with their attribution. Use when the user runs \"caveman learn\", asks to lower their agent's token cost, asks what caveman has saved them, wants to trim a heavy CLAUDE.md, or wants to offload context they re-paste every session into cavemem.",
|
|
3920
|
+
"version": "0.0.0"
|
|
3921
|
+
},
|
|
3922
|
+
{
|
|
3923
|
+
"name": "caveman-optimize",
|
|
3924
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-optimize",
|
|
3925
|
+
"description": "Turn Caveman's exact report-only repository observations into an operator-chosen optimization candidate with a paired baseline/candidate evaluation. Use when the user asks to inspect an optimization observation, evaluate a candidate change, or act on the current Caveman optimization report. Require a logged-in Caveman CLI connection and explicit approval; never infer money or actuation from a profile.",
|
|
3926
|
+
"version": "0.0.0"
|
|
3927
|
+
},
|
|
3928
|
+
{
|
|
3929
|
+
"name": "caveman-review",
|
|
3930
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-review",
|
|
3931
|
+
"description": "Ultra-compressed code review comments. Cuts noise from PR feedback while preserving the actionable signal. Each comment is one line: location, problem, fix. Use when user says \"review this PR\", \"code review\", \"review the diff\", \"/review\", or invokes /caveman-review. Auto-triggers when reviewing pull requests.",
|
|
3932
|
+
"version": "0.0.0"
|
|
3933
|
+
},
|
|
3934
|
+
{
|
|
3935
|
+
"name": "verify-and-stop",
|
|
3936
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/verify-and-stop",
|
|
3937
|
+
"description": "Prove existing work meets acceptance conditions without expanding scope. Use for validation-only tasks, completion checks, focused gate runs, and last-mile proof.",
|
|
3938
|
+
"version": "0.0.0"
|
|
3939
|
+
}
|
|
3940
|
+
],
|
|
3941
|
+
"sourceRepo": {
|
|
3942
|
+
"owner": "JuliusBrussee",
|
|
3943
|
+
"repo": "caveman",
|
|
3944
|
+
"repoUrl": "https://github.com/JuliusBrussee/caveman.git"
|
|
3945
|
+
},
|
|
3946
|
+
"inferred": true
|
|
3947
|
+
},
|
|
3948
|
+
{
|
|
3949
|
+
"version": 1,
|
|
3950
|
+
"name": "juliusbrussee-caveman-writing",
|
|
3951
|
+
"description": "Writing, editing, documentation, publishing, and content-production skills. Derived from JuliusBrussee/caveman.",
|
|
3952
|
+
"author": "ASM (JuliusBrussee/caveman)",
|
|
3953
|
+
"createdAt": "2026-08-27T10:21:34.039Z",
|
|
3954
|
+
"tags": [
|
|
3955
|
+
"repo-derived",
|
|
3956
|
+
"inferred",
|
|
3957
|
+
"writing",
|
|
3958
|
+
"content",
|
|
3959
|
+
"docs",
|
|
3960
|
+
"juliusbrussee",
|
|
3961
|
+
"caveman"
|
|
3962
|
+
],
|
|
3963
|
+
"skills": [
|
|
3964
|
+
{
|
|
3965
|
+
"name": "caveman-commit",
|
|
3966
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-commit",
|
|
3967
|
+
"description": "Ultra-compressed commit message generator. Cuts noise from commit messages while preserving intent and reasoning. Conventional Commits format. Subject ≤50 chars, body only when \"why\" isn't obvious. Use when user says \"write a commit\", \"commit message\", \"generate commit\", \"/commit\", or invokes /caveman-commit. Auto-triggers when staging changes.",
|
|
3968
|
+
"version": "0.0.0"
|
|
3969
|
+
},
|
|
3970
|
+
{
|
|
3971
|
+
"name": "caveman-compress",
|
|
3972
|
+
"installUrl": "github:JuliusBrussee/caveman:skills/caveman-compress",
|
|
3973
|
+
"description": "Compress natural language memory files (CLAUDE.md, todos, preferences) into caveman format to save input tokens. Preserves all technical substance, code, URLs, and structure. Compressed version overwrites the original file. Human-readable backup saved as FILE.original.md. Trigger: /caveman-compress FILEPATH or \"compress memory file\"",
|
|
3974
|
+
"version": "0.0.0"
|
|
3975
|
+
}
|
|
3976
|
+
],
|
|
3977
|
+
"sourceRepo": {
|
|
3978
|
+
"owner": "JuliusBrussee",
|
|
3979
|
+
"repo": "caveman",
|
|
3980
|
+
"repoUrl": "https://github.com/JuliusBrussee/caveman.git"
|
|
3981
|
+
},
|
|
3982
|
+
"inferred": true
|
|
3983
|
+
}
|
|
3984
|
+
]
|
|
3985
|
+
}
|