@tickernelz/paperclip-pro-adapter-utils 2026.1016.0 → 2026.1016.2

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 (54) hide show
  1. package/node_modules/@agentclientprotocol/sdk/dist/acp.d.ts +8 -191
  2. package/node_modules/@agentclientprotocol/sdk/dist/acp.js +10 -165
  3. package/node_modules/@agentclientprotocol/sdk/dist/acp.js.map +1 -1
  4. package/node_modules/@agentclientprotocol/sdk/dist/acp.test.js +132 -52
  5. package/node_modules/@agentclientprotocol/sdk/dist/acp.test.js.map +1 -1
  6. package/node_modules/@agentclientprotocol/sdk/dist/examples/dual-version-agent.js +29 -21
  7. package/node_modules/@agentclientprotocol/sdk/dist/examples/dual-version-agent.js.map +1 -1
  8. package/node_modules/@agentclientprotocol/sdk/dist/jsonrpc.d.ts +1 -0
  9. package/node_modules/@agentclientprotocol/sdk/dist/jsonrpc.js +6 -0
  10. package/node_modules/@agentclientprotocol/sdk/dist/jsonrpc.js.map +1 -1
  11. package/node_modules/@agentclientprotocol/sdk/dist/nes/acp.d.ts +563 -0
  12. package/node_modules/@agentclientprotocol/sdk/dist/nes/acp.js +106 -0
  13. package/node_modules/@agentclientprotocol/sdk/dist/nes/acp.js.map +1 -0
  14. package/node_modules/@agentclientprotocol/sdk/dist/nes/schema/types.gen.d.ts +1261 -0
  15. package/node_modules/@agentclientprotocol/sdk/dist/nes/schema/types.gen.js +4 -0
  16. package/node_modules/@agentclientprotocol/sdk/dist/nes/schema/types.gen.js.map +1 -0
  17. package/node_modules/@agentclientprotocol/sdk/dist/nes/schema/zod.gen.d.ts +962 -0
  18. package/node_modules/@agentclientprotocol/sdk/dist/nes/schema/zod.gen.js +526 -0
  19. package/node_modules/@agentclientprotocol/sdk/dist/nes/schema/zod.gen.js.map +1 -0
  20. package/node_modules/@agentclientprotocol/sdk/dist/protocol-router.d.ts +5 -6
  21. package/node_modules/@agentclientprotocol/sdk/dist/protocol-router.js +13 -25
  22. package/node_modules/@agentclientprotocol/sdk/dist/protocol-router.js.map +1 -1
  23. package/node_modules/@agentclientprotocol/sdk/dist/protocol-router.test.js +6 -6
  24. package/node_modules/@agentclientprotocol/sdk/dist/protocol-router.test.js.map +1 -1
  25. package/node_modules/@agentclientprotocol/sdk/dist/protocol.js +0 -9
  26. package/node_modules/@agentclientprotocol/sdk/dist/protocol.js.map +1 -1
  27. package/node_modules/@agentclientprotocol/sdk/dist/protocol.test.js +0 -10
  28. package/node_modules/@agentclientprotocol/sdk/dist/protocol.test.js.map +1 -1
  29. package/node_modules/@agentclientprotocol/sdk/dist/schema/index.d.ts +1 -11
  30. package/node_modules/@agentclientprotocol/sdk/dist/schema/index.js +0 -10
  31. package/node_modules/@agentclientprotocol/sdk/dist/schema/index.js.map +1 -1
  32. package/node_modules/@agentclientprotocol/sdk/dist/schema/types.gen.d.ts +1675 -2753
  33. package/node_modules/@agentclientprotocol/sdk/dist/schema/zod.gen.d.ts +863 -1434
  34. package/node_modules/@agentclientprotocol/sdk/dist/schema/zod.gen.js +91 -534
  35. package/node_modules/@agentclientprotocol/sdk/dist/schema/zod.gen.js.map +1 -1
  36. package/node_modules/@agentclientprotocol/sdk/dist/v2/acp.d.ts +42 -48
  37. package/node_modules/@agentclientprotocol/sdk/dist/v2/acp.js +86 -139
  38. package/node_modules/@agentclientprotocol/sdk/dist/v2/acp.js.map +1 -1
  39. package/node_modules/@agentclientprotocol/sdk/dist/v2/acp.test.js +46 -17
  40. package/node_modules/@agentclientprotocol/sdk/dist/v2/acp.test.js.map +1 -1
  41. package/node_modules/@agentclientprotocol/sdk/dist/v2/schema/guards.gen.d.ts +55 -57
  42. package/node_modules/@agentclientprotocol/sdk/dist/v2/schema/guards.gen.js +0 -59
  43. package/node_modules/@agentclientprotocol/sdk/dist/v2/schema/guards.gen.js.map +1 -1
  44. package/node_modules/@agentclientprotocol/sdk/dist/v2/schema/index.d.ts +1 -11
  45. package/node_modules/@agentclientprotocol/sdk/dist/v2/schema/index.js +0 -10
  46. package/node_modules/@agentclientprotocol/sdk/dist/v2/schema/index.js.map +1 -1
  47. package/node_modules/@agentclientprotocol/sdk/dist/v2/schema/types.gen.d.ts +1870 -2874
  48. package/node_modules/@agentclientprotocol/sdk/dist/v2/schema/zod.gen.d.ts +3373 -2844
  49. package/node_modules/@agentclientprotocol/sdk/dist/v2/schema/zod.gen.js +191 -563
  50. package/node_modules/@agentclientprotocol/sdk/dist/v2/schema/zod.gen.js.map +1 -1
  51. package/node_modules/@agentclientprotocol/sdk/package.json +7 -1
  52. package/node_modules/@agentclientprotocol/sdk/schema/schema.json +1541 -3196
  53. package/node_modules/@agentclientprotocol/sdk/schema/v2/schema.unstable.json +875 -2664
  54. package/package.json +2 -2
