@moxt-ai/mobius 0.0.9 → 0.0.11
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/acp/session-history.d.ts.map +1 -1
- package/dist/acp/session-history.js +1 -0
- package/dist/acp/session-history.js.map +1 -1
- package/dist/acp/session-manager.d.ts +4 -1
- package/dist/acp/session-manager.d.ts.map +1 -1
- package/dist/acp/session-manager.js +109 -25
- package/dist/acp/session-manager.js.map +1 -1
- package/dist/agent-catalog/acp-readiness-probe.d.ts +4 -0
- package/dist/agent-catalog/acp-readiness-probe.d.ts.map +1 -0
- package/dist/agent-catalog/acp-readiness-probe.js +153 -0
- package/dist/agent-catalog/acp-readiness-probe.js.map +1 -0
- package/dist/agent-catalog/agent-diagnostics.d.ts +1 -1
- package/dist/agent-catalog/agent-diagnostics.d.ts.map +1 -1
- package/dist/agent-catalog/agent-diagnostics.js +7 -3
- package/dist/agent-catalog/agent-diagnostics.js.map +1 -1
- package/dist/agent-catalog/agent-discovery-context.d.ts +8 -0
- package/dist/agent-catalog/agent-discovery-context.d.ts.map +1 -0
- package/dist/agent-catalog/agent-discovery-context.js +2 -0
- package/dist/agent-catalog/agent-discovery-context.js.map +1 -0
- package/dist/agent-catalog/agent-discovery.d.ts +55 -0
- package/dist/agent-catalog/agent-discovery.d.ts.map +1 -0
- package/dist/agent-catalog/agent-discovery.js +89 -0
- package/dist/agent-catalog/agent-discovery.js.map +1 -0
- package/dist/agent-catalog/agent-probe-error.d.ts +5 -0
- package/dist/agent-catalog/agent-probe-error.d.ts.map +1 -0
- package/dist/agent-catalog/agent-probe-error.js +9 -0
- package/dist/agent-catalog/agent-probe-error.js.map +1 -0
- package/dist/agent-catalog/agent-specification.d.ts +45 -0
- package/dist/agent-catalog/agent-specification.d.ts.map +1 -0
- package/dist/agent-catalog/agent-specification.js +59 -0
- package/dist/agent-catalog/agent-specification.js.map +1 -0
- package/dist/agent-catalog/agents/claude-code-agent.d.ts +14 -0
- package/dist/agent-catalog/agents/claude-code-agent.d.ts.map +1 -0
- package/dist/agent-catalog/agents/claude-code-agent.js +30 -0
- package/dist/agent-catalog/agents/claude-code-agent.js.map +1 -0
- package/dist/agent-catalog/agents/codex-agent.d.ts +14 -0
- package/dist/agent-catalog/agents/codex-agent.d.ts.map +1 -0
- package/dist/agent-catalog/agents/codex-agent.js +23 -0
- package/dist/agent-catalog/agents/codex-agent.js.map +1 -0
- package/dist/agent-catalog/agents/deepseek-harness-agent.d.ts +16 -0
- package/dist/agent-catalog/agents/deepseek-harness-agent.d.ts.map +1 -0
- package/dist/agent-catalog/agents/deepseek-harness-agent.js +94 -0
- package/dist/agent-catalog/agents/deepseek-harness-agent.js.map +1 -0
- package/dist/agent-catalog/agents/opencode-agent.d.ts +17 -0
- package/dist/agent-catalog/agents/opencode-agent.d.ts.map +1 -0
- package/dist/agent-catalog/agents/opencode-agent.js +36 -0
- package/dist/agent-catalog/agents/opencode-agent.js.map +1 -0
- package/dist/agent-catalog/agents/pi-agent.d.ts +21 -0
- package/dist/agent-catalog/agents/pi-agent.d.ts.map +1 -0
- package/dist/agent-catalog/agents/pi-agent.js +69 -0
- package/dist/agent-catalog/agents/pi-agent.js.map +1 -0
- package/dist/agent-catalog/agents/supported-agent-specifications.d.ts +3 -0
- package/dist/agent-catalog/agents/supported-agent-specifications.d.ts.map +1 -0
- package/dist/agent-catalog/agents/supported-agent-specifications.js +15 -0
- package/dist/agent-catalog/agents/supported-agent-specifications.js.map +1 -0
- package/dist/agent-catalog/discover-agent.d.ts +5 -0
- package/dist/agent-catalog/discover-agent.d.ts.map +1 -0
- package/dist/agent-catalog/discover-agent.js +100 -0
- package/dist/agent-catalog/discover-agent.js.map +1 -0
- package/dist/agent-catalog/discover-local-agents.d.ts +12 -73
- package/dist/agent-catalog/discover-local-agents.d.ts.map +1 -1
- package/dist/agent-catalog/discover-local-agents.js +11 -453
- package/dist/agent-catalog/discover-local-agents.js.map +1 -1
- package/dist/agent-catalog/executable-discovery.d.ts +16 -0
- package/dist/agent-catalog/executable-discovery.d.ts.map +1 -0
- package/dist/agent-catalog/executable-discovery.js +105 -0
- package/dist/agent-catalog/executable-discovery.js.map +1 -0
- package/dist/agent-catalog/local-agent.d.ts +2 -1
- package/dist/agent-catalog/local-agent.d.ts.map +1 -1
- package/dist/agent-catalog/local-agent.js +7 -1
- package/dist/agent-catalog/local-agent.js.map +1 -1
- package/dist/agent-installation/agent-installation-manager.d.ts +1 -1
- package/dist/agent-installation/agent-installation-manager.d.ts.map +1 -1
- package/dist/agent-installation/automatic-adapter-provisioner.d.ts +2 -1
- package/dist/agent-installation/automatic-adapter-provisioner.d.ts.map +1 -1
- package/dist/agent-installation/automatic-adapter-provisioner.js +11 -2
- package/dist/agent-installation/automatic-adapter-provisioner.js.map +1 -1
- package/dist/agent-installation/deepseek-managed-package.d.ts +9 -0
- package/dist/agent-installation/deepseek-managed-package.d.ts.map +1 -0
- package/dist/agent-installation/deepseek-managed-package.js +10 -0
- package/dist/agent-installation/deepseek-managed-package.js.map +1 -0
- package/dist/agent-installation/fixed-agent-install-recipes.d.ts +19 -0
- package/dist/agent-installation/fixed-agent-install-recipes.d.ts.map +1 -1
- package/dist/agent-installation/fixed-agent-install-recipes.js +145 -0
- package/dist/agent-installation/fixed-agent-install-recipes.js.map +1 -1
- package/dist/agent-installation/fixed-installation-executor.d.ts +1 -1
- package/dist/agent-installation/fixed-installation-executor.d.ts.map +1 -1
- package/dist/agent-installation/fixed-installation-executor.js +19 -3
- package/dist/agent-installation/fixed-installation-executor.js.map +1 -1
- package/dist/agent-installation/managed-adapter-installer.d.ts +7 -6
- package/dist/agent-installation/managed-adapter-installer.d.ts.map +1 -1
- package/dist/agent-installation/managed-adapter-installer.js +25 -126
- package/dist/agent-installation/managed-adapter-installer.js.map +1 -1
- package/dist/agent-installation/managed-agent-archive.d.ts +40 -0
- package/dist/agent-installation/managed-agent-archive.d.ts.map +1 -0
- package/dist/agent-installation/managed-agent-archive.js +274 -0
- package/dist/agent-installation/managed-agent-archive.js.map +1 -0
- package/dist/agent-installation/managed-npm-package.d.ts +27 -0
- package/dist/agent-installation/managed-npm-package.d.ts.map +1 -0
- package/dist/agent-installation/managed-npm-package.js +258 -0
- package/dist/agent-installation/managed-npm-package.js.map +1 -0
- package/dist/agent-installation/opencode-managed-release.d.ts +4 -0
- package/dist/agent-installation/opencode-managed-release.d.ts.map +1 -0
- package/dist/agent-installation/opencode-managed-release.js +25 -0
- package/dist/agent-installation/opencode-managed-release.js.map +1 -0
- package/dist/agent-installation/pi-managed-packages.d.ts +4 -0
- package/dist/agent-installation/pi-managed-packages.d.ts.map +1 -0
- package/dist/agent-installation/pi-managed-packages.js +4 -0
- package/dist/agent-installation/pi-managed-packages.js.map +1 -0
- package/dist/cli.js +2419 -950
- package/dist/cli.js.map +4 -4
- package/dist/index.js +2138 -669
- package/dist/index.js.map +4 -4
- package/dist/native-sessions/codex-history.d.ts.map +1 -1
- package/dist/native-sessions/codex-history.js +1 -0
- package/dist/native-sessions/codex-history.js.map +1 -1
- package/dist/process/executable.d.ts +6 -1
- package/dist/process/executable.d.ts.map +1 -1
- package/dist/process/executable.js +150 -7
- package/dist/process/executable.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-history.d.ts","sourceRoot":"","sources":["../../src/acp/session-history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAEL,KAAK,oBAAoB,EAK1B,MAAM,0BAA0B,CAAC;AAGlC,mFAAmF;AACnF,qBAAa,gBAAgB;;IAO3B,QAAQ,CAAC,MAAM,WAAY,mBAAmB,CAAC,QAAQ,CAAC,KAAG,IAAI,CAoE7D;IAEF,QAAQ,CAAC,QAAQ,QAAO,oBAAoB,
|
|
1
|
+
{"version":3,"file":"session-history.d.ts","sourceRoot":"","sources":["../../src/acp/session-history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAEL,KAAK,oBAAoB,EAK1B,MAAM,0BAA0B,CAAC;AAGlC,mFAAmF;AACnF,qBAAa,gBAAgB;;IAO3B,QAAQ,CAAC,MAAM,WAAY,mBAAmB,CAAC,QAAQ,CAAC,KAAG,IAAI,CAoE7D;IAEF,QAAQ,CAAC,QAAQ,QAAO,oBAAoB,CAMzC;CACJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-history.js","sourceRoot":"","sources":["../../src/acp/session-history.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session-history.js","sourceRoot":"","sources":["../../src/acp/session-history.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type CompleteElicitationNotification, type CreateElicitationRequest, type CreateElicitationResponse, type RequestPermissionRequest, type RequestPermissionResponse, type SessionNotification } from "@agentclientprotocol/sdk";
|
|
2
2
|
import { type AgentContentEvent, type AgentPromptResponse, type NativeSessionHistory, type PromptImage, type PromptResource, type SessionCapabilities, type SessionCommand, type SessionCommandsUpdatedEvent, type SessionConfigOption, type SessionConfigUpdatedEvent, type SessionElicitationRequestedEvent, type SessionElicitationResolvedEvent, type SessionInfoUpdatedEvent, type SessionPermissionRequestedEvent, type SessionPermissionResolvedEvent, type SessionUsageUpdatedEvent } from "@moxt-ai/mobius-protocol";
|
|
3
3
|
import type { LocalAgentDefinition } from "../config.ts";
|
|
4
|
+
import { type ProcessTreeIdentity } from "../process/executable.ts";
|
|
4
5
|
import { type AcpActivity } from "./activity.ts";
|
|
5
6
|
import { type AcpClientHandler } from "./create-client.ts";
|
|
6
7
|
import { type NativeSessionOrigin, type NativeSessionPage } from "./native-session.ts";
|
|
@@ -99,9 +100,11 @@ declare class AcpProcessSession implements AcpClientHandler {
|
|
|
99
100
|
readonly onElicitation: (request: CreateElicitationRequest, signal: AbortSignal) => Promise<CreateElicitationResponse>;
|
|
100
101
|
readonly onElicitationComplete: (notification: CompleteElicitationNotification) => Promise<void>;
|
|
101
102
|
readonly onUpdate: (notification: SessionNotification) => Promise<void>;
|
|
103
|
+
readonly enqueueUpdate: (notification: SessionNotification) => Promise<void>;
|
|
104
|
+
readonly selectNativeSession: (sessionId: string) => void;
|
|
102
105
|
readonly processUpdate: (notification: SessionNotification) => Promise<void>;
|
|
103
106
|
readonly close: () => Promise<void>;
|
|
104
|
-
readonly closeProcess: () => Promise<void>;
|
|
107
|
+
readonly closeProcess: (capturedProcesses?: readonly ProcessTreeIdentity[]) => Promise<void>;
|
|
105
108
|
readonly race: <T>(operation: Promise<T>, exitMessage: string, signal: AbortSignal) => Promise<T>;
|
|
106
109
|
readonly assertNativeSession: (sessionId: string) => void;
|
|
107
110
|
readonly emitConfigUpdate: () => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/acp/session-manager.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,+BAA+B,EAEpC,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,
|
|
1
|
+
{"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/acp/session-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import { spawn } from "node:child_process";
|
|
2
|
-
import { methods, ndJsonStream, PROTOCOL_VERSION, } from "@agentclientprotocol/sdk";
|
|
2
|
+
import { methods, ndJsonStream, PROTOCOL_VERSION, RequestError, } from "@agentclientprotocol/sdk";
|
|
3
3
|
import { AGENT_CONTENT_KIND, decodeAgentPromptResponse, SESSION_COMMANDS_UPDATED_KIND, SESSION_CONFIG_UPDATED_KIND, SESSION_ELICITATION_REQUESTED_KIND, SESSION_ELICITATION_RESOLVED_KIND, SESSION_INFO_UPDATED_KIND, SESSION_PERMISSION_REQUESTED_KIND, SESSION_PERMISSION_RESOLVED_KIND, SESSION_USAGE_UPDATED_KIND, } from "@moxt-ai/mobius-protocol";
|
|
4
|
-
import { revalidateExecutable, stopProcessTree, } from "../process/executable.js";
|
|
4
|
+
import { captureProcessTree, revalidateExecutable, stopProcessTree, } from "../process/executable.js";
|
|
5
5
|
import { AcpActivityTracker, isProgressMessage, normalizeContentBlock, } from "./activity.js";
|
|
6
6
|
import { createAcpClient } from "./create-client.js";
|
|
7
7
|
import { nativeSessionIdSchema, nativeSessionPageSchema, } from "./native-session.js";
|
|
8
8
|
import { AcpHistoryReplay } from "./session-history.js";
|
|
9
9
|
import { AcpStoredSession, DeletedAcpStoredSession, FoundAcpStoredSession, MemoryAcpSessionStore, } from "./session-store.js";
|
|
10
10
|
const PROCESS_STOP_TIMEOUT_MILLISECONDS = 1_000;
|
|
11
|
+
const MAX_PRE_SESSION_UPDATES = 100;
|
|
12
|
+
const MAX_PRE_SESSION_UPDATE_BYTES = 1024 * 1024;
|
|
11
13
|
const SESSION_CONTROL_COMMAND_ID = "session-control";
|
|
12
14
|
export class NullAcpSessionObserver {
|
|
13
15
|
onCommands = () => Promise.resolve();
|
|
@@ -577,8 +579,11 @@ class AcpProcessSession {
|
|
|
577
579
|
#mobiusSessionId;
|
|
578
580
|
#pendingElicitations = new Map();
|
|
579
581
|
#pendingPermissions = new Map();
|
|
582
|
+
#preSessionUpdates = [];
|
|
580
583
|
#processExit;
|
|
581
584
|
#store;
|
|
585
|
+
#verifiedAgentVersion;
|
|
586
|
+
#preSessionUpdateBytes = 0;
|
|
582
587
|
#agentName = "";
|
|
583
588
|
#agentVersion = "";
|
|
584
589
|
#capabilities = {
|
|
@@ -612,6 +617,7 @@ class AcpProcessSession {
|
|
|
612
617
|
this.#getObserver = getObserver;
|
|
613
618
|
this.#mobiusSessionId = mobiusSessionId;
|
|
614
619
|
this.#store = store;
|
|
620
|
+
this.#verifiedAgentVersion = agent.agentVersion;
|
|
615
621
|
this.#child = spawn(agent.adapterPath, [...agent.arguments], {
|
|
616
622
|
cwd,
|
|
617
623
|
detached: process.platform !== "win32",
|
|
@@ -718,7 +724,9 @@ class AcpProcessSession {
|
|
|
718
724
|
this.#agentName = truncate(initialized.agentInfo?.title ??
|
|
719
725
|
initialized.agentInfo?.name ??
|
|
720
726
|
this.#agentId, 255);
|
|
721
|
-
this.#agentVersion = truncate(
|
|
727
|
+
this.#agentVersion = truncate(this.#verifiedAgentVersion.length > 0
|
|
728
|
+
? this.#verifiedAgentVersion
|
|
729
|
+
: (initialized.agentInfo?.version ?? ""), 128);
|
|
722
730
|
}
|
|
723
731
|
initialize = async (signal, origin) => {
|
|
724
732
|
await this.#initializeAgent(signal);
|
|
@@ -741,7 +749,7 @@ class AcpProcessSession {
|
|
|
741
749
|
additionalDirectories: [...this.#additionalDirectories],
|
|
742
750
|
mcpServers: [],
|
|
743
751
|
}, { cancellationSignal: signal }), "ACP agent exited while forking a session", signal);
|
|
744
|
-
this
|
|
752
|
+
this.selectNativeSession(forked.sessionId);
|
|
745
753
|
if (this.#nativeSessionId === origin.nativeSessionId ||
|
|
746
754
|
this.#store.findNative(this.#agentId, this.#nativeSessionId).length > 0) {
|
|
747
755
|
throw new AcpExecutionError("The Agent did not create an independent fork", {}, "invalid_native_session_response");
|
|
@@ -754,7 +762,7 @@ class AcpProcessSession {
|
|
|
754
762
|
stored.session.agentId === this.#agentId &&
|
|
755
763
|
stored.session.cwd === this.#cwd &&
|
|
756
764
|
arraysEqual(stored.session.additionalDirectories, this.#additionalDirectories)) {
|
|
757
|
-
this
|
|
765
|
+
this.selectNativeSession(stored.session.nativeSessionId);
|
|
758
766
|
this.#prompted = stored.session.prompted;
|
|
759
767
|
this.#restored = true;
|
|
760
768
|
if (this.#capabilities.resumeSession) {
|
|
@@ -796,7 +804,7 @@ class AcpProcessSession {
|
|
|
796
804
|
cwd: this.#cwd,
|
|
797
805
|
mcpServers: [],
|
|
798
806
|
}, { cancellationSignal: signal }), "ACP agent exited while starting a session", signal);
|
|
799
|
-
this
|
|
807
|
+
this.selectNativeSession(created.sessionId);
|
|
800
808
|
lifecycleResponse = created;
|
|
801
809
|
}
|
|
802
810
|
const lifecycleRecord = isRecord(lifecycleResponse)
|
|
@@ -946,13 +954,18 @@ class AcpProcessSession {
|
|
|
946
954
|
}
|
|
947
955
|
};
|
|
948
956
|
cancel = async () => {
|
|
949
|
-
await this
|
|
950
|
-
|
|
951
|
-
|
|
957
|
+
const capturedProcesses = await captureProcessTree(this.#child);
|
|
958
|
+
try {
|
|
959
|
+
await this.cancelPendingInteractions();
|
|
960
|
+
if (this.#turn.running) {
|
|
961
|
+
await this.#connection.agent.notify(methods.agent.session.cancel, {
|
|
962
|
+
sessionId: this.#nativeSessionId,
|
|
963
|
+
});
|
|
964
|
+
}
|
|
965
|
+
}
|
|
966
|
+
finally {
|
|
967
|
+
await this.closeProcess(capturedProcesses);
|
|
952
968
|
}
|
|
953
|
-
await this.#connection.agent.notify(methods.agent.session.cancel, {
|
|
954
|
-
sessionId: this.#nativeSessionId,
|
|
955
|
-
});
|
|
956
969
|
};
|
|
957
970
|
respondPermission = async (options) => {
|
|
958
971
|
const pending = this.#pendingPermissions.get(options.interactionId);
|
|
@@ -1108,9 +1121,36 @@ class AcpProcessSession {
|
|
|
1108
1121
|
});
|
|
1109
1122
|
};
|
|
1110
1123
|
onUpdate = (notification) => {
|
|
1124
|
+
if (this.#nativeSessionId.length === 0) {
|
|
1125
|
+
const notificationBytes = Buffer.byteLength(JSON.stringify(notification));
|
|
1126
|
+
if (this.#preSessionUpdates.length >= MAX_PRE_SESSION_UPDATES ||
|
|
1127
|
+
this.#preSessionUpdateBytes + notificationBytes >
|
|
1128
|
+
MAX_PRE_SESSION_UPDATE_BYTES) {
|
|
1129
|
+
return Promise.reject(new AcpExecutionError("ACP agent sent too many updates before creating its session", {}, "agent_update_limit"));
|
|
1130
|
+
}
|
|
1131
|
+
this.#preSessionUpdates.push(notification);
|
|
1132
|
+
this.#preSessionUpdateBytes += notificationBytes;
|
|
1133
|
+
return Promise.resolve();
|
|
1134
|
+
}
|
|
1135
|
+
return this.enqueueUpdate(notification);
|
|
1136
|
+
};
|
|
1137
|
+
enqueueUpdate = (notification) => {
|
|
1111
1138
|
this.#updateTail = this.#updateTail.then(async () => await this.processUpdate(notification));
|
|
1112
1139
|
return this.#updateTail;
|
|
1113
1140
|
};
|
|
1141
|
+
selectNativeSession = (sessionId) => {
|
|
1142
|
+
const selected = nativeSessionIdSchema.parse(sessionId);
|
|
1143
|
+
if (this.#nativeSessionId.length > 0 &&
|
|
1144
|
+
this.#nativeSessionId !== selected) {
|
|
1145
|
+
throw new AcpExecutionError("ACP agent attempted to replace the selected session", {}, "invalid_agent_session");
|
|
1146
|
+
}
|
|
1147
|
+
this.#nativeSessionId = selected;
|
|
1148
|
+
const pending = this.#preSessionUpdates.splice(0);
|
|
1149
|
+
this.#preSessionUpdateBytes = 0;
|
|
1150
|
+
for (const notification of pending) {
|
|
1151
|
+
void this.enqueueUpdate(notification);
|
|
1152
|
+
}
|
|
1153
|
+
};
|
|
1114
1154
|
processUpdate = async (notification) => {
|
|
1115
1155
|
this.assertNativeSession(notification.sessionId);
|
|
1116
1156
|
const update = notification.update;
|
|
@@ -1247,9 +1287,13 @@ class AcpProcessSession {
|
|
|
1247
1287
|
}
|
|
1248
1288
|
await this.closeProcess();
|
|
1249
1289
|
};
|
|
1250
|
-
closeProcess = async () => {
|
|
1251
|
-
|
|
1252
|
-
|
|
1290
|
+
closeProcess = async (capturedProcesses = []) => {
|
|
1291
|
+
try {
|
|
1292
|
+
await stopProcessTree(this.#child, capturedProcesses);
|
|
1293
|
+
}
|
|
1294
|
+
finally {
|
|
1295
|
+
this.#connection.close();
|
|
1296
|
+
}
|
|
1253
1297
|
};
|
|
1254
1298
|
race = async (operation, exitMessage, signal) => {
|
|
1255
1299
|
signal.throwIfAborted();
|
|
@@ -1264,13 +1308,22 @@ class AcpProcessSession {
|
|
|
1264
1308
|
};
|
|
1265
1309
|
});
|
|
1266
1310
|
try {
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1311
|
+
try {
|
|
1312
|
+
return await Promise.race([
|
|
1313
|
+
operation,
|
|
1314
|
+
this.#processExit.then(() => {
|
|
1315
|
+
throw new AcpExecutionError(exitMessage);
|
|
1316
|
+
}),
|
|
1317
|
+
aborted,
|
|
1318
|
+
]);
|
|
1319
|
+
}
|
|
1320
|
+
catch (error) {
|
|
1321
|
+
signal.throwIfAborted();
|
|
1322
|
+
if (error instanceof RequestError && error.code === -32_000) {
|
|
1323
|
+
throw new AcpExecutionError("Agent authentication is required", { cause: error }, "authentication_required");
|
|
1324
|
+
}
|
|
1325
|
+
throw error;
|
|
1326
|
+
}
|
|
1274
1327
|
}
|
|
1275
1328
|
finally {
|
|
1276
1329
|
removeAbortListener();
|
|
@@ -1478,7 +1531,14 @@ export class AcpSessionManager {
|
|
|
1478
1531
|
this.#cancellationRequests.add(sessionId);
|
|
1479
1532
|
const runtime = this.#sessions.get(sessionId);
|
|
1480
1533
|
if (runtime !== undefined) {
|
|
1481
|
-
|
|
1534
|
+
try {
|
|
1535
|
+
await runtime.cancel();
|
|
1536
|
+
}
|
|
1537
|
+
finally {
|
|
1538
|
+
if (this.#sessions.get(sessionId) === runtime) {
|
|
1539
|
+
this.#sessions.delete(sessionId);
|
|
1540
|
+
}
|
|
1541
|
+
}
|
|
1482
1542
|
}
|
|
1483
1543
|
};
|
|
1484
1544
|
runPrompt = async (options) => {
|
|
@@ -1490,18 +1550,41 @@ export class AcpSessionManager {
|
|
|
1490
1550
|
if (this.#activeSessionIds.has(options.sessionId)) {
|
|
1491
1551
|
throw new AcpExecutionError("Another prompt is already running in this conversation", {}, "session_busy");
|
|
1492
1552
|
}
|
|
1553
|
+
const deadlineController = new AbortController();
|
|
1554
|
+
const deadlineError = new AcpExecutionError("The local Agent prompt exceeded its deadline", {}, "prompt_timeout");
|
|
1555
|
+
const deadline = setTimeout(() => deadlineController.abort(deadlineError), options.agent.promptTimeoutMilliseconds);
|
|
1556
|
+
deadline.unref();
|
|
1557
|
+
const boundedOptions = {
|
|
1558
|
+
...options,
|
|
1559
|
+
signal: AbortSignal.any([options.signal, deadlineController.signal]),
|
|
1560
|
+
};
|
|
1493
1561
|
this.#activeSessionIds.add(options.sessionId);
|
|
1494
1562
|
try {
|
|
1495
1563
|
if (this.#cancellationRequests.has(options.sessionId)) {
|
|
1496
1564
|
return { stopReason: "cancelled" };
|
|
1497
1565
|
}
|
|
1498
|
-
const runtime = await this.ensureSession(
|
|
1566
|
+
const runtime = await this.ensureSession(boundedOptions);
|
|
1499
1567
|
if (this.#nativeOperations.has(`${options.agent.id}:${runtime.nativeSessionId()}`))
|
|
1500
1568
|
throw new AcpExecutionError("The native session is being managed", {}, "session_busy");
|
|
1501
1569
|
if (this.#cancellationRequests.has(options.sessionId)) {
|
|
1502
1570
|
return { stopReason: "cancelled" };
|
|
1503
1571
|
}
|
|
1504
|
-
|
|
1572
|
+
try {
|
|
1573
|
+
const result = await runtime.prompt(boundedOptions);
|
|
1574
|
+
return this.#cancellationRequests.has(options.sessionId)
|
|
1575
|
+
? { stopReason: "cancelled" }
|
|
1576
|
+
: result;
|
|
1577
|
+
}
|
|
1578
|
+
catch (error) {
|
|
1579
|
+
if (this.#cancellationRequests.has(options.sessionId)) {
|
|
1580
|
+
if (this.#sessions.get(options.sessionId) === runtime) {
|
|
1581
|
+
this.#sessions.delete(options.sessionId);
|
|
1582
|
+
}
|
|
1583
|
+
await runtime.closeProcess();
|
|
1584
|
+
return { stopReason: "cancelled" };
|
|
1585
|
+
}
|
|
1586
|
+
throw error;
|
|
1587
|
+
}
|
|
1505
1588
|
}
|
|
1506
1589
|
catch (error) {
|
|
1507
1590
|
const failedRuntime = this.#sessions.get(options.sessionId);
|
|
@@ -1517,6 +1600,7 @@ export class AcpSessionManager {
|
|
|
1517
1600
|
});
|
|
1518
1601
|
}
|
|
1519
1602
|
finally {
|
|
1603
|
+
clearTimeout(deadline);
|
|
1520
1604
|
this.#activeSessionIds.delete(options.sessionId);
|
|
1521
1605
|
this.#cancellationRequests.delete(options.sessionId);
|
|
1522
1606
|
}
|