svamp-cli 0.2.279 → 0.2.281
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/adminCommands-Dc-nM2T4.mjs +100 -0
- package/dist/{agentCommands-CZjZsqJC.mjs → agentCommands-i-qaq_2s.mjs} +5 -5
- package/dist/{auth-CFWhaPVg.mjs → auth-DDr5dyj0.mjs} +1 -1
- package/dist/{cli-E1osBiyj.mjs → cli-Bp0pUO_8.mjs} +81 -65
- package/dist/cli.mjs +2 -2
- package/dist/{commands-Chlqo2DT.mjs → commands-BFLKkIyS.mjs} +1 -1
- package/dist/{commands-1FkeAcQD.mjs → commands-BnI1mRkf.mjs} +2 -2
- package/dist/{commands-GYPd_Ddj.mjs → commands-CKM28jKj.mjs} +7 -7
- package/dist/{commands-ux1fl1qK.mjs → commands-CdjKMUGJ.mjs} +1 -1
- package/dist/{commands-TFNC2BuR.mjs → commands-Cz4cl4Th.mjs} +2 -2
- package/dist/{commands-DW0HvMa8.mjs → commands-D8OeSTxb.mjs} +1 -1
- package/dist/{commands-C_XFxrjC.mjs → commands-DmdJbFhU.mjs} +2 -2
- package/dist/{fleet-cu0bUH3v.mjs → fleet-DCwX4RTF.mjs} +1 -1
- package/dist/{frpc-B1-dyz8z.mjs → frpc-Dst1Xkue.mjs} +1 -1
- package/dist/{headlessCli-BvoiOGxZ.mjs → headlessCli-CyCQlRjV.mjs} +2 -2
- package/dist/index.mjs +1 -1
- package/dist/{notifyCommands-BrD5qNdF.mjs → notifyCommands-CfvUfjfP.mjs} +1 -1
- package/dist/{package-BVdnXBp4.mjs → package-DoBwyCNL.mjs} +1 -1
- package/dist/{rpc-2I8SlTrz.mjs → rpc-DXZSyYAh.mjs} +1 -1
- package/dist/{rpc-DKY7-oh-.mjs → rpc-Dt3gekac.mjs} +1 -1
- package/dist/{run-B10NKlSF.mjs → run-C75iKIIt.mjs} +1 -1
- package/dist/{run-BtIiSNjM.mjs → run-DSlJ62Xb.mjs} +25 -26
- package/dist/{scheduler-BOnAtzax.mjs → scheduler-CTndQ5_D.mjs} +1 -1
- package/dist/{serveCommands-DdZcK0Q9.mjs → serveCommands-CC32Vh-8.mjs} +5 -5
- package/dist/{sideband-BjUyyMW7.mjs → sideband-DAZlMFIi.mjs} +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { c as connectToHypha, K as computeCollectionConfigUpdate } from './run-DSlJ62Xb.mjs';
|
|
2
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
3
|
+
import { join } from 'node:path';
|
|
4
|
+
import os from 'node:os';
|
|
5
|
+
import 'os';
|
|
6
|
+
import 'fs/promises';
|
|
7
|
+
import 'fs';
|
|
8
|
+
import 'path';
|
|
9
|
+
import 'url';
|
|
10
|
+
import 'child_process';
|
|
11
|
+
import 'crypto';
|
|
12
|
+
import 'node:crypto';
|
|
13
|
+
import 'node:child_process';
|
|
14
|
+
import 'util';
|
|
15
|
+
import 'http';
|
|
16
|
+
import 'net';
|
|
17
|
+
import 'node:events';
|
|
18
|
+
import '@agentclientprotocol/sdk';
|
|
19
|
+
import 'node:readline';
|
|
20
|
+
import 'node:fs/promises';
|
|
21
|
+
import 'node:util';
|
|
22
|
+
import 'yaml';
|
|
23
|
+
|
|
24
|
+
function loadEnv() {
|
|
25
|
+
const SVAMP_HOME = process.env.SVAMP_HOME || join(os.homedir(), ".svamp");
|
|
26
|
+
for (const f of [join(SVAMP_HOME, ".env"), join(os.homedir(), ".hypha", ".env")]) {
|
|
27
|
+
if (!existsSync(f)) continue;
|
|
28
|
+
try {
|
|
29
|
+
for (const line of readFileSync(f, "utf-8").split("\n")) {
|
|
30
|
+
const m = line.match(/^\s*([A-Za-z0-9_]+)\s*=\s*(.*)\s*$/);
|
|
31
|
+
if (m && process.env[m[1]] === void 0) process.env[m[1]] = m[2].replace(/^["']|["']$/g, "");
|
|
32
|
+
}
|
|
33
|
+
} catch {
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
async function setCollectionConfig(alias, configJson) {
|
|
38
|
+
if (!alias || !configJson) {
|
|
39
|
+
console.error("Usage: svamp admin set-collection-config <alias> --config '<json>'");
|
|
40
|
+
console.error(` e.g. svamp admin set-collection-config svamp-user-events --config '{"private_children":true,"recipient_field":"recipientEmail"}'`);
|
|
41
|
+
process.exit(1);
|
|
42
|
+
}
|
|
43
|
+
let extra;
|
|
44
|
+
try {
|
|
45
|
+
extra = JSON.parse(configJson);
|
|
46
|
+
if (!extra || typeof extra !== "object" || Array.isArray(extra)) throw new Error("config must be a JSON object");
|
|
47
|
+
} catch (e) {
|
|
48
|
+
console.error(`--config must be a JSON object: ${e.message}`);
|
|
49
|
+
process.exit(1);
|
|
50
|
+
}
|
|
51
|
+
loadEnv();
|
|
52
|
+
const serverUrl = process.env.HYPHA_SERVER_URL;
|
|
53
|
+
const token = process.env.HYPHA_TOKEN;
|
|
54
|
+
if (!serverUrl || !token) {
|
|
55
|
+
console.error('Not logged in. Run "svamp login <url>" first.');
|
|
56
|
+
process.exit(1);
|
|
57
|
+
}
|
|
58
|
+
let server;
|
|
59
|
+
try {
|
|
60
|
+
server = await connectToHypha({ serverUrl, token, name: "svamp-admin-cli" });
|
|
61
|
+
} catch (e) {
|
|
62
|
+
console.error(`Failed to connect to Hypha: ${e.message}`);
|
|
63
|
+
process.exit(1);
|
|
64
|
+
}
|
|
65
|
+
try {
|
|
66
|
+
const am = await server.getService("public/artifact-manager");
|
|
67
|
+
if (!am) {
|
|
68
|
+
console.error("Artifact manager not available.");
|
|
69
|
+
process.exit(1);
|
|
70
|
+
}
|
|
71
|
+
let col;
|
|
72
|
+
try {
|
|
73
|
+
col = await am.read({ artifact_id: alias, _rkwargs: true });
|
|
74
|
+
} catch (e) {
|
|
75
|
+
console.error(`Collection "${alias}" not found (or not readable): ${e.message}`);
|
|
76
|
+
process.exit(1);
|
|
77
|
+
}
|
|
78
|
+
const { changed, merged } = computeCollectionConfigUpdate(col.config, extra);
|
|
79
|
+
if (!changed) {
|
|
80
|
+
console.log(`${alias}: config already up to date (no change).`);
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
try {
|
|
84
|
+
await am.edit({ artifact_id: col.id, config: merged, _rkwargs: true });
|
|
85
|
+
await am.commit({ artifact_id: col.id, _rkwargs: true }).catch(() => {
|
|
86
|
+
});
|
|
87
|
+
} catch (e) {
|
|
88
|
+
console.error(`Failed to set config on "${alias}" (need owner/admin/root rights): ${e.message}`);
|
|
89
|
+
process.exit(1);
|
|
90
|
+
}
|
|
91
|
+
console.log(`\u2713 ${alias}: merged {${Object.keys(extra).join(", ")}} into config (existing keys preserved).`);
|
|
92
|
+
} finally {
|
|
93
|
+
try {
|
|
94
|
+
await server.disconnect?.();
|
|
95
|
+
} catch {
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
export { setCollectionConfig };
|
|
@@ -2,7 +2,7 @@ import { existsSync, readFileSync, mkdirSync, writeFileSync, renameSync } from '
|
|
|
2
2
|
import { join, dirname } from 'node:path';
|
|
3
3
|
import os from 'node:os';
|
|
4
4
|
import { requireNotSandboxed } from './sandboxDetect-DNTcbgWD.mjs';
|
|
5
|
-
import { i as shortId } from './run-
|
|
5
|
+
import { i as shortId } from './run-DSlJ62Xb.mjs';
|
|
6
6
|
import 'os';
|
|
7
7
|
import 'fs/promises';
|
|
8
8
|
import 'fs';
|
|
@@ -96,7 +96,7 @@ async function sessionSetTitle(title) {
|
|
|
96
96
|
}
|
|
97
97
|
async function sessionSetProjectDescription(description) {
|
|
98
98
|
const dir = process.cwd();
|
|
99
|
-
const { projectName, writeProjectInfo, sanitizeDescription, projectInfoPath } = await import('./run-
|
|
99
|
+
const { projectName, writeProjectInfo, sanitizeDescription, projectInfoPath } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.ao; });
|
|
100
100
|
const desc = sanitizeDescription(description, 240);
|
|
101
101
|
if (!desc) {
|
|
102
102
|
console.error("Project description is empty.");
|
|
@@ -343,7 +343,7 @@ async function sessionBroadcast(action, args) {
|
|
|
343
343
|
console.log(`Broadcast sent: ${action}`);
|
|
344
344
|
}
|
|
345
345
|
async function connectToMachineService() {
|
|
346
|
-
const { connectAndGetMachine } = await import('./commands-
|
|
346
|
+
const { connectAndGetMachine } = await import('./commands-CdjKMUGJ.mjs');
|
|
347
347
|
return connectAndGetMachine();
|
|
348
348
|
}
|
|
349
349
|
function buildInboxMessage(args) {
|
|
@@ -421,7 +421,7 @@ async function inboxSend(targetSessionId, opts) {
|
|
|
421
421
|
console.error("Message body is required.");
|
|
422
422
|
process.exit(1);
|
|
423
423
|
}
|
|
424
|
-
const { connectAndResolveSession } = await import('./commands-
|
|
424
|
+
const { connectAndResolveSession } = await import('./commands-CdjKMUGJ.mjs');
|
|
425
425
|
let server;
|
|
426
426
|
try {
|
|
427
427
|
const { targetId, messageId } = await inboxSendCore(
|
|
@@ -475,7 +475,7 @@ async function inboxReply(messageId, body) {
|
|
|
475
475
|
console.error("SVAMP_SESSION_ID not set. This command must be run inside a Svamp session.");
|
|
476
476
|
process.exit(1);
|
|
477
477
|
}
|
|
478
|
-
const { connectAndResolveSession } = await import('./commands-
|
|
478
|
+
const { connectAndResolveSession } = await import('./commands-CdjKMUGJ.mjs');
|
|
479
479
|
const { server: localServer, machine: localMachine } = await connectToMachineService();
|
|
480
480
|
let localDisconnected = false;
|
|
481
481
|
const disconnectLocal = async () => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { a0 as clearStopMarker, a1 as stopMarkerExists, s as startDaemon, b as stopDaemon, d as daemonStatus } from './run-DSlJ62Xb.mjs';
|
|
2
2
|
import { ensureSupervisorViaServiceManager, LAUNCHD_LABEL } from './serviceManager-hlOVxkhW.mjs';
|
|
3
3
|
|
|
4
4
|
function flushAndExit(code) {
|
|
@@ -33,7 +33,7 @@ const subcommand = args[0];
|
|
|
33
33
|
let daemonSubcommand = args[1];
|
|
34
34
|
async function main() {
|
|
35
35
|
try {
|
|
36
|
-
const { getLoadedConfig } = await import('./run-
|
|
36
|
+
const { getLoadedConfig } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.al; });
|
|
37
37
|
getLoadedConfig();
|
|
38
38
|
} catch {
|
|
39
39
|
}
|
|
@@ -52,7 +52,7 @@ async function main() {
|
|
|
52
52
|
}
|
|
53
53
|
const whenIdle = args.includes("--when-idle");
|
|
54
54
|
const force = args.includes("--force");
|
|
55
|
-
const mod = await import('./run-
|
|
55
|
+
const mod = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.av; });
|
|
56
56
|
if (whenIdle && !force) {
|
|
57
57
|
if (mod.isDaemonAlive()) {
|
|
58
58
|
mod.writePendingRestart({ reason: "svamp daemon restart --when-idle" });
|
|
@@ -356,7 +356,7 @@ async function main() {
|
|
|
356
356
|
console.error("svamp service: Service commands are not available in sandboxed sessions.");
|
|
357
357
|
process.exit(1);
|
|
358
358
|
}
|
|
359
|
-
const { handleServiceCommand } = await import('./commands-
|
|
359
|
+
const { handleServiceCommand } = await import('./commands-CKM28jKj.mjs');
|
|
360
360
|
await handleServiceCommand();
|
|
361
361
|
} else if (subcommand === "serve") {
|
|
362
362
|
const { isSandboxed: isSandboxedServe } = await import('./sandboxDetect-DNTcbgWD.mjs');
|
|
@@ -364,7 +364,7 @@ async function main() {
|
|
|
364
364
|
console.error("svamp serve: Serve commands are not available in sandboxed sessions.");
|
|
365
365
|
process.exit(1);
|
|
366
366
|
}
|
|
367
|
-
const { handleServeCommand } = await import('./serveCommands-
|
|
367
|
+
const { handleServeCommand } = await import('./serveCommands-CC32Vh-8.mjs');
|
|
368
368
|
await handleServeCommand();
|
|
369
369
|
process.exit(0);
|
|
370
370
|
} else if (subcommand === "process" || subcommand === "proc") {
|
|
@@ -373,7 +373,7 @@ async function main() {
|
|
|
373
373
|
console.error("svamp process: Process commands are not available in sandboxed sessions.");
|
|
374
374
|
process.exit(1);
|
|
375
375
|
}
|
|
376
|
-
const { processCommand } = await import('./commands-
|
|
376
|
+
const { processCommand } = await import('./commands-Cz4cl4Th.mjs');
|
|
377
377
|
let machineId;
|
|
378
378
|
const processArgs = args.slice(1);
|
|
379
379
|
const mIdx = processArgs.findIndex((a) => a === "--machine" || a === "-m");
|
|
@@ -387,22 +387,22 @@ async function main() {
|
|
|
387
387
|
}), machineId);
|
|
388
388
|
process.exit(0);
|
|
389
389
|
} else if (subcommand === "issue" || subcommand === "issues") {
|
|
390
|
-
const { issueCommand } = await import('./commands-
|
|
390
|
+
const { issueCommand } = await import('./commands-BnI1mRkf.mjs');
|
|
391
391
|
await issueCommand(args.slice(1));
|
|
392
392
|
await flushAndExit(0);
|
|
393
393
|
} else if (subcommand === "workflow" || subcommand === "workflows") {
|
|
394
|
-
const { workflowCommand } = await import('./commands-
|
|
394
|
+
const { workflowCommand } = await import('./commands-BFLKkIyS.mjs');
|
|
395
395
|
await workflowCommand(args.slice(1));
|
|
396
396
|
await flushAndExit(0);
|
|
397
397
|
} else if (subcommand === "wise-agent" || subcommand === "wise") {
|
|
398
398
|
await handleWiseAgentCommand(args.slice(1));
|
|
399
399
|
process.exit(0);
|
|
400
400
|
} else if (subcommand === "feature" || subcommand === "crew") {
|
|
401
|
-
const { crewCommand } = await import('./commands-
|
|
401
|
+
const { crewCommand } = await import('./commands-DmdJbFhU.mjs');
|
|
402
402
|
await crewCommand(args.slice(1));
|
|
403
403
|
process.exit(0);
|
|
404
404
|
} else if (subcommand === "notify") {
|
|
405
|
-
const { notifyUser } = await import('./notifyCommands-
|
|
405
|
+
const { notifyUser } = await import('./notifyCommands-CfvUfjfP.mjs');
|
|
406
406
|
const rest = args.slice(1);
|
|
407
407
|
let email;
|
|
408
408
|
const o = {};
|
|
@@ -416,8 +416,24 @@ async function main() {
|
|
|
416
416
|
}
|
|
417
417
|
await notifyUser(email, o);
|
|
418
418
|
process.exit(0);
|
|
419
|
+
} else if (subcommand === "admin") {
|
|
420
|
+
const adminSub = args[1];
|
|
421
|
+
if (adminSub === "set-collection-config") {
|
|
422
|
+
const { setCollectionConfig } = await import('./adminCommands-Dc-nM2T4.mjs');
|
|
423
|
+
const rest = args.slice(2);
|
|
424
|
+
let alias;
|
|
425
|
+
let configJson;
|
|
426
|
+
for (let i = 0; i < rest.length; i++) {
|
|
427
|
+
if (rest[i] === "--config" && i + 1 < rest.length) configJson = rest[++i];
|
|
428
|
+
else if (!rest[i].startsWith("-") && !alias) alias = rest[i];
|
|
429
|
+
}
|
|
430
|
+
await setCollectionConfig(alias, configJson);
|
|
431
|
+
} else {
|
|
432
|
+
console.error("Usage: svamp admin set-collection-config <alias> --config '<json>'");
|
|
433
|
+
}
|
|
434
|
+
process.exit(0);
|
|
419
435
|
} else if (subcommand === "events") {
|
|
420
|
-
const { listEvents, ackEvent } = await import('./notifyCommands-
|
|
436
|
+
const { listEvents, ackEvent } = await import('./notifyCommands-CfvUfjfP.mjs');
|
|
421
437
|
const sub = args[1];
|
|
422
438
|
const rest = args.slice(2);
|
|
423
439
|
let email;
|
|
@@ -438,7 +454,7 @@ async function main() {
|
|
|
438
454
|
} else if (!subcommand || subcommand === "start") {
|
|
439
455
|
await handleInteractiveCommand();
|
|
440
456
|
} else if (subcommand === "--version" || subcommand === "-v") {
|
|
441
|
-
const pkg = await import('./package-
|
|
457
|
+
const pkg = await import('./package-DoBwyCNL.mjs').catch(() => ({ default: { version: "unknown" } }));
|
|
442
458
|
console.log(`svamp version: ${pkg.default.version}`);
|
|
443
459
|
} else {
|
|
444
460
|
console.error(`Unknown command: ${subcommand}`);
|
|
@@ -447,7 +463,7 @@ async function main() {
|
|
|
447
463
|
}
|
|
448
464
|
}
|
|
449
465
|
async function handleInteractiveCommand() {
|
|
450
|
-
const { runInteractive } = await import('./run-
|
|
466
|
+
const { runInteractive } = await import('./run-C75iKIIt.mjs');
|
|
451
467
|
const interactiveArgs = subcommand === "start" ? args.slice(1) : args;
|
|
452
468
|
let directory = process.cwd();
|
|
453
469
|
let resumeSessionId;
|
|
@@ -492,7 +508,7 @@ async function handleAgentCommand() {
|
|
|
492
508
|
return;
|
|
493
509
|
}
|
|
494
510
|
if (agentArgs[0] === "list") {
|
|
495
|
-
const { KNOWN_ACP_AGENTS, KNOWN_CODEX_AGENTS: KNOWN_CODEX_AGENTS2 } = await import('./run-
|
|
511
|
+
const { KNOWN_ACP_AGENTS, KNOWN_CODEX_AGENTS: KNOWN_CODEX_AGENTS2 } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.ar; });
|
|
496
512
|
console.log("Known agents:");
|
|
497
513
|
for (const [name, config2] of Object.entries(KNOWN_ACP_AGENTS)) {
|
|
498
514
|
console.log(` ${name.padEnd(12)} ${config2.command} ${config2.args.join(" ")} (ACP)`);
|
|
@@ -504,7 +520,7 @@ async function handleAgentCommand() {
|
|
|
504
520
|
console.log('Use "svamp agent -- <command> [args]" for a custom ACP agent.');
|
|
505
521
|
return;
|
|
506
522
|
}
|
|
507
|
-
const { resolveAcpAgentConfig, KNOWN_CODEX_AGENTS } = await import('./run-
|
|
523
|
+
const { resolveAcpAgentConfig, KNOWN_CODEX_AGENTS } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.ar; });
|
|
508
524
|
let cwd = process.cwd();
|
|
509
525
|
const filteredArgs = [];
|
|
510
526
|
for (let i = 0; i < agentArgs.length; i++) {
|
|
@@ -528,12 +544,12 @@ async function handleAgentCommand() {
|
|
|
528
544
|
console.log(`Starting ${config.agentName} agent in ${cwd}...`);
|
|
529
545
|
let backend;
|
|
530
546
|
if (KNOWN_CODEX_AGENTS[config.agentName]) {
|
|
531
|
-
const { CodexAppServerBackend } = await import('./run-
|
|
547
|
+
const { CodexAppServerBackend } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.as; });
|
|
532
548
|
backend = new CodexAppServerBackend({ cwd, log: logFn });
|
|
533
549
|
} else {
|
|
534
|
-
const { AcpBackend } = await import('./run-
|
|
535
|
-
const { GeminiTransport } = await import('./run-
|
|
536
|
-
const { DefaultTransport } = await import('./run-
|
|
550
|
+
const { AcpBackend } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.aq; });
|
|
551
|
+
const { GeminiTransport } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.at; });
|
|
552
|
+
const { DefaultTransport } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.ap; });
|
|
537
553
|
const transportHandler = config.agentName === "gemini" ? new GeminiTransport() : new DefaultTransport(config.agentName);
|
|
538
554
|
backend = new AcpBackend({
|
|
539
555
|
agentName: config.agentName,
|
|
@@ -660,7 +676,7 @@ async function handleSessionCommand() {
|
|
|
660
676
|
process.exit(1);
|
|
661
677
|
}
|
|
662
678
|
}
|
|
663
|
-
const { sessionList, sessionWhoami, sessionSpawn, sessionArchive, sessionResume, sessionDelete, sessionInfo, sessionMessages, sessionAttach, sessionMachines, sessionSend, sessionWait, sessionShare, sessionLoopStart, sessionLoopCancel, sessionLoopStatus, sessionLoopExtend, sessionInboxSend, sessionInboxList, sessionInboxRead, sessionInboxReply, sessionInboxClear } = await import('./commands-
|
|
679
|
+
const { sessionList, sessionWhoami, sessionSpawn, sessionArchive, sessionResume, sessionDelete, sessionInfo, sessionMessages, sessionAttach, sessionMachines, sessionSend, sessionWait, sessionShare, sessionLoopStart, sessionLoopCancel, sessionLoopStatus, sessionLoopExtend, sessionInboxSend, sessionInboxList, sessionInboxRead, sessionInboxReply, sessionInboxClear } = await import('./commands-CdjKMUGJ.mjs');
|
|
664
680
|
const parseFlagStr = (flag, shortFlag) => {
|
|
665
681
|
for (let i = 1; i < sessionArgs.length; i++) {
|
|
666
682
|
if ((sessionArgs[i] === flag || shortFlag) && i + 1 < sessionArgs.length) {
|
|
@@ -728,7 +744,7 @@ async function handleSessionCommand() {
|
|
|
728
744
|
allowDomain.push(sessionArgs[++i]);
|
|
729
745
|
}
|
|
730
746
|
}
|
|
731
|
-
const { parseShareArg } = await import('./commands-
|
|
747
|
+
const { parseShareArg } = await import('./commands-CdjKMUGJ.mjs');
|
|
732
748
|
const shareEntries = share.map((s) => parseShareArg(s));
|
|
733
749
|
await sessionSpawn(agent, dir, targetMachineId, {
|
|
734
750
|
message,
|
|
@@ -818,7 +834,7 @@ async function handleSessionCommand() {
|
|
|
818
834
|
console.error(" Rewinds history: rewrites the message + drops everything after it, then restarts Claude.");
|
|
819
835
|
process.exit(1);
|
|
820
836
|
}
|
|
821
|
-
const { sessionEditMessage } = await import('./commands-
|
|
837
|
+
const { sessionEditMessage } = await import('./commands-CdjKMUGJ.mjs');
|
|
822
838
|
await sessionEditMessage(sessionArgs[1], sessionArgs[2], sessionArgs[3], targetMachineId);
|
|
823
839
|
} else if (sessionSubcommand === "refine") {
|
|
824
840
|
if (!sessionArgs[1] || !sessionArgs[2]) {
|
|
@@ -826,7 +842,7 @@ async function handleSessionCommand() {
|
|
|
826
842
|
console.error(" Asks the agent to revise its latest reply in place (no extra round).");
|
|
827
843
|
process.exit(1);
|
|
828
844
|
}
|
|
829
|
-
const { sessionRefineLastReply } = await import('./commands-
|
|
845
|
+
const { sessionRefineLastReply } = await import('./commands-CdjKMUGJ.mjs');
|
|
830
846
|
await sessionRefineLastReply(sessionArgs[1], sessionArgs[2], targetMachineId);
|
|
831
847
|
} else if (sessionSubcommand === "undo-edit" || sessionSubcommand === "undo") {
|
|
832
848
|
if (!sessionArgs[1]) {
|
|
@@ -834,7 +850,7 @@ async function handleSessionCommand() {
|
|
|
834
850
|
console.error(" Reverts the most recent edit/refine, restoring the pre-edit history.");
|
|
835
851
|
process.exit(1);
|
|
836
852
|
}
|
|
837
|
-
const { sessionUndoEdit } = await import('./commands-
|
|
853
|
+
const { sessionUndoEdit } = await import('./commands-CdjKMUGJ.mjs');
|
|
838
854
|
await sessionUndoEdit(sessionArgs[1], targetMachineId);
|
|
839
855
|
} else if (sessionSubcommand === "query") {
|
|
840
856
|
const dir = sessionArgs[1];
|
|
@@ -844,7 +860,7 @@ async function handleSessionCommand() {
|
|
|
844
860
|
console.error(" Spawns a stateless Claude session in <directory>, sends <prompt>, prints the answer, then deletes the session.");
|
|
845
861
|
process.exit(1);
|
|
846
862
|
}
|
|
847
|
-
const { sessionQuery } = await import('./commands-
|
|
863
|
+
const { sessionQuery } = await import('./commands-CdjKMUGJ.mjs');
|
|
848
864
|
await sessionQuery(dir, prompt, targetMachineId, {
|
|
849
865
|
timeout: parseFlagInt("--timeout"),
|
|
850
866
|
json: hasFlag("--json"),
|
|
@@ -877,7 +893,7 @@ async function handleSessionCommand() {
|
|
|
877
893
|
console.error("Usage: svamp session approve <session-id> [request-id] [--json]");
|
|
878
894
|
process.exit(1);
|
|
879
895
|
}
|
|
880
|
-
const { sessionApprove } = await import('./commands-
|
|
896
|
+
const { sessionApprove } = await import('./commands-CdjKMUGJ.mjs');
|
|
881
897
|
const approveReqId = sessionArgs[2] && !sessionArgs[2].startsWith("--") ? sessionArgs[2] : void 0;
|
|
882
898
|
await sessionApprove(sessionArgs[1], approveReqId, targetMachineId, {
|
|
883
899
|
json: hasFlag("--json")
|
|
@@ -887,7 +903,7 @@ async function handleSessionCommand() {
|
|
|
887
903
|
console.error("Usage: svamp session deny <session-id> [request-id] [--json]");
|
|
888
904
|
process.exit(1);
|
|
889
905
|
}
|
|
890
|
-
const { sessionDeny } = await import('./commands-
|
|
906
|
+
const { sessionDeny } = await import('./commands-CdjKMUGJ.mjs');
|
|
891
907
|
const denyReqId = sessionArgs[2] && !sessionArgs[2].startsWith("--") ? sessionArgs[2] : void 0;
|
|
892
908
|
await sessionDeny(sessionArgs[1], denyReqId, targetMachineId, {
|
|
893
909
|
json: hasFlag("--json")
|
|
@@ -939,7 +955,7 @@ async function handleSessionCommand() {
|
|
|
939
955
|
console.error("Usage: svamp session set-title <title>");
|
|
940
956
|
process.exit(1);
|
|
941
957
|
}
|
|
942
|
-
const { sessionSetTitle } = await import('./agentCommands-
|
|
958
|
+
const { sessionSetTitle } = await import('./agentCommands-i-qaq_2s.mjs');
|
|
943
959
|
await sessionSetTitle(title);
|
|
944
960
|
} else if (sessionSubcommand === "set-project-description" || sessionSubcommand === "set-project") {
|
|
945
961
|
const desc = sessionArgs.slice(1).filter((a) => !a.startsWith("--")).join(" ");
|
|
@@ -947,7 +963,7 @@ async function handleSessionCommand() {
|
|
|
947
963
|
console.error("Usage: svamp session set-project-description <text>");
|
|
948
964
|
process.exit(1);
|
|
949
965
|
}
|
|
950
|
-
const { sessionSetProjectDescription } = await import('./agentCommands-
|
|
966
|
+
const { sessionSetProjectDescription } = await import('./agentCommands-i-qaq_2s.mjs');
|
|
951
967
|
await sessionSetProjectDescription(desc);
|
|
952
968
|
} else if (sessionSubcommand === "set-link") {
|
|
953
969
|
const url = sessionArgs[1];
|
|
@@ -956,11 +972,11 @@ async function handleSessionCommand() {
|
|
|
956
972
|
process.exit(1);
|
|
957
973
|
}
|
|
958
974
|
const label = sessionArgs[2] && !sessionArgs[2].startsWith("--") ? sessionArgs[2] : void 0;
|
|
959
|
-
const { sessionSetLink } = await import('./agentCommands-
|
|
975
|
+
const { sessionSetLink } = await import('./agentCommands-i-qaq_2s.mjs');
|
|
960
976
|
await sessionSetLink(url, label);
|
|
961
977
|
} else if (sessionSubcommand === "link") {
|
|
962
978
|
const op = sessionArgs[1];
|
|
963
|
-
const lm = await import('./agentCommands-
|
|
979
|
+
const lm = await import('./agentCommands-i-qaq_2s.mjs');
|
|
964
980
|
if (op === "add") {
|
|
965
981
|
const url = sessionArgs[2];
|
|
966
982
|
if (!url || url.startsWith("--")) {
|
|
@@ -995,7 +1011,7 @@ async function handleSessionCommand() {
|
|
|
995
1011
|
process.exit(1);
|
|
996
1012
|
}
|
|
997
1013
|
const level = parseFlagStr("--level") || "info";
|
|
998
|
-
const { sessionNotify } = await import('./agentCommands-
|
|
1014
|
+
const { sessionNotify } = await import('./agentCommands-i-qaq_2s.mjs');
|
|
999
1015
|
await sessionNotify(message, level);
|
|
1000
1016
|
} else if (sessionSubcommand === "broadcast") {
|
|
1001
1017
|
const action = sessionArgs[1];
|
|
@@ -1003,7 +1019,7 @@ async function handleSessionCommand() {
|
|
|
1003
1019
|
console.error("Usage: svamp session broadcast <action> [args...]\nActions: open-canvas <url> [label], close-canvas, toast <message>");
|
|
1004
1020
|
process.exit(1);
|
|
1005
1021
|
}
|
|
1006
|
-
const { sessionBroadcast } = await import('./agentCommands-
|
|
1022
|
+
const { sessionBroadcast } = await import('./agentCommands-i-qaq_2s.mjs');
|
|
1007
1023
|
await sessionBroadcast(action, sessionArgs.slice(2).filter((a) => !a.startsWith("--")));
|
|
1008
1024
|
} else if (sessionSubcommand === "inbox") {
|
|
1009
1025
|
const inboxSubcmd = sessionArgs[1];
|
|
@@ -1014,7 +1030,7 @@ async function handleSessionCommand() {
|
|
|
1014
1030
|
process.exit(1);
|
|
1015
1031
|
}
|
|
1016
1032
|
if (agentSessionId) {
|
|
1017
|
-
const { inboxSend } = await import('./agentCommands-
|
|
1033
|
+
const { inboxSend } = await import('./agentCommands-i-qaq_2s.mjs');
|
|
1018
1034
|
await inboxSend(sessionArgs[2], {
|
|
1019
1035
|
body: sessionArgs[3],
|
|
1020
1036
|
subject: parseFlagStr("--subject"),
|
|
@@ -1029,7 +1045,7 @@ async function handleSessionCommand() {
|
|
|
1029
1045
|
}
|
|
1030
1046
|
} else if (inboxSubcmd === "list" || inboxSubcmd === "ls") {
|
|
1031
1047
|
if (agentSessionId && !sessionArgs[2]) {
|
|
1032
|
-
const { inboxList } = await import('./agentCommands-
|
|
1048
|
+
const { inboxList } = await import('./agentCommands-i-qaq_2s.mjs');
|
|
1033
1049
|
await inboxList({
|
|
1034
1050
|
unread: hasFlag("--unread"),
|
|
1035
1051
|
limit: parseFlagInt("--limit"),
|
|
@@ -1051,7 +1067,7 @@ async function handleSessionCommand() {
|
|
|
1051
1067
|
process.exit(1);
|
|
1052
1068
|
}
|
|
1053
1069
|
if (agentSessionId && !sessionArgs[3]) {
|
|
1054
|
-
const { inboxList } = await import('./agentCommands-
|
|
1070
|
+
const { inboxList } = await import('./agentCommands-i-qaq_2s.mjs');
|
|
1055
1071
|
await sessionInboxRead(agentSessionId, sessionArgs[2], targetMachineId);
|
|
1056
1072
|
} else if (sessionArgs[3]) {
|
|
1057
1073
|
await sessionInboxRead(sessionArgs[2], sessionArgs[3], targetMachineId);
|
|
@@ -1061,7 +1077,7 @@ async function handleSessionCommand() {
|
|
|
1061
1077
|
}
|
|
1062
1078
|
} else if (inboxSubcmd === "reply") {
|
|
1063
1079
|
if (agentSessionId && sessionArgs[2] && sessionArgs[3] && !sessionArgs[4]) {
|
|
1064
|
-
const { inboxReply } = await import('./agentCommands-
|
|
1080
|
+
const { inboxReply } = await import('./agentCommands-i-qaq_2s.mjs');
|
|
1065
1081
|
await inboxReply(sessionArgs[2], sessionArgs[3]);
|
|
1066
1082
|
} else if (sessionArgs[2] && sessionArgs[3] && sessionArgs[4]) {
|
|
1067
1083
|
await sessionInboxReply(sessionArgs[2], sessionArgs[3], sessionArgs[4], targetMachineId);
|
|
@@ -1099,7 +1115,7 @@ async function handleMachineCommand() {
|
|
|
1099
1115
|
return;
|
|
1100
1116
|
}
|
|
1101
1117
|
if (machineSubcommand === "share") {
|
|
1102
|
-
const { machineShare } = await import('./commands-
|
|
1118
|
+
const { machineShare } = await import('./commands-CdjKMUGJ.mjs');
|
|
1103
1119
|
let machineId;
|
|
1104
1120
|
const shareArgs = [];
|
|
1105
1121
|
for (let i = 1; i < machineArgs.length; i++) {
|
|
@@ -1150,14 +1166,14 @@ async function handleMachineCommand() {
|
|
|
1150
1166
|
process.exit(1);
|
|
1151
1167
|
}
|
|
1152
1168
|
if (all) {
|
|
1153
|
-
const { fleetExec } = await import('./fleet-
|
|
1169
|
+
const { fleetExec } = await import('./fleet-DCwX4RTF.mjs');
|
|
1154
1170
|
await fleetExec(command, { cwd });
|
|
1155
1171
|
} else {
|
|
1156
|
-
const { machineExec } = await import('./commands-
|
|
1172
|
+
const { machineExec } = await import('./commands-CdjKMUGJ.mjs');
|
|
1157
1173
|
await machineExec(machineId, command, cwd);
|
|
1158
1174
|
}
|
|
1159
1175
|
} else if (machineSubcommand === "info") {
|
|
1160
|
-
const { machineInfo } = await import('./commands-
|
|
1176
|
+
const { machineInfo } = await import('./commands-CdjKMUGJ.mjs');
|
|
1161
1177
|
let machineId;
|
|
1162
1178
|
for (let i = 1; i < machineArgs.length; i++) {
|
|
1163
1179
|
if ((machineArgs[i] === "--machine" || machineArgs[i] === "-m") && i + 1 < machineArgs.length) {
|
|
@@ -1177,10 +1193,10 @@ async function handleMachineCommand() {
|
|
|
1177
1193
|
level = machineArgs[++i];
|
|
1178
1194
|
}
|
|
1179
1195
|
}
|
|
1180
|
-
const { machineNotify } = await import('./agentCommands-
|
|
1196
|
+
const { machineNotify } = await import('./agentCommands-i-qaq_2s.mjs');
|
|
1181
1197
|
await machineNotify(message, level);
|
|
1182
1198
|
} else if (machineSubcommand === "ls") {
|
|
1183
|
-
const { machineLs } = await import('./commands-
|
|
1199
|
+
const { machineLs } = await import('./commands-CdjKMUGJ.mjs');
|
|
1184
1200
|
let machineId;
|
|
1185
1201
|
let showHidden = false;
|
|
1186
1202
|
let path;
|
|
@@ -1239,20 +1255,20 @@ Examples:
|
|
|
1239
1255
|
};
|
|
1240
1256
|
const hasFlag = (name) => fleetArgs.includes(`--${name}`);
|
|
1241
1257
|
if (sub === "status") {
|
|
1242
|
-
const { fleetStatus } = await import('./fleet-
|
|
1258
|
+
const { fleetStatus } = await import('./fleet-DCwX4RTF.mjs');
|
|
1243
1259
|
await fleetStatus();
|
|
1244
1260
|
} else if (sub === "upgrade-claude") {
|
|
1245
|
-
const { fleetUpgradeClaude } = await import('./fleet-
|
|
1261
|
+
const { fleetUpgradeClaude } = await import('./fleet-DCwX4RTF.mjs');
|
|
1246
1262
|
await fleetUpgradeClaude({ version: flag("version", "-v") });
|
|
1247
1263
|
} else if (sub === "upgrade-svamp") {
|
|
1248
|
-
const { fleetUpgradeSvamp } = await import('./fleet-
|
|
1264
|
+
const { fleetUpgradeSvamp } = await import('./fleet-DCwX4RTF.mjs');
|
|
1249
1265
|
await fleetUpgradeSvamp({ version: flag("version", "-v"), excludeSelf: hasFlag("exclude-self"), force: hasFlag("force") });
|
|
1250
1266
|
} else if (sub === "daemon-restart") {
|
|
1251
|
-
const { fleetDaemonRestart } = await import('./fleet-
|
|
1267
|
+
const { fleetDaemonRestart } = await import('./fleet-DCwX4RTF.mjs');
|
|
1252
1268
|
await fleetDaemonRestart({ graceful: !hasFlag("cleanup") });
|
|
1253
1269
|
} else if (sub === "push-skill") {
|
|
1254
1270
|
const name = fleetArgs[1];
|
|
1255
|
-
const { fleetPushSkill } = await import('./fleet-
|
|
1271
|
+
const { fleetPushSkill } = await import('./fleet-DCwX4RTF.mjs');
|
|
1256
1272
|
await fleetPushSkill(name);
|
|
1257
1273
|
} else {
|
|
1258
1274
|
console.error(`Unknown fleet subcommand: ${sub}`);
|
|
@@ -1268,7 +1284,7 @@ async function handleSkillsCommand() {
|
|
|
1268
1284
|
await printSkillsHelp();
|
|
1269
1285
|
return;
|
|
1270
1286
|
}
|
|
1271
|
-
const { skillsFind, skillsInstall, skillsList, skillsRemove, skillsPublish } = await import('./commands-
|
|
1287
|
+
const { skillsFind, skillsInstall, skillsList, skillsRemove, skillsPublish } = await import('./commands-D8OeSTxb.mjs');
|
|
1272
1288
|
if (skillsSubcommand === "find" || skillsSubcommand === "search") {
|
|
1273
1289
|
const query = skillsArgs.slice(1).filter((a) => !a.startsWith("--")).join(" ");
|
|
1274
1290
|
if (!query) {
|
|
@@ -1315,7 +1331,7 @@ async function loginToHypha() {
|
|
|
1315
1331
|
process.exit(1);
|
|
1316
1332
|
}
|
|
1317
1333
|
const anchor = anchorArg.replace(/\/+$/, "");
|
|
1318
|
-
const { loadInstanceConfig } = await import('./run-
|
|
1334
|
+
const { loadInstanceConfig } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.al; });
|
|
1319
1335
|
let cfg = null;
|
|
1320
1336
|
try {
|
|
1321
1337
|
cfg = await loadInstanceConfig({ anchor, force: true });
|
|
@@ -1426,7 +1442,7 @@ async function logoutFromHypha() {
|
|
|
1426
1442
|
} catch {
|
|
1427
1443
|
}
|
|
1428
1444
|
try {
|
|
1429
|
-
const { clearInstanceConfigCache } = await import('./run-
|
|
1445
|
+
const { clearInstanceConfigCache } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.al; });
|
|
1430
1446
|
clearInstanceConfigCache();
|
|
1431
1447
|
} catch {
|
|
1432
1448
|
}
|
|
@@ -1765,7 +1781,7 @@ async function applyClaudeAuthFlags(argv) {
|
|
|
1765
1781
|
"--use-hypha-proxy, --use-claude-login, and --anthropic-base-url/--anthropic-api-key are mutually exclusive"
|
|
1766
1782
|
);
|
|
1767
1783
|
}
|
|
1768
|
-
const mod = await import('./run-
|
|
1784
|
+
const mod = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.am; });
|
|
1769
1785
|
if (hasHypha) {
|
|
1770
1786
|
let url;
|
|
1771
1787
|
const hyphaIdx = argv.indexOf("--use-hypha-proxy");
|
|
@@ -1819,7 +1835,7 @@ async function applyDaemonShareFlag(argv) {
|
|
|
1819
1835
|
}
|
|
1820
1836
|
}
|
|
1821
1837
|
if (collected.length === 0) return;
|
|
1822
|
-
const { updateEnvFile } = await import('./run-
|
|
1838
|
+
const { updateEnvFile } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.am; });
|
|
1823
1839
|
const seen = /* @__PURE__ */ new Set();
|
|
1824
1840
|
const deduped = collected.filter((e) => {
|
|
1825
1841
|
const k = e.toLowerCase();
|
|
@@ -1852,7 +1868,7 @@ async function handleWiseAgentCommand(rest) {
|
|
|
1852
1868
|
}
|
|
1853
1869
|
});
|
|
1854
1870
|
const message = rest.slice(1).map((a, idx) => ({ a, idx: idx + 1 })).filter(({ a, idx }) => !a.startsWith("-") && !consumed.has(String(idx))).map(({ a }) => a).join(" ");
|
|
1855
|
-
const { wiseAskCli } = await import('./commands-
|
|
1871
|
+
const { wiseAskCli } = await import('./commands-CdjKMUGJ.mjs');
|
|
1856
1872
|
await wiseAskCli(machineId, message, sessionId, { json });
|
|
1857
1873
|
return;
|
|
1858
1874
|
}
|
|
@@ -1864,7 +1880,7 @@ async function handleWiseAgentCommand(rest) {
|
|
|
1864
1880
|
}
|
|
1865
1881
|
return void 0;
|
|
1866
1882
|
};
|
|
1867
|
-
const { runWiseVoiceCli } = await import('./headlessCli-
|
|
1883
|
+
const { runWiseVoiceCli } = await import('./headlessCli-CyCQlRjV.mjs');
|
|
1868
1884
|
await runWiseVoiceCli({ voice: valueOf(["--voice"]), wakeKeywordPath: valueOf(["--wake"]), model: valueOf(["--model"]) });
|
|
1869
1885
|
return;
|
|
1870
1886
|
}
|
|
@@ -1882,7 +1898,7 @@ async function handleWiseAgentCommand(rest) {
|
|
|
1882
1898
|
const mode = valueOf(["--mode"]);
|
|
1883
1899
|
const mission = valueOf(["--mission"]);
|
|
1884
1900
|
const url = rest.slice(1).find((a) => /^https?:\/\//.test(a)) || "";
|
|
1885
|
-
const { wiseJoinMeetingCli } = await import('./commands-
|
|
1901
|
+
const { wiseJoinMeetingCli } = await import('./commands-CdjKMUGJ.mjs');
|
|
1886
1902
|
await wiseJoinMeetingCli(machineId, url, sessionId, { json, mode, mission });
|
|
1887
1903
|
return;
|
|
1888
1904
|
}
|
|
@@ -1894,7 +1910,7 @@ async function handleWiseAgentCommand(rest) {
|
|
|
1894
1910
|
}
|
|
1895
1911
|
return void 0;
|
|
1896
1912
|
};
|
|
1897
|
-
const { wiseLeaveMeetingCli } = await import('./commands-
|
|
1913
|
+
const { wiseLeaveMeetingCli } = await import('./commands-CdjKMUGJ.mjs');
|
|
1898
1914
|
await wiseLeaveMeetingCli(valueOf(["--machine", "-m"]), valueOf(["--session", "-s"]), { json: rest.includes("--json") });
|
|
1899
1915
|
return;
|
|
1900
1916
|
}
|
|
@@ -1918,7 +1934,7 @@ async function handleWiseAgentCommand(rest) {
|
|
|
1918
1934
|
}
|
|
1919
1935
|
});
|
|
1920
1936
|
const text = rest.slice(1).map((a, idx) => ({ a, idx: idx + 1 })).filter(({ a, idx }) => !a.startsWith("-") && !consumed.has(String(idx))).map(({ a }) => a).join(" ");
|
|
1921
|
-
const { wiseAnnounceCli } = await import('./commands-
|
|
1937
|
+
const { wiseAnnounceCli } = await import('./commands-CdjKMUGJ.mjs');
|
|
1922
1938
|
await wiseAnnounceCli(machineId, text, sessionId, { json });
|
|
1923
1939
|
return;
|
|
1924
1940
|
}
|
|
@@ -1930,7 +1946,7 @@ async function handleWiseAgentCommand(rest) {
|
|
|
1930
1946
|
}
|
|
1931
1947
|
return void 0;
|
|
1932
1948
|
};
|
|
1933
|
-
const { wiseMeetingsCli } = await import('./commands-
|
|
1949
|
+
const { wiseMeetingsCli } = await import('./commands-CdjKMUGJ.mjs');
|
|
1934
1950
|
await wiseMeetingsCli(valueOf(["--machine", "-m"]), { json: rest.includes("--json") });
|
|
1935
1951
|
return;
|
|
1936
1952
|
}
|
|
@@ -1980,7 +1996,7 @@ If none is set, hitting a WISE Agent channel returns a clear "not configured" er
|
|
|
1980
1996
|
return;
|
|
1981
1997
|
}
|
|
1982
1998
|
const authArgs = rest.slice(1);
|
|
1983
|
-
const mod = await import('./auth-
|
|
1999
|
+
const mod = await import('./auth-DDr5dyj0.mjs');
|
|
1984
2000
|
let action;
|
|
1985
2001
|
try {
|
|
1986
2002
|
action = mod.parseWiseAgentAuthArgs(authArgs);
|
|
@@ -1990,7 +2006,7 @@ If none is set, hitting a WISE Agent channel returns a clear "not configured" er
|
|
|
1990
2006
|
return;
|
|
1991
2007
|
}
|
|
1992
2008
|
if (action) {
|
|
1993
|
-
const { updateEnvFile } = await import('./run-
|
|
2009
|
+
const { updateEnvFile } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.am; });
|
|
1994
2010
|
const updates = mod.buildWiseAgentEnvUpdates(action);
|
|
1995
2011
|
updateEnvFile(updates);
|
|
1996
2012
|
for (const [k, v] of Object.entries(updates)) {
|
|
@@ -2004,7 +2020,7 @@ If none is set, hitting a WISE Agent channel returns a clear "not configured" er
|
|
|
2004
2020
|
}
|
|
2005
2021
|
async function handleDaemonAuthCommand(argv) {
|
|
2006
2022
|
const sub = (argv[0] || "status").toLowerCase();
|
|
2007
|
-
const mod = await import('./run-
|
|
2023
|
+
const mod = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.am; });
|
|
2008
2024
|
if (sub === "--help" || sub === "-h" || sub === "help") {
|
|
2009
2025
|
console.log(`
|
|
2010
2026
|
svamp daemon auth \u2014 Configure how Claude subprocesses authenticate
|
|
@@ -2078,8 +2094,8 @@ one step: --use-hypha-proxy / --use-claude-login / --anthropic-base-url URL --an
|
|
|
2078
2094
|
}
|
|
2079
2095
|
async function handleDaemonCodexAuthCommand(argv) {
|
|
2080
2096
|
const sub = (argv[0] || "status").toLowerCase();
|
|
2081
|
-
const { updateEnvFile } = await import('./run-
|
|
2082
|
-
const { resolveCodexProvider } = await import('./run-
|
|
2097
|
+
const { updateEnvFile } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.am; });
|
|
2098
|
+
const { resolveCodexProvider } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.an; });
|
|
2083
2099
|
const redact = (k) => k && k.length > 10 ? `${k.slice(0, 6)}\u2026${k.slice(-4)}` : k ? "***" : "(unset)";
|
|
2084
2100
|
if (sub === "--help" || sub === "-h" || sub === "help") {
|
|
2085
2101
|
console.log(`
|
|
@@ -2411,7 +2427,7 @@ Examples:
|
|
|
2411
2427
|
async function printSkillsHelp() {
|
|
2412
2428
|
let browseUrl = "<HYPHA_SERVER_URL>/<workspace>/artifacts/marketplace (set HYPHA_SERVER_URL)";
|
|
2413
2429
|
try {
|
|
2414
|
-
const { getArtifactBaseUrl, getSkillsCollectionName } = await import('./run-
|
|
2430
|
+
const { getArtifactBaseUrl, getSkillsCollectionName } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.au; });
|
|
2415
2431
|
browseUrl = `${getArtifactBaseUrl()}/${getSkillsCollectionName()}`;
|
|
2416
2432
|
} catch {
|
|
2417
2433
|
}
|
package/dist/cli.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { spawnSync } from 'node:child_process';
|
|
2
|
-
import { j as resolveProjectRoot, I as workflowSteps, z as setWorkflowEnabled, E as isWorkflowEnabled, A as removeWorkflow, x as getWorkflow, D as listWorkflows, B as saveWorkflow, C as rawWorkflow } from './run-
|
|
2
|
+
import { j as resolveProjectRoot, I as workflowSteps, z as setWorkflowEnabled, E as isWorkflowEnabled, A as removeWorkflow, x as getWorkflow, D as listWorkflows, B as saveWorkflow, C as rawWorkflow } from './run-DSlJ62Xb.mjs';
|
|
3
3
|
import 'os';
|
|
4
4
|
import 'fs/promises';
|
|
5
5
|
import 'fs';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { execSync } from 'node:child_process';
|
|
2
2
|
import { existsSync, readFileSync } from 'node:fs';
|
|
3
3
|
import { join } from 'node:path';
|
|
4
|
-
import { f as flushAndExit } from './cli-
|
|
5
|
-
import { j as resolveProjectRoot, q as searchIssues, o as listIssues, l as resumeIssue, p as pauseIssue, m as addComment, u as updateIssue, k as getIssue, t as isVisibleTo, H as summarize, n as addIssue } from './run-
|
|
4
|
+
import { f as flushAndExit } from './cli-Bp0pUO_8.mjs';
|
|
5
|
+
import { j as resolveProjectRoot, q as searchIssues, o as listIssues, l as resumeIssue, p as pauseIssue, m as addComment, u as updateIssue, k as getIssue, t as isVisibleTo, H as summarize, n as addIssue } from './run-DSlJ62Xb.mjs';
|
|
6
6
|
import './serviceManager-hlOVxkhW.mjs';
|
|
7
7
|
import 'os';
|
|
8
8
|
import 'fs/promises';
|
|
@@ -60,7 +60,7 @@ async function serviceExpose(args) {
|
|
|
60
60
|
process.exit(1);
|
|
61
61
|
}
|
|
62
62
|
if (foreground) {
|
|
63
|
-
const { runFrpcTunnel } = await import('./frpc-
|
|
63
|
+
const { runFrpcTunnel } = await import('./frpc-Dst1Xkue.mjs');
|
|
64
64
|
await runFrpcTunnel(name, ports, void 0, {
|
|
65
65
|
group,
|
|
66
66
|
groupKey,
|
|
@@ -70,7 +70,7 @@ async function serviceExpose(args) {
|
|
|
70
70
|
});
|
|
71
71
|
return;
|
|
72
72
|
}
|
|
73
|
-
const { connectAndGetMachine } = await import('./commands-
|
|
73
|
+
const { connectAndGetMachine } = await import('./commands-CdjKMUGJ.mjs');
|
|
74
74
|
const { server, machine } = await connectAndGetMachine();
|
|
75
75
|
try {
|
|
76
76
|
const status = await machine.tunnelStart({
|
|
@@ -92,7 +92,7 @@ async function serviceExpose(args) {
|
|
|
92
92
|
console.log(` port ${port}: ${url}`);
|
|
93
93
|
}
|
|
94
94
|
if (process.env.SVAMP_SESSION_ID) {
|
|
95
|
-
const { autoAddSessionLink } = await import('./agentCommands-
|
|
95
|
+
const { autoAddSessionLink } = await import('./agentCommands-i-qaq_2s.mjs');
|
|
96
96
|
let added = 0;
|
|
97
97
|
for (const [port, url] of urlEntries) {
|
|
98
98
|
const label = urlEntries.length > 1 ? `${name}:${port}` : name;
|
|
@@ -129,7 +129,7 @@ async function serviceServe(args) {
|
|
|
129
129
|
console.log(`Serving ${resolvedDir}`);
|
|
130
130
|
const servePort = 18080;
|
|
131
131
|
const http = await import('http');
|
|
132
|
-
const { serveStaticMount } = await import('./run-
|
|
132
|
+
const { serveStaticMount } = await import('./run-DSlJ62Xb.mjs').then(function (n) { return n.ak; });
|
|
133
133
|
const server = http.createServer((req, res) => {
|
|
134
134
|
const u = new URL(req.url || "/", "http://127.0.0.1");
|
|
135
135
|
let rel = u.pathname;
|
|
@@ -140,7 +140,7 @@ async function serviceServe(args) {
|
|
|
140
140
|
server.once("error", reject);
|
|
141
141
|
server.listen(servePort, "127.0.0.1", () => resolve());
|
|
142
142
|
});
|
|
143
|
-
const { runFrpcTunnel } = await import('./frpc-
|
|
143
|
+
const { runFrpcTunnel } = await import('./frpc-Dst1Xkue.mjs');
|
|
144
144
|
void server;
|
|
145
145
|
await runFrpcTunnel(name, [servePort]);
|
|
146
146
|
} catch (err) {
|
|
@@ -150,7 +150,7 @@ async function serviceServe(args) {
|
|
|
150
150
|
}
|
|
151
151
|
async function serviceList(_args) {
|
|
152
152
|
try {
|
|
153
|
-
const { connectAndGetMachine } = await import('./commands-
|
|
153
|
+
const { connectAndGetMachine } = await import('./commands-CdjKMUGJ.mjs');
|
|
154
154
|
const { server, machine } = await connectAndGetMachine();
|
|
155
155
|
try {
|
|
156
156
|
const tunnels = await machine.tunnelList({});
|
|
@@ -190,7 +190,7 @@ async function serviceDelete(args) {
|
|
|
190
190
|
process.exit(1);
|
|
191
191
|
}
|
|
192
192
|
try {
|
|
193
|
-
const { connectAndGetMachine } = await import('./commands-
|
|
193
|
+
const { connectAndGetMachine } = await import('./commands-CdjKMUGJ.mjs');
|
|
194
194
|
const { server, machine } = await connectAndGetMachine();
|
|
195
195
|
try {
|
|
196
196
|
await machine.tunnelStop({ name });
|
|
@@ -2,7 +2,7 @@ import { existsSync, readFileSync, writeFileSync } from 'node:fs';
|
|
|
2
2
|
import { execSync, execFileSync } from 'node:child_process';
|
|
3
3
|
import { basename, resolve, join, isAbsolute } from 'node:path';
|
|
4
4
|
import os from 'node:os';
|
|
5
|
-
import {
|
|
5
|
+
import { a2 as formatHandle, a3 as normalizeAllowedUser, a4 as loadSecurityContextConfig, a5 as resolveSecurityContext, a6 as buildSecurityContextFromFlags, a7 as mergeSecurityContexts, c as connectToHypha, a8 as buildSessionShareUrl, a9 as computeOutboundHop, i as shortId, aa as registerAwaitingReply, ab as buildMachineShareUrl, ac as parseHandle, ad as handleMatchesMetadata } from './run-DSlJ62Xb.mjs';
|
|
6
6
|
import 'os';
|
|
7
7
|
import 'fs/promises';
|
|
8
8
|
import 'fs';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { writeFileSync, readFileSync } from 'fs';
|
|
2
2
|
import { resolve } from 'path';
|
|
3
|
-
import { connectAndGetMachine } from './commands-
|
|
3
|
+
import { connectAndGetMachine } from './commands-CdjKMUGJ.mjs';
|
|
4
4
|
import 'node:fs';
|
|
5
5
|
import 'node:child_process';
|
|
6
6
|
import 'node:path';
|
|
7
7
|
import 'node:os';
|
|
8
|
-
import './run-
|
|
8
|
+
import './run-DSlJ62Xb.mjs';
|
|
9
9
|
import 'os';
|
|
10
10
|
import 'fs/promises';
|
|
11
11
|
import 'url';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import os from 'os';
|
|
2
2
|
import fs__default from 'fs';
|
|
3
3
|
import { resolve, join, relative } from 'path';
|
|
4
|
-
import {
|
|
4
|
+
import { P as parseFrontmatter, Q as getSkillsServer, T as getSkillsWorkspaceName, U as getSkillsCollectionName, V as fetchWithTimeout, W as searchSkills, X as SKILLS_DIR, Y as getSkillInfo, Z as downloadSkillFile, _ as listSkillFiles } from './run-DSlJ62Xb.mjs';
|
|
5
5
|
import 'fs/promises';
|
|
6
6
|
import 'url';
|
|
7
7
|
import 'child_process';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { existsSync } from 'node:fs';
|
|
2
2
|
import { resolve } from 'node:path';
|
|
3
|
-
import { connectAndGetMachine, resolveSessionId, createWorktree, connectAndResolveSession } from './commands-
|
|
3
|
+
import { connectAndGetMachine, resolveSessionId, createWorktree, connectAndResolveSession } from './commands-CdjKMUGJ.mjs';
|
|
4
4
|
import { execFileSync } from 'node:child_process';
|
|
5
|
-
import { u as updateIssue, m as addComment, n as addIssue, i as shortId } from './run-
|
|
5
|
+
import { u as updateIssue, m as addComment, n as addIssue, i as shortId } from './run-DSlJ62Xb.mjs';
|
|
6
6
|
import 'node:os';
|
|
7
7
|
import 'os';
|
|
8
8
|
import 'fs/promises';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { existsSync, readFileSync } from 'node:fs';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
3
|
import os from 'node:os';
|
|
4
|
-
import { c as connectToHypha } from './run-
|
|
4
|
+
import { c as connectToHypha } from './run-DSlJ62Xb.mjs';
|
|
5
5
|
import { PINNED_CLAUDE_CODE_VERSION } from './pinnedClaudeCode-BaMR97BE.mjs';
|
|
6
6
|
import 'os';
|
|
7
7
|
import 'fs/promises';
|
|
@@ -4,7 +4,7 @@ import { mkdirSync, chmodSync, writeFileSync, unlinkSync, existsSync, readFileSy
|
|
|
4
4
|
import { join } from 'path';
|
|
5
5
|
import { homedir, platform, arch } from 'os';
|
|
6
6
|
import { randomUUID, createHash } from 'crypto';
|
|
7
|
-
import { e as getFrpsSubdomainHost, f as getFrpsServerPort, h as getFrpsServerAddr } from './run-
|
|
7
|
+
import { e as getFrpsSubdomainHost, f as getFrpsServerPort, h as getFrpsServerAddr } from './run-DSlJ62Xb.mjs';
|
|
8
8
|
import 'fs/promises';
|
|
9
9
|
import 'url';
|
|
10
10
|
import 'node:crypto';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { handleRealtimeEvent, initMachineVoiceSession } from './sideband-
|
|
1
|
+
import { $ as resolveModel, ae as describeMisconfiguration, af as buildMachineDeps } from './run-DSlJ62Xb.mjs';
|
|
2
|
+
import { handleRealtimeEvent, initMachineVoiceSession } from './sideband-DAZlMFIi.mjs';
|
|
3
3
|
import { WebSocket } from 'ws';
|
|
4
4
|
import { execSync, spawn } from 'child_process';
|
|
5
5
|
import 'os';
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { c as connectToHypha, a as createSessionStore, d as daemonStatus, g as getHyphaServerUrl, r as registerMachineService, s as startDaemon, b as stopDaemon } from './run-
|
|
1
|
+
export { c as connectToHypha, a as createSessionStore, d as daemonStatus, g as getHyphaServerUrl, r as registerMachineService, s as startDaemon, b as stopDaemon } from './run-DSlJ62Xb.mjs';
|
|
2
2
|
import 'os';
|
|
3
3
|
import 'fs/promises';
|
|
4
4
|
import 'fs';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as connectToHypha, S as SharingNotificationSync, J as parseJwtEmail } from './run-
|
|
1
|
+
import { c as connectToHypha, S as SharingNotificationSync, J as parseJwtEmail } from './run-DSlJ62Xb.mjs';
|
|
2
2
|
import { randomUUID } from 'node:crypto';
|
|
3
3
|
import { existsSync, readFileSync } from 'node:fs';
|
|
4
4
|
import { join } from 'node:path';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { j as resolveProjectRoot, u as updateIssue, k as getIssue, l as resumeIssue, p as pauseIssue, m as addComment, n as addIssue, o as listIssues, q as searchIssues, t as isVisibleTo } from './run-
|
|
1
|
+
import { j as resolveProjectRoot, u as updateIssue, k as getIssue, l as resumeIssue, p as pauseIssue, m as addComment, n as addIssue, o as listIssues, q as searchIssues, t as isVisibleTo } from './run-DSlJ62Xb.mjs';
|
|
2
2
|
import 'os';
|
|
3
3
|
import 'fs/promises';
|
|
4
4
|
import 'fs';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { j as resolveProjectRoot, v as getRun, w as listRuns, x as getWorkflow, y as runWorkflow, z as setWorkflowEnabled, A as removeWorkflow, B as saveWorkflow, C as rawWorkflow, D as listWorkflows } from './run-
|
|
1
|
+
import { j as resolveProjectRoot, v as getRun, w as listRuns, x as getWorkflow, y as runWorkflow, z as setWorkflowEnabled, A as removeWorkflow, B as saveWorkflow, C as rawWorkflow, D as listWorkflows } from './run-DSlJ62Xb.mjs';
|
|
2
2
|
import 'os';
|
|
3
3
|
import 'fs/promises';
|
|
4
4
|
import 'fs';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{createRequire as _pkgrollCR}from"node:module";const require=_pkgrollCR(import.meta.url);import {
|
|
1
|
+
import{createRequire as _pkgrollCR}from"node:module";const require=_pkgrollCR(import.meta.url);import { ag as applyClaudeProxyEnv, ah as composeSessionId, ai as generateFriendlyName, c as connectToHypha, a as createSessionStore, r as registerMachineService, aj as generateHookSettings } from './run-DSlJ62Xb.mjs';
|
|
2
2
|
import os from 'node:os';
|
|
3
3
|
import { resolve, join } from 'node:path';
|
|
4
4
|
import { existsSync, readFileSync, watch } from 'node:fs';
|
|
@@ -2973,7 +2973,7 @@ Connection: close\r
|
|
|
2973
2973
|
const mount = this.mounts.get(mountName);
|
|
2974
2974
|
const subdomainOverride = mount?.access === "link" && mount.linkToken ? /* @__PURE__ */ new Map([[this.port, buildLinkSubdomain(subdomainSafe, mount.linkToken)]]) : void 0;
|
|
2975
2975
|
try {
|
|
2976
|
-
const { FrpcTunnel } = await import('./frpc-
|
|
2976
|
+
const { FrpcTunnel } = await import('./frpc-Dst1Xkue.mjs');
|
|
2977
2977
|
let tunnel;
|
|
2978
2978
|
tunnel = new FrpcTunnel({
|
|
2979
2979
|
name: tunnelName,
|
|
@@ -5816,7 +5816,7 @@ async function registerMachineService(server, machineId, metadata, daemonState,
|
|
|
5816
5816
|
const tunnels = handlers.tunnels;
|
|
5817
5817
|
if (!tunnels) throw new Error("Tunnel management not available");
|
|
5818
5818
|
if (tunnels.has(params.name)) throw new Error(`Tunnel '${params.name}' already running`);
|
|
5819
|
-
const { FrpcTunnel } = await import('./frpc-
|
|
5819
|
+
const { FrpcTunnel } = await import('./frpc-Dst1Xkue.mjs');
|
|
5820
5820
|
const tunnel = new FrpcTunnel({
|
|
5821
5821
|
name: params.name,
|
|
5822
5822
|
ports: params.ports,
|
|
@@ -6292,7 +6292,7 @@ QUESTION: ${params.question || "Summarize this concisely."}` }
|
|
|
6292
6292
|
}
|
|
6293
6293
|
const deps = buildSessionDeps(rpc, { cwd, ownerEmail: owner });
|
|
6294
6294
|
const sender = { name: context?.user?.email || context?.user?.id || "user", kind: "user", verified: true };
|
|
6295
|
-
const { toolsForRole } = await import('./sideband-
|
|
6295
|
+
const { toolsForRole } = await import('./sideband-DAZlMFIi.mjs');
|
|
6296
6296
|
const r2 = await runWiseAgent({ message: params.message, sender, config: { tools: toolsForRole(role2) }, deps, transport, model: resolved.model });
|
|
6297
6297
|
return fmt(r2);
|
|
6298
6298
|
}
|
|
@@ -6391,7 +6391,7 @@ QUESTION: ${params.question || "Summarize this concisely."}` }
|
|
|
6391
6391
|
if (r.error || !r.sender) return { error: r.error || "unauthorized" };
|
|
6392
6392
|
const callId = "call_" + Math.random().toString(16).slice(2, 12);
|
|
6393
6393
|
const rendered = renderMessage(c, { sender: r.sender, body: { message: kwargs.message }, callId });
|
|
6394
|
-
const { queryCore } = await import('./commands-
|
|
6394
|
+
const { queryCore } = await import('./commands-CdjKMUGJ.mjs');
|
|
6395
6395
|
const timeout = c.reply?.timeout_sec || 120;
|
|
6396
6396
|
let result;
|
|
6397
6397
|
try {
|
|
@@ -9449,6 +9449,11 @@ class SessionArtifactSync {
|
|
|
9449
9449
|
const SHARE_COLLECTION_ALIAS = "svamp-shared-sessions";
|
|
9450
9450
|
const EVENT_COLLECTION_ALIAS = "svamp-user-events";
|
|
9451
9451
|
const RECIPIENT_SCOPING_CONFIG = { recipient_field: "recipientEmail", private_children: true };
|
|
9452
|
+
function computeCollectionConfigUpdate(existingConfig, extra) {
|
|
9453
|
+
const cfg = existingConfig || {};
|
|
9454
|
+
const changed = Object.entries(extra).some(([k, v]) => JSON.stringify(cfg[k]) !== JSON.stringify(v));
|
|
9455
|
+
return { changed, merged: { ...cfg, ...extra } };
|
|
9456
|
+
}
|
|
9452
9457
|
function emailHash(email) {
|
|
9453
9458
|
return createHash("sha256").update(email.toLowerCase()).digest("hex").slice(0, 12);
|
|
9454
9459
|
}
|
|
@@ -9496,9 +9501,7 @@ class SharingNotificationSync {
|
|
|
9496
9501
|
artifact_id: alias,
|
|
9497
9502
|
_rkwargs: true
|
|
9498
9503
|
});
|
|
9499
|
-
if (extraConfig)
|
|
9500
|
-
await this.reconcileCollectionConfig(alias, existing, extraConfig);
|
|
9501
|
-
}
|
|
9504
|
+
if (extraConfig) await this.reconcileCollectionConfig(alias, existing, extraConfig);
|
|
9502
9505
|
return existing.id;
|
|
9503
9506
|
} catch {
|
|
9504
9507
|
const collection = await this.artifactManager.create({
|
|
@@ -9518,24 +9521,20 @@ class SharingNotificationSync {
|
|
|
9518
9521
|
}
|
|
9519
9522
|
}
|
|
9520
9523
|
/**
|
|
9521
|
-
*
|
|
9522
|
-
*
|
|
9524
|
+
* Best-effort: add `extraConfig` keys to an EXISTING collection's config if missing (merged with
|
|
9525
|
+
* existing config/permissions). No-throw — a perms error on a non-owner daemon is expected and
|
|
9526
|
+
* harmless. See ensureCollection for the ownership rationale.
|
|
9523
9527
|
*/
|
|
9524
9528
|
async reconcileCollectionConfig(alias, existing, extraConfig) {
|
|
9525
9529
|
try {
|
|
9526
|
-
const
|
|
9527
|
-
|
|
9528
|
-
|
|
9529
|
-
await this.artifactManager.edit({
|
|
9530
|
-
artifact_id: existing.id,
|
|
9531
|
-
config: { ...cfg, ...extraConfig },
|
|
9532
|
-
_rkwargs: true
|
|
9533
|
-
});
|
|
9530
|
+
const { changed, merged } = computeCollectionConfigUpdate(existing?.config, extraConfig);
|
|
9531
|
+
if (!changed) return;
|
|
9532
|
+
await this.artifactManager.edit({ artifact_id: existing.id, config: merged, _rkwargs: true });
|
|
9534
9533
|
await this.artifactManager.commit({ artifact_id: existing.id, _rkwargs: true }).catch(() => {
|
|
9535
9534
|
});
|
|
9536
9535
|
this.log(`[SHARING NOTIFY] Reconciled config on ${alias} \u2014 added recipient-scoping flag`);
|
|
9537
9536
|
} catch (err) {
|
|
9538
|
-
this.log(`[SHARING NOTIFY] Config reconcile on ${alias} skipped: ${err?.message || err}`);
|
|
9537
|
+
this.log(`[SHARING NOTIFY] Config reconcile on ${alias} skipped (need owner/admin rights): ${err?.message || err}`);
|
|
9539
9538
|
}
|
|
9540
9539
|
}
|
|
9541
9540
|
// ── Share bookmark artifacts (svamp-shared-sessions) ──────────────
|
|
@@ -16209,7 +16208,7 @@ async function startDaemon(options) {
|
|
|
16209
16208
|
try {
|
|
16210
16209
|
const dir = loadSessionIndex()[sessionId]?.directory;
|
|
16211
16210
|
if (!dir) return;
|
|
16212
|
-
const { reconcileServiceLinks } = await import('./agentCommands-
|
|
16211
|
+
const { reconcileServiceLinks } = await import('./agentCommands-i-qaq_2s.mjs');
|
|
16213
16212
|
const configPath = getSvampConfigPath(dir, sessionId);
|
|
16214
16213
|
const config = readSvampConfig(configPath);
|
|
16215
16214
|
const entries = Array.from(urls.entries());
|
|
@@ -16227,7 +16226,7 @@ async function startDaemon(options) {
|
|
|
16227
16226
|
}
|
|
16228
16227
|
}
|
|
16229
16228
|
async function createExposedTunnel(spec) {
|
|
16230
|
-
const { FrpcTunnel } = await import('./frpc-
|
|
16229
|
+
const { FrpcTunnel } = await import('./frpc-Dst1Xkue.mjs');
|
|
16231
16230
|
const tunnel = new FrpcTunnel({
|
|
16232
16231
|
name: spec.name,
|
|
16233
16232
|
ports: spec.ports,
|
|
@@ -18443,11 +18442,11 @@ ${capturedError}${buildClaudeErrorHint(capturedError)}`;
|
|
|
18443
18442
|
});
|
|
18444
18443
|
},
|
|
18445
18444
|
onIssue: async (params) => {
|
|
18446
|
-
const { issueRpc } = await import('./rpc-
|
|
18445
|
+
const { issueRpc } = await import('./rpc-DXZSyYAh.mjs');
|
|
18447
18446
|
return issueRpc(params?.cwd || directory, params || {}, { notifySession: notifyIssueOwner, rekickLoopOwner });
|
|
18448
18447
|
},
|
|
18449
18448
|
onWorkflow: async (params) => {
|
|
18450
|
-
const { workflowRpc } = await import('./rpc-
|
|
18449
|
+
const { workflowRpc } = await import('./rpc-Dt3gekac.mjs');
|
|
18451
18450
|
return workflowRpc(params?.cwd || directory, params || {});
|
|
18452
18451
|
},
|
|
18453
18452
|
onRipgrep: async (args, cwd) => {
|
|
@@ -19059,11 +19058,11 @@ ${capturedError}${buildClaudeErrorHint(capturedError)}`;
|
|
|
19059
19058
|
});
|
|
19060
19059
|
},
|
|
19061
19060
|
onIssue: async (params) => {
|
|
19062
|
-
const { issueRpc } = await import('./rpc-
|
|
19061
|
+
const { issueRpc } = await import('./rpc-DXZSyYAh.mjs');
|
|
19063
19062
|
return issueRpc(params?.cwd || directory, params || {}, { notifySession: notifyIssueOwner, rekickLoopOwner });
|
|
19064
19063
|
},
|
|
19065
19064
|
onWorkflow: async (params) => {
|
|
19066
|
-
const { workflowRpc } = await import('./rpc-
|
|
19065
|
+
const { workflowRpc } = await import('./rpc-Dt3gekac.mjs');
|
|
19067
19066
|
return workflowRpc(params?.cwd || directory, params || {});
|
|
19068
19067
|
},
|
|
19069
19068
|
onRipgrep: async (args, cwd) => {
|
|
@@ -20178,7 +20177,7 @@ ${oracle.output.trim().slice(0, 500)}`, "\u{1F501} Continuing loop");
|
|
|
20178
20177
|
const PING_TIMEOUT_MS = 15e3;
|
|
20179
20178
|
const POST_RECONNECT_GRACE_MS = 2e4;
|
|
20180
20179
|
const RECONNECT_JITTER_MS = 2500;
|
|
20181
|
-
const { WorkflowScheduler } = await import('./scheduler-
|
|
20180
|
+
const { WorkflowScheduler } = await import('./scheduler-CTndQ5_D.mjs');
|
|
20182
20181
|
const workflowScheduler = new WorkflowScheduler({
|
|
20183
20182
|
projectRoots: () => {
|
|
20184
20183
|
const dirs = /* @__PURE__ */ new Set();
|
|
@@ -20801,4 +20800,4 @@ var run = /*#__PURE__*/Object.freeze({
|
|
|
20801
20800
|
writeStopMarker: writeStopMarker
|
|
20802
20801
|
});
|
|
20803
20802
|
|
|
20804
|
-
export {
|
|
20803
|
+
export { resolveModel as $, removeWorkflow as A, saveWorkflow as B, rawWorkflow as C, listWorkflows as D, isWorkflowEnabled as E, workflowCrons as F, cronMatches as G, summarize as H, workflowSteps as I, parseJwtEmail as J, computeCollectionConfigUpdate as K, loadMachineContext as L, buildMachineInstructions as M, machineToolsForRole as N, buildMachineTools as O, parseFrontmatter as P, getSkillsServer as Q, READ_ONLY_TOOLS as R, SharingNotificationSync as S, getSkillsWorkspaceName as T, getSkillsCollectionName as U, fetchWithTimeout as V, searchSkills as W, SKILLS_DIR as X, getSkillInfo as Y, downloadSkillFile as Z, listSkillFiles as _, createSessionStore as a, clearStopMarker as a0, stopMarkerExists as a1, formatHandle as a2, normalizeAllowedUser as a3, loadSecurityContextConfig as a4, resolveSecurityContext as a5, buildSecurityContextFromFlags as a6, mergeSecurityContexts as a7, buildSessionShareUrl as a8, computeOutboundHop as a9, registerAwaitingReply as aa, buildMachineShareUrl as ab, parseHandle as ac, handleMatchesMetadata as ad, describeMisconfiguration as ae, buildMachineDeps as af, applyClaudeProxyEnv as ag, composeSessionId as ah, generateFriendlyName as ai, generateHookSettings as aj, staticFileServer as ak, instanceConfig as al, claudeAuth as am, codexProvider as an, projectInfo as ao, DefaultTransport$1 as ap, acpBackend as aq, acpAgentConfig as ar, codexAppServerBackend as as, GeminiTransport$1 as at, api as au, run as av, stopDaemon as b, connectToHypha as c, daemonStatus as d, getFrpsSubdomainHost as e, getFrpsServerPort as f, getHyphaServerUrl$1 as g, getFrpsServerAddr as h, shortId as i, resolveProjectRoot as j, getIssue as k, resumeIssue as l, addComment as m, addIssue as n, listIssues as o, pauseIssue as p, searchIssues as q, registerMachineService as r, startDaemon as s, isVisibleTo as t, updateIssue as u, getRun as v, listRuns as w, getWorkflow as x, runWorkflow as y, setWorkflowEnabled as z };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { j as resolveProjectRoot, D as listWorkflows, E as isWorkflowEnabled, F as workflowCrons, y as runWorkflow, G as cronMatches } from './run-
|
|
1
|
+
import { j as resolveProjectRoot, D as listWorkflows, E as isWorkflowEnabled, F as workflowCrons, y as runWorkflow, G as cronMatches } from './run-DSlJ62Xb.mjs';
|
|
2
2
|
import 'os';
|
|
3
3
|
import 'fs/promises';
|
|
4
4
|
import 'fs';
|
|
@@ -54,7 +54,7 @@ async function handleServeCommand() {
|
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
async function serveAdd(args, machineId) {
|
|
57
|
-
const { connectAndGetMachine } = await import('./commands-
|
|
57
|
+
const { connectAndGetMachine } = await import('./commands-CdjKMUGJ.mjs');
|
|
58
58
|
const pos = positionalArgs(args);
|
|
59
59
|
const name = pos[0];
|
|
60
60
|
if (!name) {
|
|
@@ -93,7 +93,7 @@ async function serveAdd(args, machineId) {
|
|
|
93
93
|
}
|
|
94
94
|
}
|
|
95
95
|
async function serveApply(args, machineId) {
|
|
96
|
-
const { connectAndGetMachine } = await import('./commands-
|
|
96
|
+
const { connectAndGetMachine } = await import('./commands-CdjKMUGJ.mjs');
|
|
97
97
|
const fs = await import('fs');
|
|
98
98
|
const yaml = await import('yaml');
|
|
99
99
|
const file = positionalArgs(args)[0];
|
|
@@ -182,7 +182,7 @@ async function serveApply(args, machineId) {
|
|
|
182
182
|
}
|
|
183
183
|
}
|
|
184
184
|
async function serveRemove(args, machineId) {
|
|
185
|
-
const { connectAndGetMachine } = await import('./commands-
|
|
185
|
+
const { connectAndGetMachine } = await import('./commands-CdjKMUGJ.mjs');
|
|
186
186
|
const pos = positionalArgs(args);
|
|
187
187
|
const name = pos[0];
|
|
188
188
|
if (!name) {
|
|
@@ -202,7 +202,7 @@ async function serveRemove(args, machineId) {
|
|
|
202
202
|
}
|
|
203
203
|
}
|
|
204
204
|
async function serveList(args, machineId) {
|
|
205
|
-
const { connectAndGetMachine } = await import('./commands-
|
|
205
|
+
const { connectAndGetMachine } = await import('./commands-CdjKMUGJ.mjs');
|
|
206
206
|
const all = hasFlag(args, "--all", "-a");
|
|
207
207
|
const json = hasFlag(args, "--json");
|
|
208
208
|
const sessionId = getFlag(args, "--session");
|
|
@@ -235,7 +235,7 @@ async function serveList(args, machineId) {
|
|
|
235
235
|
}
|
|
236
236
|
}
|
|
237
237
|
async function serveInfo(machineId) {
|
|
238
|
-
const { connectAndGetMachine } = await import('./commands-
|
|
238
|
+
const { connectAndGetMachine } = await import('./commands-CdjKMUGJ.mjs');
|
|
239
239
|
const { machine, server } = await connectAndGetMachine(machineId);
|
|
240
240
|
try {
|
|
241
241
|
const info = await machine.serveInfo();
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { R as READ_ONLY_TOOLS,
|
|
1
|
+
import { R as READ_ONLY_TOOLS, L as loadMachineContext, M as buildMachineInstructions, N as machineToolsForRole, O as buildMachineTools } from './run-DSlJ62Xb.mjs';
|
|
2
2
|
import 'node:child_process';
|
|
3
3
|
import 'os';
|
|
4
4
|
import 'fs/promises';
|