@@ -7,6 +7,25 @@
7
7
  * v1; consumers must opt in through
8
8
  * `@agentclientprotocol/sdk/experimental/v2`.
9
9
  *
10
+ * Session state updates are aggregate snapshots, not per-prompt completions.
11
+ * Apply repeated snapshots idempotently; a repeated idle stop reason is not a
12
+ * new completion, cancellation, or usage report. Every successful
13
+ * `session/resume` sends a current-state snapshot after replay and before its
14
+ * response, including when replay was not requested. The response does not
15
+ * imply idle. Agents may send live traffic after initialization even when no
16
+ * client request is pending.
17
+ *
18
+ * Top-level `_meta` on upsert updates patches stored metadata by key: omission
19
+ * leaves it unchanged, `null` clears it, null-valued keys are removed, and other
20
+ * values replace their key whole without nested merging. An empty object does
21
+ * nothing. Replay uses the same rule. Metadata on chunks, content items,
22
+ * snapshots, and `plan_update` is not an entity patch.
23
+ *
24
+ * Experimental operations follow their advertised capabilities; local schema
25
+ * selection does not establish peer support. Only send lifecycle
26
+ * `systemPrompt` instructions when the agent advertises `session.systemPrompt`,
27
+ * and only use `override` when its `mode.override` capability is advertised.
28
+ *
10
29
  * @packageDocumentation
11
30
  * @experimental
12
31
  */
@@ -21,7 +40,7 @@ import { ndJsonStream as createJsonStream } from "../stream.js";
21
40
  // Listed explicitly (not `export *`) so each value+type pair merges rather than
22
41
  // colliding with the `export type *` above. The guards.gen re-export test
23
42
  // asserts this list stays in sync as new extensible unions are added.
24
- export { AuthMethod, AvailableCommandInput, ContentBlock, CreateElicitationRequest, CreateElicitationResponse, DiffChange, ElicitationPropertySchema, IdleStateUpdate, McpServer, MultiSelectItems, NesSuggestion, PlanUpdateContent, ReplayFrom, RequestPermissionOutcome, RequestPermissionSubject, SessionConfigOption, SessionUpdate, SetSessionConfigOptionRequest, StateUpdate, ToolCallContent, } from "./schema/guards.gen.js";
43
+ export { AuthMethod, AvailableCommandInput, ContentBlock, CreateElicitationRequest, CreateElicitationResponse, DiffChange, ElicitationPropertySchema, IdleStateUpdate, McpServer, MultiSelectItems, PlanUpdateContent, ReplayFrom, RequestPermissionOutcome, RequestPermissionSubject, SessionConfigOption, SessionUpdate, SetSessionConfigOptionRequest, StateUpdate, ToolCallContent, } from "./schema/guards.gen.js";
25
44
  export { AGENT_METHODS, CLIENT_METHODS, PROTOCOL_METHODS, PROTOCOL_VERSION, } from "./schema/index.js";
