@comfanion/workflow 4.36.11 → 4.36.12

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/bin/cli.js CHANGED
@@ -314,23 +314,25 @@ program
314
314
  // Copy .opencode structure (fresh, no old files)
315
315
  await fs.copy(OPENCODE_SRC, targetDir);
316
316
 
317
- // Copy and install vectorizer fresh
317
+ // Copy vectorizer source files (always copy, install only if enabled)
318
318
  if (await fs.pathExists(VECTORIZER_SRC)) {
319
- spinner.text = 'Installing vectorizer...';
320
319
  const newVectorizerDir = path.join(targetDir, 'vectorizer');
321
320
  await fs.ensureDir(newVectorizerDir);
322
321
  await fs.copy(path.join(VECTORIZER_SRC, 'index.js'), path.join(newVectorizerDir, 'index.js'));
323
322
  await fs.copy(path.join(VECTORIZER_SRC, 'package.json'), path.join(newVectorizerDir, 'package.json'));
324
323
 
325
- // Always install vectorizer dependencies fresh
326
- try {
327
- execSync('npm install --silent', {
328
- cwd: newVectorizerDir,
329
- stdio: 'pipe',
330
- timeout: 120000
331
- });
332
- } catch (e) {
333
- // Non-fatal, will show warning below
324
+ // Install dependencies only if vectorizer is enabled
325
+ if (config.vectorizer_enabled) {
326
+ spinner.text = 'Installing vectorizer...';
327
+ try {
328
+ execSync('npm install --silent', {
329
+ cwd: newVectorizerDir,
330
+ stdio: 'pipe',
331
+ timeout: 120000
332
+ });
333
+ } catch (e) {
334
+ // Non-fatal, will show warning below
335
+ }
334
336
  }
335
337
  }
336
338
 
@@ -454,8 +456,10 @@ program
454
456
  const vectorizerInstalled = await fs.pathExists(path.join(targetDir, 'vectorizer', 'node_modules'));
455
457
  if (vectorizerInstalled) {
456
458
  console.log(chalk.green('✅ Vectorizer installed (fresh dependencies)'));
457
- } else {
459
+ } else if (config.vectorizer_enabled) {
458
460
  console.log(chalk.yellow('⚠️ Vectorizer: run `npx @comfanion/workflow vectorizer install`'));
461
+ } else {
462
+ console.log(chalk.gray('ℹ️ Vectorizer disabled (enable in config.yaml to use semantic search)'));
459
463
  }
460
464
  if (hadVectors) {
461
465
  console.log(chalk.green('✅ Vector indexes preserved'));
@@ -581,23 +585,28 @@ program
581
585
  spinner.text = 'Installing new version...';
582
586
  await fs.copy(OPENCODE_SRC, targetDir);
583
587
 
584
- // Copy new vectorizer source files
588
+ // Copy vectorizer source files (always copy, install only if enabled)
585
589
  if (await fs.pathExists(VECTORIZER_SRC)) {
586
- spinner.text = 'Installing vectorizer...';
587
590
  const newVectorizerDir = path.join(targetDir, 'vectorizer');
588
591
  await fs.ensureDir(newVectorizerDir);
589
592
  await fs.copy(path.join(VECTORIZER_SRC, 'index.js'), path.join(newVectorizerDir, 'index.js'));
590
593
  await fs.copy(path.join(VECTORIZER_SRC, 'package.json'), path.join(newVectorizerDir, 'package.json'));
591
594
 
592
- // Always install vectorizer dependencies fresh
593
- try {
594
- execSync('npm install --silent', {
595
- cwd: newVectorizerDir,
596
- stdio: 'pipe',
597
- timeout: 120000
598
- });
599
- } catch (e) {
600
- // Non-fatal, will show warning below
595
+ // Check if vectorizer is enabled in user's config
596
+ const vectorizerEnabled = /vectorizer:[\s\S]*?enabled:\s*true/i.test(configBackup);
597
+
598
+ // Install dependencies only if vectorizer is enabled
599
+ if (vectorizerEnabled) {
600
+ spinner.text = 'Installing vectorizer...';
601
+ try {
602
+ execSync('npm install --silent', {
603
+ cwd: newVectorizerDir,
604
+ stdio: 'pipe',
605
+ timeout: 120000
606
+ });
607
+ } catch (e) {
608
+ // Non-fatal, will show warning below
609
+ }
601
610
  }
602
611
  }
603
612
 
@@ -668,10 +677,13 @@ program
668
677
  console.log(chalk.yellow('⚠️ Plugin deps: run `cd .opencode && bun install`'));
669
678
  }
670
679
  const vectorizerInstalled = await fs.pathExists(path.join(targetDir, 'vectorizer', 'node_modules'));
680
+ const vectorizerEnabled = /vectorizer:[\s\S]*?enabled:\s*true/i.test(configBackup);
671
681
  if (vectorizerInstalled) {
672
682
  console.log(chalk.green('✅ Vectorizer reinstalled (fresh dependencies).'));
673
- } else {
683
+ } else if (vectorizerEnabled) {
674
684
  console.log(chalk.yellow('⚠️ Vectorizer: run `npx @comfanion/workflow vectorizer install`'));
685
+ } else {
686
+ console.log(chalk.gray('ℹ️ Vectorizer disabled (enable in config.yaml to use semantic search)'));
675
687
  }
676
688
  if (hasVectors) {
677
689
  console.log(chalk.green('✅ Vector indexes were preserved.'));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@comfanion/workflow",
3
- "version": "4.36.11",
3
+ "version": "4.36.12",
4
4
  "description": "Initialize OpenCode Workflow system for AI-assisted development with semantic code search",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": "3.0.0",
3
- "buildDate": "2026-01-24T15:20:27.146Z",
3
+ "buildDate": "2026-01-24T15:27:25.856Z",
4
4
  "files": [
5
5
  "config.yaml",
6
6
  "FLOW.yaml",