@xberg-io/liter-llm-cli 1.10.0 → 1.11.0
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/liter-llm.js +10 -10
- package/package.json +1 -1
package/bin/liter-llm.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
// Launcher: exec the downloaded native liter-llm binary, forwarding argv and
|
|
3
|
-
// inheriting stdio. If the binary is missing (postinstall failed), download it
|
|
4
|
-
// on demand before exec.
|
|
2
|
+
// ~keep Launcher: exec the downloaded native liter-llm binary, forwarding argv and
|
|
3
|
+
// ~keep inheriting stdio. If the binary is missing (postinstall failed), download it
|
|
4
|
+
// ~keep on demand before exec.
|
|
5
5
|
import fs from "node:fs";
|
|
6
6
|
import os from "node:os";
|
|
7
7
|
import path from "node:path";
|
|
@@ -15,11 +15,11 @@ function binaryName() {
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
18
|
-
// install.js extracts the binary into this same bin/ directory.
|
|
18
|
+
// ~keep install.js extracts the binary into this same bin/ directory.
|
|
19
19
|
const binPath = path.join(__dirname, binaryName());
|
|
20
20
|
|
|
21
|
-
// A cached binary is only usable if it is non-empty and (on non-Windows) has an
|
|
22
|
-
// exec bit. A truncated or non-executable file means a corrupt cache: re-download.
|
|
21
|
+
// ~keep A cached binary is only usable if it is non-empty and (on non-Windows) has an
|
|
22
|
+
// ~keep exec bit. A truncated or non-executable file means a corrupt cache: re-download.
|
|
23
23
|
function isHealthy(file) {
|
|
24
24
|
try {
|
|
25
25
|
const stat = fs.statSync(file);
|
|
@@ -34,9 +34,9 @@ function isHealthy(file) {
|
|
|
34
34
|
async function ensureBinary() {
|
|
35
35
|
if (fs.existsSync(binPath) && isHealthy(binPath)) return;
|
|
36
36
|
process.stderr.write(`${BIN_NAME}: binary missing or corrupt, attempting download...\n`);
|
|
37
|
-
// Call main() explicitly rather than relying on import side-effects: ESM
|
|
38
|
-
// caches modules, so the installer's top-level run is gated to direct
|
|
39
|
-
// invocation only and would not fire on import.
|
|
37
|
+
// ~keep Call main() explicitly rather than relying on import side-effects: ESM
|
|
38
|
+
// ~keep caches modules, so the installer's top-level run is gated to direct
|
|
39
|
+
// ~keep invocation only and would not fire on import.
|
|
40
40
|
const { main } = await import("../install.js");
|
|
41
41
|
await main();
|
|
42
42
|
}
|
|
@@ -64,7 +64,7 @@ async function main() {
|
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
main().catch((err) => {
|
|
67
|
-
// No standalone CLI for this platform: print the graceful install hint, not a stack.
|
|
67
|
+
// ~keep No standalone CLI for this platform: print the graceful install hint, not a stack.
|
|
68
68
|
if (err && err.name === "CliUnavailableError") {
|
|
69
69
|
printUnavailable();
|
|
70
70
|
process.exit(1);
|
package/package.json
CHANGED