svamp-cli 0.2.90 → 0.2.92
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/{agentCommands-BjhBmutV.mjs → agentCommands-t6HbehoC.mjs} +2 -2
- package/dist/{auth-LB4hwDfW.mjs → auth-Dx09pKt3.mjs} +3 -3
- package/dist/cli.mjs +105 -53
- package/dist/{commands-Bg7NZ6PK.mjs → commands-BHSvizSp.mjs} +3 -3
- package/dist/{commands-mlxYf-v-.mjs → commands-BR_lAgZ0.mjs} +39 -6
- package/dist/{commands-sQMe36dC.mjs → commands-BxluPors.mjs} +2 -2
- package/dist/{commands-C-5cSioE.mjs → commands-Dfyuenmi.mjs} +5 -5
- package/dist/{commands-XrfOgVzR.mjs → commands-pVw3CcRo.mjs} +3 -3
- package/dist/{fleet-Dts-Z6LV.mjs → fleet-C3KLMFeD.mjs} +3 -3
- package/dist/{frpc-DTA0--Z7.mjs → frpc-D_1pEpUY.mjs} +3 -3
- package/dist/headlessCli-D-unuCQt.mjs +331 -0
- package/dist/index.mjs +3 -3
- package/dist/{package-DR--K5aO.mjs → package-_Qk8lnvq.mjs} +2 -2
- package/dist/{run-1BK4-WPo.mjs → run-BF4AmFz8.mjs} +3047 -2182
- package/dist/{run-DrC7KnK3.mjs → run-l1OtW948.mjs} +2 -2
- package/dist/{serveCommands-BXn2hnJ0.mjs → serveCommands-CvhlM4Iz.mjs} +5 -5
- package/dist/{serveManager-Cd2gJI7J.mjs → serveManager-DNlqB0r6.mjs} +4 -4
- package/package.json +2 -2
|
@@ -148,7 +148,7 @@ async function sessionBroadcast(action, args) {
|
|
|
148
148
|
console.log(`Broadcast sent: ${action}`);
|
|
149
149
|
}
|
|
150
150
|
async function connectToMachineService() {
|
|
151
|
-
const { connectAndGetMachine } = await import('./commands-
|
|
151
|
+
const { connectAndGetMachine } = await import('./commands-BR_lAgZ0.mjs');
|
|
152
152
|
return connectAndGetMachine();
|
|
153
153
|
}
|
|
154
154
|
async function inboxSend(targetSessionId, opts) {
|
|
@@ -165,7 +165,7 @@ async function inboxSend(targetSessionId, opts) {
|
|
|
165
165
|
}
|
|
166
166
|
const { server, machine } = await connectToMachineService();
|
|
167
167
|
try {
|
|
168
|
-
const { resolveSessionId } = await import('./commands-
|
|
168
|
+
const { resolveSessionId } = await import('./commands-BR_lAgZ0.mjs');
|
|
169
169
|
const sessions = await machine.listSessions();
|
|
170
170
|
const match = resolveSessionId(sessions, targetSessionId);
|
|
171
171
|
const fullTargetId = match.sessionId;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { z as resolveModel } from './run-
|
|
1
|
+
import { z as resolveModel } from './run-BF4AmFz8.mjs';
|
|
2
2
|
import 'os';
|
|
3
3
|
import 'fs/promises';
|
|
4
4
|
import 'fs';
|
|
@@ -7,12 +7,12 @@ import 'url';
|
|
|
7
7
|
import 'child_process';
|
|
8
8
|
import 'crypto';
|
|
9
9
|
import 'node:fs';
|
|
10
|
+
import 'node:child_process';
|
|
11
|
+
import 'ws';
|
|
10
12
|
import 'util';
|
|
11
13
|
import 'node:crypto';
|
|
12
14
|
import 'node:path';
|
|
13
15
|
import 'node:os';
|
|
14
|
-
import 'node:vm';
|
|
15
|
-
import 'node:child_process';
|
|
16
16
|
import '@agentclientprotocol/sdk';
|
|
17
17
|
import '@modelcontextprotocol/sdk/client/index.js';
|
|
18
18
|
import '@modelcontextprotocol/sdk/client/stdio.js';
|
package/dist/cli.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { e as clearStopMarker, f as stopMarkerExists, s as startDaemon, b as stopDaemon, d as daemonStatus } from './run-
|
|
1
|
+
import { e as clearStopMarker, f as stopMarkerExists, s as startDaemon, b as stopDaemon, d as daemonStatus } from './run-BF4AmFz8.mjs';
|
|
2
2
|
import { ensureSupervisorViaServiceManager, LAUNCHD_LABEL } from './serviceManager-hlOVxkhW.mjs';
|
|
3
3
|
import 'os';
|
|
4
4
|
import 'fs/promises';
|
|
@@ -8,12 +8,12 @@ import 'url';
|
|
|
8
8
|
import 'child_process';
|
|
9
9
|
import 'crypto';
|
|
10
10
|
import 'node:fs';
|
|
11
|
+
import 'node:child_process';
|
|
12
|
+
import 'ws';
|
|
11
13
|
import 'util';
|
|
12
14
|
import 'node:crypto';
|
|
13
15
|
import 'node:path';
|
|
14
16
|
import 'node:os';
|
|
15
|
-
import 'node:vm';
|
|
16
|
-
import 'node:child_process';
|
|
17
17
|
import '@agentclientprotocol/sdk';
|
|
18
18
|
import '@modelcontextprotocol/sdk/client/index.js';
|
|
19
19
|
import '@modelcontextprotocol/sdk/client/stdio.js';
|
|
@@ -34,7 +34,7 @@ const subcommand = args[0];
|
|
|
34
34
|
let daemonSubcommand = args[1];
|
|
35
35
|
async function main() {
|
|
36
36
|
try {
|
|
37
|
-
const { getLoadedConfig } = await import('./run-
|
|
37
|
+
const { getLoadedConfig } = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.V; });
|
|
38
38
|
getLoadedConfig();
|
|
39
39
|
} catch {
|
|
40
40
|
}
|
|
@@ -51,7 +51,7 @@ async function main() {
|
|
|
51
51
|
console.error(`svamp daemon restart: ${err.message || err}`);
|
|
52
52
|
process.exit(1);
|
|
53
53
|
}
|
|
54
|
-
const { restartDaemon } = await import('./run-
|
|
54
|
+
const { restartDaemon } = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.X; });
|
|
55
55
|
await restartDaemon();
|
|
56
56
|
process.exit(0);
|
|
57
57
|
}
|
|
@@ -344,7 +344,7 @@ async function main() {
|
|
|
344
344
|
console.error("svamp service: Service commands are not available in sandboxed sessions.");
|
|
345
345
|
process.exit(1);
|
|
346
346
|
}
|
|
347
|
-
const { handleServiceCommand } = await import('./commands-
|
|
347
|
+
const { handleServiceCommand } = await import('./commands-Dfyuenmi.mjs');
|
|
348
348
|
await handleServiceCommand();
|
|
349
349
|
} else if (subcommand === "serve") {
|
|
350
350
|
const { isSandboxed: isSandboxedServe } = await import('./sandboxDetect-DNTcbgWD.mjs');
|
|
@@ -352,7 +352,7 @@ async function main() {
|
|
|
352
352
|
console.error("svamp serve: Serve commands are not available in sandboxed sessions.");
|
|
353
353
|
process.exit(1);
|
|
354
354
|
}
|
|
355
|
-
const { handleServeCommand } = await import('./serveCommands-
|
|
355
|
+
const { handleServeCommand } = await import('./serveCommands-CvhlM4Iz.mjs');
|
|
356
356
|
await handleServeCommand();
|
|
357
357
|
process.exit(0);
|
|
358
358
|
} else if (subcommand === "process" || subcommand === "proc") {
|
|
@@ -361,7 +361,7 @@ async function main() {
|
|
|
361
361
|
console.error("svamp process: Process commands are not available in sandboxed sessions.");
|
|
362
362
|
process.exit(1);
|
|
363
363
|
}
|
|
364
|
-
const { processCommand } = await import('./commands-
|
|
364
|
+
const { processCommand } = await import('./commands-pVw3CcRo.mjs');
|
|
365
365
|
let machineId;
|
|
366
366
|
const processArgs = args.slice(1);
|
|
367
367
|
const mIdx = processArgs.findIndex((a) => a === "--machine" || a === "-m");
|
|
@@ -375,7 +375,7 @@ async function main() {
|
|
|
375
375
|
}), machineId);
|
|
376
376
|
process.exit(0);
|
|
377
377
|
} else if (subcommand === "routine" || subcommand === "routines") {
|
|
378
|
-
const { routineCommand } = await import('./commands-
|
|
378
|
+
const { routineCommand } = await import('./commands-BxluPors.mjs');
|
|
379
379
|
await routineCommand(args.slice(1));
|
|
380
380
|
process.exit(0);
|
|
381
381
|
} else if (subcommand === "wise-agent" || subcommand === "wise") {
|
|
@@ -386,7 +386,7 @@ async function main() {
|
|
|
386
386
|
} else if (!subcommand || subcommand === "start") {
|
|
387
387
|
await handleInteractiveCommand();
|
|
388
388
|
} else if (subcommand === "--version" || subcommand === "-v") {
|
|
389
|
-
const pkg = await import('./package-
|
|
389
|
+
const pkg = await import('./package-_Qk8lnvq.mjs').catch(() => ({ default: { version: "unknown" } }));
|
|
390
390
|
console.log(`svamp version: ${pkg.default.version}`);
|
|
391
391
|
} else {
|
|
392
392
|
console.error(`Unknown command: ${subcommand}`);
|
|
@@ -395,7 +395,7 @@ async function main() {
|
|
|
395
395
|
}
|
|
396
396
|
}
|
|
397
397
|
async function handleInteractiveCommand() {
|
|
398
|
-
const { runInteractive } = await import('./run-
|
|
398
|
+
const { runInteractive } = await import('./run-l1OtW948.mjs');
|
|
399
399
|
const interactiveArgs = subcommand === "start" ? args.slice(1) : args;
|
|
400
400
|
let directory = process.cwd();
|
|
401
401
|
let resumeSessionId;
|
|
@@ -440,7 +440,7 @@ async function handleAgentCommand() {
|
|
|
440
440
|
return;
|
|
441
441
|
}
|
|
442
442
|
if (agentArgs[0] === "list") {
|
|
443
|
-
const { KNOWN_ACP_AGENTS, KNOWN_MCP_AGENTS: KNOWN_MCP_AGENTS2 } = await import('./run-
|
|
443
|
+
const { KNOWN_ACP_AGENTS, KNOWN_MCP_AGENTS: KNOWN_MCP_AGENTS2 } = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.P; });
|
|
444
444
|
console.log("Known agents:");
|
|
445
445
|
for (const [name, config2] of Object.entries(KNOWN_ACP_AGENTS)) {
|
|
446
446
|
console.log(` ${name.padEnd(12)} ${config2.command} ${config2.args.join(" ")} (ACP)`);
|
|
@@ -452,7 +452,7 @@ async function handleAgentCommand() {
|
|
|
452
452
|
console.log('Use "svamp agent -- <command> [args]" for a custom ACP agent.');
|
|
453
453
|
return;
|
|
454
454
|
}
|
|
455
|
-
const { resolveAcpAgentConfig, KNOWN_MCP_AGENTS } = await import('./run-
|
|
455
|
+
const { resolveAcpAgentConfig, KNOWN_MCP_AGENTS } = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.P; });
|
|
456
456
|
let cwd = process.cwd();
|
|
457
457
|
const filteredArgs = [];
|
|
458
458
|
for (let i = 0; i < agentArgs.length; i++) {
|
|
@@ -476,12 +476,12 @@ async function handleAgentCommand() {
|
|
|
476
476
|
console.log(`Starting ${config.agentName} agent in ${cwd}...`);
|
|
477
477
|
let backend;
|
|
478
478
|
if (KNOWN_MCP_AGENTS[config.agentName]) {
|
|
479
|
-
const { CodexMcpBackend } = await import('./run-
|
|
479
|
+
const { CodexMcpBackend } = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.Q; });
|
|
480
480
|
backend = new CodexMcpBackend({ cwd, log: logFn });
|
|
481
481
|
} else {
|
|
482
|
-
const { AcpBackend } = await import('./run-
|
|
483
|
-
const { GeminiTransport } = await import('./run-
|
|
484
|
-
const { DefaultTransport } = await import('./run-
|
|
482
|
+
const { AcpBackend } = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.O; });
|
|
483
|
+
const { GeminiTransport } = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.T; });
|
|
484
|
+
const { DefaultTransport } = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.N; });
|
|
485
485
|
const transportHandler = config.agentName === "gemini" ? new GeminiTransport() : new DefaultTransport(config.agentName);
|
|
486
486
|
backend = new AcpBackend({
|
|
487
487
|
agentName: config.agentName,
|
|
@@ -608,7 +608,7 @@ async function handleSessionCommand() {
|
|
|
608
608
|
process.exit(1);
|
|
609
609
|
}
|
|
610
610
|
}
|
|
611
|
-
const { sessionList, sessionWhoami, sessionSpawn, sessionArchive, sessionResume, sessionDelete, sessionInfo, sessionMessages, sessionAttach, sessionMachines, sessionSend, sessionWait, sessionShare, sessionRalphStart, sessionRalphCancel, sessionRalphStatus, sessionInboxSend, sessionInboxList, sessionInboxRead, sessionInboxReply, sessionInboxClear } = await import('./commands-
|
|
611
|
+
const { sessionList, sessionWhoami, sessionSpawn, sessionArchive, sessionResume, sessionDelete, sessionInfo, sessionMessages, sessionAttach, sessionMachines, sessionSend, sessionWait, sessionShare, sessionRalphStart, sessionRalphCancel, sessionRalphStatus, sessionInboxSend, sessionInboxList, sessionInboxRead, sessionInboxReply, sessionInboxClear } = await import('./commands-BR_lAgZ0.mjs');
|
|
612
612
|
const parseFlagStr = (flag, shortFlag) => {
|
|
613
613
|
for (let i = 1; i < sessionArgs.length; i++) {
|
|
614
614
|
if ((sessionArgs[i] === flag || shortFlag) && i + 1 < sessionArgs.length) {
|
|
@@ -676,7 +676,7 @@ async function handleSessionCommand() {
|
|
|
676
676
|
allowDomain.push(sessionArgs[++i]);
|
|
677
677
|
}
|
|
678
678
|
}
|
|
679
|
-
const { parseShareArg } = await import('./commands-
|
|
679
|
+
const { parseShareArg } = await import('./commands-BR_lAgZ0.mjs');
|
|
680
680
|
const shareEntries = share.map((s) => parseShareArg(s));
|
|
681
681
|
await sessionSpawn(agent, dir, targetMachineId, {
|
|
682
682
|
message,
|
|
@@ -763,7 +763,7 @@ async function handleSessionCommand() {
|
|
|
763
763
|
console.error(" Spawns a stateless Claude session in <directory>, sends <prompt>, prints the answer, then deletes the session.");
|
|
764
764
|
process.exit(1);
|
|
765
765
|
}
|
|
766
|
-
const { sessionQuery } = await import('./commands-
|
|
766
|
+
const { sessionQuery } = await import('./commands-BR_lAgZ0.mjs');
|
|
767
767
|
await sessionQuery(dir, prompt, targetMachineId, {
|
|
768
768
|
timeout: parseFlagInt("--timeout"),
|
|
769
769
|
json: hasFlag("--json"),
|
|
@@ -796,7 +796,7 @@ async function handleSessionCommand() {
|
|
|
796
796
|
console.error("Usage: svamp session approve <session-id> [request-id] [--json]");
|
|
797
797
|
process.exit(1);
|
|
798
798
|
}
|
|
799
|
-
const { sessionApprove } = await import('./commands-
|
|
799
|
+
const { sessionApprove } = await import('./commands-BR_lAgZ0.mjs');
|
|
800
800
|
const approveReqId = sessionArgs[2] && !sessionArgs[2].startsWith("--") ? sessionArgs[2] : void 0;
|
|
801
801
|
await sessionApprove(sessionArgs[1], approveReqId, targetMachineId, {
|
|
802
802
|
json: hasFlag("--json")
|
|
@@ -806,7 +806,7 @@ async function handleSessionCommand() {
|
|
|
806
806
|
console.error("Usage: svamp session deny <session-id> [request-id] [--json]");
|
|
807
807
|
process.exit(1);
|
|
808
808
|
}
|
|
809
|
-
const { sessionDeny } = await import('./commands-
|
|
809
|
+
const { sessionDeny } = await import('./commands-BR_lAgZ0.mjs');
|
|
810
810
|
const denyReqId = sessionArgs[2] && !sessionArgs[2].startsWith("--") ? sessionArgs[2] : void 0;
|
|
811
811
|
await sessionDeny(sessionArgs[1], denyReqId, targetMachineId, {
|
|
812
812
|
json: hasFlag("--json")
|
|
@@ -842,7 +842,7 @@ async function handleSessionCommand() {
|
|
|
842
842
|
console.error("Usage: svamp session set-title <title>");
|
|
843
843
|
process.exit(1);
|
|
844
844
|
}
|
|
845
|
-
const { sessionSetTitle } = await import('./agentCommands-
|
|
845
|
+
const { sessionSetTitle } = await import('./agentCommands-t6HbehoC.mjs');
|
|
846
846
|
await sessionSetTitle(title);
|
|
847
847
|
} else if (sessionSubcommand === "set-link") {
|
|
848
848
|
const url = sessionArgs[1];
|
|
@@ -851,7 +851,7 @@ async function handleSessionCommand() {
|
|
|
851
851
|
process.exit(1);
|
|
852
852
|
}
|
|
853
853
|
const label = sessionArgs[2] && !sessionArgs[2].startsWith("--") ? sessionArgs[2] : void 0;
|
|
854
|
-
const { sessionSetLink } = await import('./agentCommands-
|
|
854
|
+
const { sessionSetLink } = await import('./agentCommands-t6HbehoC.mjs');
|
|
855
855
|
await sessionSetLink(url, label);
|
|
856
856
|
} else if (sessionSubcommand === "notify") {
|
|
857
857
|
const message = sessionArgs[1];
|
|
@@ -860,7 +860,7 @@ async function handleSessionCommand() {
|
|
|
860
860
|
process.exit(1);
|
|
861
861
|
}
|
|
862
862
|
const level = parseFlagStr("--level") || "info";
|
|
863
|
-
const { sessionNotify } = await import('./agentCommands-
|
|
863
|
+
const { sessionNotify } = await import('./agentCommands-t6HbehoC.mjs');
|
|
864
864
|
await sessionNotify(message, level);
|
|
865
865
|
} else if (sessionSubcommand === "broadcast") {
|
|
866
866
|
const action = sessionArgs[1];
|
|
@@ -868,7 +868,7 @@ async function handleSessionCommand() {
|
|
|
868
868
|
console.error("Usage: svamp session broadcast <action> [args...]\nActions: open-canvas <url> [label], close-canvas, toast <message>");
|
|
869
869
|
process.exit(1);
|
|
870
870
|
}
|
|
871
|
-
const { sessionBroadcast } = await import('./agentCommands-
|
|
871
|
+
const { sessionBroadcast } = await import('./agentCommands-t6HbehoC.mjs');
|
|
872
872
|
await sessionBroadcast(action, sessionArgs.slice(2).filter((a) => !a.startsWith("--")));
|
|
873
873
|
} else if (sessionSubcommand === "inbox") {
|
|
874
874
|
const inboxSubcmd = sessionArgs[1];
|
|
@@ -879,7 +879,7 @@ async function handleSessionCommand() {
|
|
|
879
879
|
process.exit(1);
|
|
880
880
|
}
|
|
881
881
|
if (agentSessionId) {
|
|
882
|
-
const { inboxSend } = await import('./agentCommands-
|
|
882
|
+
const { inboxSend } = await import('./agentCommands-t6HbehoC.mjs');
|
|
883
883
|
await inboxSend(sessionArgs[2], {
|
|
884
884
|
body: sessionArgs[3],
|
|
885
885
|
subject: parseFlagStr("--subject"),
|
|
@@ -894,7 +894,7 @@ async function handleSessionCommand() {
|
|
|
894
894
|
}
|
|
895
895
|
} else if (inboxSubcmd === "list" || inboxSubcmd === "ls") {
|
|
896
896
|
if (agentSessionId && !sessionArgs[2]) {
|
|
897
|
-
const { inboxList } = await import('./agentCommands-
|
|
897
|
+
const { inboxList } = await import('./agentCommands-t6HbehoC.mjs');
|
|
898
898
|
await inboxList({
|
|
899
899
|
unread: hasFlag("--unread"),
|
|
900
900
|
limit: parseFlagInt("--limit"),
|
|
@@ -916,7 +916,7 @@ async function handleSessionCommand() {
|
|
|
916
916
|
process.exit(1);
|
|
917
917
|
}
|
|
918
918
|
if (agentSessionId && !sessionArgs[3]) {
|
|
919
|
-
const { inboxList } = await import('./agentCommands-
|
|
919
|
+
const { inboxList } = await import('./agentCommands-t6HbehoC.mjs');
|
|
920
920
|
await sessionInboxRead(agentSessionId, sessionArgs[2], targetMachineId);
|
|
921
921
|
} else if (sessionArgs[3]) {
|
|
922
922
|
await sessionInboxRead(sessionArgs[2], sessionArgs[3], targetMachineId);
|
|
@@ -926,7 +926,7 @@ async function handleSessionCommand() {
|
|
|
926
926
|
}
|
|
927
927
|
} else if (inboxSubcmd === "reply") {
|
|
928
928
|
if (agentSessionId && sessionArgs[2] && sessionArgs[3] && !sessionArgs[4]) {
|
|
929
|
-
const { inboxReply } = await import('./agentCommands-
|
|
929
|
+
const { inboxReply } = await import('./agentCommands-t6HbehoC.mjs');
|
|
930
930
|
await inboxReply(sessionArgs[2], sessionArgs[3]);
|
|
931
931
|
} else if (sessionArgs[2] && sessionArgs[3] && sessionArgs[4]) {
|
|
932
932
|
await sessionInboxReply(sessionArgs[2], sessionArgs[3], sessionArgs[4], targetMachineId);
|
|
@@ -962,7 +962,7 @@ async function handleMachineCommand() {
|
|
|
962
962
|
return;
|
|
963
963
|
}
|
|
964
964
|
if (machineSubcommand === "share") {
|
|
965
|
-
const { machineShare } = await import('./commands-
|
|
965
|
+
const { machineShare } = await import('./commands-BR_lAgZ0.mjs');
|
|
966
966
|
let machineId;
|
|
967
967
|
const shareArgs = [];
|
|
968
968
|
for (let i = 1; i < machineArgs.length; i++) {
|
|
@@ -992,7 +992,7 @@ async function handleMachineCommand() {
|
|
|
992
992
|
}
|
|
993
993
|
await machineShare(machineId, { add, remove, list, configPath, showConfig });
|
|
994
994
|
} else if (machineSubcommand === "exec") {
|
|
995
|
-
const { machineExec } = await import('./commands-
|
|
995
|
+
const { machineExec } = await import('./commands-BR_lAgZ0.mjs');
|
|
996
996
|
let machineId;
|
|
997
997
|
let cwd;
|
|
998
998
|
const cmdParts = [];
|
|
@@ -1012,7 +1012,7 @@ async function handleMachineCommand() {
|
|
|
1012
1012
|
}
|
|
1013
1013
|
await machineExec(machineId, command, cwd);
|
|
1014
1014
|
} else if (machineSubcommand === "info") {
|
|
1015
|
-
const { machineInfo } = await import('./commands-
|
|
1015
|
+
const { machineInfo } = await import('./commands-BR_lAgZ0.mjs');
|
|
1016
1016
|
let machineId;
|
|
1017
1017
|
for (let i = 1; i < machineArgs.length; i++) {
|
|
1018
1018
|
if ((machineArgs[i] === "--machine" || machineArgs[i] === "-m") && i + 1 < machineArgs.length) {
|
|
@@ -1032,10 +1032,10 @@ async function handleMachineCommand() {
|
|
|
1032
1032
|
level = machineArgs[++i];
|
|
1033
1033
|
}
|
|
1034
1034
|
}
|
|
1035
|
-
const { machineNotify } = await import('./agentCommands-
|
|
1035
|
+
const { machineNotify } = await import('./agentCommands-t6HbehoC.mjs');
|
|
1036
1036
|
await machineNotify(message, level);
|
|
1037
1037
|
} else if (machineSubcommand === "ls") {
|
|
1038
|
-
const { machineLs } = await import('./commands-
|
|
1038
|
+
const { machineLs } = await import('./commands-BR_lAgZ0.mjs');
|
|
1039
1039
|
let machineId;
|
|
1040
1040
|
let showHidden = false;
|
|
1041
1041
|
let path;
|
|
@@ -1093,24 +1093,24 @@ Examples:
|
|
|
1093
1093
|
};
|
|
1094
1094
|
const hasFlag = (name) => fleetArgs.includes(`--${name}`);
|
|
1095
1095
|
if (sub === "status") {
|
|
1096
|
-
const { fleetStatus } = await import('./fleet-
|
|
1096
|
+
const { fleetStatus } = await import('./fleet-C3KLMFeD.mjs');
|
|
1097
1097
|
await fleetStatus();
|
|
1098
1098
|
} else if (sub === "exec") {
|
|
1099
1099
|
const command = fleetArgs.slice(1).filter((a) => !a.startsWith("--")).join(" ");
|
|
1100
|
-
const { fleetExec } = await import('./fleet-
|
|
1100
|
+
const { fleetExec } = await import('./fleet-C3KLMFeD.mjs');
|
|
1101
1101
|
await fleetExec(command, { cwd: flag("cwd") });
|
|
1102
1102
|
} else if (sub === "upgrade-claude") {
|
|
1103
|
-
const { fleetUpgradeClaude } = await import('./fleet-
|
|
1103
|
+
const { fleetUpgradeClaude } = await import('./fleet-C3KLMFeD.mjs');
|
|
1104
1104
|
await fleetUpgradeClaude({ version: flag("version", "-v") });
|
|
1105
1105
|
} else if (sub === "upgrade-svamp") {
|
|
1106
|
-
const { fleetUpgradeSvamp } = await import('./fleet-
|
|
1106
|
+
const { fleetUpgradeSvamp } = await import('./fleet-C3KLMFeD.mjs');
|
|
1107
1107
|
await fleetUpgradeSvamp({ version: flag("version", "-v"), excludeSelf: hasFlag("exclude-self") });
|
|
1108
1108
|
} else if (sub === "daemon-restart") {
|
|
1109
|
-
const { fleetDaemonRestart } = await import('./fleet-
|
|
1109
|
+
const { fleetDaemonRestart } = await import('./fleet-C3KLMFeD.mjs');
|
|
1110
1110
|
await fleetDaemonRestart({ graceful: !hasFlag("cleanup") });
|
|
1111
1111
|
} else if (sub === "push-skill") {
|
|
1112
1112
|
const name = fleetArgs[1];
|
|
1113
|
-
const { fleetPushSkill } = await import('./fleet-
|
|
1113
|
+
const { fleetPushSkill } = await import('./fleet-C3KLMFeD.mjs');
|
|
1114
1114
|
await fleetPushSkill(name);
|
|
1115
1115
|
} else {
|
|
1116
1116
|
console.error(`Unknown fleet subcommand: ${sub}`);
|
|
@@ -1126,7 +1126,7 @@ async function handleSkillsCommand() {
|
|
|
1126
1126
|
await printSkillsHelp();
|
|
1127
1127
|
return;
|
|
1128
1128
|
}
|
|
1129
|
-
const { skillsFind, skillsInstall, skillsList, skillsRemove, skillsPublish } = await import('./commands-
|
|
1129
|
+
const { skillsFind, skillsInstall, skillsList, skillsRemove, skillsPublish } = await import('./commands-BHSvizSp.mjs');
|
|
1130
1130
|
if (skillsSubcommand === "find" || skillsSubcommand === "search") {
|
|
1131
1131
|
const query = skillsArgs.slice(1).filter((a) => !a.startsWith("--")).join(" ");
|
|
1132
1132
|
if (!query) {
|
|
@@ -1173,7 +1173,7 @@ async function loginToHypha() {
|
|
|
1173
1173
|
process.exit(1);
|
|
1174
1174
|
}
|
|
1175
1175
|
const anchor = anchorArg.replace(/\/+$/, "");
|
|
1176
|
-
const { loadInstanceConfig } = await import('./run-
|
|
1176
|
+
const { loadInstanceConfig } = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.V; });
|
|
1177
1177
|
let cfg = null;
|
|
1178
1178
|
try {
|
|
1179
1179
|
cfg = await loadInstanceConfig({ anchor, force: true });
|
|
@@ -1284,7 +1284,7 @@ async function logoutFromHypha() {
|
|
|
1284
1284
|
} catch {
|
|
1285
1285
|
}
|
|
1286
1286
|
try {
|
|
1287
|
-
const { clearInstanceConfigCache } = await import('./run-
|
|
1287
|
+
const { clearInstanceConfigCache } = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.V; });
|
|
1288
1288
|
clearInstanceConfigCache();
|
|
1289
1289
|
} catch {
|
|
1290
1290
|
}
|
|
@@ -1530,7 +1530,7 @@ Commands:
|
|
|
1530
1530
|
|
|
1531
1531
|
Session management (requires daemon running):
|
|
1532
1532
|
svamp session spawn <agent> [opts] Spawn a new agent session (agents: claude, gemini, codex)
|
|
1533
|
-
svamp session send <id> <message> Send message to a session (--wait
|
|
1533
|
+
svamp session send <id> <message> Send message to a session (non-urgent by default; --wait/--response/--urgency urgent to wake)
|
|
1534
1534
|
svamp session query <dir> <prompt> Stateless one-shot: spawn \u2192 ask \u2192 answer \u2192 delete
|
|
1535
1535
|
svamp session wait <id> Wait for agent to become idle
|
|
1536
1536
|
svamp session messages <id> Show message history (--last N, --json, --raw)
|
|
@@ -1615,7 +1615,7 @@ async function applyClaudeAuthFlags(argv) {
|
|
|
1615
1615
|
"--use-hypha-proxy, --use-claude-login, and --anthropic-base-url/--anthropic-api-key are mutually exclusive"
|
|
1616
1616
|
);
|
|
1617
1617
|
}
|
|
1618
|
-
const mod = await import('./run-
|
|
1618
|
+
const mod = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.U; });
|
|
1619
1619
|
if (hasHypha) {
|
|
1620
1620
|
let url;
|
|
1621
1621
|
const hyphaIdx = argv.indexOf("--use-hypha-proxy");
|
|
@@ -1669,7 +1669,7 @@ async function applyDaemonShareFlag(argv) {
|
|
|
1669
1669
|
}
|
|
1670
1670
|
}
|
|
1671
1671
|
if (collected.length === 0) return;
|
|
1672
|
-
const { updateEnvFile } = await import('./run-
|
|
1672
|
+
const { updateEnvFile } = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.U; });
|
|
1673
1673
|
const seen = /* @__PURE__ */ new Set();
|
|
1674
1674
|
const deduped = collected.filter((e) => {
|
|
1675
1675
|
const k = e.toLowerCase();
|
|
@@ -1682,8 +1682,54 @@ async function applyDaemonShareFlag(argv) {
|
|
|
1682
1682
|
}
|
|
1683
1683
|
async function handleWiseAgentCommand(rest) {
|
|
1684
1684
|
const sub = rest[0];
|
|
1685
|
+
if (sub === "ask") {
|
|
1686
|
+
const valueOf = (flags) => {
|
|
1687
|
+
for (const f of flags) {
|
|
1688
|
+
const i = rest.indexOf(f);
|
|
1689
|
+
if (i >= 0 && rest[i + 1]) return rest[i + 1];
|
|
1690
|
+
}
|
|
1691
|
+
return void 0;
|
|
1692
|
+
};
|
|
1693
|
+
const sessionId = valueOf(["--session", "-s"]);
|
|
1694
|
+
const machineId = valueOf(["--machine", "-m"]);
|
|
1695
|
+
const json = rest.includes("--json");
|
|
1696
|
+
const consumed = /* @__PURE__ */ new Set();
|
|
1697
|
+
["--session", "-s", "--machine", "-m"].forEach((f) => {
|
|
1698
|
+
const i = rest.indexOf(f);
|
|
1699
|
+
if (i >= 0) {
|
|
1700
|
+
consumed.add(String(i));
|
|
1701
|
+
consumed.add(String(i + 1));
|
|
1702
|
+
}
|
|
1703
|
+
});
|
|
1704
|
+
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(" ");
|
|
1705
|
+
const { wiseAskCli } = await import('./commands-BR_lAgZ0.mjs');
|
|
1706
|
+
await wiseAskCli(machineId, message, sessionId, { json });
|
|
1707
|
+
return;
|
|
1708
|
+
}
|
|
1709
|
+
if (sub === "voice") {
|
|
1710
|
+
const valueOf = (flags) => {
|
|
1711
|
+
for (const f of flags) {
|
|
1712
|
+
const i = rest.indexOf(f);
|
|
1713
|
+
if (i >= 0 && rest[i + 1]) return rest[i + 1];
|
|
1714
|
+
}
|
|
1715
|
+
return void 0;
|
|
1716
|
+
};
|
|
1717
|
+
const { runWiseVoiceCli } = await import('./headlessCli-D-unuCQt.mjs');
|
|
1718
|
+
await runWiseVoiceCli({ voice: valueOf(["--voice"]), wakeKeywordPath: valueOf(["--wake"]), model: valueOf(["--model"]) });
|
|
1719
|
+
return;
|
|
1720
|
+
}
|
|
1685
1721
|
if (sub === "--help" || sub === "-h") {
|
|
1686
|
-
console.log(`Usage:
|
|
1722
|
+
console.log(`Usage:
|
|
1723
|
+
svamp wise ask "<message>" [--session <id>] [-m <machine>] [--json]
|
|
1724
|
+
Fast WISE turn \u2014 GLOBAL machine-manager by default (daemon status, run
|
|
1725
|
+
commands, inspect/spawn/drive any session); --session <id> scopes to one.
|
|
1726
|
+
|
|
1727
|
+
svamp wise voice [--voice <name>] [--wake <keyword.ppn>] [--model <id>]
|
|
1728
|
+
HEADLESS voice on this machine (mic + speaker, no browser). Needs \`sox\`.
|
|
1729
|
+
--wake <keyword.ppn> = always-on "Hey WISE" (needs PICOVOICE_ACCESS_KEY);
|
|
1730
|
+
omit it for a single always-listening session (Ctrl-C to stop).
|
|
1731
|
+
|
|
1732
|
+
svamp wise-agent auth <command>
|
|
1687
1733
|
|
|
1688
1734
|
Configure the server-side WISE Agent's fast model (text companion to the deep agent).
|
|
1689
1735
|
|
|
@@ -1710,7 +1756,7 @@ If none is set, hitting a WISE Agent channel returns a clear "not configured" er
|
|
|
1710
1756
|
return;
|
|
1711
1757
|
}
|
|
1712
1758
|
const authArgs = rest.slice(1);
|
|
1713
|
-
const mod = await import('./auth-
|
|
1759
|
+
const mod = await import('./auth-Dx09pKt3.mjs');
|
|
1714
1760
|
let action;
|
|
1715
1761
|
try {
|
|
1716
1762
|
action = mod.parseWiseAgentAuthArgs(authArgs);
|
|
@@ -1720,7 +1766,7 @@ If none is set, hitting a WISE Agent channel returns a clear "not configured" er
|
|
|
1720
1766
|
return;
|
|
1721
1767
|
}
|
|
1722
1768
|
if (action) {
|
|
1723
|
-
const { updateEnvFile } = await import('./run-
|
|
1769
|
+
const { updateEnvFile } = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.U; });
|
|
1724
1770
|
const updates = mod.buildWiseAgentEnvUpdates(action);
|
|
1725
1771
|
updateEnvFile(updates);
|
|
1726
1772
|
for (const [k, v] of Object.entries(updates)) {
|
|
@@ -1734,7 +1780,7 @@ If none is set, hitting a WISE Agent channel returns a clear "not configured" er
|
|
|
1734
1780
|
}
|
|
1735
1781
|
async function handleDaemonAuthCommand(argv) {
|
|
1736
1782
|
const sub = (argv[0] || "status").toLowerCase();
|
|
1737
|
-
const mod = await import('./run-
|
|
1783
|
+
const mod = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.U; });
|
|
1738
1784
|
if (sub === "--help" || sub === "-h" || sub === "help") {
|
|
1739
1785
|
console.log(`
|
|
1740
1786
|
svamp daemon auth \u2014 Configure how Claude subprocesses authenticate
|
|
@@ -1848,8 +1894,14 @@ COMMANDS:
|
|
|
1848
1894
|
same-user sessions on other machines, and how to reach them (alias: env)
|
|
1849
1895
|
|
|
1850
1896
|
Communicate:
|
|
1851
|
-
send <id> <message> [--wait] [--response] [--btw] [--require-approval] [--timeout N] [--json]
|
|
1897
|
+
send <id> <message> [--wait] [--response] [--btw] [--require-approval] [--timeout N] [--json] [--urgency urgent|normal]
|
|
1852
1898
|
Send a message to a running session.
|
|
1899
|
+
By default this is NON-URGENT: it lands in the peer's
|
|
1900
|
+
inbox and is processed on their next idle turn (it does
|
|
1901
|
+
NOT interrupt them). Use --wait/--response (synchronous)
|
|
1902
|
+
or --urgency urgent to wake the agent immediately. Loop
|
|
1903
|
+
safeguard: a send issued from a turn that was itself
|
|
1904
|
+
triggered by an inbox message is always non-urgent.
|
|
1853
1905
|
--wait block until the agent goes idle
|
|
1854
1906
|
--response block AND print the agent's
|
|
1855
1907
|
text answer (implies --wait)
|
|
@@ -2031,7 +2083,7 @@ Examples:
|
|
|
2031
2083
|
async function printSkillsHelp() {
|
|
2032
2084
|
let browseUrl = "<HYPHA_SERVER_URL>/<workspace>/artifacts/marketplace (set HYPHA_SERVER_URL)";
|
|
2033
2085
|
try {
|
|
2034
|
-
const { getArtifactBaseUrl, getSkillsCollectionName } = await import('./run-
|
|
2086
|
+
const { getArtifactBaseUrl, getSkillsCollectionName } = await import('./run-BF4AmFz8.mjs').then(function (n) { return n.W; });
|
|
2035
2087
|
browseUrl = `${getArtifactBaseUrl()}/${getSkillsCollectionName()}`;
|
|
2036
2088
|
} catch {
|
|
2037
2089
|
}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import os from 'os';
|
|
2
2
|
import fs__default from 'fs';
|
|
3
3
|
import { resolve, join, relative } from 'path';
|
|
4
|
-
import { p as parseFrontmatter, n as getSkillsServer, o as getSkillsWorkspaceName, q as getSkillsCollectionName, t as fetchWithTimeout, u as searchSkills, v as SKILLS_DIR, w as getSkillInfo, x as downloadSkillFile, y as listSkillFiles } from './run-
|
|
4
|
+
import { p as parseFrontmatter, n as getSkillsServer, o as getSkillsWorkspaceName, q as getSkillsCollectionName, t as fetchWithTimeout, u as searchSkills, v as SKILLS_DIR, w as getSkillInfo, x as downloadSkillFile, y as listSkillFiles } from './run-BF4AmFz8.mjs';
|
|
5
5
|
import 'fs/promises';
|
|
6
6
|
import 'url';
|
|
7
7
|
import 'child_process';
|
|
8
8
|
import 'crypto';
|
|
9
9
|
import 'node:fs';
|
|
10
|
+
import 'node:child_process';
|
|
11
|
+
import 'ws';
|
|
10
12
|
import 'util';
|
|
11
13
|
import 'node:crypto';
|
|
12
14
|
import 'node:path';
|
|
13
15
|
import 'node:os';
|
|
14
|
-
import 'node:vm';
|
|
15
|
-
import 'node:child_process';
|
|
16
16
|
import '@agentclientprotocol/sdk';
|
|
17
17
|
import '@modelcontextprotocol/sdk/client/index.js';
|
|
18
18
|
import '@modelcontextprotocol/sdk/client/stdio.js';
|
|
@@ -2,7 +2,7 @@ import { existsSync, readFileSync } from 'node:fs';
|
|
|
2
2
|
import { execSync } from 'node:child_process';
|
|
3
3
|
import { basename, resolve, join } from 'node:path';
|
|
4
4
|
import os from 'node:os';
|
|
5
|
-
import { A as normalizeAllowedUser, B as loadSecurityContextConfig, C as resolveSecurityContext, D as buildSecurityContextFromFlags, E as mergeSecurityContexts, c as connectToHypha, F as buildSessionShareUrl, G as buildMachineShareUrl } from './run-
|
|
5
|
+
import { A as normalizeAllowedUser, B as loadSecurityContextConfig, C as resolveSecurityContext, D as buildSecurityContextFromFlags, E as mergeSecurityContexts, c as connectToHypha, F as buildSessionShareUrl, G as computeOutboundHop, H as buildMachineShareUrl } from './run-BF4AmFz8.mjs';
|
|
6
6
|
import 'os';
|
|
7
7
|
import 'fs/promises';
|
|
8
8
|
import 'fs';
|
|
@@ -10,9 +10,9 @@ import 'path';
|
|
|
10
10
|
import 'url';
|
|
11
11
|
import 'child_process';
|
|
12
12
|
import 'crypto';
|
|
13
|
+
import 'ws';
|
|
13
14
|
import 'util';
|
|
14
15
|
import 'node:crypto';
|
|
15
|
-
import 'node:vm';
|
|
16
16
|
import '@agentclientprotocol/sdk';
|
|
17
17
|
import '@modelcontextprotocol/sdk/client/index.js';
|
|
18
18
|
import '@modelcontextprotocol/sdk/client/stdio.js';
|
|
@@ -1671,6 +1671,9 @@ async function sendCore(machine, fullId, message, opts) {
|
|
|
1671
1671
|
const preSeq = wantResponse ? await snapshotLatestSeq(machine, fullId) : 0;
|
|
1672
1672
|
const { randomUUID } = await import('node:crypto');
|
|
1673
1673
|
const callerSessionId = process.env.SVAMP_SESSION_ID;
|
|
1674
|
+
const hop = computeOutboundHop(callerSessionId);
|
|
1675
|
+
let urgency = opts?.urgency ? opts.urgency : shouldWait ? "urgent" : "normal";
|
|
1676
|
+
if (hop.fromInboxTurn) urgency = "normal";
|
|
1674
1677
|
const inboxMessage = {
|
|
1675
1678
|
messageId: randomUUID(),
|
|
1676
1679
|
body: message,
|
|
@@ -1680,7 +1683,9 @@ async function sendCore(machine, fullId, message, opts) {
|
|
|
1680
1683
|
...callerSessionId ? { fromSession: callerSessionId } : {},
|
|
1681
1684
|
to: fullId,
|
|
1682
1685
|
subject: opts?.subject,
|
|
1683
|
-
urgency
|
|
1686
|
+
urgency,
|
|
1687
|
+
hopCount: hop.hopCount,
|
|
1688
|
+
...hop.threadId ? { threadId: hop.threadId } : {}
|
|
1684
1689
|
};
|
|
1685
1690
|
const result = await machine.sessionRPC(fullId, "sendInboxMessage", { message: inboxMessage });
|
|
1686
1691
|
let waitResult;
|
|
@@ -2194,6 +2199,28 @@ async function machineExec(machineId, command, cwd) {
|
|
|
2194
2199
|
await server.disconnect();
|
|
2195
2200
|
}
|
|
2196
2201
|
}
|
|
2202
|
+
async function wiseAskCli(machineId, message, sessionId, opts) {
|
|
2203
|
+
if (!message) {
|
|
2204
|
+
console.error('Usage: svamp wise ask "<message>" [--session <id>] [-m <machine>]');
|
|
2205
|
+
process.exit(1);
|
|
2206
|
+
}
|
|
2207
|
+
const { server, machine } = await connectAndGetMachine(machineId);
|
|
2208
|
+
try {
|
|
2209
|
+
const res = await machine.wiseAsk({ message, sessionId });
|
|
2210
|
+
if (opts?.json) {
|
|
2211
|
+
console.log(JSON.stringify(res, null, 2));
|
|
2212
|
+
process.exit(res?.success ? 0 : 1);
|
|
2213
|
+
}
|
|
2214
|
+
if (res?.error) {
|
|
2215
|
+
console.error(`\u2717 ${res.error}`);
|
|
2216
|
+
process.exit(1);
|
|
2217
|
+
}
|
|
2218
|
+
console.log(res?.reply || `(${res?.status || "no reply"})`);
|
|
2219
|
+
process.exit(0);
|
|
2220
|
+
} finally {
|
|
2221
|
+
await server.disconnect();
|
|
2222
|
+
}
|
|
2223
|
+
}
|
|
2197
2224
|
async function machineInfo(machineId) {
|
|
2198
2225
|
const { server, machine } = await connectAndGetMachine(machineId);
|
|
2199
2226
|
try {
|
|
@@ -2309,6 +2336,9 @@ async function sessionInboxSend(sessionIdPartial, body, machineId, opts) {
|
|
|
2309
2336
|
try {
|
|
2310
2337
|
const { randomUUID } = await import('node:crypto');
|
|
2311
2338
|
const callerSessionId = process.env.SVAMP_SESSION_ID;
|
|
2339
|
+
const hop = computeOutboundHop(callerSessionId);
|
|
2340
|
+
let urgency = opts?.urgency || "normal";
|
|
2341
|
+
if (hop.fromInboxTurn) urgency = "normal";
|
|
2312
2342
|
const message = {
|
|
2313
2343
|
messageId: randomUUID(),
|
|
2314
2344
|
body,
|
|
@@ -2318,9 +2348,10 @@ async function sessionInboxSend(sessionIdPartial, body, machineId, opts) {
|
|
|
2318
2348
|
...callerSessionId ? { fromSession: callerSessionId } : {},
|
|
2319
2349
|
to: fullId,
|
|
2320
2350
|
subject: opts?.subject,
|
|
2321
|
-
urgency
|
|
2351
|
+
urgency,
|
|
2352
|
+
hopCount: hop.hopCount,
|
|
2322
2353
|
replyTo: opts?.replyTo,
|
|
2323
|
-
threadId: opts?.threadId
|
|
2354
|
+
threadId: opts?.threadId || hop.threadId
|
|
2324
2355
|
};
|
|
2325
2356
|
const result = await machine.sessionRPC(fullId, "sendInboxMessage", { message });
|
|
2326
2357
|
if (opts?.json) {
|
|
@@ -2402,6 +2433,7 @@ async function sessionInboxReply(sessionIdPartial, messageId, body, machineId) {
|
|
|
2402
2433
|
process.exit(1);
|
|
2403
2434
|
}
|
|
2404
2435
|
const { randomUUID } = await import('node:crypto');
|
|
2436
|
+
const hop = computeOutboundHop(process.env.SVAMP_SESSION_ID || fullId);
|
|
2405
2437
|
const reply = {
|
|
2406
2438
|
messageId: randomUUID(),
|
|
2407
2439
|
body,
|
|
@@ -2412,6 +2444,7 @@ async function sessionInboxReply(sessionIdPartial, messageId, body, machineId) {
|
|
|
2412
2444
|
to: original.fromSession,
|
|
2413
2445
|
subject: original.subject ? `Re: ${original.subject}` : void 0,
|
|
2414
2446
|
urgency: "normal",
|
|
2447
|
+
hopCount: hop.hopCount,
|
|
2415
2448
|
replyTo: original.messageId,
|
|
2416
2449
|
threadId: original.threadId || original.messageId
|
|
2417
2450
|
};
|
|
@@ -2431,4 +2464,4 @@ async function sessionInboxClear(sessionIdPartial, machineId, opts) {
|
|
|
2431
2464
|
}
|
|
2432
2465
|
}
|
|
2433
2466
|
|
|
2434
|
-
export { collectAssistantResponse, connectAndGetMachine, connectAndResolveSession, createWorktree, generateWorktreeName, machineExec, machineInfo, machineLs, machineShare, parseShareArg, queryCore, renderMessage, resolveSessionId, sendCore, sessionApprove, sessionArchive, sessionAttach, sessionDelete, sessionDeny, sessionInboxClear, sessionInboxList, sessionInboxRead, sessionInboxReply, sessionInboxSend, sessionInfo, sessionList, sessionMachines, sessionMessages, sessionQuery, sessionRalphCancel, sessionRalphStart, sessionRalphStatus, sessionResume, sessionSend, sessionShare, sessionSpawn, sessionWait, sessionWhoami, snapshotLatestSeq, validateSendOptions };
|
|
2467
|
+
export { collectAssistantResponse, connectAndGetMachine, connectAndResolveSession, createWorktree, generateWorktreeName, machineExec, machineInfo, machineLs, machineShare, parseShareArg, queryCore, renderMessage, resolveSessionId, sendCore, sessionApprove, sessionArchive, sessionAttach, sessionDelete, sessionDeny, sessionInboxClear, sessionInboxList, sessionInboxRead, sessionInboxReply, sessionInboxSend, sessionInfo, sessionList, sessionMachines, sessionMessages, sessionQuery, sessionRalphCancel, sessionRalphStart, sessionRalphStatus, sessionResume, sessionSend, sessionShare, sessionSpawn, sessionWait, sessionWhoami, snapshotLatestSeq, validateSendOptions, wiseAskCli };
|