@moxt-ai/mobius 0.0.182 → 0.0.184

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.
Files changed (34) hide show
  1. package/dist/acp/agent-connection.d.ts.map +1 -1
  2. package/dist/acp/agent-connection.js +14 -2
  3. package/dist/acp/agent-connection.js.map +1 -1
  4. package/dist/acp/agent-runtime-manager.d.ts +2 -1
  5. package/dist/acp/agent-runtime-manager.d.ts.map +1 -1
  6. package/dist/acp/agent-runtime-manager.js +46 -36
  7. package/dist/acp/agent-runtime-manager.js.map +1 -1
  8. package/dist/acp/agent-session.d.ts +4 -3
  9. package/dist/acp/agent-session.d.ts.map +1 -1
  10. package/dist/acp/agent-session.js +15 -3
  11. package/dist/acp/agent-session.js.map +1 -1
  12. package/dist/acp/codex/app-server-protocol.d.ts +4 -0
  13. package/dist/acp/codex/app-server-protocol.d.ts.map +1 -1
  14. package/dist/acp/codex/app-server-protocol.js +2 -0
  15. package/dist/acp/codex/app-server-protocol.js.map +1 -1
  16. package/dist/acp/codex/items.d.ts.map +1 -1
  17. package/dist/acp/codex/items.js +35 -11
  18. package/dist/acp/codex/items.js.map +1 -1
  19. package/dist/acp/session-contracts.d.ts +5 -0
  20. package/dist/acp/session-contracts.d.ts.map +1 -1
  21. package/dist/acp/session-contracts.js.map +1 -1
  22. package/dist/cli.js +177 -83
  23. package/dist/cli.js.map +4 -4
  24. package/dist/daemon-session-commands.d.ts.map +1 -1
  25. package/dist/daemon-session-commands.js +6 -4
  26. package/dist/daemon-session-commands.js.map +1 -1
  27. package/dist/external-content/acp-content-externalizer.d.ts.map +1 -1
  28. package/dist/external-content/acp-content-externalizer.js +13 -0
  29. package/dist/external-content/acp-content-externalizer.js.map +1 -1
  30. package/dist/index.js +171 -79
  31. package/dist/index.js.map +3 -3
  32. package/dist/runtime.js +174 -82
  33. package/dist/runtime.js.map +3 -3
  34. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"agent-connection.d.ts","sourceRoot":"","sources":["../../src/acp/agent-connection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,gBAAgB,EAA8B,MAAM,0BAA0B,CAAC;AAC7F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGvD,OAAO,EAAE,KAAK,gBAAgB,EAAmB,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EACH,KAAK,sBAAsB,EAE3B,KAAK,oBAAoB,EAC5B,MAAM,8BAA8B,CAAC;AAuCtC,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,GAAG,cAAc,CAAC,UAAU,CAAC,CAuCjG;AAMD,sFAAsF;AACtF,qBAAa,eAAe;;IACxB,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAEtD,YAAY,KAAK,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EA8C3E;IACD,IAAI,cAAc,IAAI,oBAAoB,GAAG,IAAI,CAEhD;IACD,QAAQ,CAAC,YAAY,QAAa,OAAO,CAAC,IAAI,CAAC,CAW7C;IAEF,QAAQ,CAAC,IAAI,GAAU,CAAC,aAAa,OAAO,CAAC,CAAC,CAAC,eAAe,MAAM,UAAU,WAAW,KAAG,OAAO,CAAC,CAAC,CAAC,CAuCpG;CACL"}
