Lines 1-28javascript
2// Unified entry point for the Vigolium CLI distributed via npm.
4// The platform-specific binary is shipped *gzipped* inside an optional
5// dependency package (one of @vigolium/vigolium-<tag>). On first run we
6// decompress it once into a version-scoped cache directory and then exec it,
7// forwarding args, stdio, signals and the exit status.
9import { spawn } from "node:child_process";
10import { createReadStream, createWriteStream, existsSync, statSync } from "node:fs";
11import { mkdir, rename, chmod, unlink } from "node:fs/promises";
12import { createRequire } from "node:module";
13import { pipeline } from "node:stream/promises";
14import { createGunzip } from "node:zlib";
15import os from "node:os";
16import path from "node:path";
17import { fileURLToPath } from "node:url";
19// __dirname / require equivalents in ESM.
20const __filename = fileURLToPath(import.meta.url);
HighSandbox Evasion Gated Capability
Source gates dangerous network, credential, or execution behavior behind CI, host, platform, time, or geo fingerprint checks.
bin/vigolium.jsView on unpkg · L8 21const __dirname = path.dirname(__filename);
22const require = createRequire(import.meta.url);
24// Local alias (npm install path) -> nothing else; the underlying package
25// published to npm is always @vigolium/vigolium with a version suffix.
26const PLATFORM_PACKAGE_BY_TAG = {
27 "linux-x64": "@vigolium/vigolium-linux-x64",
28 "linux-arm64": "@vigolium/vigolium-linux-arm64",