skydive-cli 0.6.0-beta.225 → 0.6.0-beta.227
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/dist/js/bin.mjs +22 -23
- package/dist/js/{boot-Dzo69fgi.mjs → boot-bYiQ4Pcz.mjs} +10 -11
- package/dist/js/{client-CskqcEQX.mjs → client-Ba7q9z5g.mjs} +1 -1
- package/dist/js/{client-BcqIEhAK.mjs → client-jr9NQaCu.mjs} +1 -1
- package/dist/js/{daemon-CMEQ6irk.mjs → daemon-BWfYtIep.mjs} +1 -1
- package/dist/js/{daemon-BBWraZlk.mjs → daemon-Nxf6diPa.mjs} +2 -2
- package/dist/js/{daemon-client-CwKw0lNL.mjs → daemon-client-CjWAPVZh.mjs} +1 -1
- package/dist/js/daemon-client-wVeH3Ttb.mjs +8 -0
- package/dist/js/{install-DASm5cK_.mjs → install-Dp11Tglv.mjs} +29 -5
- package/dist/js/{print-R96tdG4o.mjs → print-B3W2mj7v.mjs} +2 -2
- package/dist/js/{print-share-CV0yi8al.mjs → print-share-BeqALXfJ.mjs} +1 -1
- package/dist/js/{print-WvgqIHDE.mjs → print-tXFnq3lj.mjs} +1 -1
- package/dist/js/{rest-QuEyBIza.mjs → rest-Bfi41NX7.mjs} +1 -1
- package/dist/js/{rest-BST90ebn.mjs → rest-RQRlX_s2.mjs} +1 -1
- package/package.json +5 -5
- package/dist/js/daemon-client-qeLWDtMe.mjs +0 -8
package/dist/js/bin.mjs
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { c as version, s as name, t as createRestClient } from "./rest-
|
|
3
|
-
import { A as getPreference, B as resolveChatAuth, C as DEFAULT_API_URL, D as getConfigPath, E as deleteConfig, F as getStoredApiKeyId, G as saveConfig, H as resolveManagementAuth, I as getStoredApiKeyWorkspaceName, J as setLastSeenVersion, K as saveSession, L as getUpdateCheckDisabled, O as getDefaultAgent, P as getShareMachineDefault, S as API_KEY_PREFIX, T as PREFERENCES, U as resolveSession$1, V as resolveConfig, b as API_KEYS_URL, i as resolveAgent$1, j as getPromptHistoryPath, k as getLastSeenVersion, x as API_KEY_FAMILY_PREFIX, z as resolveAppUrl } from "./print-
|
|
4
|
-
import { A as aliasActivationHint, B as
|
|
2
|
+
import { c as version, s as name, t as createRestClient } from "./rest-RQRlX_s2.mjs";
|
|
3
|
+
import { A as getPreference, B as resolveChatAuth, C as DEFAULT_API_URL, D as getConfigPath, E as deleteConfig, F as getStoredApiKeyId, G as saveConfig, H as resolveManagementAuth, I as getStoredApiKeyWorkspaceName, J as setLastSeenVersion, K as saveSession, L as getUpdateCheckDisabled, O as getDefaultAgent, P as getShareMachineDefault, S as API_KEY_PREFIX, T as PREFERENCES, U as resolveSession$1, V as resolveConfig, b as API_KEYS_URL, i as resolveAgent$1, j as getPromptHistoryPath, k as getLastSeenVersion, x as API_KEY_FAMILY_PREFIX, z as resolveAppUrl } from "./print-tXFnq3lj.mjs";
|
|
4
|
+
import { A as aliasActivationHint, B as getActiveWorkspaceId, E as themes, F as SUPPORTED_SHELLS, H as listWorkspaces, I as defaultInstallEnv, L as detectShell, M as installAgentAlias, N as slugifyAliasName, O as buildImportSeedPrompt, P as takenAliasNames, R as openBestEffort, U as resolveWorkspaceId, V as getSessionIdentity, W as setActiveWorkspace, c as brandHelpArt, d as maybeStartProfiling, f as profileDir, j as dedupeAliasName, k as machineOsFromPlatform, t as installCrashHandler, u as getAutomaticLogsDir, z as ensureActiveOrganization } from "./install-Dp11Tglv.mjs";
|
|
5
5
|
import { n as printError, r as printTable, t as output } from "./output-C9mb3sUB.mjs";
|
|
6
6
|
import { t as HttpError } from "./http-error-BF2NZZE3.mjs";
|
|
7
7
|
import "./billing-blocked-D3l5kJlX.mjs";
|
|
8
|
-
import { s as resolveMachineIdentity } from "./client-
|
|
8
|
+
import { s as resolveMachineIdentity } from "./client-Ba7q9z5g.mjs";
|
|
9
9
|
import "./tls-cert-Rua2oV7n.mjs";
|
|
10
10
|
import { i as grantPortalAccess, n as fetchPortalDevices, o as registerPortalDevice, r as findThisDevice, s as revokePortalAccess } from "./api-BFQ4PQDA.mjs";
|
|
11
|
-
import { d as daemonPaths, i as queryDaemonStatus, n as ensureDaemonRunning, s as stopDaemon, u as PORTAL_DAEMON_FLAG } from "./daemon-
|
|
11
|
+
import { d as daemonPaths, i as queryDaemonStatus, n as ensureDaemonRunning, s as stopDaemon, u as PORTAL_DAEMON_FLAG } from "./daemon-BWfYtIep.mjs";
|
|
12
12
|
import { a as FS_MAX_BLOB_BYTES, i as streamSpecToQuery, n as DEFAULT_EXEC_TIMEOUT_MS, o as decodeFsResponse, r as SANDBOX_STREAM_PATH, s as encodeFsRequest, t as SandboxStream } from "./client-Cxk3khQu.mjs";
|
|
13
13
|
import { hideBin } from "yargs/helpers";
|
|
14
14
|
import yargs from "yargs";
|
|
@@ -17,7 +17,6 @@ import path, { join } from "node:path";
|
|
|
17
17
|
import { err, ok } from "neverthrow";
|
|
18
18
|
import fsp, { mkdtemp, open, readFile, rm, stat, writeFile } from "node:fs/promises";
|
|
19
19
|
import { z } from "zod";
|
|
20
|
-
import open$1 from "open";
|
|
21
20
|
import fs from "node:fs";
|
|
22
21
|
import { spawn, spawnSync } from "node:child_process";
|
|
23
22
|
import { createHash } from "node:crypto";
|
|
@@ -478,7 +477,7 @@ async function loginWithDevice({ appUrl, openBrowser = true }) {
|
|
|
478
477
|
const verificationUrl = code.verification_uri_complete ?? code.verification_uri;
|
|
479
478
|
process.stderr.write(`\nTo sign in, open:\n ${verificationUrl}\n`);
|
|
480
479
|
process.stderr.write(`and enter the code: ${formatUserCode(code.user_code)}\n\n`);
|
|
481
|
-
if (openBrowser) await
|
|
480
|
+
if (openBrowser) await openBestEffort({ target: verificationUrl });
|
|
482
481
|
process.stderr.write("Waiting for approval…\n");
|
|
483
482
|
let intervalMs = (code.interval ?? 5) * 1e3 || DEFAULT_INTERVAL_MS;
|
|
484
483
|
const expiresAt = Date.now() + code.expires_in * 1e3;
|
|
@@ -1176,7 +1175,7 @@ async function resolveTargetAgentId(client, selector) {
|
|
|
1176
1175
|
printError("Missing --agent <id or name>. Run `skydive agents list` for candidates.");
|
|
1177
1176
|
process.exit(1);
|
|
1178
1177
|
}
|
|
1179
|
-
const { resolveAgent } = await import("./print-
|
|
1178
|
+
const { resolveAgent } = await import("./print-B3W2mj7v.mjs");
|
|
1180
1179
|
const result = await client.listAgents({
|
|
1181
1180
|
scope: "org",
|
|
1182
1181
|
limit: 100
|
|
@@ -1985,7 +1984,7 @@ const importCommand = {
|
|
|
1985
1984
|
process.exit(1);
|
|
1986
1985
|
}
|
|
1987
1986
|
}
|
|
1988
|
-
const { runChat } = await import("./boot-
|
|
1987
|
+
const { runChat } = await import("./boot-bYiQ4Pcz.mjs");
|
|
1989
1988
|
await runChat({
|
|
1990
1989
|
appUrl,
|
|
1991
1990
|
sessionToken: session.value.sessionToken,
|
|
@@ -2018,7 +2017,7 @@ async function runImportPrintMode({ argv, appUrl }) {
|
|
|
2018
2017
|
printError(`${session.error.message} For non-interactive use, run \`skydive auth login --web\` first, or set SKYDIVE_SESSION_TOKEN.`);
|
|
2019
2018
|
process.exit(1);
|
|
2020
2019
|
}
|
|
2021
|
-
const { connectMachineShare } = await import("./print-share-
|
|
2020
|
+
const { connectMachineShare } = await import("./print-share-BeqALXfJ.mjs");
|
|
2022
2021
|
const machineShare = await connectMachineShare({
|
|
2023
2022
|
appUrl,
|
|
2024
2023
|
sessionToken: session.value.sessionToken,
|
|
@@ -2029,7 +2028,7 @@ async function runImportPrintMode({ argv, appUrl }) {
|
|
|
2029
2028
|
projectDir: process.cwd(),
|
|
2030
2029
|
os: machineOsFromPlatform(process.platform)
|
|
2031
2030
|
}) + (extra ? `\n\nAdditional instructions: ${extra}` : "");
|
|
2032
|
-
const { runPrint } = await import("./print-
|
|
2031
|
+
const { runPrint } = await import("./print-B3W2mj7v.mjs");
|
|
2033
2032
|
try {
|
|
2034
2033
|
const result = await runPrint({
|
|
2035
2034
|
appUrl,
|
|
@@ -2452,7 +2451,7 @@ const chatCommand = {
|
|
|
2452
2451
|
sessionToken: auth.value.token,
|
|
2453
2452
|
agentSelector: argv.agent ?? null
|
|
2454
2453
|
});
|
|
2455
|
-
const { runChat } = await import("./boot-
|
|
2454
|
+
const { runChat } = await import("./boot-bYiQ4Pcz.mjs");
|
|
2456
2455
|
await runChat({
|
|
2457
2456
|
appUrl: auth.value.appUrl,
|
|
2458
2457
|
sessionToken: auth.value.token,
|
|
@@ -2536,7 +2535,7 @@ async function runPrintMode({ argv, appUrl }) {
|
|
|
2536
2535
|
printError(`${auth.error.message} For non-interactive use, run \`skydive auth login\` first, or set SKYDIVE_API_KEY / SKYDIVE_SESSION_TOKEN.`);
|
|
2537
2536
|
process.exit(1);
|
|
2538
2537
|
}
|
|
2539
|
-
const { runPrint, readStdin } = await import("./print-
|
|
2538
|
+
const { runPrint, readStdin } = await import("./print-B3W2mj7v.mjs");
|
|
2540
2539
|
const workspaceId = await resolveWorkspaceFlag({
|
|
2541
2540
|
appUrl,
|
|
2542
2541
|
sessionToken: auth.value.token,
|
|
@@ -2566,7 +2565,7 @@ async function runPrintMode({ argv, appUrl }) {
|
|
|
2566
2565
|
process.exit(1);
|
|
2567
2566
|
}
|
|
2568
2567
|
} else {
|
|
2569
|
-
const { connectMachineShare } = await import("./print-share-
|
|
2568
|
+
const { connectMachineShare } = await import("./print-share-BeqALXfJ.mjs");
|
|
2570
2569
|
machineShare = await connectMachineShare({
|
|
2571
2570
|
appUrl: auth.value.appUrl,
|
|
2572
2571
|
sessionToken: auth.value.token,
|
|
@@ -2631,7 +2630,7 @@ const getCommand$1 = {
|
|
|
2631
2630
|
printError(`${auth.error.message} Run \`skydive auth login\` first, or set SKYDIVE_API_KEY / SKYDIVE_SESSION_TOKEN.`);
|
|
2632
2631
|
process.exit(1);
|
|
2633
2632
|
}
|
|
2634
|
-
const { messageGet } = await import("./print-
|
|
2633
|
+
const { messageGet } = await import("./print-B3W2mj7v.mjs");
|
|
2635
2634
|
try {
|
|
2636
2635
|
const result = await messageGet({
|
|
2637
2636
|
appUrl: auth.value.appUrl,
|
|
@@ -2834,7 +2833,7 @@ const switchCommand = {
|
|
|
2834
2833
|
printError("The workspace picker needs the Bun runtime and it could not be set up automatically. Pass a workspace slug instead, or install Bun and retry.");
|
|
2835
2834
|
process.exit(1);
|
|
2836
2835
|
}
|
|
2837
|
-
const { runWorkspacePicker } = await import("./boot-
|
|
2836
|
+
const { runWorkspacePicker } = await import("./boot-bYiQ4Pcz.mjs");
|
|
2838
2837
|
await runWorkspacePicker(session);
|
|
2839
2838
|
return;
|
|
2840
2839
|
}
|
|
@@ -2913,7 +2912,7 @@ const openCommand = {
|
|
|
2913
2912
|
const agent = argv.agent ? resolveAgent$1((await fetchPortalDevices(session)).agents, argv.agent) : null;
|
|
2914
2913
|
const cwd = argv.cwd ? path.resolve(argv.cwd) : process.cwd();
|
|
2915
2914
|
const { machineName } = await resolveMachineIdentity(null);
|
|
2916
|
-
const { PortalDaemonClient } = await import("./daemon-client-
|
|
2915
|
+
const { PortalDaemonClient } = await import("./daemon-client-wVeH3Ttb.mjs");
|
|
2917
2916
|
let lastLine = "";
|
|
2918
2917
|
let signalConnected;
|
|
2919
2918
|
const connected = new Promise((resolve) => {
|
|
@@ -3273,8 +3272,8 @@ const sandboxCommand = {
|
|
|
3273
3272
|
}).example("skydive sandbox --agent grace", "Live terminal (Ctrl-] detaches)").example("skydive sandbox --agent grace -- tail -n 50 /tmp/harness.log", "One-shot command (use `--` so its flags reach the sandbox)").example("skydive sandbox --agent grace -- sh -c 'ls /tmp | wc -l'", "Shell features go through an explicit `sh -c`"),
|
|
3274
3273
|
handler: async (argv) => {
|
|
3275
3274
|
const session = requireSession(argv);
|
|
3276
|
-
const { createRestClient } = await import("./rest-
|
|
3277
|
-
const { resolveAgent } = await import("./print-
|
|
3275
|
+
const { createRestClient } = await import("./rest-Bfi41NX7.mjs");
|
|
3276
|
+
const { resolveAgent } = await import("./print-B3W2mj7v.mjs");
|
|
3278
3277
|
const client = createRestClient({
|
|
3279
3278
|
appUrl: session.appUrl,
|
|
3280
3279
|
sessionToken: session.sessionToken
|
|
@@ -3566,8 +3565,8 @@ function resolveEditor(override, env, platform = process.platform) {
|
|
|
3566
3565
|
* `sandbox-fs-enabled` kill switch) exits here before any file work.
|
|
3567
3566
|
*/
|
|
3568
3567
|
async function openAgentFs(session, agentSelector) {
|
|
3569
|
-
const { createRestClient } = await import("./rest-
|
|
3570
|
-
const { resolveAgent } = await import("./print-
|
|
3568
|
+
const { createRestClient } = await import("./rest-Bfi41NX7.mjs");
|
|
3569
|
+
const { resolveAgent } = await import("./print-B3W2mj7v.mjs");
|
|
3571
3570
|
let agent;
|
|
3572
3571
|
try {
|
|
3573
3572
|
agent = resolveAgent(await createRestClient({
|
|
@@ -4898,7 +4897,7 @@ async function offerIssueReport(archivePath) {
|
|
|
4898
4897
|
console.log(`File an issue: ${ISSUE_REPOSITORY_URL}`);
|
|
4899
4898
|
return;
|
|
4900
4899
|
}
|
|
4901
|
-
await
|
|
4900
|
+
await openBestEffort({ target: issueUrl(archivePath) });
|
|
4902
4901
|
console.log(`Attach the diagnostics archive: ${archivePath}`);
|
|
4903
4902
|
} finally {
|
|
4904
4903
|
prompt.close();
|
|
@@ -5357,7 +5356,7 @@ if (process.argv.includes(UPDATE_WORKER_FLAG)) {
|
|
|
5357
5356
|
process.exit(0);
|
|
5358
5357
|
}
|
|
5359
5358
|
if (process.argv.includes(PORTAL_DAEMON_FLAG)) {
|
|
5360
|
-
const { runPortalDaemon } = await import("./daemon-
|
|
5359
|
+
const { runPortalDaemon } = await import("./daemon-Nxf6diPa.mjs");
|
|
5361
5360
|
runPortalDaemon(process.argv);
|
|
5362
5361
|
} else runCli();
|
|
5363
5362
|
function runCli() {
|
|
@@ -1,22 +1,21 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { a as errorMessage, i as sendErrorMessage, n as errorDetail, o as isRecord, t as createRestClient } from "./rest-
|
|
3
|
-
import { C as DEFAULT_API_URL, D as getConfigPath, M as getReviewStateDir, N as getSavedTheme, R as recordDefaultAgent, W as resolveWebUrl, _ as computeSettledLabel, c as actionableCardVerb, d as parseOauthConnectParams, f as prioritizeActionableCards, g as composeQuestionAnswerEntries, h as composeQuestionAnswer, i as resolveAgent, l as cardActionErrorMessage, m as resolveConnectUrl, p as reconcileMaskedInput, q as saveTheme, s as MASK_CHAR, u as parseExternalOauthConnectParams, v as parseConnectCard, w as DEFAULT_APP_URL, y as specKeyFor } from "./print-
|
|
4
|
-
import { A as aliasActivationHint, C as themeMode, D as themesForMode, L as detectShell, M as installAgentAlias, N as slugifyAliasName, P as takenAliasNames, S as themeForMode, T as themeVersion,
|
|
2
|
+
import { a as errorMessage, i as sendErrorMessage, n as errorDetail, o as isRecord, t as createRestClient } from "./rest-RQRlX_s2.mjs";
|
|
3
|
+
import { C as DEFAULT_API_URL, D as getConfigPath, M as getReviewStateDir, N as getSavedTheme, R as recordDefaultAgent, W as resolveWebUrl, _ as computeSettledLabel, c as actionableCardVerb, d as parseOauthConnectParams, f as prioritizeActionableCards, g as composeQuestionAnswerEntries, h as composeQuestionAnswer, i as resolveAgent, l as cardActionErrorMessage, m as resolveConnectUrl, p as reconcileMaskedInput, q as saveTheme, s as MASK_CHAR, u as parseExternalOauthConnectParams, v as parseConnectCard, w as DEFAULT_APP_URL, y as specKeyFor } from "./print-tXFnq3lj.mjs";
|
|
4
|
+
import { A as aliasActivationHint, B as getActiveWorkspaceId, C as themeMode, D as themesForMode, H as listWorkspaces, L as detectShell, M as installAgentAlias, N as slugifyAliasName, P as takenAliasNames, R as openBestEffort, S as themeForMode, T as themeVersion, W as setActiveWorkspace, _ as applyTheme, a as writeCrashReport, b as noColorRequested, g as DEFAULT_THEME_ID, h as writeArtifact, i as buildCrashReport, j as dedupeAliasName, k as machineOsFromPlatform, l as splashFitsWidth, m as record, n as disableTerminalAutowrap, o as MARK_CELLS, p as profilingEnabled, r as restoreTerminalAutowrap, s as WORDMARK, t as installCrashHandler, v as findTheme, w as themeModeFromColorFgBg, x as theme, y as monoTheme } from "./install-Dp11Tglv.mjs";
|
|
5
5
|
import { t as HttpError } from "./http-error-BF2NZZE3.mjs";
|
|
6
6
|
import { i as billingBlockedOutcomeFromSendResponse } from "./billing-blocked-D3l5kJlX.mjs";
|
|
7
|
-
import { n as PortalClient } from "./client-
|
|
7
|
+
import { n as PortalClient } from "./client-Ba7q9z5g.mjs";
|
|
8
8
|
import { t as defaultTlsCertSource } from "./tls-cert-Rua2oV7n.mjs";
|
|
9
9
|
import "./api-BFQ4PQDA.mjs";
|
|
10
|
-
import "./daemon-
|
|
10
|
+
import "./daemon-BWfYtIep.mjs";
|
|
11
11
|
import { t as SandboxStream } from "./client-Cxk3khQu.mjs";
|
|
12
|
-
import { t as PortalDaemonClient } from "./daemon-client-
|
|
12
|
+
import { t as PortalDaemonClient } from "./daemon-client-CjWAPVZh.mjs";
|
|
13
13
|
import { t as runRawPtyPassthrough } from "./raw-pty-B-WKaaE3.mjs";
|
|
14
14
|
import * as os$1 from "node:os";
|
|
15
15
|
import { homedir, platform, release, tmpdir } from "node:os";
|
|
16
16
|
import path, { basename, extname, isAbsolute, join, posix, win32 } from "node:path";
|
|
17
17
|
import { access, appendFile, mkdir, mkdtemp, readFile, readdir, rename, rm, stat, unlink, writeFile } from "node:fs/promises";
|
|
18
18
|
import { z } from "zod";
|
|
19
|
-
import open$1 from "open";
|
|
20
19
|
import { constants } from "node:fs";
|
|
21
20
|
import { execFile, spawn } from "node:child_process";
|
|
22
21
|
import { createHash } from "node:crypto";
|
|
@@ -13174,7 +13173,7 @@ function unfoldSettled(current) {
|
|
|
13174
13173
|
* shortcut), which would otherwise shadow it inside the component body.
|
|
13175
13174
|
*/
|
|
13176
13175
|
async function openUrlInBrowser(url) {
|
|
13177
|
-
await
|
|
13176
|
+
await openBestEffort({ target: url });
|
|
13178
13177
|
}
|
|
13179
13178
|
function isActionableCard(m) {
|
|
13180
13179
|
return m.kind === "card" && m.status !== "done" && m.status !== "busy" && m.card.button !== null;
|
|
@@ -16142,7 +16141,7 @@ function useConversationActions({ rest, appUrl, conversationId, agent, goTo, dri
|
|
|
16142
16141
|
return;
|
|
16143
16142
|
}
|
|
16144
16143
|
const url = `${resolveWebUrl(appUrl)}/c/${encodeURIComponent(conversationId)}`;
|
|
16145
|
-
|
|
16144
|
+
openBestEffort({ target: url }).then(() => useStore.getState().showToast({
|
|
16146
16145
|
message: `opened in browser: ${url}`,
|
|
16147
16146
|
variant: "success"
|
|
16148
16147
|
})).catch((err) => setItems((prev) => [...prev, {
|
|
@@ -16156,7 +16155,7 @@ function useConversationActions({ rest, appUrl, conversationId, agent, goTo, dri
|
|
|
16156
16155
|
const target = itemsRef.current.find((m) => m.kind === "agent-file" && m.id === id);
|
|
16157
16156
|
if (!target || target.status === "saving") return;
|
|
16158
16157
|
if (target.status === "saved" && target.savedPath) {
|
|
16159
|
-
|
|
16158
|
+
openBestEffort({ target: target.savedPath });
|
|
16160
16159
|
useStore.getState().showToast({
|
|
16161
16160
|
message: `opened ${basename(target.savedPath)}`,
|
|
16162
16161
|
variant: "success"
|
|
@@ -16187,7 +16186,7 @@ function useConversationActions({ rest, appUrl, conversationId, agent, goTo, dri
|
|
|
16187
16186
|
message: `saved to ${path}`,
|
|
16188
16187
|
variant: "success"
|
|
16189
16188
|
});
|
|
16190
|
-
|
|
16189
|
+
openBestEffort({ target: path });
|
|
16191
16190
|
} catch (err) {
|
|
16192
16191
|
patch({
|
|
16193
16192
|
status: "error",
|
|
@@ -161,7 +161,7 @@ function errorMessage(err) {
|
|
|
161
161
|
* the commit time of the built tree is one monotonic clock they share.
|
|
162
162
|
*/
|
|
163
163
|
function portalDaemonBuild() {
|
|
164
|
-
return "
|
|
164
|
+
return "1793843832";
|
|
165
165
|
}
|
|
166
166
|
/**
|
|
167
167
|
* Whether a client carrying `mine` should replace a running daemon carrying
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { n as PortalClient, r as RATE_LIMIT_STAND_DOWN_MS, t as AUTH_STAND_DOWN_MS } from "./client-
|
|
2
|
+
import { n as PortalClient, r as RATE_LIMIT_STAND_DOWN_MS, t as AUTH_STAND_DOWN_MS } from "./client-Ba7q9z5g.mjs";
|
|
3
3
|
import "./api-BFQ4PQDA.mjs";
|
|
4
4
|
|
|
5
5
|
export { PortalClient };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { a as portalDaemonBuild, i as isNewerBuild, n as PortalClient, o as isRecord } from "./client-
|
|
2
|
+
import { a as portalDaemonBuild, i as isNewerBuild, n as PortalClient, o as isRecord } from "./client-Ba7q9z5g.mjs";
|
|
3
3
|
import { t as defaultTlsCertSource } from "./tls-cert-Rua2oV7n.mjs";
|
|
4
4
|
import os from "node:os";
|
|
5
5
|
import path from "node:path";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import "./client-
|
|
2
|
+
import "./client-Ba7q9z5g.mjs";
|
|
3
3
|
import "./tls-cert-Rua2oV7n.mjs";
|
|
4
4
|
import "./api-BFQ4PQDA.mjs";
|
|
5
|
-
import { a as runPortalDaemon, c as stopDaemonForHandoff, i as queryDaemonStatus, n as ensureDaemonRunning, o as startPortalDaemon, r as isDaemonListening, s as stopDaemon, t as PortalDaemon } from "./daemon-
|
|
5
|
+
import { a as runPortalDaemon, c as stopDaemonForHandoff, i as queryDaemonStatus, n as ensureDaemonRunning, o as startPortalDaemon, r as isDaemonListening, s as stopDaemon, t as PortalDaemon } from "./daemon-BWfYtIep.mjs";
|
|
6
6
|
|
|
7
7
|
export { runPortalDaemon };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { d as daemonPaths, f as encodeLine, l as LOCAL_PROTOCOL_VERSION, m as parseDaemonMessage, n as ensureDaemonRunning, p as makeLineParser } from "./daemon-
|
|
2
|
+
import { d as daemonPaths, f as encodeLine, l as LOCAL_PROTOCOL_VERSION, m as parseDaemonMessage, n as ensureDaemonRunning, p as makeLineParser } from "./daemon-BWfYtIep.mjs";
|
|
3
3
|
import { randomUUID } from "node:crypto";
|
|
4
4
|
import { connect } from "node:net";
|
|
5
5
|
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { c as version$1 } from "./rest-
|
|
3
|
-
import { D as getConfigPath } from "./print-
|
|
2
|
+
import { c as version$1 } from "./rest-RQRlX_s2.mjs";
|
|
3
|
+
import { D as getConfigPath } from "./print-tXFnq3lj.mjs";
|
|
4
4
|
import os from "node:os";
|
|
5
|
-
import path from "node:path";
|
|
5
|
+
import path, { delimiter, join } from "node:path";
|
|
6
6
|
import { err, ok } from "neverthrow";
|
|
7
7
|
import { z } from "zod";
|
|
8
|
-
import
|
|
8
|
+
import open from "open";
|
|
9
|
+
import fs, { accessSync, constants } from "node:fs";
|
|
9
10
|
|
|
10
11
|
//#region src/auth/organization.ts
|
|
11
12
|
const workspaceSchema = z.object({
|
|
@@ -147,6 +148,29 @@ async function ensureActiveOrganization({ appUrl, sessionToken }) {
|
|
|
147
148
|
});
|
|
148
149
|
}
|
|
149
150
|
|
|
151
|
+
//#endregion
|
|
152
|
+
//#region src/open-url.ts
|
|
153
|
+
function isOnPath(command) {
|
|
154
|
+
return (process.env.PATH ?? "").split(delimiter).filter(Boolean).some((dir) => {
|
|
155
|
+
try {
|
|
156
|
+
accessSync(join(dir, command), constants.X_OK);
|
|
157
|
+
return true;
|
|
158
|
+
} catch {
|
|
159
|
+
return false;
|
|
160
|
+
}
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Best-effort open of a URL or file in the OS default app. On Linux, skips
|
|
165
|
+
* silently when xdg-open is missing: `open` spawns it detached with no error
|
|
166
|
+
* handler, and under Bun the resulting ENOENT error event fires before the
|
|
167
|
+
* caller can attach a listener, killing the process.
|
|
168
|
+
*/
|
|
169
|
+
async function openBestEffort({ target }) {
|
|
170
|
+
if (process.platform === "linux" && !isOnPath("xdg-open")) return;
|
|
171
|
+
await open(target).catch(() => void 0);
|
|
172
|
+
}
|
|
173
|
+
|
|
150
174
|
//#endregion
|
|
151
175
|
//#region src/shell/shell-env.ts
|
|
152
176
|
/**
|
|
@@ -1642,4 +1666,4 @@ function printFatalNotice(file, memory) {
|
|
|
1642
1666
|
}
|
|
1643
1667
|
|
|
1644
1668
|
//#endregion
|
|
1645
|
-
export { aliasActivationHint as A,
|
|
1669
|
+
export { aliasActivationHint as A, getActiveWorkspaceId as B, themeMode as C, themesForMode as D, themes as E, SUPPORTED_SHELLS as F, listWorkspaces as H, defaultInstallEnv as I, detectShell as L, installAgentAlias as M, slugifyAliasName as N, buildImportSeedPrompt as O, takenAliasNames as P, openBestEffort as R, themeForMode as S, themeVersion as T, resolveWorkspaceId as U, getSessionIdentity as V, setActiveWorkspace as W, applyTheme as _, writeCrashReport as a, noColorRequested as b, brandHelpArt as c, maybeStartProfiling as d, profileDir as f, DEFAULT_THEME_ID as g, writeArtifact as h, buildCrashReport as i, dedupeAliasName as j, machineOsFromPlatform as k, splashFitsWidth as l, record as m, disableTerminalAutowrap as n, MARK_CELLS as o, profilingEnabled as p, restoreTerminalAutowrap as r, WORDMARK as s, installCrashHandler as t, getAutomaticLogsDir as u, findTheme as v, themeModeFromColorFgBg as w, theme as x, monoTheme as y, ensureActiveOrganization as z };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import "./rest-
|
|
3
|
-
import { a as runPrint, i as resolveAgent, n as messageGet, o as toPrintError, r as readStdin, t as collectRunText } from "./print-
|
|
2
|
+
import "./rest-RQRlX_s2.mjs";
|
|
3
|
+
import { a as runPrint, i as resolveAgent, n as messageGet, o as toPrintError, r as readStdin, t as collectRunText } from "./print-tXFnq3lj.mjs";
|
|
4
4
|
import "./billing-blocked-D3l5kJlX.mjs";
|
|
5
5
|
|
|
6
6
|
export { messageGet, readStdin, resolveAgent, runPrint };
|
|
@@ -14,7 +14,7 @@ import { n as printError } from "./output-C9mb3sUB.mjs";
|
|
|
14
14
|
* the reply (and to --json).
|
|
15
15
|
*/
|
|
16
16
|
async function connectMachineShare({ appUrl, sessionToken, timeoutHint }) {
|
|
17
|
-
const { PortalClient } = await import("./client-
|
|
17
|
+
const { PortalClient } = await import("./client-jr9NQaCu.mjs");
|
|
18
18
|
const { defaultTlsCertSource } = await import("./tls-cert-BpCaD5AT.mjs");
|
|
19
19
|
let signalConnected;
|
|
20
20
|
const connected = new Promise((resolve) => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { a as errorMessage, i as sendErrorMessage, o as isRecord, t as createRestClient } from "./rest-
|
|
2
|
+
import { a as errorMessage, i as sendErrorMessage, o as isRecord, t as createRestClient } from "./rest-RQRlX_s2.mjs";
|
|
3
3
|
import { t as HttpError } from "./http-error-BF2NZZE3.mjs";
|
|
4
4
|
import { i as billingBlockedOutcomeFromSendResponse, n as BillingBlockedError } from "./billing-blocked-D3l5kJlX.mjs";
|
|
5
5
|
import path from "node:path";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { i as sendErrorMessage, n as errorDetail, r as filenameFromContentDisposition, t as createRestClient } from "./rest-
|
|
2
|
+
import { i as sendErrorMessage, n as errorDetail, r as filenameFromContentDisposition, t as createRestClient } from "./rest-RQRlX_s2.mjs";
|
|
3
3
|
import { t as HttpError } from "./http-error-BF2NZZE3.mjs";
|
|
4
4
|
import "./billing-blocked-D3l5kJlX.mjs";
|
|
5
5
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "skydive-cli",
|
|
3
|
-
"version": "0.6.0-beta.
|
|
3
|
+
"version": "0.6.0-beta.227",
|
|
4
4
|
"description": "Skydive CLI — cloud agents from the command line",
|
|
5
5
|
"homepage": "https://skydive.com",
|
|
6
6
|
"license": "MIT",
|
|
@@ -72,9 +72,9 @@
|
|
|
72
72
|
},
|
|
73
73
|
"//optionalDependencies": "The per-platform binary packages (skydive-cli-<os>-<arch>) are INTENTIONALLY not committed here. They are published by release-skydive-cli-binaries.yml and injected — pinned to the exact version being published — into the published launcher's optionalDependencies at release time (scripts/prepare-platform-packages.mjs --pin-version, run in release-skydive-cli.yml). Committing them would make `yarn install` try to resolve versions that only exist post-publish, breaking local dev and CI. npm installs of a published skydive-cli still get them (os/cpu-gated); the launcher (src/launcher.ts) resolves and execs the matching one. Local dev never needs them: it runs the JS bundle or `build:binary` directly.",
|
|
74
74
|
"optionalDependencies": {
|
|
75
|
-
"skydive-cli-darwin-arm64": "0.6.0-beta.
|
|
76
|
-
"skydive-cli-darwin-x64": "0.6.0-beta.
|
|
77
|
-
"skydive-cli-linux-x64": "0.6.0-beta.
|
|
78
|
-
"skydive-cli-linux-arm64": "0.6.0-beta.
|
|
75
|
+
"skydive-cli-darwin-arm64": "0.6.0-beta.227",
|
|
76
|
+
"skydive-cli-darwin-x64": "0.6.0-beta.227",
|
|
77
|
+
"skydive-cli-linux-x64": "0.6.0-beta.227",
|
|
78
|
+
"skydive-cli-linux-arm64": "0.6.0-beta.227"
|
|
79
79
|
}
|
|
80
80
|
}
|