26
45
  /**
27
46
  * Creates an experimental draft ACP v2 stream from newline-delimited JSON.
@@ -75,23 +94,35 @@ function assertV2BatchMethods(entries, requestMethods, notificationMethods) {
75
94
  }
76
95
  }
77
96
  function parseV2InitializeRequest(params) {
78
- const request = received(validate.zInitializeRequest).parse(params);
79
- if (request.protocolVersion !== schema.PROTOCOL_VERSION) {
80
- throw RequestError.invalidParams({
81
- expectedProtocolVersion: schema.PROTOCOL_VERSION,
82
- receivedProtocolVersion: request.protocolVersion,
83
- }, `The v2 API only supports protocol version ${schema.PROTOCOL_VERSION}`);
97
+ const protocolVersion = received(validate.zProtocolVersion).parse(typeof params === "object" && params !== null && !Array.isArray(params)
98
+ ? params["protocolVersion"]
99
+ : undefined);
100
+ if (protocolVersion < schema.PROTOCOL_VERSION) {
101
+ throw RequestError.unsupportedProtocolVersion(protocolVersion, [
102
+ schema.PROTOCOL_VERSION,
103
+ ]);
84
104
  }
85
- return structuredClone(request);
105
+ const request = received(validate.zInitializeRequest).parse(params);
106
+ return structuredClone({
107
+ ...request,
108
+ protocolVersion: schema.PROTOCOL_VERSION,
109
+ });
86
110
  }
87
111
  function normalizeOutgoingV2InitializeRequest(params) {
88
112
  const request = typeof params === "object" && params !== null && !Array.isArray(params)
89
113
  ? params
90
114
  : {};
91
- return parseV2InitializeRequest({
115
+ const outgoing = {
92
116
  ...request,
93
117
  protocolVersion: schema.PROTOCOL_VERSION,
94
- });
118
+ };
119
+ // Parsing supplies a validated local view, not the payload to transmit.
120
+ // In particular, Zod strips future capability fields from that view.
121
+ const parsed = parseV2InitializeRequest(outgoing);
122
+ return {
123
+ wire: structuredClone(outgoing),
124
+ parsed,
125
+ };
95
126
  }
96
127
  function mapV2InitializeResponse(response) {
97
128
  const parsed = received(validate.zInitializeResponse).parse(response);
@@ -103,6 +134,11 @@ function mapV2InitializeResponse(response) {
103
134
  }
104
135
  return structuredClone(parsed);
105
136
  }
137
+ function serializeV2InitializeResponse(response) {
138
+ // Keep validation separate from serialization, as for outgoing requests.
139
+ mapV2InitializeResponse(response);
140
+ return structuredClone(response);
141
+ }
106
142
  function cloneInitialization(initialization) {
107
143
  return structuredClone(initialization);
108
144
  }
@@ -342,20 +378,6 @@ export const methods = {
342
378
  mcp: {
343
379
  message: schema.AGENT_METHODS.mcp_message,
344
380
  },
345
- nes: {
346
- start: schema.AGENT_METHODS.nes_start,
347
- suggest: schema.AGENT_METHODS.nes_suggest,
348
- accept: schema.AGENT_METHODS.nes_accept,
349
- reject: schema.AGENT_METHODS.nes_reject,
350
- close: schema.AGENT_METHODS.nes_close,
351
- },
352
- document: {
353
- didOpen: schema.AGENT_METHODS.document_did_open,
354
- didChange: schema.AGENT_METHODS.document_did_change,
355
- didClose: schema.AGENT_METHODS.document_did_close,
356
- didSave: schema.AGENT_METHODS.document_did_save,
357
- didFocus: schema.AGENT_METHODS.document_did_focus,
358
- },
359
381
  },
360
382
  client: {
361
383
  session: {
@@ -499,35 +521,6 @@ export class ClientContext extends AcpContext {
499
521
  */
