vipcare 0.3.6 → 0.3.8

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/vip.js CHANGED
@@ -734,6 +734,35 @@ program.command('tags')
734
734
  }
735
735
  });
736
736
 
737
+ // --- upgrade ---
738
+ program.command('upgrade')
739
+ .description('Update vipcare to the latest version')
740
+ .action(() => {
741
+ console.log(c.cyan(`Current version: ${pkg.version}`));
742
+ console.log(c.dim('Checking for updates...'));
743
+ try {
744
+ const latest = execFileSync('npm', ['view', 'vipcare', 'version'], {
745
+ encoding: 'utf-8', timeout: 10000, stdio: ['pipe', 'pipe', 'pipe'],
746
+ }).trim();
747
+
748
+ if (latest === pkg.version) {
749
+ console.log(c.green(`Already up to date (${pkg.version}).`));
750
+ return;
751
+ }
752
+
753
+ console.log(c.yellow(`New version available: ${latest}`));
754
+ console.log(c.dim('Installing...'));
755
+ execFileSync('npm', ['install', '-g', `vipcare@${latest}`], {
756
+ stdio: 'inherit', timeout: 60000,
757
+ });
758
+ console.log(c.green(`Updated to ${latest}!`));
759
+ } catch (e) {
760
+ console.error(c.red(`Upgrade failed: ${e.message}`));
761
+ console.log(c.dim('Try manually: npm install -g vipcare@latest'));
762
+ process.exit(1);
763
+ }
764
+ });
765
+
737
766
  // --- config ---
738
767
  program.command('config')
739
768
  .description('View/edit settings')
@@ -763,7 +792,7 @@ program.command('init')
763
792
  try {
764
793
  console.log(c.bold(c.cyan('\nWelcome to VIPCare!\n')));
765
794
 
766
- const defaultDir = path.join(os.homedir(), 'Projects', 'vip-crm', 'profiles');
795
+ const defaultDir = path.join(os.homedir(), '.vip', 'profiles');
767
796
  const profilesAnswer = await rl.question(`Where should profiles be stored?\n (default: ${defaultDir}) > `);
768
797
  const profilesDir = profilesAnswer.trim() || defaultDir;
769
798
 
package/lib/config.js CHANGED
@@ -10,7 +10,7 @@ const CHANGELOG_FILE = path.join(CONFIG_DIR, 'changelog.jsonl');
10
10
  const TRANSCRIPTS_DIR = path.join(CONFIG_DIR, 'transcripts');
11
11
 
12
12
  const DEFAULT_CONFIG = {
13
- profiles_dir: path.join(os.homedir(), 'Projects', 'vip-crm', 'profiles'),
13
+ profiles_dir: path.join(os.homedir(), '.vip', 'profiles'),
14
14
  monitor_interval_hours: 24,
15
15
  youtube_transcriber_path: path.join(os.homedir(), '.claude', 'skills', 'youtube-transcribe', 'youtube_transcriber.py'),
16
16
  whisper_model: 'base',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vipcare",
3
- "version": "0.3.6",
3
+ "version": "0.3.8",
4
4
  "description": "Auto-build VIP person profiles from Twitter/LinkedIn public data",
5
5
  "type": "module",
6
6
  "bin": {