pandash-cli 0.2.1 → 0.2.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/README.md +54 -0
- package/bin/cli.js +16 -12
- package/package.json +1 -1
package/README.md
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# pandash-cli
|
|
2
|
+
|
|
3
|
+
Multi-Terminal & Claude Code Manager. Run multiple Claude Code sessions side by side with cloud execution support.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm i -g pandash-cli
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Then run:
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
pandash
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Features
|
|
18
|
+
|
|
19
|
+
- **Multi-terminal** — Run multiple Claude Code sessions in parallel
|
|
20
|
+
- **Cloud sessions** — Execute on remote servers with warm workers
|
|
21
|
+
- **Usage stats** — Track messages, tokens, and sessions
|
|
22
|
+
- **Auto-updates** — The app updates itself automatically
|
|
23
|
+
|
|
24
|
+
## Platforms
|
|
25
|
+
|
|
26
|
+
| OS | Architecture |
|
|
27
|
+
|----|-------------|
|
|
28
|
+
| Windows | x64 |
|
|
29
|
+
| macOS | Intel (x64) & Apple Silicon (arm64) |
|
|
30
|
+
| Linux | x64 (.deb / AppImage) |
|
|
31
|
+
|
|
32
|
+
## How it works
|
|
33
|
+
|
|
34
|
+
This package downloads and installs the Pandash desktop app for your platform. After installation, the app runs natively and auto-updates independently of npm.
|
|
35
|
+
|
|
36
|
+
## Cloud sessions
|
|
37
|
+
|
|
38
|
+
Pandash supports running Claude Code on cloud servers. Get an API key at [pandash.dev](https://pandash.dev) and configure it in Settings > Cloud.
|
|
39
|
+
|
|
40
|
+
| Plan | Sessions | Compute |
|
|
41
|
+
|------|----------|---------|
|
|
42
|
+
| Free | Local only | Unlimited |
|
|
43
|
+
| Starter ($9.99/mo) | 1 cloud | 50h/month |
|
|
44
|
+
| Pro ($19.99/mo) | 3 cloud | Unlimited |
|
|
45
|
+
| Team ($29.99/mo) | 5 cloud | Unlimited |
|
|
46
|
+
|
|
47
|
+
## Links
|
|
48
|
+
|
|
49
|
+
- [pandash.dev](https://pandash.dev)
|
|
50
|
+
- [GitHub](https://github.com/rchernando/pandash)
|
|
51
|
+
|
|
52
|
+
## License
|
|
53
|
+
|
|
54
|
+
MIT
|
package/bin/cli.js
CHANGED
|
@@ -10,7 +10,6 @@ function findApp() {
|
|
|
10
10
|
|
|
11
11
|
switch (platform) {
|
|
12
12
|
case "win32": {
|
|
13
|
-
// Check common install locations
|
|
14
13
|
const paths = [
|
|
15
14
|
path.join(process.env.LOCALAPPDATA || "", "Pandash", "pandash.exe"),
|
|
16
15
|
path.join(process.env.PROGRAMFILES || "", "Pandash", "pandash.exe"),
|
|
@@ -25,12 +24,10 @@ function findApp() {
|
|
|
25
24
|
return fs.existsSync(appPath) ? appPath : null;
|
|
26
25
|
}
|
|
27
26
|
case "linux": {
|
|
28
|
-
// Check if pandash is in PATH
|
|
29
27
|
try {
|
|
30
28
|
const result = execSync("which pandash 2>/dev/null", { encoding: "utf8" }).trim();
|
|
31
29
|
if (result) return result;
|
|
32
30
|
} catch {}
|
|
33
|
-
// Check common locations
|
|
34
31
|
const paths = [
|
|
35
32
|
"/usr/bin/pandash",
|
|
36
33
|
"/usr/local/bin/pandash",
|
|
@@ -50,16 +47,23 @@ const appPath = findApp();
|
|
|
50
47
|
|
|
51
48
|
if (!appPath) {
|
|
52
49
|
console.error(`${APP_NAME} is not installed.`);
|
|
53
|
-
console.error("Run: npm install -g pandash");
|
|
50
|
+
console.error("Run: npm install -g pandash-cli");
|
|
54
51
|
process.exit(1);
|
|
55
52
|
}
|
|
56
53
|
|
|
57
|
-
//
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
54
|
+
// On Windows, use Start-Process to launch detached from console
|
|
55
|
+
// This is required because the exe uses windows_subsystem = "windows"
|
|
56
|
+
if (process.platform === "win32") {
|
|
57
|
+
spawn("cmd.exe", ["/c", "start", "", appPath, ...process.argv.slice(2)], {
|
|
58
|
+
stdio: "ignore",
|
|
59
|
+
detached: true,
|
|
60
|
+
}).unref();
|
|
61
|
+
} else {
|
|
62
|
+
const child = spawn(appPath, process.argv.slice(2), {
|
|
63
|
+
stdio: "inherit",
|
|
64
|
+
detached: true,
|
|
65
|
+
});
|
|
66
|
+
child.unref();
|
|
67
|
+
}
|
|
62
68
|
|
|
63
|
-
|
|
64
|
-
child.unref();
|
|
65
|
-
setTimeout(() => process.exit(0), 500);
|
|
69
|
+
process.exit(0);
|