vibe-validate 0.17.1-rc.2 → 0.17.1-rc.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vibe-validate",
3
- "version": "0.17.1-rc.2",
3
+ "version": "0.17.1-rc.3",
4
4
  "description": "Git-aware validation orchestration for vibe coding (LLM-assisted development) - umbrella package",
5
5
  "type": "module",
6
6
  "bin": {
@@ -50,7 +50,7 @@
50
50
  "access": "public"
51
51
  },
52
52
  "dependencies": {
53
- "@vibe-validate/cli": "0.17.1-rc.2"
53
+ "@vibe-validate/cli": "0.17.1-rc.3"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@types/node": "^20.14.8",
@@ -60,6 +60,7 @@
60
60
  "scripts": {
61
61
  "test": "vitest run",
62
62
  "lint": "echo 'No linting needed for delegation wrappers'",
63
- "postinstall": "node scripts/install-skill.js"
63
+ "postinstall": "node scripts/install-skill.js",
64
+ "preuninstall": "node scripts/uninstall-skill.js"
64
65
  }
65
66
  }
@@ -0,0 +1,41 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Uninstall vibe-validate skill from ~/.claude/skills/vibe-validate
4
+ *
5
+ * This script runs before `npm uninstall -g vibe-validate` to clean up the skill.
6
+ */
7
+
8
+ import { existsSync, rmSync } from 'node:fs';
9
+ import { join } from 'node:path';
10
+ import { homedir } from 'node:os';
11
+
12
+ // Target location
13
+ const CLAUDE_SKILLS_DIR = join(homedir(), '.claude', 'skills', 'vibe-validate');
14
+
15
+ /**
16
+ * Uninstall skill
17
+ */
18
+ function uninstallSkill() {
19
+ // Only uninstall for global installations
20
+ // Check if we're in node_modules (global or local)
21
+ const isGlobalInstall = process.cwd().includes('/lib/node_modules/');
22
+
23
+ if (!isGlobalInstall) {
24
+ // Local project installation - skip skill uninstall
25
+ return;
26
+ }
27
+
28
+ try {
29
+ if (existsSync(CLAUDE_SKILLS_DIR)) {
30
+ console.log('🗑️ Removing vibe-validate skill from Claude Code...');
31
+ rmSync(CLAUDE_SKILLS_DIR, { recursive: true, force: true });
32
+ console.log(`✅ Skill removed from ${CLAUDE_SKILLS_DIR}`);
33
+ }
34
+ } catch (error) {
35
+ console.error('⚠️ Failed to remove skill:', error.message);
36
+ console.error(` You can manually remove: ${CLAUDE_SKILLS_DIR}`);
37
+ }
38
+ }
39
+
40
+ // Run uninstallation
41
+ uninstallSkill();