svamp-cli 0.2.301 → 0.2.303
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-DMiliv55.mjs → adminCommands-DdFE0lME.mjs} +1 -1
- package/dist/{agentCommands-BCkWdFFW.mjs → agentCommands-RW8riLgc.mjs} +5 -5
- package/dist/{auth-Ba1_zl1h.mjs → auth-8ntB7y8N.mjs} +1 -1
- package/dist/{cli-Bv0Zhf3M.mjs → cli-BC8JtFfc.mjs} +69 -69
- package/dist/cli.mjs +2 -2
- package/dist/{commands-BnirT9RR.mjs → commands-B5gatixv.mjs} +2 -2
- package/dist/{commands-B2mRza8S.mjs → commands-BXmMeGBQ.mjs} +2 -2
- package/dist/{commands-DhB2iz0_.mjs → commands-C4tqqLyr.mjs} +7 -7
- package/dist/{commands-bIioWHWe.mjs → commands-C7fDzDVG.mjs} +2 -2
- package/dist/{commands-BAlaK67Y.mjs → commands-CWo-Qy-e.mjs} +1 -1
- package/dist/{commands-BA3eBROn.mjs → commands-DsVpS-kk.mjs} +1 -1
- package/dist/{commands-BC3RuhRx.mjs → commands-S6KPeRij.mjs} +2 -2
- package/dist/{commands-hHZu5qJh.mjs → commands-wbnciaNh.mjs} +1 -1
- package/dist/{fleet-BFurNsSA.mjs → fleet-DBUicMjO.mjs} +1 -1
- package/dist/{frpc-Cb6jUvED.mjs → frpc-Dkda80Ga.mjs} +1 -1
- package/dist/{headlessCli-DP9gpAxv.mjs → headlessCli-DxPFqj7M.mjs} +2 -2
- package/dist/index.mjs +1 -1
- package/dist/{notifyCommands-C0i6P1yC.mjs → notifyCommands-D2ZfCkFA.mjs} +1 -1
- package/dist/{package-D8lHDQja.mjs → package-BbYkLoT-.mjs} +1 -1
- package/dist/{rpc-B-bxS-Pv.mjs → rpc-CkTVR7CW.mjs} +1 -1
- package/dist/{rpc-CNkfUlz1.mjs → rpc-DX0vfqOs.mjs} +1 -1
- package/dist/{run-CvT_37Ov.mjs → run-5dQT-Op_.mjs} +1 -1
- package/dist/{run-C0GhrtVf.mjs → run-BYDlRsuL.mjs} +93 -22
- package/dist/{scheduler-DT1_BBdZ.mjs → scheduler-CO4CAUvy.mjs} +1 -1
- package/dist/{serveCommands-CUabu97u.mjs → serveCommands-CpDQZ4U6.mjs} +5 -5
- package/dist/{sideband-BlZBmbji.mjs → sideband-B3K9zjW3.mjs} +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as connectToHypha, K as computeCollectionConfigUpdate, L as SYSTEM_COLLECTION_CONFIG } from './run-
|
|
1
|
+
import { c as connectToHypha, K as computeCollectionConfigUpdate, L as SYSTEM_COLLECTION_CONFIG } from './run-BYDlRsuL.mjs';
|
|
2
2
|
import { existsSync, readFileSync } from 'node:fs';
|
|
3
3
|
import { join } from 'node:path';
|
|
4
4
|
import os from 'node:os';
|
|
@@ -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-BYDlRsuL.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-BYDlRsuL.mjs').then(function (n) { return n.ap; });
|
|
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-CWo-Qy-e.mjs');
|
|
347
347
|
return connectAndGetMachine();
|
|
348
348
|
}
|
|
349
349
|
function buildInboxMessage(args) {
|
|
@@ -426,7 +426,7 @@ async function inboxSend(targetSessionId, opts) {
|
|
|
426
426
|
console.error("Message body is required.");
|
|
427
427
|
process.exit(1);
|
|
428
428
|
}
|
|
429
|
-
const { connectAndResolveSession } = await import('./commands-
|
|
429
|
+
const { connectAndResolveSession } = await import('./commands-CWo-Qy-e.mjs');
|
|
430
430
|
let server;
|
|
431
431
|
try {
|
|
432
432
|
const { targetId, messageId } = await inboxSendCore(
|
|
@@ -481,7 +481,7 @@ async function inboxReply(messageId, body, opts) {
|
|
|
481
481
|
console.error("SVAMP_SESSION_ID not set. This command must be run inside a Svamp session.");
|
|
482
482
|
process.exit(1);
|
|
483
483
|
}
|
|
484
|
-
const { connectAndResolveSession } = await import('./commands-
|
|
484
|
+
const { connectAndResolveSession } = await import('./commands-CWo-Qy-e.mjs');
|
|
485
485
|
const { server: localServer, machine: localMachine } = await connectToMachineService();
|
|
486
486
|
let localDisconnected = false;
|
|
487
487
|
const disconnectLocal = async () => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a1 as clearStopMarker, a2 as stopMarkerExists, s as startDaemon, b as stopDaemon, d as daemonStatus } from './run-
|
|
1
|
+
import { a1 as clearStopMarker, a2 as stopMarkerExists, s as startDaemon, b as stopDaemon, d as daemonStatus } from './run-BYDlRsuL.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-BYDlRsuL.mjs').then(function (n) { return n.am; });
|
|
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-BYDlRsuL.mjs').then(function (n) { return n.aw; });
|
|
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-C4tqqLyr.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-CpDQZ4U6.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-S6KPeRij.mjs');
|
|
377
377
|
let machineId;
|
|
378
378
|
const processArgs = args.slice(1);
|
|
379
379
|
const mIdx = processArgs.findIndex((a) => a === "--machine" || a === "-m");
|
|
@@ -387,26 +387,26 @@ async function main() {
|
|
|
387
387
|
}), machineId);
|
|
388
388
|
process.exit(0);
|
|
389
389
|
} else if (subcommand === "outpost") {
|
|
390
|
-
const { outpostCommand } = await import('./commands-
|
|
390
|
+
const { outpostCommand } = await import('./commands-B5gatixv.mjs');
|
|
391
391
|
await outpostCommand(args.slice(1));
|
|
392
392
|
process.exit(0);
|
|
393
393
|
} else if (subcommand === "issue" || subcommand === "issues") {
|
|
394
|
-
const { issueCommand } = await import('./commands-
|
|
394
|
+
const { issueCommand } = await import('./commands-BXmMeGBQ.mjs');
|
|
395
395
|
await issueCommand(args.slice(1));
|
|
396
396
|
await flushAndExit(0);
|
|
397
397
|
} else if (subcommand === "workflow" || subcommand === "workflows") {
|
|
398
|
-
const { workflowCommand } = await import('./commands-
|
|
398
|
+
const { workflowCommand } = await import('./commands-wbnciaNh.mjs');
|
|
399
399
|
await workflowCommand(args.slice(1));
|
|
400
400
|
await flushAndExit(0);
|
|
401
401
|
} else if (subcommand === "wise-agent" || subcommand === "wise") {
|
|
402
402
|
await handleWiseAgentCommand(args.slice(1));
|
|
403
403
|
process.exit(0);
|
|
404
404
|
} else if (subcommand === "feature" || subcommand === "crew") {
|
|
405
|
-
const { crewCommand } = await import('./commands-
|
|
405
|
+
const { crewCommand } = await import('./commands-C7fDzDVG.mjs');
|
|
406
406
|
await crewCommand(args.slice(1));
|
|
407
407
|
process.exit(0);
|
|
408
408
|
} else if (subcommand === "notify") {
|
|
409
|
-
const { notifyUser } = await import('./notifyCommands-
|
|
409
|
+
const { notifyUser } = await import('./notifyCommands-D2ZfCkFA.mjs');
|
|
410
410
|
const rest = args.slice(1);
|
|
411
411
|
let email;
|
|
412
412
|
const o = {};
|
|
@@ -423,7 +423,7 @@ async function main() {
|
|
|
423
423
|
} else if (subcommand === "admin") {
|
|
424
424
|
const adminSub = args[1];
|
|
425
425
|
if (adminSub === "set-collection-config") {
|
|
426
|
-
const { setCollectionConfig } = await import('./adminCommands-
|
|
426
|
+
const { setCollectionConfig } = await import('./adminCommands-DdFE0lME.mjs');
|
|
427
427
|
const rest = args.slice(2);
|
|
428
428
|
let alias;
|
|
429
429
|
let configJson;
|
|
@@ -433,10 +433,10 @@ async function main() {
|
|
|
433
433
|
}
|
|
434
434
|
await setCollectionConfig(alias, configJson);
|
|
435
435
|
} else if (adminSub === "create-system-collections") {
|
|
436
|
-
const { createSystemCollections } = await import('./adminCommands-
|
|
436
|
+
const { createSystemCollections } = await import('./adminCommands-DdFE0lME.mjs');
|
|
437
437
|
await createSystemCollections();
|
|
438
438
|
} else if (adminSub === "migrate-collection-children") {
|
|
439
|
-
const { migrateCollectionChildren } = await import('./adminCommands-
|
|
439
|
+
const { migrateCollectionChildren } = await import('./adminCommands-DdFE0lME.mjs');
|
|
440
440
|
const rest = args.slice(2).filter((a) => !a.startsWith("-"));
|
|
441
441
|
await migrateCollectionChildren(rest[0], rest[1]);
|
|
442
442
|
} else {
|
|
@@ -444,7 +444,7 @@ async function main() {
|
|
|
444
444
|
}
|
|
445
445
|
process.exit(0);
|
|
446
446
|
} else if (subcommand === "events") {
|
|
447
|
-
const { listEvents, ackEvent } = await import('./notifyCommands-
|
|
447
|
+
const { listEvents, ackEvent } = await import('./notifyCommands-D2ZfCkFA.mjs');
|
|
448
448
|
const sub = args[1];
|
|
449
449
|
const rest = args.slice(2);
|
|
450
450
|
let email;
|
|
@@ -465,7 +465,7 @@ async function main() {
|
|
|
465
465
|
} else if (!subcommand || subcommand === "start") {
|
|
466
466
|
await handleInteractiveCommand();
|
|
467
467
|
} else if (subcommand === "--version" || subcommand === "-v") {
|
|
468
|
-
const pkg = await import('./package-
|
|
468
|
+
const pkg = await import('./package-BbYkLoT-.mjs').catch(() => ({ default: { version: "unknown" } }));
|
|
469
469
|
console.log(`svamp version: ${pkg.default.version}`);
|
|
470
470
|
} else {
|
|
471
471
|
console.error(`Unknown command: ${subcommand}`);
|
|
@@ -474,7 +474,7 @@ async function main() {
|
|
|
474
474
|
}
|
|
475
475
|
}
|
|
476
476
|
async function handleInteractiveCommand() {
|
|
477
|
-
const { runInteractive } = await import('./run-
|
|
477
|
+
const { runInteractive } = await import('./run-5dQT-Op_.mjs');
|
|
478
478
|
const interactiveArgs = subcommand === "start" ? args.slice(1) : args;
|
|
479
479
|
let directory = process.cwd();
|
|
480
480
|
let resumeSessionId;
|
|
@@ -519,7 +519,7 @@ async function handleAgentCommand() {
|
|
|
519
519
|
return;
|
|
520
520
|
}
|
|
521
521
|
if (agentArgs[0] === "list") {
|
|
522
|
-
const { KNOWN_ACP_AGENTS, KNOWN_CODEX_AGENTS: KNOWN_CODEX_AGENTS2 } = await import('./run-
|
|
522
|
+
const { KNOWN_ACP_AGENTS, KNOWN_CODEX_AGENTS: KNOWN_CODEX_AGENTS2 } = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.as; });
|
|
523
523
|
console.log("Known agents:");
|
|
524
524
|
for (const [name, config2] of Object.entries(KNOWN_ACP_AGENTS)) {
|
|
525
525
|
console.log(` ${name.padEnd(12)} ${config2.command} ${config2.args.join(" ")} (ACP)`);
|
|
@@ -531,7 +531,7 @@ async function handleAgentCommand() {
|
|
|
531
531
|
console.log('Use "svamp agent -- <command> [args]" for a custom ACP agent.');
|
|
532
532
|
return;
|
|
533
533
|
}
|
|
534
|
-
const { resolveAcpAgentConfig, KNOWN_CODEX_AGENTS } = await import('./run-
|
|
534
|
+
const { resolveAcpAgentConfig, KNOWN_CODEX_AGENTS } = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.as; });
|
|
535
535
|
let cwd = process.cwd();
|
|
536
536
|
const filteredArgs = [];
|
|
537
537
|
for (let i = 0; i < agentArgs.length; i++) {
|
|
@@ -555,12 +555,12 @@ async function handleAgentCommand() {
|
|
|
555
555
|
console.log(`Starting ${config.agentName} agent in ${cwd}...`);
|
|
556
556
|
let backend;
|
|
557
557
|
if (KNOWN_CODEX_AGENTS[config.agentName]) {
|
|
558
|
-
const { CodexAppServerBackend } = await import('./run-
|
|
558
|
+
const { CodexAppServerBackend } = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.at; });
|
|
559
559
|
backend = new CodexAppServerBackend({ cwd, log: logFn });
|
|
560
560
|
} else {
|
|
561
|
-
const { AcpBackend } = await import('./run-
|
|
562
|
-
const { GeminiTransport } = await import('./run-
|
|
563
|
-
const { DefaultTransport } = await import('./run-
|
|
561
|
+
const { AcpBackend } = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.ar; });
|
|
562
|
+
const { GeminiTransport } = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.au; });
|
|
563
|
+
const { DefaultTransport } = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.aq; });
|
|
564
564
|
const transportHandler = config.agentName === "gemini" ? new GeminiTransport() : new DefaultTransport(config.agentName);
|
|
565
565
|
backend = new AcpBackend({
|
|
566
566
|
agentName: config.agentName,
|
|
@@ -687,7 +687,7 @@ async function handleSessionCommand() {
|
|
|
687
687
|
process.exit(1);
|
|
688
688
|
}
|
|
689
689
|
}
|
|
690
|
-
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-
|
|
690
|
+
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-CWo-Qy-e.mjs');
|
|
691
691
|
const parseFlagStr = (flag, shortFlag) => {
|
|
692
692
|
for (let i = 1; i < sessionArgs.length; i++) {
|
|
693
693
|
if ((sessionArgs[i] === flag || shortFlag) && i + 1 < sessionArgs.length) {
|
|
@@ -755,7 +755,7 @@ async function handleSessionCommand() {
|
|
|
755
755
|
allowDomain.push(sessionArgs[++i]);
|
|
756
756
|
}
|
|
757
757
|
}
|
|
758
|
-
const { parseShareArg } = await import('./commands-
|
|
758
|
+
const { parseShareArg } = await import('./commands-CWo-Qy-e.mjs');
|
|
759
759
|
const shareEntries = share.map((s) => parseShareArg(s));
|
|
760
760
|
await sessionSpawn(agent, dir, targetMachineId, {
|
|
761
761
|
message,
|
|
@@ -845,7 +845,7 @@ async function handleSessionCommand() {
|
|
|
845
845
|
console.error(" Rewinds history: rewrites the message + drops everything after it, then restarts Claude.");
|
|
846
846
|
process.exit(1);
|
|
847
847
|
}
|
|
848
|
-
const { sessionEditMessage } = await import('./commands-
|
|
848
|
+
const { sessionEditMessage } = await import('./commands-CWo-Qy-e.mjs');
|
|
849
849
|
await sessionEditMessage(sessionArgs[1], sessionArgs[2], sessionArgs[3], targetMachineId);
|
|
850
850
|
} else if (sessionSubcommand === "refine") {
|
|
851
851
|
if (!sessionArgs[1] || !sessionArgs[2]) {
|
|
@@ -853,7 +853,7 @@ async function handleSessionCommand() {
|
|
|
853
853
|
console.error(" Asks the agent to revise its latest reply in place (no extra round).");
|
|
854
854
|
process.exit(1);
|
|
855
855
|
}
|
|
856
|
-
const { sessionRefineLastReply } = await import('./commands-
|
|
856
|
+
const { sessionRefineLastReply } = await import('./commands-CWo-Qy-e.mjs');
|
|
857
857
|
await sessionRefineLastReply(sessionArgs[1], sessionArgs[2], targetMachineId);
|
|
858
858
|
} else if (sessionSubcommand === "undo-edit" || sessionSubcommand === "undo") {
|
|
859
859
|
if (!sessionArgs[1]) {
|
|
@@ -861,7 +861,7 @@ async function handleSessionCommand() {
|
|
|
861
861
|
console.error(" Reverts the most recent edit/refine, restoring the pre-edit history.");
|
|
862
862
|
process.exit(1);
|
|
863
863
|
}
|
|
864
|
-
const { sessionUndoEdit } = await import('./commands-
|
|
864
|
+
const { sessionUndoEdit } = await import('./commands-CWo-Qy-e.mjs');
|
|
865
865
|
await sessionUndoEdit(sessionArgs[1], targetMachineId);
|
|
866
866
|
} else if (sessionSubcommand === "query") {
|
|
867
867
|
const dir = sessionArgs[1];
|
|
@@ -871,7 +871,7 @@ async function handleSessionCommand() {
|
|
|
871
871
|
console.error(" Spawns a stateless Claude session in <directory>, sends <prompt>, prints the answer, then deletes the session.");
|
|
872
872
|
process.exit(1);
|
|
873
873
|
}
|
|
874
|
-
const { sessionQuery } = await import('./commands-
|
|
874
|
+
const { sessionQuery } = await import('./commands-CWo-Qy-e.mjs');
|
|
875
875
|
await sessionQuery(dir, prompt, targetMachineId, {
|
|
876
876
|
timeout: parseFlagInt("--timeout"),
|
|
877
877
|
json: hasFlag("--json"),
|
|
@@ -904,7 +904,7 @@ async function handleSessionCommand() {
|
|
|
904
904
|
console.error("Usage: svamp session approve <session-id> [request-id] [--json]");
|
|
905
905
|
process.exit(1);
|
|
906
906
|
}
|
|
907
|
-
const { sessionApprove } = await import('./commands-
|
|
907
|
+
const { sessionApprove } = await import('./commands-CWo-Qy-e.mjs');
|
|
908
908
|
const approveReqId = sessionArgs[2] && !sessionArgs[2].startsWith("--") ? sessionArgs[2] : void 0;
|
|
909
909
|
await sessionApprove(sessionArgs[1], approveReqId, targetMachineId, {
|
|
910
910
|
json: hasFlag("--json")
|
|
@@ -914,7 +914,7 @@ async function handleSessionCommand() {
|
|
|
914
914
|
console.error("Usage: svamp session deny <session-id> [request-id] [--json]");
|
|
915
915
|
process.exit(1);
|
|
916
916
|
}
|
|
917
|
-
const { sessionDeny } = await import('./commands-
|
|
917
|
+
const { sessionDeny } = await import('./commands-CWo-Qy-e.mjs');
|
|
918
918
|
const denyReqId = sessionArgs[2] && !sessionArgs[2].startsWith("--") ? sessionArgs[2] : void 0;
|
|
919
919
|
await sessionDeny(sessionArgs[1], denyReqId, targetMachineId, {
|
|
920
920
|
json: hasFlag("--json")
|
|
@@ -966,7 +966,7 @@ async function handleSessionCommand() {
|
|
|
966
966
|
console.error("Usage: svamp session set-title <title>");
|
|
967
967
|
process.exit(1);
|
|
968
968
|
}
|
|
969
|
-
const { sessionSetTitle } = await import('./agentCommands-
|
|
969
|
+
const { sessionSetTitle } = await import('./agentCommands-RW8riLgc.mjs');
|
|
970
970
|
await sessionSetTitle(title);
|
|
971
971
|
} else if (sessionSubcommand === "set-project-description" || sessionSubcommand === "set-project") {
|
|
972
972
|
const desc = sessionArgs.slice(1).filter((a) => !a.startsWith("--")).join(" ");
|
|
@@ -974,7 +974,7 @@ async function handleSessionCommand() {
|
|
|
974
974
|
console.error("Usage: svamp session set-project-description <text>");
|
|
975
975
|
process.exit(1);
|
|
976
976
|
}
|
|
977
|
-
const { sessionSetProjectDescription } = await import('./agentCommands-
|
|
977
|
+
const { sessionSetProjectDescription } = await import('./agentCommands-RW8riLgc.mjs');
|
|
978
978
|
await sessionSetProjectDescription(desc);
|
|
979
979
|
} else if (sessionSubcommand === "set-link") {
|
|
980
980
|
const url = sessionArgs[1];
|
|
@@ -983,11 +983,11 @@ async function handleSessionCommand() {
|
|
|
983
983
|
process.exit(1);
|
|
984
984
|
}
|
|
985
985
|
const label = sessionArgs[2] && !sessionArgs[2].startsWith("--") ? sessionArgs[2] : void 0;
|
|
986
|
-
const { sessionSetLink } = await import('./agentCommands-
|
|
986
|
+
const { sessionSetLink } = await import('./agentCommands-RW8riLgc.mjs');
|
|
987
987
|
await sessionSetLink(url, label);
|
|
988
988
|
} else if (sessionSubcommand === "link") {
|
|
989
989
|
const op = sessionArgs[1];
|
|
990
|
-
const lm = await import('./agentCommands-
|
|
990
|
+
const lm = await import('./agentCommands-RW8riLgc.mjs');
|
|
991
991
|
if (op === "add") {
|
|
992
992
|
const url = sessionArgs[2];
|
|
993
993
|
if (!url || url.startsWith("--")) {
|
|
@@ -1022,7 +1022,7 @@ async function handleSessionCommand() {
|
|
|
1022
1022
|
process.exit(1);
|
|
1023
1023
|
}
|
|
1024
1024
|
const level = parseFlagStr("--level") || "info";
|
|
1025
|
-
const { sessionNotify } = await import('./agentCommands-
|
|
1025
|
+
const { sessionNotify } = await import('./agentCommands-RW8riLgc.mjs');
|
|
1026
1026
|
await sessionNotify(message, level);
|
|
1027
1027
|
} else if (sessionSubcommand === "broadcast") {
|
|
1028
1028
|
const action = sessionArgs[1];
|
|
@@ -1030,7 +1030,7 @@ async function handleSessionCommand() {
|
|
|
1030
1030
|
console.error("Usage: svamp session broadcast <action> [args...]\nActions: open-canvas <url> [label], close-canvas, toast <message>");
|
|
1031
1031
|
process.exit(1);
|
|
1032
1032
|
}
|
|
1033
|
-
const { sessionBroadcast } = await import('./agentCommands-
|
|
1033
|
+
const { sessionBroadcast } = await import('./agentCommands-RW8riLgc.mjs');
|
|
1034
1034
|
await sessionBroadcast(action, sessionArgs.slice(2).filter((a) => !a.startsWith("--")));
|
|
1035
1035
|
} else if (sessionSubcommand === "inbox") {
|
|
1036
1036
|
const inboxSubcmd = sessionArgs[1];
|
|
@@ -1041,7 +1041,7 @@ async function handleSessionCommand() {
|
|
|
1041
1041
|
process.exit(1);
|
|
1042
1042
|
}
|
|
1043
1043
|
if (agentSessionId) {
|
|
1044
|
-
const { inboxSend } = await import('./agentCommands-
|
|
1044
|
+
const { inboxSend } = await import('./agentCommands-RW8riLgc.mjs');
|
|
1045
1045
|
await inboxSend(sessionArgs[2], {
|
|
1046
1046
|
body: sessionArgs[3],
|
|
1047
1047
|
subject: parseFlagStr("--subject"),
|
|
@@ -1058,7 +1058,7 @@ async function handleSessionCommand() {
|
|
|
1058
1058
|
}
|
|
1059
1059
|
} else if (inboxSubcmd === "list" || inboxSubcmd === "ls") {
|
|
1060
1060
|
if (agentSessionId && !sessionArgs[2]) {
|
|
1061
|
-
const { inboxList } = await import('./agentCommands-
|
|
1061
|
+
const { inboxList } = await import('./agentCommands-RW8riLgc.mjs');
|
|
1062
1062
|
await inboxList({
|
|
1063
1063
|
unread: hasFlag("--unread"),
|
|
1064
1064
|
limit: parseFlagInt("--limit"),
|
|
@@ -1080,7 +1080,7 @@ async function handleSessionCommand() {
|
|
|
1080
1080
|
process.exit(1);
|
|
1081
1081
|
}
|
|
1082
1082
|
if (agentSessionId && !sessionArgs[3]) {
|
|
1083
|
-
const { inboxList } = await import('./agentCommands-
|
|
1083
|
+
const { inboxList } = await import('./agentCommands-RW8riLgc.mjs');
|
|
1084
1084
|
await sessionInboxRead(agentSessionId, sessionArgs[2], targetMachineId);
|
|
1085
1085
|
} else if (sessionArgs[3]) {
|
|
1086
1086
|
await sessionInboxRead(sessionArgs[2], sessionArgs[3], targetMachineId);
|
|
@@ -1090,7 +1090,7 @@ async function handleSessionCommand() {
|
|
|
1090
1090
|
}
|
|
1091
1091
|
} else if (inboxSubcmd === "reply") {
|
|
1092
1092
|
if (agentSessionId && sessionArgs[2] && sessionArgs[3] && !sessionArgs[4]) {
|
|
1093
|
-
const { inboxReply } = await import('./agentCommands-
|
|
1093
|
+
const { inboxReply } = await import('./agentCommands-RW8riLgc.mjs');
|
|
1094
1094
|
await inboxReply(sessionArgs[2], sessionArgs[3]);
|
|
1095
1095
|
} else if (sessionArgs[2] && sessionArgs[3] && sessionArgs[4]) {
|
|
1096
1096
|
await sessionInboxReply(sessionArgs[2], sessionArgs[3], sessionArgs[4], targetMachineId);
|
|
@@ -1128,7 +1128,7 @@ async function handleMachineCommand() {
|
|
|
1128
1128
|
return;
|
|
1129
1129
|
}
|
|
1130
1130
|
if (machineSubcommand === "share") {
|
|
1131
|
-
const { machineShare } = await import('./commands-
|
|
1131
|
+
const { machineShare } = await import('./commands-CWo-Qy-e.mjs');
|
|
1132
1132
|
let machineId;
|
|
1133
1133
|
const shareArgs = [];
|
|
1134
1134
|
for (let i = 1; i < machineArgs.length; i++) {
|
|
@@ -1179,14 +1179,14 @@ async function handleMachineCommand() {
|
|
|
1179
1179
|
process.exit(1);
|
|
1180
1180
|
}
|
|
1181
1181
|
if (all) {
|
|
1182
|
-
const { fleetExec } = await import('./fleet-
|
|
1182
|
+
const { fleetExec } = await import('./fleet-DBUicMjO.mjs');
|
|
1183
1183
|
await fleetExec(command, { cwd });
|
|
1184
1184
|
} else {
|
|
1185
|
-
const { machineExec } = await import('./commands-
|
|
1185
|
+
const { machineExec } = await import('./commands-CWo-Qy-e.mjs');
|
|
1186
1186
|
await machineExec(machineId, command, cwd);
|
|
1187
1187
|
}
|
|
1188
1188
|
} else if (machineSubcommand === "info") {
|
|
1189
|
-
const { machineInfo } = await import('./commands-
|
|
1189
|
+
const { machineInfo } = await import('./commands-CWo-Qy-e.mjs');
|
|
1190
1190
|
let machineId;
|
|
1191
1191
|
for (let i = 1; i < machineArgs.length; i++) {
|
|
1192
1192
|
if ((machineArgs[i] === "--machine" || machineArgs[i] === "-m") && i + 1 < machineArgs.length) {
|
|
@@ -1206,10 +1206,10 @@ async function handleMachineCommand() {
|
|
|
1206
1206
|
level = machineArgs[++i];
|
|
1207
1207
|
}
|
|
1208
1208
|
}
|
|
1209
|
-
const { machineNotify } = await import('./agentCommands-
|
|
1209
|
+
const { machineNotify } = await import('./agentCommands-RW8riLgc.mjs');
|
|
1210
1210
|
await machineNotify(message, level);
|
|
1211
1211
|
} else if (machineSubcommand === "ls") {
|
|
1212
|
-
const { machineLs } = await import('./commands-
|
|
1212
|
+
const { machineLs } = await import('./commands-CWo-Qy-e.mjs');
|
|
1213
1213
|
let machineId;
|
|
1214
1214
|
let showHidden = false;
|
|
1215
1215
|
let path;
|
|
@@ -1268,20 +1268,20 @@ Examples:
|
|
|
1268
1268
|
};
|
|
1269
1269
|
const hasFlag = (name) => fleetArgs.includes(`--${name}`);
|
|
1270
1270
|
if (sub === "status") {
|
|
1271
|
-
const { fleetStatus } = await import('./fleet-
|
|
1271
|
+
const { fleetStatus } = await import('./fleet-DBUicMjO.mjs');
|
|
1272
1272
|
await fleetStatus();
|
|
1273
1273
|
} else if (sub === "upgrade-claude") {
|
|
1274
|
-
const { fleetUpgradeClaude } = await import('./fleet-
|
|
1274
|
+
const { fleetUpgradeClaude } = await import('./fleet-DBUicMjO.mjs');
|
|
1275
1275
|
await fleetUpgradeClaude({ version: flag("version", "-v") });
|
|
1276
1276
|
} else if (sub === "upgrade-svamp") {
|
|
1277
|
-
const { fleetUpgradeSvamp } = await import('./fleet-
|
|
1277
|
+
const { fleetUpgradeSvamp } = await import('./fleet-DBUicMjO.mjs');
|
|
1278
1278
|
await fleetUpgradeSvamp({ version: flag("version", "-v"), excludeSelf: hasFlag("exclude-self"), force: hasFlag("force") });
|
|
1279
1279
|
} else if (sub === "daemon-restart") {
|
|
1280
|
-
const { fleetDaemonRestart } = await import('./fleet-
|
|
1280
|
+
const { fleetDaemonRestart } = await import('./fleet-DBUicMjO.mjs');
|
|
1281
1281
|
await fleetDaemonRestart({ graceful: !hasFlag("cleanup") });
|
|
1282
1282
|
} else if (sub === "push-skill") {
|
|
1283
1283
|
const name = fleetArgs[1];
|
|
1284
|
-
const { fleetPushSkill } = await import('./fleet-
|
|
1284
|
+
const { fleetPushSkill } = await import('./fleet-DBUicMjO.mjs');
|
|
1285
1285
|
await fleetPushSkill(name);
|
|
1286
1286
|
} else {
|
|
1287
1287
|
console.error(`Unknown fleet subcommand: ${sub}`);
|
|
@@ -1297,7 +1297,7 @@ async function handleSkillsCommand() {
|
|
|
1297
1297
|
await printSkillsHelp();
|
|
1298
1298
|
return;
|
|
1299
1299
|
}
|
|
1300
|
-
const { skillsFind, skillsInstall, skillsList, skillsRemove, skillsPublish } = await import('./commands-
|
|
1300
|
+
const { skillsFind, skillsInstall, skillsList, skillsRemove, skillsPublish } = await import('./commands-DsVpS-kk.mjs');
|
|
1301
1301
|
if (skillsSubcommand === "find" || skillsSubcommand === "search") {
|
|
1302
1302
|
const query = skillsArgs.slice(1).filter((a) => !a.startsWith("--")).join(" ");
|
|
1303
1303
|
if (!query) {
|
|
@@ -1344,7 +1344,7 @@ async function loginToHypha() {
|
|
|
1344
1344
|
process.exit(1);
|
|
1345
1345
|
}
|
|
1346
1346
|
const anchor = anchorArg.replace(/\/+$/, "");
|
|
1347
|
-
const { loadInstanceConfig } = await import('./run-
|
|
1347
|
+
const { loadInstanceConfig } = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.am; });
|
|
1348
1348
|
let cfg = null;
|
|
1349
1349
|
try {
|
|
1350
1350
|
cfg = await loadInstanceConfig({ anchor, force: true });
|
|
@@ -1455,7 +1455,7 @@ async function logoutFromHypha() {
|
|
|
1455
1455
|
} catch {
|
|
1456
1456
|
}
|
|
1457
1457
|
try {
|
|
1458
|
-
const { clearInstanceConfigCache } = await import('./run-
|
|
1458
|
+
const { clearInstanceConfigCache } = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.am; });
|
|
1459
1459
|
clearInstanceConfigCache();
|
|
1460
1460
|
} catch {
|
|
1461
1461
|
}
|
|
@@ -1797,7 +1797,7 @@ async function applyClaudeAuthFlags(argv) {
|
|
|
1797
1797
|
"--use-hypha-proxy, --use-claude-login, and --anthropic-base-url/--anthropic-api-key are mutually exclusive"
|
|
1798
1798
|
);
|
|
1799
1799
|
}
|
|
1800
|
-
const mod = await import('./run-
|
|
1800
|
+
const mod = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.an; });
|
|
1801
1801
|
if (hasHypha) {
|
|
1802
1802
|
let url;
|
|
1803
1803
|
const hyphaIdx = argv.indexOf("--use-hypha-proxy");
|
|
@@ -1851,7 +1851,7 @@ async function applyDaemonShareFlag(argv) {
|
|
|
1851
1851
|
}
|
|
1852
1852
|
}
|
|
1853
1853
|
if (collected.length === 0) return;
|
|
1854
|
-
const { updateEnvFile } = await import('./run-
|
|
1854
|
+
const { updateEnvFile } = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.an; });
|
|
1855
1855
|
const seen = /* @__PURE__ */ new Set();
|
|
1856
1856
|
const deduped = collected.filter((e) => {
|
|
1857
1857
|
const k = e.toLowerCase();
|
|
@@ -1884,7 +1884,7 @@ async function handleWiseAgentCommand(rest) {
|
|
|
1884
1884
|
}
|
|
1885
1885
|
});
|
|
1886
1886
|
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(" ");
|
|
1887
|
-
const { wiseAskCli } = await import('./commands-
|
|
1887
|
+
const { wiseAskCli } = await import('./commands-CWo-Qy-e.mjs');
|
|
1888
1888
|
await wiseAskCli(machineId, message, sessionId, { json });
|
|
1889
1889
|
return;
|
|
1890
1890
|
}
|
|
@@ -1896,7 +1896,7 @@ async function handleWiseAgentCommand(rest) {
|
|
|
1896
1896
|
}
|
|
1897
1897
|
return void 0;
|
|
1898
1898
|
};
|
|
1899
|
-
const { runWiseVoiceCli } = await import('./headlessCli-
|
|
1899
|
+
const { runWiseVoiceCli } = await import('./headlessCli-DxPFqj7M.mjs');
|
|
1900
1900
|
await runWiseVoiceCli({ voice: valueOf(["--voice"]), wakeKeywordPath: valueOf(["--wake"]), model: valueOf(["--model"]) });
|
|
1901
1901
|
return;
|
|
1902
1902
|
}
|
|
@@ -1914,7 +1914,7 @@ async function handleWiseAgentCommand(rest) {
|
|
|
1914
1914
|
const mode = valueOf(["--mode"]);
|
|
1915
1915
|
const mission = valueOf(["--mission"]);
|
|
1916
1916
|
const url = rest.slice(1).find((a) => /^https?:\/\//.test(a)) || "";
|
|
1917
|
-
const { wiseJoinMeetingCli } = await import('./commands-
|
|
1917
|
+
const { wiseJoinMeetingCli } = await import('./commands-CWo-Qy-e.mjs');
|
|
1918
1918
|
await wiseJoinMeetingCli(machineId, url, sessionId, { json, mode, mission });
|
|
1919
1919
|
return;
|
|
1920
1920
|
}
|
|
@@ -1926,7 +1926,7 @@ async function handleWiseAgentCommand(rest) {
|
|
|
1926
1926
|
}
|
|
1927
1927
|
return void 0;
|
|
1928
1928
|
};
|
|
1929
|
-
const { wiseLeaveMeetingCli } = await import('./commands-
|
|
1929
|
+
const { wiseLeaveMeetingCli } = await import('./commands-CWo-Qy-e.mjs');
|
|
1930
1930
|
await wiseLeaveMeetingCli(valueOf(["--machine", "-m"]), valueOf(["--session", "-s"]), { json: rest.includes("--json") });
|
|
1931
1931
|
return;
|
|
1932
1932
|
}
|
|
@@ -1950,7 +1950,7 @@ async function handleWiseAgentCommand(rest) {
|
|
|
1950
1950
|
}
|
|
1951
1951
|
});
|
|
1952
1952
|
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(" ");
|
|
1953
|
-
const { wiseAnnounceCli } = await import('./commands-
|
|
1953
|
+
const { wiseAnnounceCli } = await import('./commands-CWo-Qy-e.mjs');
|
|
1954
1954
|
await wiseAnnounceCli(machineId, text, sessionId, { json });
|
|
1955
1955
|
return;
|
|
1956
1956
|
}
|
|
@@ -1962,7 +1962,7 @@ async function handleWiseAgentCommand(rest) {
|
|
|
1962
1962
|
}
|
|
1963
1963
|
return void 0;
|
|
1964
1964
|
};
|
|
1965
|
-
const { wiseMeetingsCli } = await import('./commands-
|
|
1965
|
+
const { wiseMeetingsCli } = await import('./commands-CWo-Qy-e.mjs');
|
|
1966
1966
|
await wiseMeetingsCli(valueOf(["--machine", "-m"]), { json: rest.includes("--json") });
|
|
1967
1967
|
return;
|
|
1968
1968
|
}
|
|
@@ -2012,7 +2012,7 @@ If none is set, hitting a WISE Agent channel returns a clear "not configured" er
|
|
|
2012
2012
|
return;
|
|
2013
2013
|
}
|
|
2014
2014
|
const authArgs = rest.slice(1);
|
|
2015
|
-
const mod = await import('./auth-
|
|
2015
|
+
const mod = await import('./auth-8ntB7y8N.mjs');
|
|
2016
2016
|
let action;
|
|
2017
2017
|
try {
|
|
2018
2018
|
action = mod.parseWiseAgentAuthArgs(authArgs);
|
|
@@ -2022,7 +2022,7 @@ If none is set, hitting a WISE Agent channel returns a clear "not configured" er
|
|
|
2022
2022
|
return;
|
|
2023
2023
|
}
|
|
2024
2024
|
if (action) {
|
|
2025
|
-
const { updateEnvFile } = await import('./run-
|
|
2025
|
+
const { updateEnvFile } = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.an; });
|
|
2026
2026
|
const updates = mod.buildWiseAgentEnvUpdates(action);
|
|
2027
2027
|
updateEnvFile(updates);
|
|
2028
2028
|
for (const [k, v] of Object.entries(updates)) {
|
|
@@ -2036,7 +2036,7 @@ If none is set, hitting a WISE Agent channel returns a clear "not configured" er
|
|
|
2036
2036
|
}
|
|
2037
2037
|
async function handleDaemonAuthCommand(argv) {
|
|
2038
2038
|
const sub = (argv[0] || "status").toLowerCase();
|
|
2039
|
-
const mod = await import('./run-
|
|
2039
|
+
const mod = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.an; });
|
|
2040
2040
|
if (sub === "--help" || sub === "-h" || sub === "help") {
|
|
2041
2041
|
console.log(`
|
|
2042
2042
|
svamp daemon auth \u2014 Configure how Claude subprocesses authenticate
|
|
@@ -2110,8 +2110,8 @@ one step: --use-hypha-proxy / --use-claude-login / --anthropic-base-url URL --an
|
|
|
2110
2110
|
}
|
|
2111
2111
|
async function handleDaemonCodexAuthCommand(argv) {
|
|
2112
2112
|
const sub = (argv[0] || "status").toLowerCase();
|
|
2113
|
-
const { updateEnvFile } = await import('./run-
|
|
2114
|
-
const { resolveCodexProvider } = await import('./run-
|
|
2113
|
+
const { updateEnvFile } = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.an; });
|
|
2114
|
+
const { resolveCodexProvider } = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.ao; });
|
|
2115
2115
|
const redact = (k) => k && k.length > 10 ? `${k.slice(0, 6)}\u2026${k.slice(-4)}` : k ? "***" : "(unset)";
|
|
2116
2116
|
if (sub === "--help" || sub === "-h" || sub === "help") {
|
|
2117
2117
|
console.log(`
|
|
@@ -2443,7 +2443,7 @@ Examples:
|
|
|
2443
2443
|
async function printSkillsHelp() {
|
|
2444
2444
|
let browseUrl = "<HYPHA_SERVER_URL>/<workspace>/artifacts/marketplace (set HYPHA_SERVER_URL)";
|
|
2445
2445
|
try {
|
|
2446
|
-
const { getArtifactBaseUrl, getSkillsCollectionName } = await import('./run-
|
|
2446
|
+
const { getArtifactBaseUrl, getSkillsCollectionName } = await import('./run-BYDlRsuL.mjs').then(function (n) { return n.av; });
|
|
2447
2447
|
browseUrl = `${getArtifactBaseUrl()}/${getSkillsCollectionName()}`;
|
|
2448
2448
|
} catch {
|
|
2449
2449
|
}
|
package/dist/cli.mjs
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { connectAndResolveSession } from './commands-
|
|
1
|
+
import { connectAndResolveSession } from './commands-CWo-Qy-e.mjs';
|
|
2
2
|
import 'node:fs';
|
|
3
3
|
import 'node:child_process';
|
|
4
4
|
import 'node:path';
|
|
5
5
|
import 'node:os';
|
|
6
|
-
import './run-
|
|
6
|
+
import './run-BYDlRsuL.mjs';
|
|
7
7
|
import 'os';
|
|
8
8
|
import 'fs/promises';
|
|
9
9
|
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-BC8JtFfc.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-BYDlRsuL.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-Dkda80Ga.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-CWo-Qy-e.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-RW8riLgc.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-BYDlRsuL.mjs').then(function (n) { return n.al; });
|
|
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-Dkda80Ga.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-CWo-Qy-e.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-CWo-Qy-e.mjs');
|
|
194
194
|
const { server, machine } = await connectAndGetMachine();
|
|
195
195
|
try {
|
|
196
196
|
await machine.tunnelStop({ name });
|
|
@@ -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-CWo-Qy-e.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-BYDlRsuL.mjs';
|
|
6
6
|
import 'node:os';
|
|
7
7
|
import 'os';
|
|
8
8
|
import 'fs/promises';
|
|
@@ -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 { a3 as formatHandle, a4 as normalizeAllowedUser, a5 as loadSecurityContextConfig, a6 as resolveSecurityContext, a7 as buildSecurityContextFromFlags, a8 as mergeSecurityContexts, c as connectToHypha, a9 as buildSessionShareUrl, aa as computeOutboundHop, i as shortId, ab as registerAwaitingReply, ac as buildMachineShareUrl, ad as parseHandle, ae as handleMatchesMetadata } from './run-
|
|
5
|
+
import { a3 as formatHandle, a4 as normalizeAllowedUser, a5 as loadSecurityContextConfig, a6 as resolveSecurityContext, a7 as buildSecurityContextFromFlags, a8 as mergeSecurityContexts, c as connectToHypha, a9 as buildSessionShareUrl, aa as computeOutboundHop, i as shortId, ab as registerAwaitingReply, ac as buildMachineShareUrl, ad as parseHandle, ae as handleMatchesMetadata } from './run-BYDlRsuL.mjs';
|
|
6
6
|
import 'os';
|
|
7
7
|
import 'fs/promises';
|
|
8
8
|
import 'fs';
|
|
@@ -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 { Q as parseFrontmatter, T as getSkillsServer, U as getSkillsWorkspaceName, V as getSkillsCollectionName, W as fetchWithTimeout, X as searchSkills, Y as SKILLS_DIR, Z as getSkillInfo, _ as downloadSkillFile, $ as listSkillFiles } from './run-
|
|
4
|
+
import { Q as parseFrontmatter, T as getSkillsServer, U as getSkillsWorkspaceName, V as getSkillsCollectionName, W as fetchWithTimeout, X as searchSkills, Y as SKILLS_DIR, Z as getSkillInfo, _ as downloadSkillFile, $ as listSkillFiles } from './run-BYDlRsuL.mjs';
|
|
5
5
|
import 'fs/promises';
|
|
6
6
|
import 'url';
|
|
7
7
|
import 'child_process';
|
|
@@ -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-CWo-Qy-e.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-BYDlRsuL.mjs';
|
|
9
9
|
import 'os';
|
|
10
10
|
import 'fs/promises';
|
|
11
11
|
import 'url';
|
|
@@ -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-BYDlRsuL.mjs';
|
|
3
3
|
import 'os';
|
|
4
4
|
import 'fs/promises';
|
|
5
5
|
import 'fs';
|
|
@@ -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-BYDlRsuL.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-BYDlRsuL.mjs';
|
|
8
8
|
import 'fs/promises';
|
|
9
9
|
import 'url';
|
|
10
10
|
import 'node:crypto';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { a0 as resolveModel, af as describeMisconfiguration, ag as buildMachineDeps } from './run-
|
|
2
|
-
import { handleRealtimeEvent, initMachineVoiceSession } from './sideband-
|
|
1
|
+
import { a0 as resolveModel, af as describeMisconfiguration, ag as buildMachineDeps } from './run-BYDlRsuL.mjs';
|
|
2
|
+
import { handleRealtimeEvent, initMachineVoiceSession } from './sideband-B3K9zjW3.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-BYDlRsuL.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-BYDlRsuL.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-BYDlRsuL.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-BYDlRsuL.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 { ah as applyClaudeProxyEnv, ai as composeSessionId, aj as generateFriendlyName, c as connectToHypha, a as createSessionStore, r as registerMachineService, ak as generateHookSettings } from './run-
|
|
1
|
+
import{createRequire as _pkgrollCR}from"node:module";const require=_pkgrollCR(import.meta.url);import { ah as applyClaudeProxyEnv, ai as composeSessionId, aj as generateFriendlyName, c as connectToHypha, a as createSessionStore, r as registerMachineService, ak as generateHookSettings } from './run-BYDlRsuL.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-Dkda80Ga.mjs');
|
|
2977
2977
|
let tunnel;
|
|
2978
2978
|
tunnel = new FrpcTunnel({
|
|
2979
2979
|
name: tunnelName,
|
|
@@ -5867,7 +5867,7 @@ async function registerMachineService(server, machineId, metadata, daemonState,
|
|
|
5867
5867
|
const tunnels = handlers.tunnels;
|
|
5868
5868
|
if (!tunnels) throw new Error("Tunnel management not available");
|
|
5869
5869
|
if (tunnels.has(params.name)) throw new Error(`Tunnel '${params.name}' already running`);
|
|
5870
|
-
const { FrpcTunnel } = await import('./frpc-
|
|
5870
|
+
const { FrpcTunnel } = await import('./frpc-Dkda80Ga.mjs');
|
|
5871
5871
|
const tunnel = new FrpcTunnel({
|
|
5872
5872
|
name: params.name,
|
|
5873
5873
|
ports: params.ports,
|
|
@@ -6343,7 +6343,7 @@ QUESTION: ${params.question || "Summarize this concisely."}` }
|
|
|
6343
6343
|
}
|
|
6344
6344
|
const deps = buildSessionDeps(rpc, { cwd, ownerEmail: owner });
|
|
6345
6345
|
const sender = { name: context?.user?.email || context?.user?.id || "user", kind: "user", verified: true };
|
|
6346
|
-
const { toolsForRole } = await import('./sideband-
|
|
6346
|
+
const { toolsForRole } = await import('./sideband-B3K9zjW3.mjs');
|
|
6347
6347
|
const r2 = await runWiseAgent({ message: params.message, sender, config: { tools: toolsForRole(role2) }, deps, transport, model: resolved.model });
|
|
6348
6348
|
return fmt(r2);
|
|
6349
6349
|
}
|
|
@@ -6448,7 +6448,7 @@ QUESTION: ${params.question || "Summarize this concisely."}` }
|
|
|
6448
6448
|
return { ok: false, call_id: callId, status: "busy", error: "channel is busy (too many concurrent requests) \u2014 retry shortly" };
|
|
6449
6449
|
}
|
|
6450
6450
|
const rendered = renderMessage(c, { sender: r.sender, body: { message: kwargs.message }, callId });
|
|
6451
|
-
const { queryCore } = await import('./commands-
|
|
6451
|
+
const { queryCore } = await import('./commands-CWo-Qy-e.mjs');
|
|
6452
6452
|
const timeout = c.reply?.timeout_sec || 120;
|
|
6453
6453
|
let result;
|
|
6454
6454
|
try {
|
|
@@ -11783,6 +11783,20 @@ function mapCodexEventToText(event) {
|
|
|
11783
11783
|
if (typeof delta === "string") return delta;
|
|
11784
11784
|
return "";
|
|
11785
11785
|
}
|
|
11786
|
+
function summarizeCodexChanges(changes) {
|
|
11787
|
+
if (!Array.isArray(changes) || changes.length === 0) return { filePath: null, patch: "", kind: null };
|
|
11788
|
+
const parts = changes.map((c) => {
|
|
11789
|
+
const path = typeof c?.path === "string" ? c.path : "";
|
|
11790
|
+
const kind2 = c?.kind?.type ?? (typeof c?.kind === "string" ? c.kind : null);
|
|
11791
|
+
const diff = typeof c?.diff === "string" ? c.diff : "";
|
|
11792
|
+
return { path, kind: kind2, diff };
|
|
11793
|
+
});
|
|
11794
|
+
const filePath = parts.length === 1 ? parts[0].path || null : `${parts.length} files`;
|
|
11795
|
+
const patch = parts.map((x) => parts.length > 1 && x.path ? `--- ${x.path}
|
|
11796
|
+
${x.diff}` : x.diff).join("\n");
|
|
11797
|
+
const kind = parts.length === 1 ? parts[0].kind : null;
|
|
11798
|
+
return { filePath, patch, kind };
|
|
11799
|
+
}
|
|
11786
11800
|
function normalizeNotification(method, params) {
|
|
11787
11801
|
if (method === "item/agentMessage/delta") {
|
|
11788
11802
|
return typeof params?.delta === "string" ? { type: "agent_message_delta", delta: params.delta } : null;
|
|
@@ -11805,7 +11819,7 @@ function normalizeNotification(method, params) {
|
|
|
11805
11819
|
case "commandExecution":
|
|
11806
11820
|
return done ? { type: "exec_command_end", call_id: item.id, exit_code: item.exitCode, stdout: item.aggregatedOutput ?? "", stderr: "" } : { type: "exec_command_begin", call_id: item.id, command: item.command, cwd: item.cwd };
|
|
11807
11821
|
case "fileChange":
|
|
11808
|
-
return done ? { type: "patch_apply_end", call_id: item.id, applied: item.status === "completed" || item.status === "applied" } : { type: "patch_apply_begin", call_id: item.id, changes: item.changes };
|
|
11822
|
+
return done ? { type: "patch_apply_end", call_id: item.id, applied: item.status === "completed" || item.status === "applied", changes: item.changes } : { type: "patch_apply_begin", call_id: item.id, changes: item.changes };
|
|
11809
11823
|
case "mcpToolCall":
|
|
11810
11824
|
return done ? { type: "mcp_tool_call_end", call_id: item.id, tool: item.tool, result: item.result, error: item.error } : { type: "mcp_tool_call_begin", call_id: item.id, tool: item.tool, server: item.server, arguments: item.arguments };
|
|
11811
11825
|
case "userMessage":
|
|
@@ -12000,6 +12014,23 @@ class CodexAppServerClient {
|
|
|
12000
12014
|
if (timer) clearTimeout(timer);
|
|
12001
12015
|
return { aborted };
|
|
12002
12016
|
}
|
|
12017
|
+
/**
|
|
12018
|
+
* Inject additional input into the CURRENTLY RUNNING turn (Claude-Code-style mid-turn steering).
|
|
12019
|
+
*
|
|
12020
|
+
* codex app-server FOLDS a second `turn/start` sent mid-turn into the active turn: the new input's
|
|
12021
|
+
* items are emitted under the RUNNING turn's id and NO separate `turn/completed` fires for the
|
|
12022
|
+
* injected turn (verified empirically — probe-codex-midturn). So we send it WITHOUT arming a new
|
|
12023
|
+
* `pendingTurn` slot and WITHOUT overwriting `_turnId` (which must keep pointing at the turn to
|
|
12024
|
+
* interrupt). The single in-flight completion still resolves the original `sendTurnAndWait`.
|
|
12025
|
+
*
|
|
12026
|
+
* Returns false when there is NO active turn to fold into (the caller then falls back to a normal
|
|
12027
|
+
* turn via sendPrompt). `pendingTurn` is the in-flight signal.
|
|
12028
|
+
*/
|
|
12029
|
+
async injectInput(prompt, o) {
|
|
12030
|
+
if (!this._threadId || !this.pendingTurn) return false;
|
|
12031
|
+
await this.request("turn/start", this.buildTurnParams(prompt, o));
|
|
12032
|
+
return true;
|
|
12033
|
+
}
|
|
12003
12034
|
/** Interrupt the in-flight turn (real server-side abort — the old MCP path couldn't do this). */
|
|
12004
12035
|
async interrupt() {
|
|
12005
12036
|
if (!this._threadId || !this._turnId) return;
|
|
@@ -12278,6 +12309,18 @@ class CodexAppServerBackend {
|
|
|
12278
12309
|
await this.client.interrupt();
|
|
12279
12310
|
this.emit({ type: "status", status: "cancelled" });
|
|
12280
12311
|
}
|
|
12312
|
+
/**
|
|
12313
|
+
* Mid-turn message injection (Claude-Code parity): fold `prompt` into the RUNNING turn instead
|
|
12314
|
+
* of deferring it to a separate post-turn turn. Codex app-server absorbs a mid-turn `turn/start`
|
|
12315
|
+
* into the active turn (see CodexAppServerClient.injectInput). Returns true if it was injected
|
|
12316
|
+
* into an in-flight turn; false when no turn is running (the daemon then falls back to a normal
|
|
12317
|
+
* sendPrompt, which properly tracks completion). Guards on `turnDone` to minimize the race where
|
|
12318
|
+
* the turn ends between the daemon's busy-check and this call.
|
|
12319
|
+
*/
|
|
12320
|
+
async injectInput(prompt) {
|
|
12321
|
+
if (!this.started || !this.turnDone) return false;
|
|
12322
|
+
return this.client.injectInput(prompt, { model: this.model, approvalPolicy: this.approvalPolicy, sandbox: this.sandbox });
|
|
12323
|
+
}
|
|
12281
12324
|
onMessage(handler) {
|
|
12282
12325
|
this.listeners.push(handler);
|
|
12283
12326
|
}
|
|
@@ -12400,12 +12443,22 @@ class CodexAppServerBackend {
|
|
|
12400
12443
|
}
|
|
12401
12444
|
case "patch_apply_begin": {
|
|
12402
12445
|
const callId = String(event.call_id ?? event.callId ?? randomUUID());
|
|
12403
|
-
|
|
12446
|
+
const { filePath, patch, kind } = summarizeCodexChanges(event.changes);
|
|
12447
|
+
this.emit({ type: "tool-call", toolName: "CodexPatch", callId, args: {
|
|
12448
|
+
filePath: filePath ?? event.file_path ?? event.filePath ?? null,
|
|
12449
|
+
patch: patch || (typeof event.patch === "string" ? event.patch : ""),
|
|
12450
|
+
...kind ? { kind } : {}
|
|
12451
|
+
} });
|
|
12404
12452
|
break;
|
|
12405
12453
|
}
|
|
12406
12454
|
case "patch_apply_end": {
|
|
12407
12455
|
const callId = String(event.call_id ?? event.callId ?? "");
|
|
12408
|
-
|
|
12456
|
+
const { filePath } = summarizeCodexChanges(event.changes);
|
|
12457
|
+
this.emit({ type: "tool-result", toolName: "CodexPatch", callId, result: {
|
|
12458
|
+
filePath: filePath ?? event.file_path ?? event.filePath ?? null,
|
|
12459
|
+
applied: event.applied,
|
|
12460
|
+
error: event.error
|
|
12461
|
+
} });
|
|
12409
12462
|
break;
|
|
12410
12463
|
}
|
|
12411
12464
|
case "mcp_tool_call_begin": {
|
|
@@ -16982,7 +17035,7 @@ async function startDaemon(options) {
|
|
|
16982
17035
|
try {
|
|
16983
17036
|
const dir = loadSessionIndex()[sessionId]?.directory;
|
|
16984
17037
|
if (!dir) return;
|
|
16985
|
-
const { reconcileServiceLinks } = await import('./agentCommands-
|
|
17038
|
+
const { reconcileServiceLinks } = await import('./agentCommands-RW8riLgc.mjs');
|
|
16986
17039
|
const configPath = getSvampConfigPath(dir, sessionId);
|
|
16987
17040
|
const config = readSvampConfig(configPath);
|
|
16988
17041
|
const entries = Array.from(urls.entries());
|
|
@@ -17000,7 +17053,7 @@ async function startDaemon(options) {
|
|
|
17000
17053
|
}
|
|
17001
17054
|
}
|
|
17002
17055
|
async function createExposedTunnel(spec) {
|
|
17003
|
-
const { FrpcTunnel } = await import('./frpc-
|
|
17056
|
+
const { FrpcTunnel } = await import('./frpc-Dkda80Ga.mjs');
|
|
17004
17057
|
const tunnel = new FrpcTunnel({
|
|
17005
17058
|
name: spec.name,
|
|
17006
17059
|
ports: spec.ports,
|
|
@@ -19216,11 +19269,11 @@ ${capturedError}${buildClaudeErrorHint(capturedError)}`;
|
|
|
19216
19269
|
});
|
|
19217
19270
|
},
|
|
19218
19271
|
onIssue: async (params) => {
|
|
19219
|
-
const { issueRpc } = await import('./rpc-
|
|
19272
|
+
const { issueRpc } = await import('./rpc-CkTVR7CW.mjs');
|
|
19220
19273
|
return issueRpc(params?.cwd || directory, params || {}, { notifySession: notifyIssueOwner, rekickLoopOwner });
|
|
19221
19274
|
},
|
|
19222
19275
|
onWorkflow: async (params) => {
|
|
19223
|
-
const { workflowRpc } = await import('./rpc-
|
|
19276
|
+
const { workflowRpc } = await import('./rpc-DX0vfqOs.mjs');
|
|
19224
19277
|
return workflowRpc(params?.cwd || directory, params || {});
|
|
19225
19278
|
},
|
|
19226
19279
|
onRipgrep: async (args, cwd) => {
|
|
@@ -19614,15 +19667,33 @@ ${capturedError}${buildClaudeErrorHint(capturedError)}`;
|
|
|
19614
19667
|
return;
|
|
19615
19668
|
}
|
|
19616
19669
|
if (sessionMetadata.lifecycleState === "running") {
|
|
19617
|
-
|
|
19618
|
-
|
|
19619
|
-
|
|
19620
|
-
|
|
19621
|
-
|
|
19622
|
-
|
|
19623
|
-
|
|
19670
|
+
const enqueueBusy = () => {
|
|
19671
|
+
const existingQueue = sessionMetadata.messageQueue || [];
|
|
19672
|
+
sessionMetadata = {
|
|
19673
|
+
...sessionMetadata,
|
|
19674
|
+
// #0411: alreadyStored — deliverUserMessageCore already stored this
|
|
19675
|
+
// user message; the drain must not re-push a localId:null duplicate.
|
|
19676
|
+
messageQueue: [...existingQueue, { id: randomUUID$1(), text, createdAt: Date.now(), alreadyStored: true }]
|
|
19677
|
+
};
|
|
19678
|
+
sessionService.updateMetadata(sessionMetadata);
|
|
19624
19679
|
};
|
|
19625
|
-
|
|
19680
|
+
const injectFn = agentBackend.injectInput;
|
|
19681
|
+
if (typeof injectFn === "function") {
|
|
19682
|
+
Promise.resolve(injectFn.call(agentBackend, text)).then((injected) => {
|
|
19683
|
+
if (injected) {
|
|
19684
|
+
logger.log(`[${agentName} Session ${sessionId}] Mid-turn message injected into running turn`);
|
|
19685
|
+
} else {
|
|
19686
|
+
logger.log(`[${agentName} Session ${sessionId}] No active turn to inject \u2014 queuing message`);
|
|
19687
|
+
enqueueBusy();
|
|
19688
|
+
}
|
|
19689
|
+
}).catch((err) => {
|
|
19690
|
+
logger.error(`[${agentName} Session ${sessionId}] Mid-turn inject failed \u2014 queuing:`, err?.message ?? err);
|
|
19691
|
+
enqueueBusy();
|
|
19692
|
+
});
|
|
19693
|
+
return;
|
|
19694
|
+
}
|
|
19695
|
+
logger.log(`[${agentName} Session ${sessionId}] Agent busy \u2014 queuing message`);
|
|
19696
|
+
enqueueBusy();
|
|
19626
19697
|
return;
|
|
19627
19698
|
}
|
|
19628
19699
|
sessionMetadata = { ...sessionMetadata, lifecycleState: "running" };
|
|
@@ -19833,11 +19904,11 @@ ${capturedError}${buildClaudeErrorHint(capturedError)}`;
|
|
|
19833
19904
|
});
|
|
19834
19905
|
},
|
|
19835
19906
|
onIssue: async (params) => {
|
|
19836
|
-
const { issueRpc } = await import('./rpc-
|
|
19907
|
+
const { issueRpc } = await import('./rpc-CkTVR7CW.mjs');
|
|
19837
19908
|
return issueRpc(params?.cwd || directory, params || {}, { notifySession: notifyIssueOwner, rekickLoopOwner });
|
|
19838
19909
|
},
|
|
19839
19910
|
onWorkflow: async (params) => {
|
|
19840
|
-
const { workflowRpc } = await import('./rpc-
|
|
19911
|
+
const { workflowRpc } = await import('./rpc-DX0vfqOs.mjs');
|
|
19841
19912
|
return workflowRpc(params?.cwd || directory, params || {});
|
|
19842
19913
|
},
|
|
19843
19914
|
onRipgrep: async (args, cwd) => {
|
|
@@ -20972,7 +21043,7 @@ ${oracle.output.trim().slice(0, 500)}`, "\u{1F501} Continuing loop");
|
|
|
20972
21043
|
const PING_TIMEOUT_MS = 15e3;
|
|
20973
21044
|
const POST_RECONNECT_GRACE_MS = 2e4;
|
|
20974
21045
|
const RECONNECT_JITTER_MS = 2500;
|
|
20975
|
-
const { WorkflowScheduler } = await import('./scheduler-
|
|
21046
|
+
const { WorkflowScheduler } = await import('./scheduler-CO4CAUvy.mjs');
|
|
20976
21047
|
const workflowScheduler = new WorkflowScheduler({
|
|
20977
21048
|
projectRoots: () => {
|
|
20978
21049
|
const dirs = /* @__PURE__ */ new Set();
|
|
@@ -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-BYDlRsuL.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-CWo-Qy-e.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-CWo-Qy-e.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-CWo-Qy-e.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-CWo-Qy-e.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-CWo-Qy-e.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, M as loadMachineContext, N as buildMachineInstructions, O as machineToolsForRole, P as buildMachineTools } from './run-
|
|
1
|
+
import { R as READ_ONLY_TOOLS, M as loadMachineContext, N as buildMachineInstructions, O as machineToolsForRole, P as buildMachineTools } from './run-BYDlRsuL.mjs';
|
|
2
2
|
import 'node:child_process';
|
|
3
3
|
import 'os';
|
|
4
4
|
import 'fs/promises';
|