@biggora/claude-plugins 1.0.0 → 1.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.
Files changed (80) hide show
  1. package/.claude/settings.local.json +13 -0
  2. package/CLAUDE.md +55 -0
  3. package/LICENSE +1 -1
  4. package/README.md +208 -39
  5. package/bin/cli.js +39 -0
  6. package/package.json +30 -17
  7. package/registry/registry.json +166 -1
  8. package/registry/schema.json +10 -0
  9. package/src/commands/skills/add.js +194 -0
  10. package/src/commands/skills/list.js +52 -0
  11. package/src/commands/skills/remove.js +27 -0
  12. package/src/commands/skills/update.js +74 -0
  13. package/src/config.js +5 -0
  14. package/src/skills/codex-cli/SKILL.md +265 -0
  15. package/src/skills/commafeed-api/SKILL.md +1012 -0
  16. package/src/skills/gemini-cli/SKILL.md +379 -0
  17. package/src/skills/gemini-cli/references/commands.md +145 -0
  18. package/src/skills/gemini-cli/references/configuration.md +182 -0
  19. package/src/skills/gemini-cli/references/headless-and-scripting.md +181 -0
  20. package/src/skills/gemini-cli/references/mcp-and-extensions.md +254 -0
  21. package/src/skills/n8n-api/SKILL.md +623 -0
  22. package/src/skills/notebook-lm/SKILL.md +217 -0
  23. package/src/skills/notebook-lm/references/artifact-options.md +168 -0
  24. package/src/skills/notebook-lm/references/auth.md +58 -0
  25. package/src/skills/notebook-lm/references/workflows.md +144 -0
  26. package/src/skills/screen-recording/SKILL.md +309 -0
  27. package/src/skills/screen-recording/references/approach1-programmatic.md +311 -0
  28. package/src/skills/screen-recording/references/approach2-xvfb.md +232 -0
  29. package/src/skills/screen-recording/references/design-patterns.md +168 -0
  30. package/src/skills/test-mobile-app/SKILL.md +212 -0
  31. package/src/skills/test-mobile-app/references/report-template.md +95 -0
  32. package/src/skills/test-mobile-app/references/setup-appium.md +154 -0
  33. package/src/skills/test-mobile-app/scripts/analyze_apk.py +164 -0
  34. package/src/skills/test-mobile-app/scripts/check_environment.py +116 -0
  35. package/src/skills/test-mobile-app/scripts/generate_report.py +250 -0
  36. package/src/skills/test-mobile-app/scripts/run_tests.py +326 -0
  37. package/src/skills/test-web-ui/SKILL.md +232 -0
  38. package/src/skills/test-web-ui/references/test_case_schema.md +102 -0
  39. package/src/skills/test-web-ui/scripts/discover.py +176 -0
  40. package/src/skills/test-web-ui/scripts/generate_report.py +237 -0
  41. package/src/skills/test-web-ui/scripts/run_tests.py +296 -0
  42. package/src/skills/text-to-speech/SKILL.md +236 -0
  43. package/src/skills/text-to-speech/references/espeak-cli.md +277 -0
  44. package/src/skills/text-to-speech/references/kokoro-onnx.md +124 -0
  45. package/src/skills/text-to-speech/references/online-engines.md +128 -0
  46. package/src/skills/text-to-speech/references/pyttsx3-espeak.md +143 -0
  47. package/src/skills/tm-search/SKILL.md +240 -0
  48. package/src/skills/tm-search/references/field-guide.md +79 -0
  49. package/src/skills/tm-search/references/scraping-fallback.md +140 -0
  50. package/src/skills/tm-search/scripts/tm_search.py +375 -0
  51. package/src/skills/wp-rest-api/SKILL.md +114 -0
  52. package/src/skills/wp-rest-api/references/authentication.md +18 -0
  53. package/src/skills/wp-rest-api/references/custom-content-types.md +20 -0
  54. package/src/skills/wp-rest-api/references/discovery-and-params.md +20 -0
  55. package/src/skills/wp-rest-api/references/responses-and-fields.md +30 -0
  56. package/src/skills/wp-rest-api/references/routes-and-endpoints.md +36 -0
  57. package/src/skills/wp-rest-api/references/schema.md +22 -0
  58. package/src/skills/youtube-search/SKILL.md +412 -0
  59. package/src/skills/youtube-search/references/parsing-examples.md +159 -0
  60. package/src/skills/youtube-search/references/youtube-api-quota.md +85 -0
  61. package/src/skills/youtube-thumbnail/SKILL.md +1060 -0
  62. package/tests/commands/info.test.js +49 -0
  63. package/tests/commands/install.test.js +36 -0
  64. package/tests/commands/list.test.js +66 -0
  65. package/tests/commands/publish.test.js +182 -0
  66. package/tests/commands/search.test.js +45 -0
  67. package/tests/commands/uninstall.test.js +29 -0
  68. package/tests/commands/update.test.js +59 -0
  69. package/tests/functional/skills-lifecycle.test.js +293 -0
  70. package/tests/helpers/fixtures.js +63 -0
  71. package/tests/integration/cli.test.js +83 -0
  72. package/tests/skills/add.test.js +138 -0
  73. package/tests/skills/list.test.js +63 -0
  74. package/tests/skills/remove.test.js +38 -0
  75. package/tests/skills/update.test.js +60 -0
  76. package/tests/unit/config.test.js +31 -0
  77. package/tests/unit/registry.test.js +79 -0
  78. package/tests/unit/utils.test.js +150 -0
  79. package/tests/validation/registry-schema.test.js +112 -0
  80. package/tests/validation/skills-validation.test.js +96 -0
