onlinechefgroep-herdr 0.7.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 +48 -0
- package/bin/herdr.js +30 -0
- package/install.js +63 -0
- package/package.json +38 -0
package/README.md
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# onlinechefgroep-herdr
|
|
2
|
+
|
|
3
|
+
Herdr - fast terminal multiplexer with AI agent detection.
|
|
4
|
+
|
|
5
|
+
OnlineChefGroep distribution of [ogulcancelik/herdr](https://github.com/ogulcancelik/herdr).
|
|
6
|
+
|
|
7
|
+
## Install
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npm install -g onlinechefgroep-herdr
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Or with bun:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
bun add -g onlinechefgroep-herdr
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Quick start
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
herdr # start multiplexer
|
|
23
|
+
herdr --version # show version
|
|
24
|
+
herdr config # show config
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Features
|
|
28
|
+
|
|
29
|
+
- AI agent detection (Claude Code, Copilot, Cursor, Devin, OpenCode, +20 more)
|
|
30
|
+
- Split panes, tabs, workspaces
|
|
31
|
+
- Remote pairing via SSH
|
|
32
|
+
- Kitty graphics protocol
|
|
33
|
+
- Workspace persistence and snapshots
|
|
34
|
+
- Copy mode with vim/emacs bindings
|
|
35
|
+
|
|
36
|
+
## Build from source
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
git clone https://github.com/OnlineChefGroep/herdr.git
|
|
40
|
+
cd herdr
|
|
41
|
+
cargo build --release
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## License
|
|
45
|
+
|
|
46
|
+
MIT - see [LICENSE](https://github.com/OnlineChefGroep/herdr/blob/master/LICENSE)
|
|
47
|
+
RMEOF
|
|
48
|
+
echo "README.md OK" && cd ~/herdr-private && git add npm/ && git status --short npm/
|
package/bin/herdr.js
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
const { execFileSync } = require("child_process");
|
|
3
|
+
const { existsSync } = require("fs");
|
|
4
|
+
const { join } = require("path");
|
|
5
|
+
const os = require("os");
|
|
6
|
+
|
|
7
|
+
const BINARY_NAME = os.platform() === "win32" ? "herdr.exe" : "herdr";
|
|
8
|
+
|
|
9
|
+
const paths = [
|
|
10
|
+
join(__dirname, BINARY_NAME),
|
|
11
|
+
join(__dirname, "..", "bin", BINARY_NAME),
|
|
12
|
+
join(__dirname, "..", "..", "bin", BINARY_NAME),
|
|
13
|
+
BINARY_NAME,
|
|
14
|
+
];
|
|
15
|
+
|
|
16
|
+
for (const p of paths) {
|
|
17
|
+
if (existsSync(p)) {
|
|
18
|
+
try {
|
|
19
|
+
execFileSync(p, process.argv.slice(2), { stdio: "inherit" });
|
|
20
|
+
return;
|
|
21
|
+
} catch {
|
|
22
|
+
continue;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
console.error("herdr binary not found. Install via:");
|
|
28
|
+
console.error(" npm install -g onlinechefgroep-herdr");
|
|
29
|
+
console.error("Or: https://github.com/OnlineChefGroep/herdr/releases");
|
|
30
|
+
process.exit(1);
|
package/install.js
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
const { createWriteStream, existsSync, mkdirSync, chmodSync } = require("fs");
|
|
3
|
+
const { join } = require("path");
|
|
4
|
+
const https = require("https");
|
|
5
|
+
const os = require("os");
|
|
6
|
+
|
|
7
|
+
const VERSION = "0.7.3";
|
|
8
|
+
const REPO = "OnlineChefGroep/herdr";
|
|
9
|
+
const BIN_DIR = join(__dirname, "bin");
|
|
10
|
+
const BINARY_NAME = os.platform() === "win32" ? "herdr.exe" : "herdr";
|
|
11
|
+
const BINARY_PATH = join(BIN_DIR, BINARY_NAME);
|
|
12
|
+
|
|
13
|
+
if (existsSync(BINARY_PATH)) {
|
|
14
|
+
console.log("herdr " + VERSION + " already installed");
|
|
15
|
+
process.exit(0);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
const platformMap = {
|
|
19
|
+
"linux-x64": "herdr-linux-x86_64",
|
|
20
|
+
"linux-arm64": "herdr-linux-aarch64",
|
|
21
|
+
"darwin-x64": "herdr-macos-x86_64",
|
|
22
|
+
"darwin-arm64": "herdr-macos-aarch64",
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
const arch = os.arch() === "arm64" ? "arm64" : "x64";
|
|
26
|
+
const platform = os.platform() + "-" + arch;
|
|
27
|
+
const asset = platformMap[platform];
|
|
28
|
+
|
|
29
|
+
if (!asset) {
|
|
30
|
+
console.error("No prebuilt binary for " + platform);
|
|
31
|
+
console.error("Build from source: git clone https://github.com/" + REPO);
|
|
32
|
+
process.exit(1);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
const url = "https://github.com/" + REPO + "/releases/download/v" + VERSION + "/" + asset;
|
|
36
|
+
console.log("Downloading herdr " + VERSION + " (" + platform + ")...");
|
|
37
|
+
|
|
38
|
+
mkdirSync(BIN_DIR, { recursive: true });
|
|
39
|
+
const file = createWriteStream(BINARY_PATH);
|
|
40
|
+
|
|
41
|
+
function doDownload(dlUrl) {
|
|
42
|
+
https.get(dlUrl, (res) => {
|
|
43
|
+
if (res.statusCode === 302 || res.statusCode === 301) {
|
|
44
|
+
doDownload(res.headers.location);
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
if (res.statusCode !== 200) {
|
|
48
|
+
console.error("Download failed: HTTP " + res.statusCode);
|
|
49
|
+
process.exit(1);
|
|
50
|
+
}
|
|
51
|
+
res.pipe(file);
|
|
52
|
+
file.on("finish", () => {
|
|
53
|
+
file.close();
|
|
54
|
+
if (os.platform() !== "win32") chmodSync(BINARY_PATH, 0o755);
|
|
55
|
+
console.log("herdr " + VERSION + " installed to " + BINARY_PATH);
|
|
56
|
+
});
|
|
57
|
+
}).on("error", (err) => {
|
|
58
|
+
console.error("Download failed: " + err.message);
|
|
59
|
+
process.exit(1);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
doDownload(url);
|
package/package.json
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "onlinechefgroep-herdr",
|
|
3
|
+
"version": "0.7.3",
|
|
4
|
+
"description": "Herdr - fast terminal multiplexer with AI agent detection (OnlineChefGroep distribution)",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"repository": {
|
|
7
|
+
"type": "git",
|
|
8
|
+
"url": "https://github.com/OnlineChefGroep/herdr.git"
|
|
9
|
+
},
|
|
10
|
+
"homepage": "https://github.com/OnlineChefGroep/herdr",
|
|
11
|
+
"keywords": [
|
|
12
|
+
"terminal",
|
|
13
|
+
"multiplexer",
|
|
14
|
+
"tmux",
|
|
15
|
+
"herdr",
|
|
16
|
+
"ai-agent",
|
|
17
|
+
"rust"
|
|
18
|
+
],
|
|
19
|
+
"bin": {
|
|
20
|
+
"herdr": "./bin/herdr.js"
|
|
21
|
+
},
|
|
22
|
+
"files": [
|
|
23
|
+
"bin/herdr.js",
|
|
24
|
+
"install.js",
|
|
25
|
+
"README.md"
|
|
26
|
+
],
|
|
27
|
+
"scripts": {
|
|
28
|
+
"postinstall": "node install.js"
|
|
29
|
+
},
|
|
30
|
+
"engines": {
|
|
31
|
+
"node": ">=18"
|
|
32
|
+
},
|
|
33
|
+
"os": [
|
|
34
|
+
"linux",
|
|
35
|
+
"darwin",
|
|
36
|
+
"win32"
|
|
37
|
+
]
|
|
38
|
+
}
|