500
522
  attachSession(response) {
501
523
  const updates = new AsyncQueue();
502
- const activePrompts = new Set();
503
- const activeSessionQueue = {
504
- enqueue: (value) => updates.enqueue(value),
505
- reject: (error) => updates.reject(error),
506
- clearErrors: () => updates.clearErrors(),
507
- fail: (error) => updates.fail(error),
508
- next: () => updates.next(),
509
- nextAfter: (cursor, signal) => updates.nextAfter(cursor, signal),
510
- beginPrompt: () => {
511
- const prompt = {
512
- updateCursor: updates.cursor(),
513
- overlapController: new AbortController(),
514
- };
515
- if (activePrompts.size > 0) {
516
- const error = new Error("readText() cannot attribute updates across overlapping prompts; use nextUpdate() instead");
517
- for (const activePrompt of activePrompts) {
518
- activePrompt.overlapController.abort(error);
519
- }
520
- prompt.overlapController.abort(error);
521
- }
522
- activePrompts.add(prompt);
523
- return prompt;
524
- },
525
- cancelPrompt: (prompt) => activePrompts.delete(prompt),
526
- isAwaitingPromptCompletion: () => activePrompts.size > 0,
527
- completePrompt: () => {
528
- activePrompts.clear();
529
- },
530
- };
531
524
  const closeSignal = this.connectionContext.signal;
532
525
  const failUpdatesOnClose = () => {
533
526
  updates.fail(closeSignal.reason ?? new Error("ACP connection closed"));
@@ -538,11 +531,11 @@ export class ClientContext extends AcpContext {
538
531
  else {
539
532
  closeSignal.addEventListener("abort", failUpdatesOnClose);
540
533
  }
541
- const sessionRegistration = sessionUpdateRouter(this.connectionContext).attach(response, activeSessionQueue);
534
+ const sessionRegistration = sessionUpdateRouter(this.connectionContext).attach(response, updates);
542
535
  const closeRegistration = new HandlerRegistration(() => {
543
536
  closeSignal.removeEventListener("abort", failUpdatesOnClose);
544
537
  });
545
- return ActiveSession.create(this, response, activeSessionQueue, [
538
+ return ActiveSession.create(this, response, updates, [
546
539
  sessionRegistration,
547
540
  closeRegistration,
548
541
  ]);
@@ -552,8 +545,8 @@ export class ClientContext extends AcpContext {
552
545
  const spec = agentRequestSpecsByMethod[method];
553
546
  const state = this.initializationLifecycle;
554
547
  if (method === schema.AGENT_METHODS.initialize) {
555
- const request = normalizeOutgoingV2InitializeRequest(params);
556
- state.begin(request);
548
+ const { wire: request, parsed } = normalizeOutgoingV2InitializeRequest(params);
549
+ state.begin(parsed);
557
550
  let response;
558
551
  try {
559
552
  response = this.sendRequest(method, request, (value) => {
@@ -597,8 +590,8 @@ export class ClientContext extends AcpContext {
597
590
  return Promise.reject(RequestError.invalidRequest("ACP v2 initialize must be the only entry in its batch"));
598
591
  }
599
592
  const state = this.initializationLifecycle;
600
- const request = normalizeOutgoingV2InitializeRequest(initializeEntries[0].params);
601
- state.begin(request);
593
+ const { wire: request, parsed } = normalizeOutgoingV2InitializeRequest(initializeEntries[0].params);
594
+ state.begin(parsed);
602
595
  const normalizedEntries = [
603
596
  { ...initializeEntries[0], params: request },
604
597
  ];
@@ -689,48 +682,18 @@ class AsyncQueue {
689
682
  waiters = [];
690
683
  failed = false;
691
684
  failure;
692
- nextSequence = 0;
693
685
  enqueue(value) {
694
686
  if (this.failed) {
695
687
  return;
696
688
  }
697
- const sequence = this.nextSequence++;
698
689
  const waiter = this.waiters.shift();
699
690
  if (waiter) {
700
691
  waiter.resolve(value);
701
692
  }
702
693
  else {
703
- this.values.push({ kind: "value", value, sequence });
694
+ this.values.push(value);
704
695
  }
705
696
  }
706
- reject(error) {
707
- if (this.failed) {
708
- return;
709
- }
710
- const sequence = this.nextSequence++;
711
- if (this.waiters.length > 0) {
712
- for (const waiter of this.waiters.splice(0)) {
713
- waiter.reject(error);
714
- }
715
- return;
716
- }
717
- this.values.push({ kind: "error", error, sequence });
718
- }
719
- clearErrors() {
720
- this.values = this.values.filter((entry) => entry.kind === "value");
721
- }
722
- cursor() {
723
- return this.nextSequence;
724
- }
725
- nextAfter(cursor, signal) {
726
- if (signal?.aborted) {
727
- return Promise.reject(signal.reason);
728
- }
729
- while (this.values[0] && this.values[0].sequence < cursor) {
730
- this.values.shift();
731
- }
732
- return this.next(signal);
733
- }
734
697
  fail(error) {
735
698
  if (this.failed) {
736
699
  return;
@@ -746,11 +709,7 @@ class AsyncQueue {
746
709
  return Promise.reject(signal.reason);
747
710
  }
748
711
  if (this.values.length > 0) {
749
- const entry = this.values.shift();
750
- if (entry.kind === "error") {
751
- return Promise.reject(entry.error);
752
- }
753
- return Promise.resolve(entry.value);
712
+ return Promise.resolve(this.values.shift());
754
713
  }
755
714
  if (this.failed) {
756
715
  return Promise.reject(this.failure);
@@ -871,8 +830,9 @@ export class SessionBuilder {
871
830
  * Experimental draft ACP v2 convenience wrapper for an active session.
872
831
  *
873
832
  * An active session routes `session/update` notifications for one session ID
874
- * into an async queue. Use `prompt(...)` to send user content, then read updates
875
- * with `nextUpdate()` until a `stop` message is returned.
833
+ * into an async queue. Use `prompt(...)` to submit user content and
834
+ * `nextUpdate()` to observe the session independently of prompt requests.
835
+ * A `stop` message reports idle foreground work, not per-prompt completion.
876
836
  *
877
837
  * @experimental
878
838
  */
@@ -881,7 +841,6 @@ export class ActiveSession {
881
841
  sessionResponse;
882
842
  updates;
883
843
  registrations;
884
- latestPrompt;
885
844
  constructor(cx, sessionResponse, updates, registrations) {
886
845
  this.cx = cx;
887
846
  this.sessionResponse = sessionResponse;
@@ -921,46 +880,41 @@ export class ActiveSession {
921
880
  *
922
881
  * Strings are converted to one text content block. A single content block is
923
882
  * wrapped in an array. The returned promise resolves with the inserted user
924
- * message's ID once the agent inserts it into the ACP conversation. Completion
925
- * is reported separately by an idle `state_update`, which is queued as a
926
- * `stop` message for `nextUpdate()`.
883
+ * message's ID once the agent inserts it into the ACP conversation, not when
884
+ * processing finishes. Session updates remain independent of this request;
885
+ * an idle `state_update` does not establish that this message was processed.
886
+ * Rejection is reported only by this promise, not by the session update queue.
927
887
  */
928
888
  prompt(prompt, options) {
929
- this.updates.clearErrors();
930
- const activePrompt = this.updates.beginPrompt();
931
- this.latestPrompt = activePrompt;
932
- const response = this.cx.request(schema.AGENT_METHODS.session_prompt, {
889
+ return this.cx.request(schema.AGENT_METHODS.session_prompt, {
933
890
  sessionId: this.sessionId,
934
891
  prompt: this.promptBlocks(prompt),
935
892
  }, options);
936
- void response.catch((error) => {
937
- if (this.updates.cancelPrompt(activePrompt)) {
938
- this.updates.reject(error);
939
- }
940
- });
941
- return response;
942
893
  }
943
894
  /**
944
895
  * Reads the next update or stop message for this session.
896
+ *
897
+ * Idle updates are always returned as `stop` messages, whether or not a prompt
898
+ * is pending. Queued updates are consumed in arrival order. An abort signal
899
+ * cancels this read without cancelling session work or discarding updates.
945
900
  */
946
- nextUpdate() {
947
- return this.updates.next();
901
+ nextUpdate(signal) {
902
+ return this.updates.next(signal);
948
903
  }
949
904
  /**
950
- * Reads agent text until the current prompt turn stops.
905
+ * Collects agent text from the session queue until the next idle update.
951
906
  *
952
- * Updates queued before the most recent call to `prompt(...)` are skipped.
953
- * Call prompts serially, after the preceding turn reports `stop`: session
954
- * updates do not carry a prompt ID and cannot be attributed across overlapping
955
- * prompt requests. Use `nextUpdate()` when coordinating requests directly.
907
+ * This consumes the same queue as `nextUpdate()`, including already queued
908
+ * updates. It does not associate output or idle with any submitted prompt,
909
+ * skip updates when a prompt is sent, or wait for a prompt to be inserted.
910
+ * Use one reader at a time to avoid splitting the session's updates.
911
+ * An abort signal cancels the read without cancelling session work.
956
912
  *
957
913
  * Full `agent_message` updates replace content for their `messageId`, while
958
914
  * `agent_message_chunk` updates append to it. Non-text content and other
959
915
  * update types are ignored; use `nextUpdate()` when you need them.
960
916
  */
961
- async readText() {
962
- const activePrompt = this.latestPrompt;
963
- const updateCursor = activePrompt?.updateCursor;
917
+ async readTextUntilIdle(signal) {
964
918
  const messageOrder = [];
965
919
  const messageContent = new Map();
966
920
  const ensureMessage = (messageId) => {
@@ -973,9 +927,7 @@ export class ActiveSession {
973
927
  return content;
974
928
  };
975
929
  for (;;) {
976
- const message = updateCursor === undefined
977
- ? await this.nextUpdate()
978
- : await this.updates.nextAfter(updateCursor, activePrompt?.overlapController.signal);
930
+ const message = await this.nextUpdate(signal);
979
931
  if (message.kind === "stop") {
980
932
  return messageOrder
981
933
  .flatMap((messageId) => messageContent.get(messageId) ?? [])
@@ -1045,7 +997,13 @@ function received(validator) {
1045
997
  return validator;
1046
998
  }
1047
999
  function requestSpec(method, params, response, serializeResponse) {
1048
- return { method, params, response, serializeResponse };
1000
+ return {
1001
+ method,
1002
+ // Match Rust's empty-payload handling without bypassing required fields.
1003
+ params: (value) => parseParams(params, value ?? {}),
1004
+ response,
1005
+ serializeResponse,
1006
+ };
1049
1007
  }
1050
1008
  function notificationSpec(method, params) {
1051
1009
  return { method, params };
@@ -1077,7 +1035,7 @@ function specsByMethod(specs) {
1077
1035
  return byMethod;
1078
1036
  }
1079
1037
  const agentRequestSpecs = {
1080
- initialize: requestSpec(schema.AGENT_METHODS.initialize, parseV2InitializeRequest, mapV2InitializeResponse, mapV2InitializeResponse),
1038
+ initialize: requestSpec(schema.AGENT_METHODS.initialize, parseV2InitializeRequest, mapV2InitializeResponse, serializeV2InitializeResponse),
1081
1039
  loginAuth: requestSpec(schema.AGENT_METHODS.auth_login, validate.zLoginAuthRequest, validate.zLoginAuthResponse, emptyObjectResponse),
1082
1040
  unstable_listProviders: requestSpec(schema.AGENT_METHODS.providers_list, validate.zListProvidersRequest, validate.zListProvidersResponse),
1083
1041
  unstable_setProvider: requestSpec(schema.AGENT_METHODS.providers_set, validate.zSetProviderRequest, validate.zSetProviderResponse, emptyObjectResponse),
@@ -1091,20 +1049,10 @@ const agentRequestSpecs = {
1091
1049
  resumeSession: requestSpec(schema.AGENT_METHODS.session_resume, received(validate.zResumeSessionRequest), received(validate.zResumeSessionResponse)),
1092
1050
  closeSession: requestSpec(schema.AGENT_METHODS.session_close, validate.zCloseSessionRequest, validate.zCloseSessionResponse, emptyObjectResponse),
1093
1051
  logoutAuth: requestSpec(schema.AGENT_METHODS.auth_logout, validate.zLogoutAuthRequest, validate.zLogoutAuthResponse, emptyObjectResponse),
1094
- unstable_startNes: requestSpec(schema.AGENT_METHODS.nes_start, validate.zStartNesRequest, validate.zStartNesResponse),
1095
- unstable_suggestNes: requestSpec(schema.AGENT_METHODS.nes_suggest, received(validate.zSuggestNesRequest), received(validate.zSuggestNesResponse)),
1096
- unstable_closeNes: requestSpec(schema.AGENT_METHODS.nes_close, validate.zCloseNesRequest, validate.zCloseNesResponse, emptyObjectResponse),
1097
1052
  };
1098
1053
  const agentNotificationSpecs = {
1099
1054
  cancelSession: notificationSpec(schema.AGENT_METHODS.session_cancel, validate.zCancelSessionNotification),
1100
1055
  unstable_messageMcp: notificationSpec(schema.AGENT_METHODS.mcp_message, validate.zMessageMcpNotification),
1101
- unstable_didOpenDocument: notificationSpec(schema.AGENT_METHODS.document_did_open, validate.zDidOpenDocumentNotification),
1102
- unstable_didChangeDocument: notificationSpec(schema.AGENT_METHODS.document_did_change, validate.zDidChangeDocumentNotification),
1103
- unstable_didCloseDocument: notificationSpec(schema.AGENT_METHODS.document_did_close, validate.zDidCloseDocumentNotification),
1104
- unstable_didSaveDocument: notificationSpec(schema.AGENT_METHODS.document_did_save, validate.zDidSaveDocumentNotification),
1105
- unstable_didFocusDocument: notificationSpec(schema.AGENT_METHODS.document_did_focus, validate.zDidFocusDocumentNotification),
1106
- unstable_acceptNes: notificationSpec(schema.AGENT_METHODS.nes_accept, validate.zAcceptNesNotification),
1107
- unstable_rejectNes: notificationSpec(schema.AGENT_METHODS.nes_reject, validate.zRejectNesNotification),
1108
1056
  };
1109
1057
  const clientRequestSpecs = {
1110
1058
  requestPermission: requestSpec(schema.CLIENT_METHODS.session_request_permission, received(validate.zRequestPermissionRequest), received(validate.zRequestPermissionResponse)),
@@ -1163,8 +1111,7 @@ class SessionUpdateRouter {
1163
1111
  const activeSessions = this.activeSessions.get(notification.sessionId);
1164
1112
  if (activeSessions && activeSessions.size > 0) {
1165
1113
  for (const session of activeSessions) {
1166
- if (isIdle && session.isAwaitingPromptCompletion()) {
1167
- session.completePrompt();
1114
+ if (isIdle) {
1168
1115
  session.enqueue({
1169
1116
  kind: "stop",
1170
1117
  notification,
@@ -1331,7 +1278,7 @@ export class AgentApp {
1331
1278
  registerAppRequest(this.builder, spec, (params, cx, signal, requestId) => agentRequestContext(params, AgentContext.create(cx, requestId), signal, requestId), handler, spec.method === schema.AGENT_METHODS.initialize
1332
1279
  ? {
1333
1280
  afterResponse: (_params, response, cx) => {
1334
- initializationState(cx).complete(response);
1281
+ initializationState(cx).complete(mapV2InitializeResponse(response));
1335
1282
  },
1336
1283
  onError: (cx, error) => initializationState(cx).fail(error),
1337
1284
  }
@@ -1 +1 @@
1
- {"version":3,"file":"acp.js","sourceRoot":"","sources":["../../src/v2/acp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acp.js","sourceRoot":"","sources":["../../src/v2/acp.ts"],"names":[],"mappings":"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"}