@@ -0,0 +1,13 @@
1
+ {
2
+ "permissions": {
3
+ "allow": [
4
+ "WebFetch(domain:n8n.hm.neutron.lv)",
5
+ "WebFetch(domain:docs.n8n.io)",
6
+ "WebFetch(domain:deepwiki.com)",
7
+ "WebFetch(domain:commafeed.hm.neutron.lv)",
8
+ "WebFetch(domain:raw.githubusercontent.com)",
9
+ "Bash(done)",
10
+ "Bash(npm --version)"
11
+ ]
12
+ }
13
+ }
package/CLAUDE.md ADDED
@@ -0,0 +1,55 @@
1
+ # CLAUDE.md
2
+
3
+ This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4
+
5
+ ## Project Overview
6
+
7
+ CLI marketplace for discovering, installing, and managing Claude Code plugins. Published as `@biggora/claude-plugins` on npm. Plugins are git-cloned into `~/.claude/plugins/` where Claude Code auto-discovers them.
8
+
9
+ ## Commands
10
+
11
+ ```bash
12
+ # Run the CLI (no build step needed)
13
+ node bin/cli.js --help
14
+
15
+ # Test (currently just runs --help)
16
+ npm test
17
+ ```
18
+
19
+ ## Architecture
20
+
21
+ Pure JavaScript ESM project (`"type": "module"`) with no build/transpile step. Node.js >= 18 required.
22
+
23
+ ### Entry Points
24
+
25
+ - `bin/cli.js` - CLI entry point using Commander.js. Defines all commands with lazy `await import()` for each handler.
26
+ - `package.json` `bin` field maps `claude-plugins` to `bin/cli.js`.
27
+
28
+ ### Core Modules
29
+
30
+ - `src/config.js` - Constants and directory helpers. Defines `PLUGINS_DIR` (`~/.claude/plugins`), `CACHE_DIR`, `CACHE_TTL` (15 min), and `REGISTRY_URL` (GitHub raw URL).
31
+ - `src/registry.js` - Fetches registry with 3-tier fallback: remote -> local cache -> bundled `registry/registry.json`. Provides `searchPlugins()` (keyword match across name/description/keywords/author) and `findPlugin()` (exact name match).
32
+ - `src/utils.js` - Logging helpers (`log.info/success/warn/error/dim`), `spinner()` (ora), `formatTable()`, `truncate()`.
33
+
34
+ ### Command Handlers (`src/commands/`)
35
+
36
+ Each file exports a single async function matching its command name:
37
+ - `search.js` - Lists/filters plugins from registry
38
+ - `install.js` - `git clone` from plugin's repository URL into plugins dir
39
+ - `uninstall.js` - Removes plugin directory
40
+ - `list.js` - Reads installed plugins from `~/.claude/plugins/`
41
+ - `info.js` - Shows detailed plugin metadata
42
+ - `update.js` - `git pull --ff-only` on installed plugins
43
+ - `publish.js` - Validates plugin structure (`.claude-plugin/plugin.json` + `README.md`) and generates registry JSON entry
44
+
45
+ ### Registry (`registry/`)
46
+
47
+ - `registry.json` - Bundled fallback registry with plugin entries
48
+ - `schema.json` - JSON schema for registry format
49
+
50
+ ## Key Patterns
51
+
52
+ - All shell operations use `execFileSync` (not `exec`) with `stdio: 'pipe'` for safety
53
+ - Dependencies: `chalk` (styling), `commander` (CLI framework), `ora` (spinners) - all ESM-only
54
+ - Plugin names must match `^[a-z0-9-]+$`
55
+ - Registry entries require: name, version, description, author, repository
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2026 biggora
3
+ Copyright (c) 2026 Aleksejs Gordejevs
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -1,67 +1,197 @@
1
- # claude-plugins
1
+ # @biggora/claude-plugins
2
2
 
