protovibe 1.1.7 → 1.1.9
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/README.md +14 -0
- package/dist/index.mjs +24 -19
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -32,12 +32,26 @@ Before installing ProtoVibe, make sure you have:
|
|
|
32
32
|
|
|
33
33
|
## Install
|
|
34
34
|
|
|
35
|
+
ProtoVibe is a CLI tool and **must be installed globally** to work:
|
|
36
|
+
|
|
35
37
|
```bash
|
|
36
38
|
npm install -g protovibe
|
|
37
39
|
```
|
|
38
40
|
|
|
41
|
+
> **Note:** The npm page shows `npm i protovibe` but that is a local install — the `protovibe` command will not be found. Always use the `-g` flag.
|
|
42
|
+
|
|
39
43
|
ProtoVibe checks for newer versions on every run and updates itself automatically. You only ever need to install it once.
|
|
40
44
|
|
|
45
|
+
### No install? Use npx
|
|
46
|
+
|
|
47
|
+
If you don't want a global install, you can run ProtoVibe directly with npx from any directory:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
npx protovibe
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
This always runs the latest version without installing anything permanently.
|
|
54
|
+
|
|
41
55
|
---
|
|
42
56
|
|
|
43
57
|
## How to use it
|
package/dist/index.mjs
CHANGED
|
@@ -76,20 +76,23 @@ function InfoBox({ version }) {
|
|
|
76
76
|
import { existsSync, readFileSync } from "fs";
|
|
77
77
|
import { join } from "path";
|
|
78
78
|
import { homedir } from "os";
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
79
|
+
var CREDENTIAL_PATHS = [
|
|
80
|
+
join(homedir(), ".claude", ".credentials.json"),
|
|
81
|
+
join(homedir(), ".claude", "auth.json")
|
|
82
|
+
];
|
|
82
83
|
function isAuthenticated() {
|
|
83
|
-
const credPath
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
84
|
+
for (const credPath of CREDENTIAL_PATHS) {
|
|
85
|
+
if (!existsSync(credPath)) continue;
|
|
86
|
+
try {
|
|
87
|
+
const content = readFileSync(credPath, "utf-8").trim();
|
|
88
|
+
if (!content) continue;
|
|
89
|
+
const parsed = JSON.parse(content);
|
|
90
|
+
if (Object.keys(parsed).length > 0) return true;
|
|
91
|
+
} catch {
|
|
92
|
+
continue;
|
|
93
|
+
}
|
|
92
94
|
}
|
|
95
|
+
return existsSync(join(homedir(), ".claude", "settings.json"));
|
|
93
96
|
}
|
|
94
97
|
|
|
95
98
|
// src/spawn.ts
|
|
@@ -680,14 +683,10 @@ function App({ terminalWidth, version }) {
|
|
|
680
683
|
|
|
681
684
|
// src/index.tsx
|
|
682
685
|
import { execSync as execSync2, spawnSync as spawnSync2 } from "child_process";
|
|
683
|
-
import {
|
|
684
|
-
import { fileURLToPath } from "url";
|
|
685
|
-
import { dirname as dirname2, join as join3 } from "path";
|
|
686
|
+
import { createRequire } from "module";
|
|
686
687
|
import { get } from "https";
|
|
687
|
-
var
|
|
688
|
-
var pkg =
|
|
689
|
-
readFileSync2(join3(__dirname, "..", "package.json"), "utf-8")
|
|
690
|
-
);
|
|
688
|
+
var require2 = createRequire(import.meta.url);
|
|
689
|
+
var pkg = require2("../package.json");
|
|
691
690
|
function isNewerVersion(current, latest) {
|
|
692
691
|
const parse = (v) => v.split(".").map(Number);
|
|
693
692
|
const [cMaj, cMin, cPatch] = parse(current);
|
|
@@ -721,6 +720,12 @@ function fetchLatestVersion() {
|
|
|
721
720
|
});
|
|
722
721
|
}
|
|
723
722
|
async function main() {
|
|
723
|
+
if (process.argv[1]?.includes("node_modules")) {
|
|
724
|
+
process.stderr.write(
|
|
725
|
+
"\n \u2717 protovibe was installed locally.\n\n Option 1 \u2014 run it right now:\n npx protovibe\n\n Option 2 \u2014 install globally (recommended):\n npm install -g protovibe\n\n"
|
|
726
|
+
);
|
|
727
|
+
process.exit(1);
|
|
728
|
+
}
|
|
724
729
|
if (process.env.PROTOVIBE_UPDATED !== "1") {
|
|
725
730
|
const latest = await fetchLatestVersion();
|
|
726
731
|
if (latest && isNewerVersion(pkg.version, latest)) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "protovibe",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.9",
|
|
4
4
|
"description": "A branded CLI platform layer on top of Claude Code",
|
|
5
5
|
"author": "razorgojo",
|
|
6
6
|
"license": "MIT",
|
|
@@ -40,6 +40,7 @@
|
|
|
40
40
|
"@clack/prompts": "^1.1.0",
|
|
41
41
|
"chalk": "^5.6.2",
|
|
42
42
|
"ink": "^6.8.0",
|
|
43
|
+
"protovibe": "^1.1.8",
|
|
43
44
|
"react": "^19.2.4"
|
|
44
45
|
},
|
|
45
46
|
"devDependencies": {
|