1
+ {"version":3,"file":"agent-connection.d.ts","sourceRoot":"","sources":["../../src/acp/agent-connection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,gBAAgB,EAA8B,MAAM,0BAA0B,CAAC;AAC7F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGvD,OAAO,EAAE,KAAK,gBAAgB,EAAmB,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EACH,KAAK,sBAAsB,EAE3B,KAAK,oBAAoB,EAC5B,MAAM,8BAA8B,CAAC;AAoDtC,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,GAAG,cAAc,CAAC,UAAU,CAAC,CAuCjG;AAMD,sFAAsF;AACtF,qBAAa,eAAe;;IACxB,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAEtD,YAAY,KAAK,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EA8C3E;IACD,IAAI,cAAc,IAAI,oBAAoB,GAAG,IAAI,CAEhD;IACD,QAAQ,CAAC,YAAY,QAAa,OAAO,CAAC,IAAI,CAAC,CAW7C;IAEF,QAAQ,CAAC,IAAI,GAAU,CAAC,aAAa,OAAO,CAAC,CAAC,CAAC,eAAe,MAAM,UAAU,WAAW,KAAG,OAAO,CAAC,CAAC,CAAC,CAuCpG;CACL"}
@@ -4,7 +4,19 @@ import { stopProcessTree } from "../process/executable.js";
4
4
  import { AcpExecutionError } from "./acp-error.js";
5
5
  import { createAcpClient } from "./create-client.js";
6
6
  import { acpEndpointTerminationError, } from "./in-process/acp-endpoint.js";
7
- import { truncate } from "./value-utils.js";
7
+ import { isRecord, truncate } from "./value-utils.js";
8
+ function requestErrorMessage(error) {
9
+ const fallback = truncate(error.message, 500);
10
+ if (error.message !== "Internal error" || !isRecord(error.data)) {
11
+ return fallback;
12
+ }
13
+ const agentError = error.data["error"];
14
+ if (!isRecord(agentError) || agentError["code"] !== "invalid_prompt") {
15
+ return fallback;
16
+ }
17
+ const message = agentError["message"];
18
+ return typeof message === "string" && message.length > 0 ? truncate(message, 500) : fallback;
19
+ }
8
20
  function readableWebStream(input) {
9
21
  let streamOpen = true;
10
22
  return new ReadableStream({
@@ -177,7 +189,7 @@ export class AgentConnection {
177
189
  throw new AcpExecutionError("Agent authentication is required", { cause: error }, "authentication_required");
178
190
  }
179
191
  if (error instanceof RequestError) {
180
- throw new AcpExecutionError(truncate(error.message, 500), { cause: error }, "acp_agent_error");
192
+ throw new AcpExecutionError(requestErrorMessage(error), { cause: error }, "acp_agent_error");
181
193
  }
182
194
  throw error;
183
195
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent-connection.js","sourceRoot":"","sources":["../../src/acp/agent-connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-connection.js","sourceRoot":"","sources":["../../src/acp/agent-connection.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import { type OperationMetrics } from "../infra/operation-metrics.ts";
6
6
  import type { NativeSessionOrigin, NativeSessionPage } from "./native-session.ts";
7
7
  import { type AcpSessionStore } from "./session-store.ts";
8
8
  export { AcpConfigurationValueUnavailableError, AcpExecutionError } from "./acp-error.ts";
9
- export { type AcpAgentSettingsInspectionOptions, AcpAgentSettingsSnapshot, type AcpConfigureOptions, type AcpElicitationResponseOptions, type AcpNativeEventReplayV2, type AcpNativeHistoryReader, type AcpPermissionResponseOptions, AcpPreparedSession, type AcpPrepareOptions, type AcpPromptResult, type AcpSessionObserver, type AcpSteerOptions, type AcpTurnOptions, NullAcpSessionObserver, } from "./session-contracts.ts";
9
+ export { type AcpAgentSettingsInspectionOptions, AcpAgentSettingsSnapshot, type AcpConfigureOptions, type AcpElicitationResponseOptions, type AcpNativeEventReplayV2, type AcpNativeHistoryReader, type AcpPermissionResponseOptions, AcpPreparedSession, type AcpPrepareOptions, type AcpPromptResult, type AcpSessionObserver, type AcpSessionRecovery, type AcpSteerOptions, type AcpTurnOptions, NullAcpSessionObserver, } from "./session-contracts.ts";
10
10
  import { type AcpAgentSettingsInspectionOptions, AcpAgentSettingsSnapshot, type AcpConfigureOptions, type AcpElicitationResponseOptions, type AcpNativeEventReplayV2, type AcpNativeHistoryReader, type AcpPermissionResponseOptions, type AcpPreparedSession, type AcpPrepareOptions, type AcpPromptResult, type AcpSessionObserver, type AcpSteerOptions, type AcpTurnOptions } from "./session-contracts.ts";
11
11
  export declare class AgentRuntimeManager {
12
12
  #private;
@@ -14,6 +14,7 @@ export declare class AgentRuntimeManager {
14
14
  readonly recordLifecycleEventV2: (sessionId: string, event: SessionEventPayloadV2) => Promise<boolean>;
15
15
  readonly setObserver: (observer: AcpSessionObserver) => void;
16
16
  readonly prepareSession: (options: AcpPrepareOptions, metrics?: OperationMetrics) => Promise<AcpPreparedSession>;
17
+ readonly restoreSession: (options: AcpPrepareOptions, metrics?: OperationMetrics) => Promise<AcpPreparedSession>;
17
18
  /**
18
19
  * Opens a short-lived native ACP session only to read the local Agent's
19
20
  * authoritative settings. Its identity and store are private to this
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runtime-manager.d.ts","sourceRoot":"","sources":["../../src/acp/agent-runtime-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-runtime-manager.d.ts","sourceRoot":"","sources":["../../src/acp/agent-runtime-manager.ts"],"names":[],"mappings":"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"}
@@ -85,28 +85,28 @@ export class AgentRuntimeManager {
85
85
  this.#executionProcesses.retain(options.sessionId, runtime);
86
86
  return runtime;
87
87
  }
88
- async #startPreparation(options, metrics = unmeasuredOperationMetrics) {
88
+ async #startPreparation(options, recovery, metrics = unmeasuredOperationMetrics) {
89
89
  return await this.#executionProcesses.prepare(options.sessionId, async () => {
90
90
  return await this.#startRetainedSessionProcess(options, async () => await AgentSession.start(options.origin === undefined &&
91
91
  this.#sessionIdentity === "native" &&
92
92
  isNativeChatSessionId(options.agent.id, options.sessionId) &&
93
93
  this.#store.read(options.sessionId) instanceof MissingAcpStoredSession
94
94
  ? { ...options, origin: { kind: "import", nativeSessionId: options.sessionId } }
95
- : options, () => this.#observer, this.#store, metrics, this.#contentExternalizer));
95
+ : options, recovery, () => this.#observer, this.#store, metrics, this.#contentExternalizer));
96
96
  });
97
97
  }
98
- async #replacePreparation(existing, options, metrics) {
98
+ async #replacePreparation(existing, options, recovery, metrics) {
99
99
  return await this.#executionProcesses.prepare(options.sessionId, async () => {
100
100
  await this.#retireSessionProcess(options.sessionId, existing, async () => await metrics.measure("runtime-replacement-close", async () => await existing.close()));
101
101
  this.#store.remove(options.sessionId);
102
- return await this.#startRetainedSessionProcess(options, async () => await AgentSession.start(options, () => this.#observer, this.#store, metrics, this.#contentExternalizer));
102
+ return await this.#startRetainedSessionProcess(options, async () => await AgentSession.start(options, recovery, () => this.#observer, this.#store, metrics, this.#contentExternalizer));
103
103
  });
104
104
  }
105
105
  async #replaceExecutionPreparation(existing, options) {
106
106
  const desiredConfigOptions = existing.prepared().configOptions;
107
107
  return await this.#executionProcesses.prepare(options.sessionId, async () => {
108
108
  await this.#retireSessionProcess(options.sessionId, existing, async () => await existing.close());
109
- const runtime = await this.#startRetainedSessionProcess(options, async () => await AgentSession.start(options, () => this.#observer, this.#store, unmeasuredOperationMetrics, this.#contentExternalizer));
109
+ const runtime = await this.#startRetainedSessionProcess(options, async () => await AgentSession.start(options, { kind: "interactive-only" }, () => this.#observer, this.#store, unmeasuredOperationMetrics, this.#contentExternalizer));
110
110
  try {
111
111
  for (const desired of desiredConfigOptions) {
112
112
  const current = runtime.prepared().configOptions.find((option) => option.id === desired.id);
@@ -146,36 +146,46 @@ export class AgentRuntimeManager {
146
146
  return runtime;
147
147
  });
148
148
  }
149
- prepareSession = async (options, metrics = unmeasuredOperationMetrics) => this.#operations.run(options, async (options) => {
150
- const stored = metrics.measureSync("session-state-read", () => this.#store.read(options.sessionId));
151
- if (stored instanceof FoundAcpStoredSession &&
152
- this.#nativeOperations.has(`${stored.session.agentId}:${stored.session.nativeSessionId}`)) {
153
- throw new AcpExecutionError("The native session is being managed", {}, "session_busy");
154
- }
155
- const pending = this.#executionProcesses.pending(options.sessionId);
156
- if (pending !== undefined) {
157
- const runtime = await metrics.measure("session-preparation-wait", async () => await waitForSharedOperation(pending, options.signal));
158
- if (runtime.belongsTo(options.agent.id, options.cwd, options.additionalDirectories)) {
159
- this.#executionProcesses.touch(options.sessionId, runtime);
160
- return runtime.prepared();
149
+ async #prepareSession(options, recovery, metrics = unmeasuredOperationMetrics) {
150
+ return await this.#operations.run(options, async (options) => {
151
+ const stored = metrics.measureSync("session-state-read", () => this.#store.read(options.sessionId));
152
+ if (stored instanceof FoundAcpStoredSession &&
153
+ this.#nativeOperations.has(`${stored.session.agentId}:${stored.session.nativeSessionId}`)) {
154
+ throw new AcpExecutionError("The native session is being managed", {}, "session_busy");
161
155
  }
162
- return await this.prepareSession(options, metrics);
163
- }
164
- const existing = this.#executionProcesses.get(options.sessionId);
165
- if (existing !== undefined) {
166
- if (existing.belongsTo(options.agent.id, options.cwd, options.additionalDirectories)) {
167
- this.#executionProcesses.touch(options.sessionId, existing);
168
- return existing.prepared();
156
+ const pending = this.#executionProcesses.pending(options.sessionId);
157
+ if (pending !== undefined) {
158
+ const runtime = await metrics.measure("session-preparation-wait", async () => await waitForSharedOperation(pending, options.signal));
159
+ if (runtime.belongsTo(options.agent.id, options.cwd, options.additionalDirectories)) {
160
+ this.#executionProcesses.touch(options.sessionId, runtime);
161
+ if (recovery.kind === "history-required") {
162
+ await metrics.measure("session-load", async () => await runtime.ensureHistoryLoaded(options.signal));
163
+ }
164
+ return runtime.prepared();
165
+ }
166
+ return await this.#prepareSession(options, recovery, metrics);
169
167
  }
170
- if (!existing.canRebind()) {
171
- throw new AcpExecutionError("The agent or workspace cannot change after a conversation has started", {}, "session_identity_mismatch");
168
+ const existing = this.#executionProcesses.get(options.sessionId);
169
+ if (existing !== undefined) {
170
+ if (existing.belongsTo(options.agent.id, options.cwd, options.additionalDirectories)) {
171
+ this.#executionProcesses.touch(options.sessionId, existing);
172
+ if (recovery.kind === "history-required") {
173
+ await metrics.measure("session-load", async () => await existing.ensureHistoryLoaded(options.signal));
174
+ }
175
+ return existing.prepared();
176
+ }
177
+ if (!existing.canRebind()) {
178
+ throw new AcpExecutionError("The agent or workspace cannot change after a conversation has started", {}, "session_identity_mismatch");
179
+ }
180
+ const runtime = await this.#replacePreparation(existing, options, recovery, metrics);
181
+ return runtime.prepared();
172
182
  }
173
- const runtime = await this.#replacePreparation(existing, options, metrics);
183
+ const runtime = await this.#startPreparation(options, recovery, metrics);
174
184
  return runtime.prepared();
175
- }
176
- const runtime = await this.#startPreparation(options, metrics);
177
- return runtime.prepared();
178
- });
185
+ });
186
+ }
187
+ prepareSession = async (options, metrics = unmeasuredOperationMetrics) => await this.#prepareSession(options, { kind: "interactive-only" }, metrics);
188
+ restoreSession = async (options, metrics = unmeasuredOperationMetrics) => await this.#prepareSession(options, { kind: "history-required" }, metrics);
179
189
  /**
180
190
  * Opens a short-lived native ACP session only to read the local Agent's
181
191
  * authoritative settings. Its identity and store are private to this
@@ -185,7 +195,7 @@ export class AgentRuntimeManager {
185
195
  return await this.#processes.runTransient(options.signal, async () => await AgentSession.start({
186
196
  ...options,
187
197
  sessionId: `agent-settings-${crypto.randomUUID()}`,
188
- }, () => this.#agentSettingsObserver, new MemoryAcpSessionStore(), unmeasuredOperationMetrics, this.#contentExternalizer), async (runtime) => {
198
+ }, { kind: "interactive-only" }, () => this.#agentSettingsObserver, new MemoryAcpSessionStore(), unmeasuredOperationMetrics, this.#contentExternalizer), async (runtime) => {
189
199
  const prepared = runtime.prepared();
190
200
  const model = options.model;
191
201
  const configOptions = model === undefined
@@ -212,7 +222,7 @@ export class AgentRuntimeManager {
212
222
  throw new AcpExecutionError("The configuration inspection session is already in use", {}, "session_busy");
213
223
  }
214
224
  return await this.#executionProcesses.use(options.sessionId, async () => {
215
- const runtime = await this.#startPreparation(options, metrics);
225
+ const runtime = await this.#startPreparation(options, { kind: "interactive-only" }, metrics);
216
226
  try {
217
227
  return runtime.prepared();
218
228
  }
@@ -234,7 +244,7 @@ export class AgentRuntimeManager {
234
244
  }
235
245
  const existing = this.#executionProcesses.get(options.sessionId);
236
246
  if (existing === undefined) {
237
- return (await this.#startPreparation(options)).prepared();
247
+ return (await this.#startPreparation(options, { kind: "interactive-only" })).prepared();
238
248
  }
239
249
  if (!existing.belongsTo(options.agent.id, options.cwd, options.additionalDirectories)) {
240
250
  throw new AcpExecutionError("The agent or workspace cannot change after a conversation has started", {}, "session_identity_mismatch");
@@ -409,7 +419,7 @@ export class AgentRuntimeManager {
409
419
  const temporaryOptions = { ...options, sessionId: temporarySessionId };
410
420
  return await this.#executionProcesses.use(temporarySessionId, async () => {
411
421
  try {
412
- const runtime = await this.#startPreparation(temporaryOptions);
422
+ const runtime = await this.#startPreparation(temporaryOptions, { kind: "interactive-only" });
413
423
  let adopted = false;
414
424
  try {
415
425
  const nativeSessionId = runtime.nativeSessionId();
@@ -544,7 +554,7 @@ export class AgentRuntimeManager {
544
554
  return await this.#executionProcesses.use(options.sessionId, async () => {
545
555
  this.#nativeOperations.add(key);
546
556
  try {
547
- const runtime = await this.#startPreparation({ ...options, origin });
557
+ const runtime = await this.#startPreparation({ ...options, origin }, { kind: "interactive-only" });
548
558
  const openedKey = `${options.agent.id}:${runtime.nativeSessionId()}`;
549
559
  this.#nativeOperations.add(openedKey);
550
560
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runtime-manager.js","sourceRoot":"","sources":["../../src/acp/agent-runtime-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-runtime-manager.js","sourceRoot":"","sources":["../../src/acp/agent-runtime-manager.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import type { AcpContentExternalizer } from "../external-content/acp-content-ext
4
4
  import { type OperationMetrics } from "../infra/operation-metrics.ts";
5
5
  import type { AcpClientHandler } from "./create-client.ts";
6
6
  import { type NativeSessionOrigin, type NativeSessionPage } from "./native-session.ts";
7
- import { type AcpConfigureOptions, type AcpElicitationResponseOptions, type AcpNativeEventReplayV2, type AcpPermissionResponseOptions, AcpPreparedSession, type AcpPrepareOptions, type AcpPromptContentOptions, type AcpPromptResult, type AcpSessionObserver, type AcpSteerOptions, type AcpTurnOptions } from "./session-contracts.ts";
7
+ import { type AcpConfigureOptions, type AcpElicitationResponseOptions, type AcpNativeEventReplayV2, type AcpPermissionResponseOptions, AcpPreparedSession, type AcpPrepareOptions, type AcpPromptContentOptions, type AcpPromptResult, type AcpSessionObserver, type AcpSessionRecovery, type AcpSteerOptions, type AcpTurnOptions } from "./session-contracts.ts";
8
8
  import { type AcpSessionStore } from "./session-store.ts";
9
9
  export { AcpConfigurationValueUnavailableError, AcpExecutionError } from "./acp-error.ts";
10
10
  export declare function arraysEqual(left: readonly string[], right: readonly string[]): boolean;
@@ -12,7 +12,7 @@ export declare function recordsEqual(left: Readonly<Record<string, string>>, rig
12
12
  export declare class AgentSession implements AcpClientHandler {
13
13
  #private;
14
14
  private constructor();
15
- static readonly start: (options: AcpPrepareOptions, getObserver: () => AcpSessionObserver, store: AcpSessionStore, metrics: OperationMetrics, contentExternalizer: AcpContentExternalizer) => Promise<AgentSession>;
15
+ static readonly start: (options: AcpPrepareOptions, recovery: AcpSessionRecovery, getObserver: () => AcpSessionObserver, store: AcpSessionStore, metrics: OperationMetrics, contentExternalizer: AcpContentExternalizer) => Promise<AgentSession>;
16
16
  static readonly startNativeSessionBrowser: (options: AcpPrepareOptions, getObserver: () => AcpSessionObserver, store: AcpSessionStore, contentExternalizer: AcpContentExternalizer) => Promise<AgentSession>;
17
17
  readonly belongsTo: (agentId: string, cwd: string, additionalDirectories: readonly string[]) => boolean;
18
18
  readonly usesEnvironment: (environment: Readonly<Record<string, string>>) => boolean;
@@ -20,12 +20,13 @@ export declare class AgentSession implements AcpClientHandler {
20
20
  readonly hasRunningTurn: () => boolean;
21
21
  readonly prepared: () => AcpPreparedSession;
22
22
  readonly loadHistory: (signal: AbortSignal) => Promise<NativeSessionHistory>;
23
+ readonly ensureHistoryLoaded: (signal: AbortSignal) => Promise<void>;
23
24
  readonly loadHistoryEventsV2: (eventLimit: number, cursor: string | null, signal: AbortSignal) => Promise<AcpNativeEventReplayV2>;
24
25
  private readonly prepareAgentContent;
25
26
  private readonly emitAgentContent;
26
27
  private readonly importRaster;
27
28
  private readonly importVideo;
28
- readonly initialize: (signal: AbortSignal, origin?: NativeSessionOrigin) => Promise<void>;
29
+ readonly initialize: (signal: AbortSignal, recovery: AcpSessionRecovery, origin?: NativeSessionOrigin) => Promise<void>;
29
30
  readonly listNativeSessions: (cursor: string | null, signal: AbortSignal) => Promise<NativeSessionPage>;
30
31
  readonly nativeSessionId: () => string;
31
32
  readonly adoptNativeSessionId: (sessionId: string) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-session.d.ts","sourceRoot":"","sources":["../../src/acp/agent-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-session.d.ts","sourceRoot":"","sources":["../../src/acp/agent-session.ts"],"names":[],"mappings":"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"}
@@ -126,7 +126,7 @@ export class AgentSession {
126
126
  }
127
127
  throw new AcpExecutionError("ACP agent initialization failed");
128
128
  }
129
- static start = async (options, getObserver, store, metrics, contentExternalizer) => await AgentSession.#start(options, getObserver, store, async (runtime) => await runtime.initialize(options.signal, options.origin), metrics, contentExternalizer);
129
+ static start = async (options, recovery, getObserver, store, metrics, contentExternalizer) => await AgentSession.#start(options, getObserver, store, async (runtime) => await runtime.initialize(options.signal, recovery, options.origin), metrics, contentExternalizer);
130
130
  static startNativeSessionBrowser = async (options, getObserver, store, contentExternalizer) => await AgentSession.#start(options, getObserver, store, async (runtime) => await runtime.#initializeAgent(options.signal), unmeasuredOperationMetrics, contentExternalizer);
131
131
  belongsTo = (agentId, cwd, additionalDirectories) => this.#agentId === agentId &&
132
132
  this.#cwd === cwd &&
@@ -148,6 +148,12 @@ export class AgentSession {
148
148
  const history = await this.#completedHistory(signal, "ACP agent exited while loading history");
149
149
  return await embedLocalHistoryImages(await history.snapshot(), signal);
150
150
  };
151
+ ensureHistoryLoaded = async (signal) => {
152
+ if (!this.#capabilities.loadSession) {
153
+ throw new AcpExecutionError("This Agent restores context but does not provide message history.", {}, "native_history_unsupported");
154
+ }
155
+ await this.#completedHistory(signal, "ACP agent exited while loading history");
156
+ };
151
157
  loadHistoryEventsV2 = async (eventLimit, cursor, signal) => {
152
158
  if (!this.#capabilities.loadSession) {
153
159
  throw new AcpExecutionError("This Agent restores context but does not provide message history.", {}, "native_history_unsupported");
@@ -292,7 +298,7 @@ export class AgentSession {
292
298
  this.#agentName = truncate(initialized.agentInfo?.title ?? initialized.agentInfo?.name ?? this.#agentId, 255);
293
299
  this.#agentVersion = truncate(this.#verifiedAgentVersion.length > 0 ? this.#verifiedAgentVersion : (initialized.agentInfo?.version ?? ""), 128);
294
300
  }
295
- initialize = async (signal, origin) => {
301
+ initialize = async (signal, recovery, origin) => {
296
302
  await this.#initializeAgent(signal);
297
303
  let stored = this.#metrics.measureSync("session-state-read", () => origin?.kind === "import"
298
304
  ? new FoundAcpStoredSession(new AcpStoredSession(this.#mobiusSessionId, this.#agentId, nativeSessionIdSchema.parse(origin.nativeSessionId), this.#cwd, this.#additionalDirectories, true, ""))
@@ -332,7 +338,13 @@ export class AgentSession {
332
338
  this.#prompted = stored.session.prompted;
333
339
  this.#sessionTitle = stored.session.title;
334
340
  this.#restored = true;
335
- if (this.#capabilities.resumeSession) {
341
+ if (recovery.kind === "history-required") {
342
+ if (!this.#capabilities.loadSession) {
343
+ throw new AcpExecutionError("This Agent restores context but does not provide message history.", {}, "native_history_unsupported");
344
+ }
345
+ lifecycleResponse = await this.#metrics.measure("session-load", async () => (await this.#loadSession(signal, "ACP agent exited while loading a session")).response);
346
+ }
347
+ else if (this.#capabilities.resumeSession) {
336
348
  lifecycleResponse = await this.#metrics.measure("session-resume", async () => await this.race(this.#connection.connection.agent.request(methods.agent.session.resume, {
337
349
  additionalDirectories: [...this.#additionalDirectories],
338
350
  cwd: this.#cwd,