@vibeweld/cli 0.0.2

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/vibeweld ADDED
@@ -0,0 +1,100 @@
1
+ #!/usr/bin/env node
2
+
3
+ const { execFileSync } = require("child_process");
4
+ const { existsSync } = require("fs");
5
+ const { join } = require("path");
6
+ const SELF_PACKAGE = require("../package.json").name;
7
+
8
+ // Platform-specific package mapping
9
+ const PLATFORM_PACKAGES = {
10
+ "linux-x64": "@vibeweld/cli-linux-x64",
11
+ "linux-x64-musl": "@vibeweld/cli-linux-x64-musl",
12
+ "linux-arm64": "@vibeweld/cli-linux-arm64",
13
+ "darwin-x64": "@vibeweld/cli-darwin-x64",
14
+ "darwin-arm64": "@vibeweld/cli-darwin-arm64",
15
+ "win32-x64": "@vibeweld/cli-win32-x64",
16
+ };
17
+
18
+ function getPlatformKey() {
19
+ const platform = process.platform;
20
+ const arch = process.arch;
21
+
22
+ if (platform === "linux" && arch === "x64") {
23
+ // Check if musl-based (Alpine, etc.)
24
+ try {
25
+ const { execSync } = require("child_process");
26
+ const ldd = execSync("ldd --version 2>&1 || true", { encoding: "utf8" });
27
+ if (ldd.includes("musl")) {
28
+ return "linux-x64-musl";
29
+ }
30
+ } catch { }
31
+ return "linux-x64";
32
+ }
33
+
34
+ if (platform === "linux" && arch === "arm64") return "linux-arm64";
35
+ if (platform === "darwin" && arch === "x64") return "darwin-x64";
36
+ if (platform === "darwin" && arch === "arm64") return "darwin-arm64";
37
+ if (platform === "win32" && arch === "x64") return "win32-x64";
38
+
39
+ return null;
40
+ }
41
+
42
+ function getBinaryPath() {
43
+ const platformKey = getPlatformKey();
44
+
45
+ if (!platformKey) {
46
+ console.error(
47
+ `Unsupported platform: ${process.platform}-${process.arch}`
48
+ );
49
+ console.error("Please install vibeweld manually from:");
50
+ console.error("https://github.com/vibeweld/vibeweld-cli/releases");
51
+ process.exit(1);
52
+ }
53
+
54
+ const packageName = PLATFORM_PACKAGES[platformKey];
55
+ const binaryName = process.platform === "win32" ? "vibeweld.exe" : "vibeweld";
56
+
57
+ // Try to find the binary in the platform-specific package
58
+ const paths = [
59
+ // Installed as dependency
60
+ join(__dirname, "..", "node_modules", packageName, "bin", binaryName),
61
+ // Hoisted to root node_modules
62
+ join(__dirname, "..", "..", packageName, "bin", binaryName),
63
+ // pnpm/yarn PnP
64
+ join(__dirname, "..", "..", "..", packageName, "bin", binaryName),
65
+ ];
66
+
67
+ for (const p of paths) {
68
+ if (existsSync(p)) {
69
+ return p;
70
+ }
71
+ }
72
+
73
+ // Try require.resolve as fallback
74
+ try {
75
+ const pkgPath = require.resolve(`${packageName}/package.json`);
76
+ const binPath = join(pkgPath, "..", "bin", binaryName);
77
+ if (existsSync(binPath)) {
78
+ return binPath;
79
+ }
80
+ } catch { }
81
+
82
+ console.error(`Could not find vibeweld binary for ${platformKey}`);
83
+ console.error(`Try reinstalling: npm install ${SELF_PACKAGE}`);
84
+ console.error("Or install manually from:");
85
+ console.error("https://github.com/vibeweld/vibeweld-cli/releases");
86
+ process.exit(1);
87
+ }
88
+
89
+ // Run the binary with all arguments
90
+ const binary = getBinaryPath();
91
+ const args = process.argv.slice(2);
92
+
93
+ try {
94
+ execFileSync(binary, args, { stdio: "inherit" });
95
+ } catch (error) {
96
+ if (error.status !== undefined) {
97
+ process.exit(error.status);
98
+ }
99
+ throw error;
100
+ }
package/package.json ADDED
@@ -0,0 +1,47 @@
1
+ {
2
+ "name": "@vibeweld/cli",
3
+ "version": "0.0.2",
4
+ "description": "Unified AI Agent Configuration Distribution System - Configure Copilot, Claude, Cursor, and 30+ AI agents from a single source",
5
+ "keywords": [
6
+ "ai",
7
+ "copilot",
8
+ "claude",
9
+ "cursor",
10
+ "windsurf",
11
+ "coding-assistant",
12
+ "developer-tools",
13
+ "mcp",
14
+ "model-context-protocol"
15
+ ],
16
+ "author": "Vibeweld Contributors",
17
+ "license": "MIT",
18
+ "repository": {
19
+ "type": "git",
20
+ "url": "https://github.com/vibeweld/vibeweld-cli.git"
21
+ },
22
+ "homepage": "https://github.com/vibeweld/vibeweld-cli",
23
+ "bugs": {
24
+ "url": "https://github.com/vibeweld/vibeweld-cli/issues"
25
+ },
26
+ "bin": {
27
+ "vibeweld": "bin/vibeweld"
28
+ },
29
+ "files": [
30
+ "bin",
31
+ "scripts"
32
+ ],
33
+ "scripts": {
34
+ "postinstall": "node scripts/postinstall.js"
35
+ },
36
+ "optionalDependencies": {
37
+ "@vibeweld/cli-linux-x64": "0.0.2",
38
+ "@vibeweld/cli-linux-x64-musl": "0.0.2",
39
+ "@vibeweld/cli-linux-arm64": "0.0.2",
40
+ "@vibeweld/cli-darwin-x64": "0.0.2",
41
+ "@vibeweld/cli-darwin-arm64": "0.0.2",
42
+ "@vibeweld/cli-win32-x64": "0.0.2"
43
+ },
44
+ "engines": {
45
+ "node": ">=14"
46
+ }
47
+ }
@@ -0,0 +1,74 @@
1
+ /**
2
+ * Post-install script for vibeweld npm package
3
+ * Verifies that the correct platform-specific binary is available
4
+ */
5
+
6
+ const { existsSync } = require("fs");
7
+ const { join } = require("path");
8
+ const { execSync } = require("child_process");
9
+ const SELF_PACKAGE = require("../package.json").name;
10
+
11
+ const PLATFORM_PACKAGES = {
12
+ "linux-x64": "@vibeweld/cli-linux-x64",
13
+ "linux-x64-musl": "@vibeweld/cli-linux-x64-musl",
14
+ "linux-arm64": "@vibeweld/cli-linux-arm64",
15
+ "darwin-x64": "@vibeweld/cli-darwin-x64",
16
+ "darwin-arm64": "@vibeweld/cli-darwin-arm64",
17
+ "win32-x64": "@vibeweld/cli-win32-x64",
18
+ };
19
+
20
+ function getPlatformKey() {
21
+ const platform = process.platform;
22
+ const arch = process.arch;
23
+
24
+ if (platform === "linux" && arch === "x64") {
25
+ try {
26
+ const ldd = execSync("ldd --version 2>&1 || true", { encoding: "utf8" });
27
+ if (ldd.includes("musl")) {
28
+ return "linux-x64-musl";
29
+ }
30
+ } catch { }
31
+ return "linux-x64";
32
+ }
33
+
34
+ if (platform === "linux" && arch === "arm64") return "linux-arm64";
35
+ if (platform === "darwin" && arch === "x64") return "darwin-x64";
36
+ if (platform === "darwin" && arch === "arm64") return "darwin-arm64";
37
+ if (platform === "win32" && arch === "x64") return "win32-x64";
38
+
39
+ return null;
40
+ }
41
+
42
+ function main() {
43
+ const platformKey = getPlatformKey();
44
+
45
+ if (!platformKey) {
46
+ console.warn(
47
+ `\n⚠️ vibeweld: Unsupported platform (${process.platform}-${process.arch})`
48
+ );
49
+ console.warn(" Download manually from: https://github.com/vibeweld/vibeweld-cli/releases\n");
50
+ return;
51
+ }
52
+
53
+ const packageName = PLATFORM_PACKAGES[platformKey];
54
+ const binaryName = process.platform === "win32" ? "vibeweld.exe" : "vibeweld";
55
+
56
+ // Check if binary exists
57
+ try {
58
+ const pkgPath = require.resolve(`${packageName}/package.json`);
59
+ const binPath = join(pkgPath, "..", "bin", binaryName);
60
+
61
+ if (existsSync(binPath)) {
62
+ console.log(`✓ vibeweld installed successfully (${platformKey})`);
63
+ return;
64
+ }
65
+ } catch { }
66
+
67
+ // Binary not found - this can happen if optionalDependencies failed
68
+ console.warn(`\n⚠️ vibeweld: Platform package ${packageName} not installed`);
69
+ console.warn(" This may happen on unsupported platforms or with restricted networks.");
70
+ console.warn(` Try reinstalling: npm install ${SELF_PACKAGE}`);
71
+ console.warn(" Download manually from: https://github.com/vibeweld/vibeweld-cli/releases\n");
72
+ }
73
+
74
+ main();