3
- CLI marketplace for discovering, installing, and managing Claude Code plugins.
3
+ [![npm version](https://img.shields.io/npm/v/@biggora/claude-plugins.svg)](https://www.npmjs.com/package/@biggora/claude-plugins)
4
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
+
6
+ CLI marketplace for discovering, installing, and managing [Claude Code](https://docs.anthropic.com/en/docs/claude-code) plugins and skills.
4
7
 
5
8
  ## Installation
6
9
 
7
10
  ```bash
8
- npm install -g claude-plugins
11
+ npm install -g @biggora/claude-plugins
9
12
  ```
10
13
 
11
- Or use directly with npx:
14
+ Or use directly with npx (no install required):
12
15
 
13
16
  ```bash
14
- npx claude-plugins search
17
+ npx @biggora/claude-plugins search
15
18
  ```
16
19
 
17
- ## Commands
20
+ ## Skills
21
+
22
+ Skills are self-contained instruction sets (SKILL.md files) that teach Claude Code how to perform specific tasks. They are installed into `~/.claude/skills/` and auto-discovered by Claude Code on startup.
23
+
24
+ ### Install a Skill from Git
18
25
 
19
- ### Browse & Search
26
+ Install a specific skill directly from a Git repository:
20
27
 
21
28
  ```bash
22
- # List all available plugins
23
- claude-plugins search
29
+ # Install a single skill from a repository
30
+ npx skills add https://github.com/biggora/claude-plugins-registry --skill commafeed-api
24
31
 
25
- # Search by name or keyword
26
- claude-plugins search typescript
27
- claude-plugins search code-quality
32
+ # With npx (no global install required)
33
+ npx @biggora/claude-plugins skills add https://github.com/biggora/claude-plugins-registry --skill n8n-api
28
34
  ```
29
35
 
30
- ### Install & Remove
36
+ Install a skill from a single-skill repository:
31
37
 
32
38
  ```bash
39
+ claude-plugins skills add https://github.com/biggora/screen-recording
40
+ ```
41
+
42
+ Install a skill by registry name:
43
+
44
+ ```bash
45
+ claude-plugins skills add youtube-search
46
+ ```
47
+
48
+ ### Manage Installed Skills
49
+
50
+ ```bash
51
+ # List installed skills
52
+ claude-plugins skills list
53
+
54
+ # Update a specific skill
55
+ claude-plugins skills update commafeed-api
56
+
57
+ # Update all installed skills
58
+ claude-plugins skills update
59
+
60
+ # Remove a skill
61
+ claude-plugins skills remove commafeed-api
62
+ ```
63
+
64
+ ### Available Skills
65
+
66
+ | Skill | Category | Description |
67
+ |-------|----------|-------------|
68
+ | `codex-cli` | devops | Install, configure, and automate tasks using OpenAI Codex CLI — approval modes, sandbox policies, MCP servers, and CI integration |
69
+ | `commafeed-api` | workflow | Manage CommaFeed RSS reader via REST API — subscriptions, categories, feeds, entries, and OPML import/export |
70
+ | `gemini-cli` | devops | Install, configure, and script with Gemini CLI — headless prompts, MCP servers, custom slash commands, extensions, and CI automation |
71
+ | `n8n-api` | workflow | Build, debug, and manage n8n workflows via REST API — create workflows, manage credentials, execute and monitor runs |
72
+ | `notebook-lm` | workflow | Automate Google NotebookLM — create notebooks, add sources, chat, generate audio/video overviews, quizzes, reports, and mind maps |
73
+ | `screen-recording` | other | Autonomous video creation — product demos, presentation videos, UI walkthroughs, and narrated screencasts via Pillow, MoviePy, and pyttsx3 |
74
+ | `test-mobile-app` | testing | Automated mobile app testing — analyzes APK/source, generates use cases, runs Appium tests on emulator, and produces QA reports |
75
+ | `test-web-ui` | testing | Automated web QA — discovers site structure, generates use cases and test plans, runs Playwright tests, and produces HTML reports |
76
+ | `text-to-speech` | other | Converts text to speech audio files using pyttsx3, espeak-ng, Kokoro ONNX, or cloud TTS engines with multilingual support |
77
+ | `tm-search` | workflow | Search, validate, and check availability of US trademarks via USPTO APIs — keyword search, batch validation, and status lookup |
78
+ | `wp-rest-api` | workflow | Build, extend, and debug WordPress REST API endpoints — routes, controllers, schema validation, authentication, and custom fields |
79
+ | `youtube-search` | workflow | Search YouTube for videos, channels, playlists and extract metadata, transcripts, and analytics via multiple API methods |
80
+ | `youtube-thumbnail` | other | Generates professional YouTube thumbnails in 11 strategic styles with auto-detection of AI image backends and Pillow compositing |
81
+
82
+ #### Install Examples
83
+
84
+ ```bash
85
+ # From the multi-skill registry repository
86
+ npx skills add https://github.com/biggora/claude-plugins-registry --skill codex-cli
87
+ npx skills add https://github.com/biggora/claude-plugins-registry --skill gemini-cli
88
+ npx skills add https://github.com/biggora/claude-plugins-registry --skill n8n-api
89
+ npx skills add https://github.com/biggora/claude-plugins-registry --skill notebook-lm
90
+ npx skills add https://github.com/biggora/claude-plugins-registry --skill commafeed-api
91
+ npx skills add https://github.com/biggora/claude-plugins-registry --skill tm-search
92
+ npx skills add https://github.com/biggora/claude-plugins-registry --skill wp-rest-api
93
+ npx skills add https://github.com/biggora/claude-plugins-registry --skill youtube-search
94
+ npx skills add https://github.com/biggora/claude-plugins-registry --skill youtube-thumbnail
95
+
96
+ # From standalone repositories
97
+ claude-plugins skills add https://github.com/biggora/screen-recording
98
+ claude-plugins skills add https://github.com/biggora/text-to-speech
99
+ claude-plugins skills add https://github.com/biggora/test-web-ui
100
+ claude-plugins skills add https://github.com/biggora/test-mobile-app
101
+ ```
102
+
103
+ ## Plugins
104
+
105
+ ### Quick Start
106
+
107
+ ```bash
108
+ # Browse all available plugins
109
+ claude-plugins search
110
+
111
+ # Search by keyword
112
+ claude-plugins search typescript
113
+
33
114
  # Install a plugin
34
115
  claude-plugins install code-optimizer
35
116
 
36
- # Remove a plugin
37
- claude-plugins uninstall code-optimizer
117
+ # Restart Claude Code to load the plugin
118
+ ```
119
+
120
+ ### Plugin Commands
121
+
122
+ | Command | Description |
123
+ |---------|-------------|
124
+ | `claude-plugins search [query]` | Browse or search plugins by name, keyword, or category |
125
+ | `claude-plugins install <name>` | Install a plugin from the registry |
126
+ | `claude-plugins uninstall <name>` | Remove an installed plugin |
127
+ | `claude-plugins list` | List locally installed plugins |
128
+ | `claude-plugins info <name>` | Show detailed plugin information |
129
+ | `claude-plugins update [name]` | Update one or all installed plugins |
130
+ | `claude-plugins publish` | Validate plugin and generate registry entry for submission |
131
+
132
+ ### Skills Commands
133
+
134
+ | Command | Description |
135
+ |---------|-------------|
136
+ | `claude-plugins skills add <source>` | Install a skill from a Git URL or registry name |
137
+ | `claude-plugins skills add <url> --skill <name>` | Install a specific skill from a multi-skill repository |
138
+ | `claude-plugins skills list` | List installed skills |
139
+ | `claude-plugins skills update [name]` | Update one or all installed skills |
140
+ | `claude-plugins skills remove <name>` | Remove an installed skill |
141
+
142
+ ### Aliases
143
+
144
+ - `claude-plugins ls` - alias for `list`
145
+ - `claude-plugins remove <name>` - alias for `uninstall`
146
+ - `claude-plugins upgrade [name]` - alias for `update`
147
+ - `claude-plugins skills ls` - alias for `skills list`
148
+ - `claude-plugins skills rm <name>` - alias for `skills remove`
149
+
150
+ ## Usage Examples
151
+
152
+ ### Search & Install Plugins
153
+
154
+ ```bash
155
+ # List all plugins in the registry
156
+ claude-plugins search
157
+
158
+ # Search for code quality tools
159
+ claude-plugins search code-quality
160
+
161
+ # Get details about a specific plugin
162
+ claude-plugins info typescript-eslint-fixer
163
+
164
+ # Install it
165
+ claude-plugins install typescript-eslint-fixer
38
166
  ```
39
167
 
40
- ### Manage
168
+ ### Manage Installed Plugins
41
169
 
42
170
  ```bash
43
- # List installed plugins
171
+ # See what you have installed
44
172
  claude-plugins list
45
173
 
46
- # Show plugin details
47
- claude-plugins info code-optimizer
48
-
49
- # Update all plugins
174
+ # Update all plugins to latest
50
175
  claude-plugins update
51
176
 
52
177
  # Update a specific plugin
53
178
  claude-plugins update code-optimizer
179
+
180
+ # Remove a plugin
181
+ claude-plugins uninstall code-optimizer
54
182
  ```
55
183
 
56
- ### Publish
184
+ ### Publish Your Own Plugin
57
185
 
58
186
  ```bash
59
187
  # From your plugin directory
60
- cd my-plugin
188
+ cd my-awesome-plugin
189
+
190
+ # Validate and generate a registry entry
61
191
  claude-plugins publish
62
192
  ```
63
193
 
64
- This validates your plugin and generates a registry entry. Submit a PR to [claude-plugins-registry](https://github.com/biggora/claude-plugins-registry) to list it.
194
+ The `publish` command validates your plugin structure and outputs a JSON entry. Submit a PR to [claude-plugins-registry](https://github.com/biggora/claude-plugins-registry) to list your plugin.
65
195
 
66
196
  ## Plugin Structure
67
197
 
@@ -72,10 +202,10 @@ my-plugin/
72
202
  .claude-plugin/
73
203
  plugin.json # Required: name, version, description
74
204
  README.md # Required
75
- commands/ # Slash commands
76
- agents/ # Agent definitions
77
- skills/ # Skill files
78
- hooks/ # Hook definitions
205
+ commands/ # Slash commands (optional)
206
+ agents/ # Agent definitions (optional)
207
+ skills/ # Skill files (optional)
208
+ hooks/ # Hook definitions (optional)
79
209
  ```
80
210
 
81
211
  ### plugin.json
@@ -84,29 +214,68 @@ my-plugin/
84
214
  {
85
215
  "name": "my-plugin",
86
216
  "version": "1.0.0",
87
- "description": "What it does",
88
- "author": { "name": "you", "url": "https://github.com/you" },
89
- "repository": "https://github.com/you/my-plugin",
217
+ "description": "Short description of what it does",
218
+ "author": {
219
+ "name": "your-name",
220
+ "url": "https://github.com/your-name"
221
+ },
222
+ "repository": "https://github.com/your-name/my-plugin",
90
223
  "keywords": ["keyword1", "keyword2"],
91
224
  "license": "MIT"
92
225
  }
93
226
  ```
94
227
 
228
+ ## Skill Structure
229
+
230
+ Skills are simpler than plugins — just a SKILL.md file with optional supporting files:
231
+
232
+ ```
233
+ my-skill/
234
+ SKILL.md # Required: skill instructions with YAML frontmatter
235
+ references/ # Reference docs (optional)
236
+ scripts/ # Helper scripts (optional)
237
+ ```
238
+
239
+ ### SKILL.md
240
+
241
+ ```markdown
242
+ ---
243
+ name: my-skill
244
+ description: What this skill teaches Claude to do
245
+ ---
246
+
247
+ # My Skill
248
+
249
+ Instructions for Claude Code...
250
+ ```
251
+
95
252
  ## Registry
96
253
 
97
- The plugin registry is hosted at [github.com/biggora/claude-plugins-registry](https://github.com/biggora/claude-plugins-registry). The CLI fetches it on demand and caches for 15 minutes.
254
+ The plugin registry is a GitHub-hosted JSON file at [biggora/claude-plugins-registry](https://github.com/biggora/claude-plugins-registry).
255
+
256
+ - The CLI fetches the registry on demand and caches it locally for 15 minutes
257
+ - Falls back to cached version if GitHub is unreachable
258
+ - Falls back to bundled registry if no cache exists
98
259
 
99
- To add your plugin to the registry:
260
+ ### Adding a Plugin to the Registry
100
261
 
101
- 1. Ensure your plugin is on GitHub
102
- 2. Run `claude-plugins publish` to validate and generate a registry entry
103
- 3. Submit a PR adding the entry to `registry.json`
262
+ 1. Create your plugin and push it to a public GitHub repository
263
+ 2. Run `claude-plugins publish` from your plugin directory to validate
264
+ 3. Copy the generated registry entry
265
+ 4. Submit a PR to [claude-plugins-registry](https://github.com/biggora/claude-plugins-registry) adding the entry to `registry/registry.json`
104
266
 
105
267
  ## How It Works
106
268
 
107
- - Plugins are installed to `~/.claude/plugins/<name>` via `git clone`
108
- - Updates use `git pull --ff-only`
109
- - Claude Code automatically discovers plugins in `~/.claude/plugins/`
269
+ - **Plugins** are installed via `git clone` to `~/.claude/plugins/<name>`
270
+ - **Skills** are installed via `git clone` + copy to `~/.claude/skills/<name>`
271
+ - Updates use `git pull --ff-only` to safely fast-forward
272
+ - Claude Code automatically discovers plugins and skills in `~/.claude/`
273
+ - Restart Claude Code after installing or removing plugins/skills
274
+
275
+ ## Requirements
276
+
277
+ - Node.js >= 18.0.0
278
+ - Git (for install/update operations)
110
279
 
111
280
  ## License
112
281
 
package/bin/cli.js CHANGED
@@ -76,4 +76,43 @@ program
76
76
  await publish();
77
77
  });
78
78
 
79
+ const skills = program
80
+ .command('skills')
81
+ .description('Manage Claude Code skills');
82
+
83
+ skills
84
+ .command('add <source>')
85
+ .description('Install a skill from a Git URL or registry name')
86
+ .option('--skill <name>', 'Select a specific skill from a multi-skill repo')
87
+ .action(async (source, options) => {
88
+ const { add } = await import('../src/commands/skills/add.js');
89
+ await add(source, options);
90
+ });
91
+
92
+ skills
93
+ .command('list')
94
+ .alias('ls')
95
+ .description('List installed skills')
96
+ .action(async () => {
97
+ const { list } = await import('../src/commands/skills/list.js');
98
+ await list();
99
+ });
100
+
101
+ skills
102
+ .command('remove <name>')
103
+ .alias('rm')
104
+ .description('Remove an installed skill')
105
+ .action(async (name) => {
106
+ const { remove } = await import('../src/commands/skills/remove.js');
107
+ await remove(name);
108
+ });
109
+
110
+ skills
111
+ .command('update [name]')
112
+ .description('Update one or all installed skills')
113
+ .action(async (name) => {
114
+ const { update } = await import('../src/commands/skills/update.js');
115
+ await update(name);
116
+ });
117
+
79
118
  program.parse();
package/package.json CHANGED
@@ -1,17 +1,7 @@
1
1
  {
2
2
  "name": "@biggora/claude-plugins",
3
- "publishConfig": {
4
- "access": "public"
5
- },
6
- "version": "1.0.0",
3
+ "version": "1.1.0",
7
4
  "description": "CLI marketplace for discovering, installing, and managing Claude Code plugins",
8
- "main": "src/index.js",
9
- "bin": {
10
- "claude-plugins": "bin/cli.js"
11
- },
12
- "scripts": {
13
- "test": "node bin/cli.js --help"
14
- },
15
5
  "keywords": [
16
6
  "claude",
17
7
  "claude-code",
@@ -19,22 +9,45 @@
19
9
  "marketplace",
20
10
  "cli"
21
11
  ],
22
- "author": {
23
- "name": "biggora",
24
- "url": "https://github.com/biggora"
12
+ "homepage": "https://github.com/biggora/claude-plugins-registry#readme",
13
+ "bugs": {
14
+ "url": "https://github.com/biggora/claude-plugins-registry/issues"
25
15
  },
26
- "license": "MIT",
27
16
  "repository": {
28
17
  "type": "git",
29
- "url": "https://github.com/biggora/claude-plugins"
18
+ "url": "git+https://github.com/biggora/claude-plugins-registry.git"
19
+ },
20
+ "license": "MIT",
21
+ "author": "biggora (https://github.com/biggora)",
22
+ "type": "module",
23
+ "main": "src/index.js",
24
+ "bin": {
25
+ "claude-plugins": "bin/cli.js"
26
+ },
27
+ "directories": {
28
+ "test": "tests"
29
+ },
30
+ "scripts": {
31
+ "test": "node --test tests/unit/*.test.js tests/commands/*.test.js tests/skills/*.test.js tests/validation/*.test.js tests/integration/*.test.js",
32
+ "test:unit": "node --test tests/unit/*.test.js",
33
+ "test:commands": "node --test tests/commands/*.test.js",
34
+ "test:skills": "node --test tests/skills/*.test.js",
35
+ "test:validation": "node --test tests/validation/*.test.js",
36
+ "test:integration": "node --test tests/integration/*.test.js",
37
+ "test:functional": "node --test tests/functional/*.test.js",
38
+ "test:all": "node --test tests/unit/*.test.js tests/commands/*.test.js tests/skills/*.test.js tests/validation/*.test.js tests/integration/*.test.js tests/functional/*.test.js",
39
+ "test:coverage": "node --test --experimental-test-coverage tests/unit/*.test.js tests/commands/*.test.js tests/skills/*.test.js tests/validation/*.test.js tests/integration/*.test.js"
30
40
  },
31
41
  "dependencies": {
32
42
  "chalk": "^5.3.0",
33
43
  "commander": "^12.1.0",
34
44
  "ora": "^8.1.0"
35
45
  },
46
+ "devDependencies": {},
36
47
  "engines": {
37
48
  "node": ">=18.0.0"
38
49
  },
39
- "type": "module"
50
+ "publishConfig": {
51
+ "access": "public"
52
+ }
40
53
  }