@mediaproc/cli 0.2.0 → 0.3.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 (50) hide show
  1. package/README.md +169 -18
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +13 -12
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/add.d.ts.map +1 -1
  6. package/dist/commands/add.js +108 -39
  7. package/dist/commands/add.js.map +1 -1
  8. package/dist/commands/config.d.ts.map +1 -1
  9. package/dist/commands/config.js +70 -27
  10. package/dist/commands/config.js.map +1 -1
  11. package/dist/commands/convert.d.ts +3 -2
  12. package/dist/commands/convert.d.ts.map +1 -1
  13. package/dist/commands/convert.js +59 -37
  14. package/dist/commands/convert.js.map +1 -1
  15. package/dist/commands/help.js +2 -2
  16. package/dist/commands/help.js.map +1 -1
  17. package/dist/commands/info.d.ts +3 -2
  18. package/dist/commands/info.d.ts.map +1 -1
  19. package/dist/commands/info.js +17 -3
  20. package/dist/commands/info.js.map +1 -1
  21. package/dist/commands/init.d.ts.map +1 -1
  22. package/dist/commands/init.js +25 -47
  23. package/dist/commands/init.js.map +1 -1
  24. package/dist/commands/list.d.ts.map +1 -1
  25. package/dist/commands/list.js +60 -13
  26. package/dist/commands/list.js.map +1 -1
  27. package/dist/commands/optimize.d.ts +3 -2
  28. package/dist/commands/optimize.d.ts.map +1 -1
  29. package/dist/commands/optimize.js +25 -19
  30. package/dist/commands/optimize.js.map +1 -1
  31. package/dist/commands/plugins.d.ts +4 -0
  32. package/dist/commands/plugins.d.ts.map +1 -0
  33. package/dist/commands/plugins.js +79 -0
  34. package/dist/commands/plugins.js.map +1 -0
  35. package/dist/commands/remove.d.ts.map +1 -1
  36. package/dist/commands/remove.js +73 -10
  37. package/dist/commands/remove.js.map +1 -1
  38. package/dist/config-manager.d.ts +110 -0
  39. package/dist/config-manager.d.ts.map +1 -0
  40. package/dist/config-manager.js +201 -0
  41. package/dist/config-manager.js.map +1 -0
  42. package/dist/plugin-manager.d.ts +25 -10
  43. package/dist/plugin-manager.d.ts.map +1 -1
  44. package/dist/plugin-manager.js +51 -49
  45. package/dist/plugin-manager.js.map +1 -1
  46. package/dist/plugin-registry.d.ts +9 -0
  47. package/dist/plugin-registry.d.ts.map +1 -1
  48. package/dist/plugin-registry.js +41 -6
  49. package/dist/plugin-registry.js.map +1 -1
  50. package/package.json +1 -1
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # MediaProc
2
2
 
3
- > ✨ **v0.2.0 Released!** - Image Plugin with 40 commands + Universal convert/info/optimize commands
3
+ > ✨ **v0.2.0 Released!** - Image Plugin with 49 commands + Universal convert/info/optimize commands
4
4
 
5
5
  Universal media processing CLI with an extensible plugin architecture. One tool to process all your media - images, videos, audio, documents, and more.
6
6
 
