@genspark/cli 1.0.19 β†’ 1.0.21

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 CHANGED
@@ -26,6 +26,7 @@
26
26
  | πŸ“± **Social Media** | Twitter/X, Instagram, Reddit β€” search posts/users, get comments, connections, and more (30 APIs) |
27
27
  | πŸ€– **Agents** | Podcasts, docs, slides, deep research, fact-checking, websites, batch media generation |
28
28
  | πŸ”Š **Voice** | Voice cloning, voice changer |
29
+ | πŸ•ΈοΈ **Mesh** | Secure SSH between your devices over a private tailnet β€” `gsk mesh join`, `ssh`, `scp`, `forward` |
29
30
 
30
31
  ## Table of Contents
31
32
 
@@ -45,6 +46,7 @@
45
46
  - [Stock Prices](#stock-prices)
46
47
  - [Social Media](#social-media)
47
48
  - [File Transfer](#file-transfer)
49
+ - [Mesh (Secure SSH)](#mesh--secure-ssh-between-your-devices)
48
50
  - [Available Models](#available-models)
49
51
  - [Configuration](#configuration)
50
52
  - [Output Conventions](#output-conventions)
@@ -876,6 +878,45 @@ export GSK_NO_AUTO_UPDATE=1
876
878
 
877
879
  This separation allows programs to parse clean JSON from stdout while humans can follow progress on stderr.
878
880
 
881
+ ## Mesh β€” Secure SSH Between Your Devices
882
+
883
+ `gsk mesh` adds peer-to-peer encrypted networking + SSH to the CLI, powered by Genspark Mesh (Tailscale-based). It reuses your `gsk` login β€” no separate authentication.
884
+
885
+ `gsk mesh` is a thin wrapper around the native `gsk-mesh` binary, fetched from the Genspark CDN on first use (~8 MB), verified by sha256, and cached at `~/.genspark-tool-cli/bin/gsk-mesh` (Apple-notarized on macOS, DigiCert-signed on Windows). Supported platforms: macOS (arm64/x64), Linux (x64/arm64), Windows (x64).
886
+
887
+ ### First Run
888
+
889
+ ```bash
890
+ gsk login # if you haven't already
891
+ gsk mesh join --name laptop # downloads gsk-mesh on first use, joins the mesh
892
+ # Joined mesh as laptop (100.64.0.5).
893
+ ```
894
+
895
+ ### Common Workflows
896
+
897
+ ```bash
898
+ gsk mesh devices # list devices on your tailnet
899
+ gsk mesh ssh laptop # SSH into another device (system ssh + ProxyCommand)
900
+ gsk mesh scp file laptop:~/ # scp via mesh
901
+ gsk mesh forward -L 8080:localhost:80 laptop # port-forward
902
+ gsk mesh status # is the mesh service healthy?
903
+ gsk mesh leave # disconnect this device
904
+ ```
905
+
906
+ Run `gsk mesh --help` for the full command list (served by the native binary).
907
+
908
+ > `gsk mesh login` is not a separate flow β€” `gsk` and `gsk mesh` share one authentication. Use `gsk login`.
909
+
910
+ ### Upgrading
911
+
912
+ ```bash
913
+ gsk mesh upgrade # check + pull the latest gsk-mesh release
914
+ gsk mesh upgrade --force # reinstall even if already at the latest
915
+ gsk mesh upgrade --prerelease # opt into the beta channel
916
+ ```
917
+
918
+ The native binary upgrades independently of `@genspark/cli`, so newer mesh features land without an `npm install -g @genspark/cli` cycle. When a binary is already installed, `gsk mesh` also checks for updates in the background on the same 4-hour cadence as the CLI's own auto-update (honoring `GSK_NO_AUTO_UPDATE` / `"auto_update": false`).
919
+
879
920
  ## Available Models
880
921
 
881
922
  <details>
@@ -0,0 +1,40 @@
1
+ /**
2
+ * `gsk mesh` β€” thin proxy to the native gsk-mesh binary.
3
+ *
4
+ * gsk-mesh is a standalone native Rust binary (Genspark Mesh: Tailscale-based
5
+ * private networking + SSH). `gsk mesh <args...>` lazily downloads + verifies
6
+ * it on first use, then exec's it with the remaining argv. Auth is shared:
7
+ * gsk-mesh reads the same ~/.genspark-tool-cli/config.json `api_key` that
8
+ * `gsk login` writes.
9
+ *
10
+ * Why this is intercepted OUTSIDE commander (see index.ts main()): a true
11
+ * passthrough needs commander's `passThroughOptions`, which requires
12
+ * `enablePositionalOptions` on the program β€” and that flips global option
13
+ * parsing for the WHOLE CLI (`gsk web_search q --debug` would break). So we
14
+ * detect `mesh` by scanning argv ourselves and forward everything verbatim,
15
+ * leaving the rest of the CLI's parsing untouched. The stub command registered
16
+ * by `registerMeshCommand` exists only so `mesh` shows up in `gsk --help`.
17
+ */
18
+ import { Command } from 'commander';
19
+ /**
20
+ * If the invocation is `gsk [global-opts] mesh [args...]`, return the args
21
+ * after `mesh` (possibly empty). Otherwise return null.
22
+ *
23
+ * `argv` is process.argv.slice(2) (no node/script prefix).
24
+ */
25
+ export declare function getMeshInvocation(argv: string[]): string[] | null;
26
+ /**
27
+ * Handle a `gsk mesh ...` invocation end-to-end. Dispatches:
28
+ * - `upgrade` β†’ TS-side version negotiation + download
29
+ * - `login` β†’ redirect to `gsk login` (shared auth; no duplicate UI)
30
+ * - everything else β†’ download-if-needed + exec the native binary verbatim
31
+ * (`whoami`, `logout`, `devices`, `join`, `ssh`, `--help`, …)
32
+ */
33
+ export declare function runMesh(args: string[], baseUrlOverride?: string): Promise<void>;
34
+ /**
35
+ * Register the stub `mesh` command so it appears in `gsk --help`. The real
36
+ * handling happens in index.ts main() via getMeshInvocation/runMesh before
37
+ * commander parses β€” this action is a safety net only.
38
+ */
39
+ export declare function registerMeshCommand(program: Command): void;
40
+ //# sourceMappingURL=mesh.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mesh.d.ts","sourceRoot":"","sources":["../../src/commands/mesh.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAmBnC;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI,CAyBjE;AA6CD;;;;;;GAMG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoCrF;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAe1D"}
@@ -0,0 +1,164 @@
1
+ /**
2
+ * `gsk mesh` β€” thin proxy to the native gsk-mesh binary.
3
+ *
4
+ * gsk-mesh is a standalone native Rust binary (Genspark Mesh: Tailscale-based
5
+ * private networking + SSH). `gsk mesh <args...>` lazily downloads + verifies
6
+ * it on first use, then exec's it with the remaining argv. Auth is shared:
7
+ * gsk-mesh reads the same ~/.genspark-tool-cli/config.json `api_key` that
8
+ * `gsk login` writes.
9
+ *
10
+ * Why this is intercepted OUTSIDE commander (see index.ts main()): a true
11
+ * passthrough needs commander's `passThroughOptions`, which requires
12
+ * `enablePositionalOptions` on the program β€” and that flips global option
13
+ * parsing for the WHOLE CLI (`gsk web_search q --debug` would break). So we
14
+ * detect `mesh` by scanning argv ourselves and forward everything verbatim,
15
+ * leaving the rest of the CLI's parsing untouched. The stub command registered
16
+ * by `registerMeshCommand` exists only so `mesh` shows up in `gsk --help`.
17
+ */
18
+ import { spawn } from 'child_process';
19
+ import { ensureMeshBinary } from '../mesh/download.js';
20
+ import { runUpgrade } from '../mesh/upgrade.js';
21
+ import { maybeAutoUpgradeMesh } from '../mesh/upgrade.js';
22
+ import { info, error as logError, debug } from '../logger.js';
23
+ // Global options (defined on `program` in index.ts) that consume the following
24
+ // argv token as their value. Used by the argv scanner to find the command name
25
+ // without mis-reading an option value as the command.
26
+ const VALUE_TAKING_GLOBALS = new Set([
27
+ '--api-key',
28
+ '--base-url',
29
+ '--project-id',
30
+ '--timeout',
31
+ '--output',
32
+ '--config',
33
+ ]);
34
+ /**
35
+ * If the invocation is `gsk [global-opts] mesh [args...]`, return the args
36
+ * after `mesh` (possibly empty). Otherwise return null.
37
+ *
38
+ * `argv` is process.argv.slice(2) (no node/script prefix).
39
+ */
40
+ export function getMeshInvocation(argv) {
41
+ let i = 0;
42
+ while (i < argv.length) {
43
+ const tok = argv[i];
44
+ if (tok === '--') {
45
+ // End-of-options marker: the next token (if any) is the command.
46
+ const cmd = argv[i + 1];
47
+ return cmd === 'mesh' ? argv.slice(i + 2) : null;
48
+ }
49
+ if (tok.startsWith('-')) {
50
+ if (tok.includes('=')) {
51
+ i++; // --opt=value : single token
52
+ continue;
53
+ }
54
+ if (VALUE_TAKING_GLOBALS.has(tok)) {
55
+ i += 2; // skip option + its value
56
+ continue;
57
+ }
58
+ i++; // boolean global (--debug / --refresh / --version …)
59
+ continue;
60
+ }
61
+ // First bare operand is the command name.
62
+ return tok === 'mesh' ? argv.slice(i + 1) : null;
63
+ }
64
+ return null;
65
+ }
66
+ const UPGRADE_USAGE = [
67
+ 'Usage: gsk mesh upgrade [options]',
68
+ '',
69
+ 'Check for and install a newer gsk-mesh release.',
70
+ '',
71
+ 'Options:',
72
+ ' --force Reinstall even if already at the latest version',
73
+ ' --prerelease Use the pre-release (beta) channel',
74
+ ' -h, --help Show this help',
75
+ ].join('\n');
76
+ /** Run `gsk mesh upgrade` with manually-parsed flags. */
77
+ async function handleUpgrade(rest, baseUrlOverride) {
78
+ if (rest.includes('-h') || rest.includes('--help')) {
79
+ info(UPGRADE_USAGE);
80
+ process.exit(0);
81
+ }
82
+ const force = rest.includes('--force');
83
+ const prerelease = rest.includes('--prerelease');
84
+ const result = await runUpgrade({ force, prerelease, baseUrlOverride });
85
+ process.exit(result === 'error' ? 1 : 0);
86
+ }
87
+ /** Exec a resolved native binary with `args`, inheriting stdio; propagate exit/signal. */
88
+ function spawnNative(bin, args) {
89
+ const child = spawn(bin, args, { stdio: 'inherit' });
90
+ child.on('error', err => {
91
+ logError(`Failed to launch gsk-mesh: ${err.message}`);
92
+ process.exit(1);
93
+ });
94
+ child.on('exit', (code, signal) => {
95
+ if (signal) {
96
+ // Re-raise the signal so our exit status mirrors the child's
97
+ // (e.g. Ctrl-C during `gsk mesh ssh`).
98
+ process.kill(process.pid, signal);
99
+ }
100
+ else {
101
+ process.exit(code ?? 1);
102
+ }
103
+ });
104
+ // execNative never returns normally β€” the process exits via the handlers.
105
+ return new Promise(() => { });
106
+ }
107
+ /**
108
+ * Handle a `gsk mesh ...` invocation end-to-end. Dispatches:
109
+ * - `upgrade` β†’ TS-side version negotiation + download
110
+ * - `login` β†’ redirect to `gsk login` (shared auth; no duplicate UI)
111
+ * - everything else β†’ download-if-needed + exec the native binary verbatim
112
+ * (`whoami`, `logout`, `devices`, `join`, `ssh`, `--help`, …)
113
+ */
114
+ export async function runMesh(args, baseUrlOverride) {
115
+ const sub = args[0];
116
+ if (sub === 'upgrade') {
117
+ await handleUpgrade(args.slice(1), baseUrlOverride);
118
+ return;
119
+ }
120
+ if (sub === 'login') {
121
+ // `gsk` and `gsk mesh` share one authentication. Don't expose a duplicate
122
+ // device-flow; point users at the single login UI. Explicit message (not a
123
+ // silent rewrite) so someone copying `gsk-mesh login` from the native docs
124
+ // understands why it differs here.
125
+ info('`gsk` and `gsk mesh` share the same authentication β€” run `gsk login` instead.');
126
+ process.exit(0);
127
+ }
128
+ // Resolve (and if needed download/repair) the binary FIRST, so its install
129
+ // settles before we kick off the background currency check β€” otherwise both
130
+ // could call downloadAndInstall at once and race.
131
+ let bin;
132
+ try {
133
+ bin = await ensureMeshBinary();
134
+ }
135
+ catch (err) {
136
+ logError(err.message);
137
+ process.exit(1);
138
+ }
139
+ // Background, throttled currency check (never blocks this invocation). Skipped
140
+ // automatically when no binary is installed yet or auto-update is disabled.
141
+ // Safe to run now: ensureMeshBinary has finished, so no concurrent install.
142
+ void maybeAutoUpgradeMesh(baseUrlOverride).catch(err => debug(`mesh autorun: ${err.message}`));
143
+ await spawnNative(bin, args);
144
+ }
145
+ /**
146
+ * Register the stub `mesh` command so it appears in `gsk --help`. The real
147
+ * handling happens in index.ts main() via getMeshInvocation/runMesh before
148
+ * commander parses β€” this action is a safety net only.
149
+ */
150
+ export function registerMeshCommand(program) {
151
+ program
152
+ .command('mesh')
153
+ .description('Genspark Mesh β€” secure SSH between your devices over a private tailnet. ' +
154
+ 'Native subcommand; downloads gsk-mesh on first use. Run `gsk mesh --help` for the full command list.')
155
+ .allowUnknownOption(true)
156
+ .helpOption(false)
157
+ .argument('[args...]', 'forwarded verbatim to the native gsk-mesh binary')
158
+ .action(async (args) => {
159
+ // Reached only if the early intercept missed (shouldn't happen). Forward
160
+ // anyway so behavior stays correct.
161
+ await runMesh(args ?? []);
162
+ });
163
+ }
164
+ //# sourceMappingURL=mesh.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mesh.js","sourceRoot":"","sources":["../../src/commands/mesh.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -30,6 +30,7 @@ import { setDebugEnabled, setOutputFormat, debug, info, error as logError, outpu
30
30
  import { loadConfigFile, saveConfigFile, getConfigPath, loadToolsCache, saveToolsCache, setConfigPathOverride, } from './config.js';
31
31
  import { checkForUpdates } from './updater.js';
32
32
  import { registerDesignCommand } from './commands/design.js';
33
+ import { registerMeshCommand, getMeshInvocation, runMesh } from './commands/mesh.js';
33
34
  import { executeCloneUrl } from './commands/sb-git-clone.js';
34
35
  const require = createRequire(import.meta.url);
35
36
  const { version: VERSION } = require('../package.json');
@@ -875,6 +876,10 @@ function registerToolCommand(parentProgram, tool, clientFactory, vdProjectIdDefa
875
876
  // Register cc-bridge design command. Static (not server-discovered)
876
877
  // because it runs entirely client-side β€” no API roundtrip.
877
878
  registerDesignCommand(program);
879
+ // Register the `mesh` stub so it shows in `gsk --help`. Actual handling is an
880
+ // early intercept in main() (see getMeshInvocation/runMesh) β€” commander can't
881
+ // passthrough native-binary args without breaking global option parsing.
882
+ registerMeshCommand(program);
878
883
  program
879
884
  .command('list-tools')
880
885
  .alias('ls')
@@ -1454,6 +1459,22 @@ addPhoneCallOptions(program
1454
1459
  // Dynamic Tool Registration & Startup
1455
1460
  // ============================================
1456
1461
  async function main() {
1462
+ // `gsk mesh ...` is a native-binary passthrough β€” intercept it before the
1463
+ // tool-fetch path and npm self-update gating (it needs neither). Handling it
1464
+ // outside commander keeps the rest of the CLI's option parsing intact (see
1465
+ // commands/mesh.ts for why).
1466
+ const meshArgs = getMeshInvocation(process.argv.slice(2));
1467
+ if (meshArgs !== null) {
1468
+ program.parseOptions(process.argv);
1469
+ setDebugEnabled(getGlobalOptions().debug);
1470
+ // Forward an explicit `--base-url` flag only (commander leaves it at
1471
+ // DEFAULT_BASE_URL when unset); env/config/prod-default resolution happens
1472
+ // inside the mesh layer so it doesn't inherit gsk's localhost default.
1473
+ const rawBase = program.opts().baseUrl;
1474
+ const baseUrlOverride = rawBase && rawBase !== DEFAULT_BASE_URL ? rawBase : undefined;
1475
+ await runMesh(meshArgs, baseUrlOverride);
1476
+ return;
1477
+ }
1457
1478
  // Check for updates (non-blocking β€” failures are silently ignored)
1458
1479
  try {
1459
1480
  await checkForUpdates(VERSION);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Lazy download + integrity-verified caching of the native gsk-mesh binary.
3
+ *
4
+ * Cache layout under ~/.genspark-tool-cli/bin/ :
5
+ * gsk-mesh[.exe] the native binary
6
+ * .gsk-mesh-version the version string the binary was installed at
7
+ * .gsk-mesh-sha256 the expected sha256 for that binary
8
+ *
9
+ * Security note (per-run integrity check β€” gen-spark#32059): a cached binary
10
+ * is exec'd directly on every `gsk mesh ...`, so a local process that can write
11
+ * to bin/ could otherwise plant code that runs as the user. On every cache hit
12
+ * we re-hash the file and compare:
13
+ * - if it's still at PINNED_VERSION, the expected sha is CHECKSUMS[target],
14
+ * which is compiled into the published @genspark/cli (tamper-resistant);
15
+ * - otherwise (upgraded past the pin via `gsk mesh upgrade`), we compare
16
+ * against the .gsk-mesh-sha256 stamp.
17
+ * A mismatch re-downloads the pinned version rather than exec'ing a binary we
18
+ * can't vouch for.
19
+ */
20
+ /** True if a gsk-mesh binary is already cached for the current target. */
21
+ export declare function isMeshInstalled(): boolean;
22
+ /** The version string the cached binary was installed at, or null. */
23
+ export declare function getInstalledMeshVersion(): string | null;
24
+ /**
25
+ * Ensure the native gsk-mesh binary is present, current, and intact.
26
+ * Returns the absolute path to the verified binary.
27
+ */
28
+ export declare function ensureMeshBinary(): Promise<string>;
29
+ /**
30
+ * Download a specific version+target from `url`, verify its sha256, install it
31
+ * atomically, and update the version/sha stamps. Shared by first-run
32
+ * (`ensureMeshBinary`) and `gsk mesh upgrade` (which passes a newer version).
33
+ */
34
+ export declare function downloadAndInstall(url: string, expectedSha: string, version: string, target: string): Promise<void>;
35
+ //# sourceMappingURL=download.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"download.d.ts","sourceRoot":"","sources":["../../src/mesh/download.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AA8BH,0EAA0E;AAC1E,wBAAgB,eAAe,IAAI,OAAO,CAMzC;AAED,sEAAsE;AACtE,wBAAgB,uBAAuB,IAAI,MAAM,GAAG,IAAI,CAEvD;AA8BD;;;GAGG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CA0CxD;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CAQf"}