prpm 1.2.1 → 2.1.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 +90 -862
- package/dist/index.js +24163 -65
- package/dist/schemas/agents-md.schema.json +24 -0
- package/dist/schemas/aider.schema.json +24 -0
- package/dist/schemas/canonical.schema.json +435 -0
- package/dist/schemas/claude-agent.schema.json +62 -0
- package/dist/schemas/claude-hook.schema.json +70 -0
- package/dist/schemas/claude-plugin.schema.json +122 -0
- package/dist/schemas/claude-skill.schema.json +51 -0
- package/dist/schemas/claude-slash-command.schema.json +77 -0
- package/dist/schemas/claude.schema.json +52 -0
- package/dist/schemas/continue.schema.json +98 -0
- package/dist/schemas/copilot.schema.json +76 -0
- package/dist/schemas/cursor-command.schema.json +27 -0
- package/dist/schemas/cursor-hooks.schema.json +59 -0
- package/dist/schemas/cursor.schema.json +74 -0
- package/dist/schemas/droid-hook.schema.json +103 -0
- package/dist/schemas/droid-skill.schema.json +46 -0
- package/dist/schemas/droid-slash-command.schema.json +53 -0
- package/dist/schemas/droid.schema.json +46 -0
- package/dist/schemas/format-capabilities.schema.json +101 -0
- package/dist/schemas/format-registry.schema.json +99 -0
- package/dist/schemas/gemini-extension.schema.json +77 -0
- package/dist/schemas/gemini-md.schema.json +24 -0
- package/dist/schemas/gemini.schema.json +30 -0
- package/dist/schemas/kiro-agent.schema.json +146 -0
- package/dist/schemas/kiro-hook.schema.json +165 -0
- package/dist/schemas/kiro-steering.schema.json +74 -0
- package/dist/schemas/mcp-server.schema.json +130 -0
- package/dist/schemas/opencode-plugin.schema.json +391 -0
- package/dist/schemas/opencode-slash-command.schema.json +60 -0
- package/dist/schemas/opencode.schema.json +111 -0
- package/dist/schemas/prpm-manifest.schema.json +758 -0
- package/dist/schemas/replit.schema.json +21 -0
- package/dist/schemas/ruler.schema.json +22 -0
- package/dist/schemas/trae.schema.json +24 -0
- package/dist/schemas/windsurf.schema.json +22 -0
- package/dist/schemas/zed-extension.schema.json +238 -0
- package/dist/schemas/zed.schema.json +44 -0
- package/dist/schemas/zencoder.schema.json +51 -0
- package/package.json +20 -14
- package/schemas/prpm-manifest.schema.json +490 -39
- package/dist/__tests__/e2e/test-helpers.js +0 -150
- package/dist/commands/collections.js +0 -606
- package/dist/commands/index.js +0 -186
- package/dist/commands/info.js +0 -82
- package/dist/commands/install.js +0 -477
- package/dist/commands/list.js +0 -166
- package/dist/commands/login.js +0 -281
- package/dist/commands/outdated.js +0 -128
- package/dist/commands/popular.js +0 -27
- package/dist/commands/publish.js +0 -274
- package/dist/commands/schema.js +0 -37
- package/dist/commands/search.js +0 -404
- package/dist/commands/telemetry.js +0 -103
- package/dist/commands/trending.js +0 -76
- package/dist/commands/uninstall.js +0 -77
- package/dist/commands/update.js +0 -121
- package/dist/commands/upgrade.js +0 -121
- package/dist/commands/whoami.js +0 -75
- package/dist/core/claude-config.js +0 -91
- package/dist/core/cursor-config.js +0 -130
- package/dist/core/downloader.js +0 -64
- package/dist/core/filesystem.js +0 -124
- package/dist/core/lockfile.js +0 -239
- package/dist/core/marketplace-converter.js +0 -198
- package/dist/core/registry-client.js +0 -265
- package/dist/core/schema-validator.js +0 -74
- package/dist/core/telemetry.js +0 -175
- package/dist/core/user-config.js +0 -79
- package/dist/types/registry.js +0 -5
- package/dist/types.js +0 -5
|
@@ -4,7 +4,12 @@
|
|
|
4
4
|
"title": "PRPM Package Manifest",
|
|
5
5
|
"description": "Schema for PRPM package manifest (prpm.json)",
|
|
6
6
|
"type": "object",
|
|
7
|
-
"required": [
|
|
7
|
+
"required": [
|
|
8
|
+
"name",
|
|
9
|
+
"version",
|
|
10
|
+
"description",
|
|
11
|
+
"format"
|
|
12
|
+
],
|
|
8
13
|
"properties": {
|
|
9
14
|
"name": {
|
|
10
15
|
"type": "string",
|
|
@@ -22,7 +27,11 @@
|
|
|
22
27
|
"type": "string",
|
|
23
28
|
"description": "Semantic version (semver)",
|
|
24
29
|
"pattern": "^\\d+\\.\\d+\\.\\d+(-[a-zA-Z0-9.-]+)?(\\+[a-zA-Z0-9.-]+)?$",
|
|
25
|
-
"examples": [
|
|
30
|
+
"examples": [
|
|
31
|
+
"1.0.0",
|
|
32
|
+
"2.1.3",
|
|
33
|
+
"1.0.0-beta.1"
|
|
34
|
+
]
|
|
26
35
|
},
|
|
27
36
|
"description": {
|
|
28
37
|
"type": "string",
|
|
@@ -30,19 +39,39 @@
|
|
|
30
39
|
"minLength": 10,
|
|
31
40
|
"maxLength": 500
|
|
32
41
|
},
|
|
33
|
-
"
|
|
42
|
+
"format": {
|
|
34
43
|
"type": "string",
|
|
35
|
-
"description": "Package
|
|
44
|
+
"description": "Package format - the AI tool/platform this package is for",
|
|
36
45
|
"enum": [
|
|
37
46
|
"cursor",
|
|
38
47
|
"claude",
|
|
39
|
-
"claude-
|
|
40
|
-
"claude-agent",
|
|
41
|
-
"claude-slash-command",
|
|
48
|
+
"claude-plugin",
|
|
42
49
|
"continue",
|
|
43
50
|
"windsurf",
|
|
51
|
+
"copilot",
|
|
52
|
+
"kiro",
|
|
53
|
+
"agents.md",
|
|
44
54
|
"generic",
|
|
45
|
-
"
|
|
55
|
+
"mcp"
|
|
56
|
+
]
|
|
57
|
+
},
|
|
58
|
+
"subtype": {
|
|
59
|
+
"type": "string",
|
|
60
|
+
"description": "Package subtype - the functional category (optional, defaults to 'rule')",
|
|
61
|
+
"enum": [
|
|
62
|
+
"rule",
|
|
63
|
+
"agent",
|
|
64
|
+
"skill",
|
|
65
|
+
"slash-command",
|
|
66
|
+
"prompt",
|
|
67
|
+
"workflow",
|
|
68
|
+
"tool",
|
|
69
|
+
"template",
|
|
70
|
+
"collection",
|
|
71
|
+
"chatmode",
|
|
72
|
+
"hook",
|
|
73
|
+
"plugin",
|
|
74
|
+
"server"
|
|
46
75
|
]
|
|
47
76
|
},
|
|
48
77
|
"author": {
|
|
@@ -50,11 +79,16 @@
|
|
|
50
79
|
"oneOf": [
|
|
51
80
|
{
|
|
52
81
|
"type": "string",
|
|
53
|
-
"examples": [
|
|
82
|
+
"examples": [
|
|
83
|
+
"John Doe",
|
|
84
|
+
"Jane Smith"
|
|
85
|
+
]
|
|
54
86
|
},
|
|
55
87
|
{
|
|
56
88
|
"type": "object",
|
|
57
|
-
"required": [
|
|
89
|
+
"required": [
|
|
90
|
+
"name"
|
|
91
|
+
],
|
|
58
92
|
"properties": {
|
|
59
93
|
"name": {
|
|
60
94
|
"type": "string",
|
|
@@ -77,13 +111,29 @@
|
|
|
77
111
|
"license": {
|
|
78
112
|
"type": "string",
|
|
79
113
|
"description": "SPDX license identifier",
|
|
80
|
-
"examples": [
|
|
114
|
+
"examples": [
|
|
115
|
+
"MIT",
|
|
116
|
+
"Apache-2.0",
|
|
117
|
+
"GPL-3.0",
|
|
118
|
+
"BSD-3-Clause"
|
|
119
|
+
]
|
|
120
|
+
},
|
|
121
|
+
"license_text": {
|
|
122
|
+
"type": "string",
|
|
123
|
+
"description": "Full text of the license file for proper attribution"
|
|
124
|
+
},
|
|
125
|
+
"license_url": {
|
|
126
|
+
"type": "string",
|
|
127
|
+
"format": "uri",
|
|
128
|
+
"description": "URL to the license file in the repository"
|
|
81
129
|
},
|
|
82
130
|
"repository": {
|
|
83
131
|
"type": "string",
|
|
84
132
|
"format": "uri",
|
|
85
133
|
"description": "Repository URL",
|
|
86
|
-
"examples": [
|
|
134
|
+
"examples": [
|
|
135
|
+
"https://github.com/username/repo"
|
|
136
|
+
]
|
|
87
137
|
},
|
|
88
138
|
"homepage": {
|
|
89
139
|
"type": "string",
|
|
@@ -95,6 +145,48 @@
|
|
|
95
145
|
"format": "uri",
|
|
96
146
|
"description": "Documentation URL"
|
|
97
147
|
},
|
|
148
|
+
"organization": {
|
|
149
|
+
"type": "string",
|
|
150
|
+
"description": "Organization name or ID to publish this package under. If not specified, publishes to personal account.",
|
|
151
|
+
"examples": [
|
|
152
|
+
"my-team",
|
|
153
|
+
"my-company"
|
|
154
|
+
]
|
|
155
|
+
},
|
|
156
|
+
"private": {
|
|
157
|
+
"type": "boolean",
|
|
158
|
+
"description": "Whether the package is private. Private packages are only accessible to the owner/organization members. Defaults to false (public).",
|
|
159
|
+
"default": false
|
|
160
|
+
},
|
|
161
|
+
"eager": {
|
|
162
|
+
"type": "boolean",
|
|
163
|
+
"description": "Whether this package should be loaded eagerly (at session start) or lazily (on-demand). Only applies to skills and agents in progressive disclosure formats (AGENTS.md, GEMINI.md, etc.). Defaults to false (lazy loading).",
|
|
164
|
+
"default": false,
|
|
165
|
+
"examples": [true, false]
|
|
166
|
+
},
|
|
167
|
+
"scripts": {
|
|
168
|
+
"type": "object",
|
|
169
|
+
"description": "Lifecycle scripts that run during package operations. Only applies to multi-package manifests (prpm.json with packages array).",
|
|
170
|
+
"properties": {
|
|
171
|
+
"prepublishOnly": {
|
|
172
|
+
"type": "string",
|
|
173
|
+
"description": "Script to run before publishing (recommended - only runs on 'prpm publish')",
|
|
174
|
+
"examples": [
|
|
175
|
+
"npm run build",
|
|
176
|
+
"cd packages/hooks && npm run build",
|
|
177
|
+
"npm test && npm run build"
|
|
178
|
+
]
|
|
179
|
+
},
|
|
180
|
+
"prepublish": {
|
|
181
|
+
"type": "string",
|
|
182
|
+
"description": "Script to run before publishing and on npm install (not recommended - use prepublishOnly instead)",
|
|
183
|
+
"examples": [
|
|
184
|
+
"npm run build"
|
|
185
|
+
]
|
|
186
|
+
}
|
|
187
|
+
},
|
|
188
|
+
"additionalProperties": false
|
|
189
|
+
},
|
|
98
190
|
"tags": {
|
|
99
191
|
"type": "array",
|
|
100
192
|
"description": "Package tags for categorization",
|
|
@@ -103,7 +195,16 @@
|
|
|
103
195
|
},
|
|
104
196
|
"maxItems": 10,
|
|
105
197
|
"uniqueItems": true,
|
|
106
|
-
"examples": [
|
|
198
|
+
"examples": [
|
|
199
|
+
[
|
|
200
|
+
"productivity",
|
|
201
|
+
"coding"
|
|
202
|
+
],
|
|
203
|
+
[
|
|
204
|
+
"testing",
|
|
205
|
+
"quality"
|
|
206
|
+
]
|
|
207
|
+
]
|
|
107
208
|
},
|
|
108
209
|
"keywords": {
|
|
109
210
|
"type": "array",
|
|
@@ -113,12 +214,22 @@
|
|
|
113
214
|
},
|
|
114
215
|
"maxItems": 20,
|
|
115
216
|
"uniqueItems": true,
|
|
116
|
-
"examples": [
|
|
217
|
+
"examples": [
|
|
218
|
+
[
|
|
219
|
+
"ai",
|
|
220
|
+
"prompts",
|
|
221
|
+
"development"
|
|
222
|
+
]
|
|
223
|
+
]
|
|
117
224
|
},
|
|
118
225
|
"category": {
|
|
119
226
|
"type": "string",
|
|
120
227
|
"description": "Package category",
|
|
121
|
-
"examples": [
|
|
228
|
+
"examples": [
|
|
229
|
+
"development",
|
|
230
|
+
"productivity",
|
|
231
|
+
"testing"
|
|
232
|
+
]
|
|
122
233
|
},
|
|
123
234
|
"files": {
|
|
124
235
|
"description": "Files to include in package. Can be simple paths or enhanced file objects with metadata.",
|
|
@@ -131,8 +242,14 @@
|
|
|
131
242
|
},
|
|
132
243
|
"minItems": 1,
|
|
133
244
|
"examples": [
|
|
134
|
-
[
|
|
135
|
-
|
|
245
|
+
[
|
|
246
|
+
"skill.md",
|
|
247
|
+
"README.md"
|
|
248
|
+
],
|
|
249
|
+
[
|
|
250
|
+
".cursor/rules/react.mdc",
|
|
251
|
+
"LICENSE"
|
|
252
|
+
]
|
|
136
253
|
]
|
|
137
254
|
},
|
|
138
255
|
{
|
|
@@ -140,7 +257,10 @@
|
|
|
140
257
|
"description": "Enhanced format: array of file objects with metadata",
|
|
141
258
|
"items": {
|
|
142
259
|
"type": "object",
|
|
143
|
-
"required": [
|
|
260
|
+
"required": [
|
|
261
|
+
"path",
|
|
262
|
+
"format"
|
|
263
|
+
],
|
|
144
264
|
"properties": {
|
|
145
265
|
"path": {
|
|
146
266
|
"type": "string",
|
|
@@ -151,24 +271,48 @@
|
|
|
151
271
|
".continue/rules/python.json"
|
|
152
272
|
]
|
|
153
273
|
},
|
|
154
|
-
"
|
|
274
|
+
"format": {
|
|
155
275
|
"type": "string",
|
|
156
|
-
"description": "File
|
|
276
|
+
"description": "File format - the AI tool/platform this file is for",
|
|
157
277
|
"enum": [
|
|
158
278
|
"cursor",
|
|
159
279
|
"claude",
|
|
160
|
-
"claude-
|
|
161
|
-
"claude-agent",
|
|
162
|
-
"claude-slash-command",
|
|
280
|
+
"claude-plugin",
|
|
163
281
|
"continue",
|
|
164
282
|
"windsurf",
|
|
165
|
-
"
|
|
283
|
+
"copilot",
|
|
284
|
+
"kiro",
|
|
285
|
+
"agents.md",
|
|
286
|
+
"generic",
|
|
287
|
+
"mcp"
|
|
288
|
+
]
|
|
289
|
+
},
|
|
290
|
+
"subtype": {
|
|
291
|
+
"type": "string",
|
|
292
|
+
"description": "File subtype - the functional category",
|
|
293
|
+
"enum": [
|
|
294
|
+
"rule",
|
|
295
|
+
"agent",
|
|
296
|
+
"skill",
|
|
297
|
+
"slash-command",
|
|
298
|
+
"prompt",
|
|
299
|
+
"workflow",
|
|
300
|
+
"tool",
|
|
301
|
+
"template",
|
|
302
|
+
"collection",
|
|
303
|
+
"chatmode",
|
|
304
|
+
"hook",
|
|
305
|
+
"plugin",
|
|
306
|
+
"server"
|
|
166
307
|
]
|
|
167
308
|
},
|
|
168
309
|
"name": {
|
|
169
310
|
"type": "string",
|
|
170
311
|
"description": "Display name for this file",
|
|
171
|
-
"examples": [
|
|
312
|
+
"examples": [
|
|
313
|
+
"React Rules",
|
|
314
|
+
"Test-Driven Development"
|
|
315
|
+
]
|
|
172
316
|
},
|
|
173
317
|
"description": {
|
|
174
318
|
"type": "string",
|
|
@@ -181,7 +325,21 @@
|
|
|
181
325
|
"type": "string"
|
|
182
326
|
},
|
|
183
327
|
"uniqueItems": true,
|
|
184
|
-
"examples": [
|
|
328
|
+
"examples": [
|
|
329
|
+
[
|
|
330
|
+
"react",
|
|
331
|
+
"typescript"
|
|
332
|
+
],
|
|
333
|
+
[
|
|
334
|
+
"testing",
|
|
335
|
+
"tdd"
|
|
336
|
+
]
|
|
337
|
+
]
|
|
338
|
+
},
|
|
339
|
+
"eager": {
|
|
340
|
+
"type": "boolean",
|
|
341
|
+
"description": "File-level eager setting. Overrides package-level eager for this specific file.",
|
|
342
|
+
"default": false
|
|
185
343
|
}
|
|
186
344
|
},
|
|
187
345
|
"additionalProperties": false
|
|
@@ -193,7 +351,10 @@
|
|
|
193
351
|
"main": {
|
|
194
352
|
"type": "string",
|
|
195
353
|
"description": "Main entry file (for single-file packages)",
|
|
196
|
-
"examples": [
|
|
354
|
+
"examples": [
|
|
355
|
+
"index.md",
|
|
356
|
+
"skill.md"
|
|
357
|
+
]
|
|
197
358
|
},
|
|
198
359
|
"dependencies": {
|
|
199
360
|
"type": "object",
|
|
@@ -242,6 +403,108 @@
|
|
|
242
403
|
"node": ">=18.0.0"
|
|
243
404
|
}
|
|
244
405
|
]
|
|
406
|
+
},
|
|
407
|
+
"packages": {
|
|
408
|
+
"type": "array",
|
|
409
|
+
"description": "Array of packages to publish from a single manifest (multi-package publishing). Packages inherit top-level fields unless overridden.",
|
|
410
|
+
"items": {
|
|
411
|
+
"$ref": "#"
|
|
412
|
+
},
|
|
413
|
+
"minItems": 1
|
|
414
|
+
},
|
|
415
|
+
"collections": {
|
|
416
|
+
"type": "array",
|
|
417
|
+
"description": "Array of collections to publish. Collections bundle multiple packages together for easier installation.",
|
|
418
|
+
"items": {
|
|
419
|
+
"type": "object",
|
|
420
|
+
"required": ["id", "name", "description", "packages"],
|
|
421
|
+
"properties": {
|
|
422
|
+
"id": {
|
|
423
|
+
"type": "string",
|
|
424
|
+
"description": "Unique collection identifier (kebab-case)",
|
|
425
|
+
"pattern": "^[a-z0-9-]+$",
|
|
426
|
+
"minLength": 3,
|
|
427
|
+
"maxLength": 100,
|
|
428
|
+
"examples": ["nextjs-complete", "fullstack-setup", "react-essentials"]
|
|
429
|
+
},
|
|
430
|
+
"name": {
|
|
431
|
+
"type": "string",
|
|
432
|
+
"description": "Display name of the collection",
|
|
433
|
+
"minLength": 3,
|
|
434
|
+
"maxLength": 100,
|
|
435
|
+
"examples": ["Next.js Complete", "Full Stack Setup"]
|
|
436
|
+
},
|
|
437
|
+
"description": {
|
|
438
|
+
"type": "string",
|
|
439
|
+
"description": "What this collection provides",
|
|
440
|
+
"minLength": 10,
|
|
441
|
+
"maxLength": 500
|
|
442
|
+
},
|
|
443
|
+
"version": {
|
|
444
|
+
"type": "string",
|
|
445
|
+
"description": "Semantic version of the collection",
|
|
446
|
+
"pattern": "^\\d+\\.\\d+\\.\\d+(-[a-zA-Z0-9.-]+)?(\\+[a-zA-Z0-9.-]+)?$",
|
|
447
|
+
"examples": ["1.0.0", "2.1.0"]
|
|
448
|
+
},
|
|
449
|
+
"category": {
|
|
450
|
+
"type": "string",
|
|
451
|
+
"description": "Collection category",
|
|
452
|
+
"enum": ["development", "testing", "deployment", "data-science", "devops", "design", "documentation", "security", "performance", "general"],
|
|
453
|
+
"examples": ["development", "testing"]
|
|
454
|
+
},
|
|
455
|
+
"tags": {
|
|
456
|
+
"type": "array",
|
|
457
|
+
"description": "Tags for discoverability (kebab-case)",
|
|
458
|
+
"items": {
|
|
459
|
+
"type": "string",
|
|
460
|
+
"pattern": "^[a-z0-9-]+$"
|
|
461
|
+
},
|
|
462
|
+
"minItems": 1,
|
|
463
|
+
"maxItems": 10,
|
|
464
|
+
"examples": [["react", "typescript", "nextjs"], ["python", "data-science", "ml"]]
|
|
465
|
+
},
|
|
466
|
+
"icon": {
|
|
467
|
+
"type": "string",
|
|
468
|
+
"description": "Emoji or icon for the collection",
|
|
469
|
+
"maxLength": 10,
|
|
470
|
+
"examples": ["⚛️", "🚀", "📦"]
|
|
471
|
+
},
|
|
472
|
+
"packages": {
|
|
473
|
+
"type": "array",
|
|
474
|
+
"description": "Array of packages included in this collection",
|
|
475
|
+
"items": {
|
|
476
|
+
"type": "object",
|
|
477
|
+
"required": ["packageId"],
|
|
478
|
+
"properties": {
|
|
479
|
+
"packageId": {
|
|
480
|
+
"type": "string",
|
|
481
|
+
"description": "Package identifier to include",
|
|
482
|
+
"minLength": 1,
|
|
483
|
+
"examples": ["typescript-strict", "react-best-practices"]
|
|
484
|
+
},
|
|
485
|
+
"version": {
|
|
486
|
+
"type": "string",
|
|
487
|
+
"description": "Version range (semver) or 'latest'",
|
|
488
|
+
"examples": ["^1.0.0", "~2.1.0", "1.0.0", "latest"]
|
|
489
|
+
},
|
|
490
|
+
"required": {
|
|
491
|
+
"type": "boolean",
|
|
492
|
+
"description": "Whether this package is required (true) or optional (false)",
|
|
493
|
+
"default": true
|
|
494
|
+
},
|
|
495
|
+
"reason": {
|
|
496
|
+
"type": "string",
|
|
497
|
+
"description": "Explanation of why this package is included",
|
|
498
|
+
"maxLength": 200,
|
|
499
|
+
"examples": ["Enforces strict TypeScript type safety", "React component best practices"]
|
|
500
|
+
}
|
|
501
|
+
}
|
|
502
|
+
},
|
|
503
|
+
"minItems": 1
|
|
504
|
+
}
|
|
505
|
+
}
|
|
506
|
+
},
|
|
507
|
+
"minItems": 1
|
|
245
508
|
}
|
|
246
509
|
},
|
|
247
510
|
"additionalProperties": false,
|
|
@@ -250,35 +513,75 @@
|
|
|
250
513
|
"name": "@username/simple-package",
|
|
251
514
|
"version": "1.0.0",
|
|
252
515
|
"description": "A simple package with basic files",
|
|
253
|
-
"
|
|
516
|
+
"format": "claude", "subtype": "skill",
|
|
254
517
|
"author": "Your Name",
|
|
255
518
|
"license": "MIT",
|
|
256
|
-
"files": [
|
|
519
|
+
"files": [
|
|
520
|
+
"skill.md",
|
|
521
|
+
"README.md"
|
|
522
|
+
]
|
|
523
|
+
},
|
|
524
|
+
{
|
|
525
|
+
"name": "@company/coding-standards",
|
|
526
|
+
"version": "1.0.0",
|
|
527
|
+
"description": "Team coding standards that must be active in every session",
|
|
528
|
+
"format": "claude",
|
|
529
|
+
"subtype": "skill",
|
|
530
|
+
"author": "Company Team",
|
|
531
|
+
"organization": "my-company",
|
|
532
|
+
"license": "MIT",
|
|
533
|
+
"eager": true,
|
|
534
|
+
"files": [
|
|
535
|
+
".claude/skills/coding-standards/SKILL.md"
|
|
536
|
+
]
|
|
537
|
+
},
|
|
538
|
+
{
|
|
539
|
+
"name": "@company/team-package",
|
|
540
|
+
"version": "1.0.0",
|
|
541
|
+
"description": "A package published under organization account",
|
|
542
|
+
"format": "cursor",
|
|
543
|
+
"author": "Team Name",
|
|
544
|
+
"organization": "my-company",
|
|
545
|
+
"license": "MIT",
|
|
546
|
+
"files": [
|
|
547
|
+
".cursor/rules/guidelines.mdc",
|
|
548
|
+
"README.md"
|
|
549
|
+
]
|
|
257
550
|
},
|
|
258
551
|
{
|
|
259
552
|
"name": "@username/cursor-rules",
|
|
260
553
|
"version": "1.0.0",
|
|
261
554
|
"description": "Multiple Cursor rules for different languages",
|
|
262
|
-
"
|
|
555
|
+
"format": "cursor",
|
|
263
556
|
"author": {
|
|
264
557
|
"name": "Your Name",
|
|
265
558
|
"email": "you@example.com"
|
|
266
559
|
},
|
|
267
560
|
"license": "MIT",
|
|
268
561
|
"repository": "https://github.com/username/cursor-rules",
|
|
269
|
-
"tags": [
|
|
562
|
+
"tags": [
|
|
563
|
+
"cursor",
|
|
564
|
+
"rules",
|
|
565
|
+
"multi-language"
|
|
566
|
+
],
|
|
270
567
|
"files": [
|
|
271
568
|
{
|
|
272
569
|
"path": ".cursor/rules/typescript.mdc",
|
|
273
|
-
"
|
|
570
|
+
"format": "cursor",
|
|
274
571
|
"name": "TypeScript Rules",
|
|
275
|
-
"tags": [
|
|
572
|
+
"tags": [
|
|
573
|
+
"typescript",
|
|
574
|
+
"frontend"
|
|
575
|
+
]
|
|
276
576
|
},
|
|
277
577
|
{
|
|
278
578
|
"path": ".cursor/rules/python.mdc",
|
|
279
|
-
"
|
|
579
|
+
"format": "cursor",
|
|
280
580
|
"name": "Python Rules",
|
|
281
|
-
"tags": [
|
|
581
|
+
"tags": [
|
|
582
|
+
"python",
|
|
583
|
+
"backend"
|
|
584
|
+
]
|
|
282
585
|
}
|
|
283
586
|
]
|
|
284
587
|
},
|
|
@@ -286,22 +589,170 @@
|
|
|
286
589
|
"name": "@community/testing-suite",
|
|
287
590
|
"version": "2.0.0",
|
|
288
591
|
"description": "Complete testing suite with skills and agents",
|
|
289
|
-
"
|
|
592
|
+
"format": "generic", "subtype": "collection",
|
|
290
593
|
"author": "Community",
|
|
291
594
|
"license": "MIT",
|
|
292
|
-
"tags": [
|
|
595
|
+
"tags": [
|
|
596
|
+
"testing",
|
|
597
|
+
"quality"
|
|
598
|
+
],
|
|
293
599
|
"files": [
|
|
294
600
|
{
|
|
295
601
|
"path": ".claude/skills/tdd.md",
|
|
296
|
-
"
|
|
602
|
+
"format": "claude", "subtype": "skill",
|
|
297
603
|
"name": "Test-Driven Development"
|
|
298
604
|
},
|
|
299
605
|
{
|
|
300
606
|
"path": ".claude/agents/test-generator.md",
|
|
301
|
-
"
|
|
607
|
+
"format": "claude", "subtype": "agent",
|
|
302
608
|
"name": "Test Generator"
|
|
303
609
|
}
|
|
304
610
|
]
|
|
611
|
+
},
|
|
612
|
+
{
|
|
613
|
+
"name": "@username/copilot-instructions",
|
|
614
|
+
"version": "1.0.0",
|
|
615
|
+
"description": "GitHub Copilot instructions for API development",
|
|
616
|
+
"format": "copilot",
|
|
617
|
+
"author": "Your Name",
|
|
618
|
+
"license": "MIT",
|
|
619
|
+
"tags": [
|
|
620
|
+
"copilot",
|
|
621
|
+
"api",
|
|
622
|
+
"backend"
|
|
623
|
+
],
|
|
624
|
+
"files": [
|
|
625
|
+
"api-guidelines.md"
|
|
626
|
+
]
|
|
627
|
+
},
|
|
628
|
+
{
|
|
629
|
+
"name": "@username/kiro-steering",
|
|
630
|
+
"version": "1.0.0",
|
|
631
|
+
"description": "Kiro steering file for testing standards",
|
|
632
|
+
"format": "kiro",
|
|
633
|
+
"author": "Your Name",
|
|
634
|
+
"license": "MIT",
|
|
635
|
+
"tags": [
|
|
636
|
+
"kiro",
|
|
637
|
+
"testing",
|
|
638
|
+
"quality"
|
|
639
|
+
],
|
|
640
|
+
"files": [
|
|
641
|
+
"testing.md"
|
|
642
|
+
]
|
|
643
|
+
},
|
|
644
|
+
{
|
|
645
|
+
"name": "@username/windsurf-rules",
|
|
646
|
+
"version": "1.0.0",
|
|
647
|
+
"description": "Windsurf coding rules for React projects",
|
|
648
|
+
"format": "windsurf",
|
|
649
|
+
"author": "Your Name",
|
|
650
|
+
"license": "MIT",
|
|
651
|
+
"tags": [
|
|
652
|
+
"windsurf",
|
|
653
|
+
"react",
|
|
654
|
+
"frontend"
|
|
655
|
+
],
|
|
656
|
+
"files": [
|
|
657
|
+
".windsurfrules"
|
|
658
|
+
]
|
|
659
|
+
},
|
|
660
|
+
{
|
|
661
|
+
"name": "@company/private-package",
|
|
662
|
+
"version": "1.0.0",
|
|
663
|
+
"description": "A private package only accessible to organization members",
|
|
664
|
+
"format": "claude",
|
|
665
|
+
"subtype": "skill",
|
|
666
|
+
"author": "Company Team",
|
|
667
|
+
"organization": "my-company",
|
|
668
|
+
"private": true,
|
|
669
|
+
"license": "Proprietary",
|
|
670
|
+
"files": [
|
|
671
|
+
"internal-skill.md",
|
|
672
|
+
"README.md"
|
|
673
|
+
]
|
|
674
|
+
},
|
|
675
|
+
{
|
|
676
|
+
"name": "@username/multi-package-example",
|
|
677
|
+
"version": "1.0.0",
|
|
678
|
+
"description": "Multi-package manifest example",
|
|
679
|
+
"author": "Your Name",
|
|
680
|
+
"license": "MIT",
|
|
681
|
+
"repository": "https://github.com/username/multi-package",
|
|
682
|
+
"packages": [
|
|
683
|
+
{
|
|
684
|
+
"name": "@username/package-one",
|
|
685
|
+
"version": "1.0.0",
|
|
686
|
+
"description": "First package in the multi-package manifest",
|
|
687
|
+
"format": "claude",
|
|
688
|
+
"subtype": "skill",
|
|
689
|
+
"files": [
|
|
690
|
+
"package-one/SKILL.md"
|
|
691
|
+
]
|
|
692
|
+
},
|
|
693
|
+
{
|
|
694
|
+
"name": "@username/package-two",
|
|
695
|
+
"version": "1.0.0",
|
|
696
|
+
"description": "Second package with different settings",
|
|
697
|
+
"format": "cursor",
|
|
698
|
+
"private": true,
|
|
699
|
+
"files": [
|
|
700
|
+
"package-two/.cursor/rules/main.mdc"
|
|
701
|
+
]
|
|
702
|
+
}
|
|
703
|
+
]
|
|
704
|
+
},
|
|
705
|
+
{
|
|
706
|
+
"name": "@username/multi-package-with-collection",
|
|
707
|
+
"version": "1.0.0",
|
|
708
|
+
"description": "Repository with both packages and a collection",
|
|
709
|
+
"author": "Your Name",
|
|
710
|
+
"license": "MIT",
|
|
711
|
+
"packages": [
|
|
712
|
+
{
|
|
713
|
+
"name": "typescript-rules",
|
|
714
|
+
"version": "1.0.0",
|
|
715
|
+
"description": "TypeScript coding standards",
|
|
716
|
+
"format": "cursor",
|
|
717
|
+
"subtype": "rule",
|
|
718
|
+
"tags": ["typescript", "cursor"],
|
|
719
|
+
"files": [".cursor/rules/typescript.mdc"]
|
|
720
|
+
},
|
|
721
|
+
{
|
|
722
|
+
"name": "react-patterns",
|
|
723
|
+
"version": "1.0.0",
|
|
724
|
+
"description": "React best practices",
|
|
725
|
+
"format": "claude",
|
|
726
|
+
"subtype": "skill",
|
|
727
|
+
"tags": ["react", "best-practices"],
|
|
728
|
+
"files": [".claude/skills/react-patterns/SKILL.md"]
|
|
729
|
+
}
|
|
730
|
+
],
|
|
731
|
+
"collections": [
|
|
732
|
+
{
|
|
733
|
+
"id": "fullstack-setup",
|
|
734
|
+
"name": "Full Stack Setup",
|
|
735
|
+
"description": "Complete full-stack development setup with TypeScript and React",
|
|
736
|
+
"version": "1.0.0",
|
|
737
|
+
"category": "development",
|
|
738
|
+
"tags": ["typescript", "react", "fullstack"],
|
|
739
|
+
"icon": "🚀",
|
|
740
|
+
"packages": [
|
|
741
|
+
{
|
|
742
|
+
"packageId": "typescript-rules",
|
|
743
|
+
"version": "^1.0.0",
|
|
744
|
+
"required": true,
|
|
745
|
+
"reason": "TypeScript coding standards for the project"
|
|
746
|
+
},
|
|
747
|
+
{
|
|
748
|
+
"packageId": "react-patterns",
|
|
749
|
+
"version": "^1.0.0",
|
|
750
|
+
"required": true,
|
|
751
|
+
"reason": "React component best practices"
|
|
752
|
+
}
|
|
753
|
+
]
|
|
754
|
+
}
|
|
755
|
+
]
|
|
305
756
|
}
|
|
306
757
|
]
|
|
307
758
|
}
|