@@ -20,6 +20,7 @@ Universal media processing CLI with an extensible plugin architecture. One tool
20
20
  - [Features](#-features)
21
21
  - [Quick Start](#-quick-start)
22
22
  - [Available Plugins](#-available-plugins)
23
+ - [Plugin Terminology](#-plugin-terminology)
23
24
  - [Documentation](#-documentation)
24
25
  - [Examples](#-examples)
25
26
  - [Development](#-development)
@@ -129,25 +130,114 @@ mediaproc document compress input.pdf --quality high
129
130
  ## 📊 Current Status
130
131
 
131
132
  **Version**: 0.2.0 (Alpha - Feature Complete Image Plugin!)
132
- **Status**: ✅ Image plugin with 40 commands + Universal CLI commands
133
+ **Status**: ✅ Image plugin with 49 commands + Universal CLI commands
133
134
  **Next Release**: Video & Audio plugins (Q1 2026)
134
135
  **Expected v1.0**: Q2 2026
135
136
 
136
- ### 🎉 Released & Ready to Use (v0.2.0)
137
+ ### Plugin Management
137
138
 
138
- **Universal CLI Commands** - Work out-of-the-box without plugins
139
- - `convert` - Auto-detect file type and suggest conversion
140
- - `info` - Show file details for any media type
141
- - `optimize` - Auto-optimize with intelligent strategy suggestions
139
+ - `mediaproc list` - List all plugins (built-in and installed)
140
+ - `mediaproc add <plugin>` - Install add-on plugins from npm
141
+ - `mediaproc remove <plugin>` - Uninstall add-on plugins
142
+ - `mediaproc plugins` - Show available plugins
143
+ - `mediaproc init` - Initialize configuration
144
+ - `mediaproc config` - Manage settings
145
+
146
+ ### Universal Commands (Work Without Plugins)
147
+
148
+ - `mediaproc convert <input> <output>` - Auto-detect and convert any media file
149
+ - `mediaproc info <file>` - Show file information for any media type
150
+ - `mediaproc optimize <file>` - Suggest optimization strategy based on file type
151
+
152
+ ### Image Processing (@mediaproc/image)
153
+
154
+ **Install:** `mediaproc add image`
155
+
156
+ **49 Professional Commands Available:**
157
+
158
+ **Transform & Resize** (10 commands)
159
+
160
+ - `resize` - Resize with fit modes (cover, contain, fill, inside, outside)
161
+ - `crop` - Extract rectangular regions with positioning
162
+ - `rotate` - Any angle rotation with background control
163
+ - `flip` - Vertical mirroring (top-bottom)
164
+ - `flop` - Horizontal mirroring (left-right)
165
+ - `auto-orient` - Auto-rotate based on EXIF orientation
166
+ - `affine` - Apply affine transformation matrix (scale, shear, reflect)
167
+ - `trim` - Auto-remove uniform borders
168
+ - `extend` - Add padding/borders with custom colors
169
+ - `thumbnail` - Generate thumbnails (64px to 512px)
170
+
171
+ **Color & Tone** (10 commands)
172
+
173
+ - `modulate` - Adjust brightness, saturation, hue
174
+ - `gamma` - Gamma correction for midtones (0.1-3.0)
175
+ - `tint` - Apply color tint overlays (RGB hex)
176
+ - `grayscale` - Convert to black & white
177
+ - `negate` - Create negative/inverted images
178
+ - `normalize` - Auto-enhance contrast and brightness
179
+ - `linear` - Apply linear formula: output = (a \* input) + b
180
+ - `recomb` - Recombine RGB channels using matrix
181
+ - `flatten` - Remove alpha transparency with background color
182
+ - `unflatten` - Add alpha channel (RGB→RGBA)
183
+
184
+ **Effects & Filters** (9 commands)
185
+
186
+ - `blur` - Gaussian blur (0.3-1000 sigma)
187
+ - `sharpen` - Enhance details and edges (flat/jagged modes)
188
+ - `median` - Noise reduction filter (1-50 size)
189
+ - `sepia` - Vintage sepia tone effect
190
+ - `vignette` - Darken edges for artistic focus
191
+ - `pixelate` - Retro pixel art effect (custom pixel size)
192
+ - `threshold` - Binary black/white conversion (0-255)
193
+ - `dilate` - Morphological dilation (expand bright regions)
194
+ - `erode` - Morphological erosion (expand dark regions)
195
+
196
+ **Advanced Operations** (6 commands)
197
+
198
+ - `composite` - Layer images with blend modes (overlay, multiply, screen)
199
+ - `extract` - Extract color channels (red, green, blue, alpha)
200
+ - `border` - Add decorative frames with custom colors
201
+ - `clahe` - Contrast-limited adaptive histogram equalization
202
+ - `convolve` - Apply custom convolution kernels (sharpen, emboss, edge)
203
+ - `boolean` - Perform boolean operations between images (AND, OR, XOR)
204
+
205
+ **Smart/AI Operations** (6 commands)
206
+
207
+ - `smart-crop` - Intelligent content-aware cropping (attention/entropy)
208
+ - `auto-enhance` - Automatic color and contrast enhancement
209
+ - `palette` - Extract dominant color palettes (2-256 colors)
210
+ - `dominant-color` - Quick dominant color extraction
211
+ - `grid` - Combine images into collage layouts
212
+ - `batch` - Process multiple images at once with any operation
213
+
214
+ **Utility** (10 commands)
142
215
 
143
- **@mediaproc/image Plugin** - 40 professional image processing commands
144
- - **Transform** (7): resize, crop, rotate, flip, trim, extend, thumbnail
145
- - **Color & Tone** (6): modulate, gamma, tint, grayscale, negate, normalize
146
- - **Effects & Filters** (6): blur, sharpen, median, sepia, vignette, pixelate
147
- - **Advanced Operations** (5): composite, extract, border, clahe, convolve
148
- - **Smart/AI Operations** (6): smart-crop, auto-enhance, palette, dominant-color, grid, batch
149
- - **Utility** (10): convert, optimize, compress, watermark, info, stats, split, stack, mirror, metadata
150
- - Full documentation with 200+ examples and 10 real-world workflows
216
+ - `convert` - Format conversion (JPG, PNG, WebP, AVIF, TIFF, GIF)
217
+ - `optimize` - Size optimization (up to 70% reduction, lossless/lossy)
218
+ - `compress` - Advanced compression with quality control
219
+ - `watermark` - Add watermarks with positioning and opacity
220
+ - `info` - Display detailed image metadata
221
+ - `stats` - Technical image statistics (channels, depth, color space)
222
+ - `split` - Split image into grid tiles
223
+ - `stack` - Stack images horizontally/vertically
224
+ - `mirror` - Create mirror/kaleidoscope effects
225
+ - `metadata` - View, export, or remove EXIF data
226
+
227
+ **Format Support:**
228
+
229
+ - Input: JPG, PNG, WebP, AVIF, TIFF, GIF, SVG, HEIF
230
+ - Output: JPG, PNG, WebP, AVIF, TIFF, GIF
231
+ - Modern formats: WebP (25-35% smaller), AVIF (50% smaller)
232
+
233
+ **Professional Features:**
234
+
235
+ - Quality control (1-100)
236
+ - Dry-run mode (preview before executing)
237
+ - Verbose logging
238
+ - Built-in help for every command
239
+ - Comprehensive error handling
240
+ - File size reporting
151
241
 
152
242
  ✅ **Architecture** - Plugin system designed and implemented
153
243
  ✅ **Core CLI** - Command framework with plugin discovery
@@ -183,7 +273,7 @@ See [Upcoming Features](docs/upcoming-features.md) for detailed roadmap.
183
273
 
184
274
  MediaProc ships with essential plugins pre-installed, giving you immediate productivity:
185
275
 
186
- - **@mediaproc/image** - Professional image processing (19 commands)
276
+ - **@mediaproc/image** - Professional image processing (40 commands)
187
277
  - Resize, crop, rotate, flip, convert formats
188
278
  - Filters: blur, sharpen, tint, grayscale, median
189
279
  - Color adjustments: modulate, gamma, normalize
@@ -233,7 +323,7 @@ npm install -g @mediaproc/image
233
323
  mediaproc-image resize photo.jpg -w 1920
234
324
  ```
235
325
 
236
- ### Current Features (v0.1.0)
326
+ ### Current Features (v0.2.0)
237
327
 
238
328
  #### Core CLI
239
329
 
@@ -512,12 +602,73 @@ _Coming soon: Browse community plugins at https://plugins.mediaproc.dev_
512
602
 
513
603
  ---
514
604
 
515
- ## 📚 Documentation
605
+ ## Plugin Terminology
606
+
607
+ ### Important: No Plugins Are Pre-Installed!
608
+
609
+ MediaProc CLI is lightweight and contains **NO plugin code**. All plugins must be explicitly installed.
610
+
611
+ ### Plugin Types
612
+
613
+ 1. **Official Plugins** (`@mediaproc/*`) - Maintained by MediaProc team
614
+ - Example: `@mediaproc/image`, `@mediaproc/video`
615
+ - High quality, regularly updated
616
+ - Install: `mediaproc add image`
617
+
618
+ 2. **Community Plugins** (`mediaproc-*`) - Community-maintained
619
+ - Example: `mediaproc-custom-filter`
620
+ - Follow community standards
621
+ - Install: `mediaproc add mediaproc-custom-filter`
622
+
623
+ 3. **Third-Party Plugins** - Any compatible npm package
624
+ - No naming convention required
625
+ - Must implement MediaProc plugin interface
626
+ - Install: `mediaproc add package-name`
627
+
628
+ ### Quick Reference
629
+
630
+ ```bash
631
+ # Install CLI (no plugins included)
632
+ npm install -g @mediaproc/cli
633
+
634
+ # Browse available plugins
635
+ mediaproc plugins
636
+
637
+ # Install official plugins
638
+ mediaproc add image # Image processing
639
+ mediaproc add video # Video processing
640
+
641
+ # Check what's installed
642
+ mediaproc list
643
+
644
+ # Use installed plugins
645
+ mediaproc image resize photo.jpg -w 800
646
+ ```
647
+
648
+ **📘 Full Guide:** See [Plugin Terminology Guide](docs/plugin-terminology.md) for detailed explanations.
649
+
650
+ ---
651
+
652
+ ## �📚 Documentation
516
653
 
517
654
  Comprehensive documentation is available in the [docs/](docs/) folder:
518
655
 
519
656
  ### Core Documentation
520
657
 
658
+ - **[Plugin Terminology](docs/plugin-terminology.md)** - **START HERE!** Clear definitions and common misconceptions
659
+
660
+ - Official vs Community vs Third-Party plugins
661
+ - No plugins are pre-installed (explained)
662
+ - Installation workflow and plugin states
663
+ - Best practices and FAQ
664
+
665
+ - **[Plugin Architecture](docs/plugin-architecture.md)** - How the plugin system works
666
+
667
+ - On-demand loading architecture
668
+ - Plugin discovery and lifecycle
669
+ - Why no auto-loading
670
+ - Technical implementation
671
+
521
672
  - **[Plugin System](docs/plugin-system.md)** - Complete guide to the plugin architecture
522
673
 
523
674
  - How plugins work
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AA4BA,wBAAsB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAwCzC"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAkCA,wBAAsB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAqCzC"}
package/dist/cli.js CHANGED
@@ -5,9 +5,11 @@ import { readFileSync } from 'fs';
5
5
  import { join, dirname } from 'path';
6
6
  import { fileURLToPath } from 'url';
7
7
  import { PluginManager } from './plugin-manager.js';
8
+ import { ConfigManager } from './config-manager.js';
8
9
  import { addCommand } from './commands/add.js';
9
10
  import { removeCommand } from './commands/remove.js';
10
11
  import { listCommand } from './commands/list.js';
12
+ import { pluginsCommand } from './commands/plugins.js';
11
13
  import { helpCommand } from './commands/help.js';
12
14
  import { initCommand } from './commands/init.js';
13
15
  import { configCommand } from './commands/config.js';
@@ -18,6 +20,9 @@ import { infoCommand } from './commands/info.js';
18
20
  import { optimizeCommand } from './commands/optimize.js';
19
21
  const program = new Command();
20
22
  const pluginManager = new PluginManager();
23
+ // Initialize config on startup (creates default if not exists)
24
+ const configManager = new ConfigManager();
25
+ configManager.load();
21
26
  // Get version from package.json
22
27
  const __filename = fileURLToPath(import.meta.url);
23
28
  const __dirname = dirname(__filename);
@@ -31,25 +36,21 @@ export async function cli() {
31
36
  addCommand(program, pluginManager);
32
37
  removeCommand(program, pluginManager);
33
38
  listCommand(program, pluginManager);
39
+ pluginsCommand(program, pluginManager);
34
40
  helpCommand(program);
35
41
  // Project management commands
36
42
  initCommand(program);
37
43
  configCommand(program);
38
- // Universal commands (work without plugins)
39
- convertCommand(program);
40
- infoCommand(program);
41
- optimizeCommand(program);
44
+ // Universal commands (auto-install plugins if needed)
45
+ convertCommand(program, pluginManager);
46
+ infoCommand(program, pluginManager);
47
+ optimizeCommand(program, pluginManager);
42
48
  // Utility commands
43
49
  runCommand(program);
44
50
  validateCommand(program);
45
- // Load and register all installed plugins
46
- try {
47
- await pluginManager.loadPlugins(program);
48
- }
49
- catch (error) {
50
- const errorMessage = error instanceof Error ? error.message : String(error);
51
- console.error(chalk.red('Error loading plugins:'), errorMessage);
52
- }
51
+ // Plugins are NOT loaded at startup
52
+ // Users must explicitly install plugins using: mediaproc add <plugin>
53
+ // This gives users full control over which plugins they want
53
54
  // Parse arguments
54
55
  program.parse(process.argv);
55
56
  // Show help if no command provided
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AA2B1D,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,GAAG,IAAI,CAiJ/E"}
1
+ {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAwC1D,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,GAAG,IAAI,CAmN/E"}
@@ -1,28 +1,40 @@
1
1
  import chalk from 'chalk';
2
2
  import ora from 'ora';
3
3
  import { execa } from 'execa';
4
- import { join } from 'path';
5
- import { resolvePluginPackage, PLUGIN_REGISTRY } from '../plugin-registry.js';
4
+ import { resolvePluginPackage, PLUGIN_REGISTRY, detectPluginType } from '../plugin-registry.js';
6
5
  /**
7
6
  * Detect if mediaproc core is installed globally or locally
8
7
  */
9
- function isGlobalInstall() {
10
- // Check if we're running from global node_modules
11
- const globalPaths = process.env.NODE_PATH?.split(':') || [];
8
+ async function isGlobalInstall() {
12
9
  const execPath = process.argv[1];
13
- for (const globalPath of globalPaths) {
14
- if (execPath.includes(globalPath)) {
10
+ // Check if we're running from global node_modules
11
+ if (execPath.includes('/node_modules/@mediaproc/cli') ||
12
+ execPath.includes('\\node_modules\\@mediaproc\\cli')) {
13
+ // Check if it's under a project's node_modules (local) or global
14
+ const hasLocalPackageJson = execPath.includes('/node_modules/') &&
15
+ !execPath.includes('/usr/') &&
16
+ !execPath.includes('/.nvm/') &&
17
+ !execPath.includes('/.npm-global/');
18
+ if (!hasLocalPackageJson) {
19
+ return true; // Global install
20
+ }
21
+ }
22
+ // Check npm/pnpm global root
23
+ try {
24
+ const { stdout: npmRoot } = await execa('npm', ['root', '-g'], { stdio: 'pipe' });
25
+ if (execPath.includes(npmRoot.trim())) {
26
+ return true;
27
+ }
28
+ }
29
+ catch { }
30
+ try {
31
+ const { stdout: pnpmRoot } = await execa('pnpm', ['root', '-g'], { stdio: 'pipe' });
32
+ if (execPath.includes(pnpmRoot.trim())) {
15
33
  return true;
16
34
  }
17
35
  }
18
- // Check common global installation paths
19
- const globalDirs = [
20
- '/usr/local/lib/node_modules',
21
- '/usr/lib/node_modules',
22
- join(process.env.HOME || '', '.nvm'),
23
- join(process.env.HOME || '', '.npm-global'),
24
- ];
25
- return globalDirs.some(dir => execPath.includes(dir));
36
+ catch { }
37
+ return false;
26
38
  }
27
39
  export function addCommand(program, pluginManager) {
28
40
  program
@@ -33,18 +45,55 @@ export function addCommand(program, pluginManager) {
33
45
  .option('--save-dev', 'Save as dev dependency (local only)')
34
46
  .action(async (plugin, options) => {
35
47
  try {
36
- // Resolve plugin name using registry
48
+ // Resolve plugin name using registry (official or third-party)
37
49
  const pluginName = resolvePluginPackage(plugin);
38
50
  const registryEntry = Object.values(PLUGIN_REGISTRY).find(e => e.package === pluginName);
51
+ // Check if plugin is already installed in package.json
52
+ if (pluginManager.isPluginInstalled(pluginName)) {
53
+ // Check if it's also loaded
54
+ if (pluginManager.isPluginLoaded(pluginName)) {
55
+ ora().info(chalk.blue(`Plugin ${chalk.cyan(pluginName)} is already installed and loaded`));
56
+ console.log(chalk.dim(`You can use: ${chalk.white(`mediaproc ${plugin.replace('@mediaproc/', '')} <command>`)}`));
57
+ return;
58
+ }
59
+ else {
60
+ // Installed but not loaded - load it
61
+ ora().info(chalk.blue(`Plugin ${chalk.cyan(pluginName)} is already installed, loading...`));
62
+ try {
63
+ const loaded = await pluginManager.loadPlugin(pluginName, program);
64
+ if (loaded) {
65
+ ora().succeed(chalk.green(`✓ Plugin ${pluginName} loaded successfully`));
66
+ console.log(chalk.dim(`You can now use: ${chalk.white(`mediaproc ${plugin.replace('@mediaproc/', '')} <command>`)}`));
67
+ }
68
+ }
69
+ catch (loadError) {
70
+ ora().fail(chalk.yellow(`Plugin installed but failed to load. Try restarting the CLI.`));
71
+ }
72
+ return;
73
+ }
74
+ }
39
75
  const spinner = ora(`Installing ${chalk.cyan(pluginName)}...`).start();
76
+ // Detect plugin type
77
+ const pluginType = detectPluginType(pluginName);
78
+ const typeLabel = pluginType === 'official' ? chalk.blue('★ OFFICIAL')
79
+ : pluginType === 'community' ? chalk.green('🌐 COMMUNITY')
80
+ : chalk.yellow('📦 THIRD-PARTY');
40
81
  // Show plugin info
41
82
  if (registryEntry) {
83
+ spinner.info(chalk.dim(`Type: ${typeLabel}`));
42
84
  spinner.info(chalk.dim(`Description: ${registryEntry.description}`));
43
85
  if (registryEntry.systemRequirements && registryEntry.systemRequirements.length > 0) {
44
86
  spinner.info(chalk.yellow(`System requirements: ${registryEntry.systemRequirements.join(', ')}`));
45
87
  }
46
- spinner.start(`Installing ${chalk.cyan(pluginName)}...`);
47
88
  }
89
+ else {
90
+ // Not in registry - show type
91
+ spinner.info(chalk.dim(`Type: ${typeLabel}`));
92
+ if (pluginType === 'third-party') {
93
+ spinner.info(chalk.yellow(`Warning: Third-party plugin not in official registry`));
94
+ }
95
+ }
96
+ spinner.start(`Installing ${chalk.cyan(pluginName)}...`);
48
97
  // Determine installation scope
49
98
  let installGlobally = false;
50
99
  if (options.global) {
@@ -55,7 +104,7 @@ export function addCommand(program, pluginManager) {
55
104
  }
56
105
  else {
57
106
  // Auto-detect based on how core was installed
58
- installGlobally = isGlobalInstall();
107
+ installGlobally = await isGlobalInstall();
59
108
  }
60
109
  // Determine package manager (prefer pnpm, fallback to npm)
61
110
  let packageManager = 'pnpm';
@@ -68,45 +117,65 @@ export function addCommand(program, pluginManager) {
68
117
  // Build install command
69
118
  const args = [];
70
119
  if (packageManager === 'pnpm') {
71
- args.push(installGlobally ? 'add' : 'add');
72
- if (installGlobally)
120
+ args.push('add');
121
+ if (installGlobally) {
73
122
  args.push('-g');
74
- if (options.saveDev)
123
+ }
124
+ else if (options.saveDev) {
75
125
  args.push('-D');
126
+ }
76
127
  }
77
128
  else {
78
129
  args.push('install');
79
- if (installGlobally)
130
+ if (installGlobally) {
80
131
  args.push('-g');
81
- if (options.saveDev)
132
+ }
133
+ else if (options.saveDev) {
82
134
  args.push('--save-dev');
135
+ }
83
136
  }
84
137
  args.push(pluginName);
85
138
  // Execute installation
86
- await execa(packageManager, args, {
139
+ const installOptions = {
87
140
  stdio: 'pipe',
88
- cwd: installGlobally ? undefined : process.cwd(),
89
- });
141
+ };
142
+ // Only set cwd for local installs
143
+ if (!installGlobally) {
144
+ installOptions.cwd = process.cwd();
145
+ }
146
+ await execa(packageManager, args, installOptions);
90
147
  spinner.succeed(chalk.green(`✓ Successfully installed ${pluginName}`));
148
+ // Update config to mark as installed
149
+ const configManager = pluginManager.getConfigManager();
150
+ configManager.addInstalledPlugin(pluginName);
91
151
  const scope = installGlobally ? 'globally' : 'locally';
92
152
  console.log(chalk.dim(`\nInstalled ${scope} using ${packageManager}`));
93
- // Try to load the plugin immediately if installed locally
94
- if (!installGlobally) {
95
- try {
96
- const loadSpinner = ora('Loading plugin...').start();
97
- const loaded = await pluginManager.loadPlugin(pluginName, program);
98
- if (loaded) {
99
- loadSpinner.succeed(chalk.green('Plugin loaded and ready to use'));
100
- }
101
- else {
102
- loadSpinner.info(chalk.yellow('Plugin installed but requires restart to use'));
153
+ // Configure and load the plugin
154
+ try {
155
+ const loadSpinner = ora('Configuring plugin...').start();
156
+ // Try to load the plugin to verify it works
157
+ const loaded = await pluginManager.loadPlugin(pluginName, program);
158
+ if (loaded) {
159
+ loadSpinner.succeed(chalk.green('Plugin configured and ready to use'));
160
+ // Verify plugin commands are available
161
+ const pluginInstance = pluginManager.getPlugin(pluginName);
162
+ if (pluginInstance) {
163
+ const commandCount = program.commands.filter(cmd => cmd.name().startsWith(plugin.replace('@mediaproc/', ''))).length;
164
+ if (commandCount > 0) {
165
+ console.log(chalk.green(`✓ Registered ${commandCount} commands`));
166
+ }
103
167
  }
104
168
  }
105
- catch (loadError) {
106
- // Not critical if loading fails - user can restart CLI
107
- console.log(chalk.yellow('Note: Restart the CLI to use the new plugin'));
169
+ else {
170
+ loadSpinner.warn(chalk.yellow('Plugin installed but requires CLI restart to use'));
171
+ console.log(chalk.dim('Run your command again to use the plugin'));
108
172
  }
109
173
  }
174
+ catch (loadError) {
175
+ const errorMsg = loadError instanceof Error ? loadError.message : String(loadError);
176
+ console.log(chalk.yellow(`⚠ Plugin installed but configuration failed: ${errorMsg}`));
177
+ console.log(chalk.dim(`Restart the CLI to use the plugin ${installGlobally ? '(global install)' : '(local install)'}`));
178
+ }
110
179
  console.log(chalk.dim(`You can now use: ${chalk.white(`mediaproc ${plugin.replace('@mediaproc/', '')} <command>`)}`));
111
180
  // Show example commands
112
181
  if (registryEntry) {
@@ -1 +1 @@
1
- {"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmEpD"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmHpD"}