@moxt-ai/mobius-sdk 0.0.106 → 0.0.108

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 (167) hide show
  1. package/dist/conversation-title.d.ts +8 -0
  2. package/dist/conversation-title.d.ts.map +1 -0
  3. package/dist/{protocol/conversation-title.js → conversation-title.js} +6 -0
  4. package/dist/conversation-title.js.map +1 -0
  5. package/dist/index.d.ts +2 -1
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +2 -1
  8. package/dist/index.js.map +1 -1
  9. package/dist/protocol/index.d.ts +28 -17
  10. package/dist/protocol/index.d.ts.map +1 -1
  11. package/dist/protocol/index.js +35 -17
  12. package/dist/protocol/index.js.map +1 -1
  13. package/dist/protocol/platform/mobius-api.d.ts.map +1 -0
  14. package/dist/protocol/platform/mobius-api.js.map +1 -0
  15. package/dist/protocol/platform/project-location.d.ts.map +1 -0
  16. package/dist/protocol/platform/project-location.js.map +1 -0
  17. package/dist/protocol/{runtime-diagnostics.d.ts → runtime/diagnostics.d.ts} +1 -1
  18. package/dist/protocol/runtime/diagnostics.d.ts.map +1 -0
  19. package/dist/protocol/{runtime-diagnostics.js → runtime/diagnostics.js} +2 -2
  20. package/dist/protocol/runtime/diagnostics.js.map +1 -0
  21. package/dist/protocol/runtime/liveness.d.ts +43 -0
  22. package/dist/protocol/runtime/liveness.d.ts.map +1 -0
  23. package/dist/protocol/runtime/liveness.js +66 -0
  24. package/dist/protocol/runtime/liveness.js.map +1 -0
  25. package/dist/protocol/{runtime-upgrade.d.ts → runtime/upgrade.d.ts} +1 -1
  26. package/dist/protocol/runtime/upgrade.d.ts.map +1 -0
  27. package/dist/protocol/{runtime-upgrade.js → runtime/upgrade.js} +2 -2
  28. package/dist/protocol/runtime/upgrade.js.map +1 -0
  29. package/dist/protocol/{session-access.d.ts → session/access/index.d.ts} +1 -1
  30. package/dist/protocol/session/access/index.d.ts.map +1 -0
  31. package/dist/protocol/{session-access.js → session/access/index.js} +3 -3
  32. package/dist/protocol/session/access/index.js.map +1 -0
  33. package/dist/protocol/session/agent/directory.d.ts +3 -0
  34. package/dist/protocol/session/agent/directory.d.ts.map +1 -0
  35. package/dist/protocol/session/agent/directory.js +3 -0
  36. package/dist/protocol/session/agent/directory.js.map +1 -0
  37. package/dist/protocol/session/agent/settings.d.ts +112 -0
  38. package/dist/protocol/session/agent/settings.d.ts.map +1 -0
  39. package/dist/protocol/session/agent/settings.js +72 -0
  40. package/dist/protocol/session/agent/settings.js.map +1 -0
  41. package/dist/protocol/session/configuration/index.d.ts +138 -0
  42. package/dist/protocol/session/configuration/index.d.ts.map +1 -0
  43. package/dist/protocol/session/configuration/index.js +120 -0
  44. package/dist/protocol/session/configuration/index.js.map +1 -0
  45. package/dist/protocol/session/configuration/title.d.ts +24 -0
  46. package/dist/protocol/session/configuration/title.d.ts.map +1 -0
  47. package/dist/protocol/session/configuration/title.js +27 -0
  48. package/dist/protocol/session/configuration/title.js.map +1 -0
  49. package/dist/protocol/session/files/index.d.ts +58 -0
  50. package/dist/protocol/session/files/index.d.ts.map +1 -0
  51. package/dist/protocol/session/files/index.js +72 -0
  52. package/dist/protocol/session/files/index.js.map +1 -0
  53. package/dist/protocol/session/interactions/index.d.ts +178 -0
  54. package/dist/protocol/session/interactions/index.d.ts.map +1 -0
  55. package/dist/protocol/session/interactions/index.js +118 -0
  56. package/dist/protocol/session/interactions/index.js.map +1 -0
  57. package/dist/protocol/{resource-model.d.ts → session/interactions/model.d.ts} +1 -137
  58. package/dist/protocol/session/interactions/model.d.ts.map +1 -0
  59. package/dist/protocol/session/interactions/model.js +87 -0
  60. package/dist/protocol/session/interactions/model.js.map +1 -0
  61. package/dist/protocol/session/lifecycle/index.d.ts +346 -0
  62. package/dist/protocol/session/lifecycle/index.d.ts.map +1 -0
  63. package/dist/protocol/session/lifecycle/index.js +206 -0
  64. package/dist/protocol/session/lifecycle/index.js.map +1 -0
  65. package/dist/protocol/{native-sessions.d.ts → session/native/index.d.ts} +1 -1
  66. package/dist/protocol/session/native/index.d.ts.map +1 -0
  67. package/dist/protocol/{native-sessions.js → session/native/index.js} +7 -4
  68. package/dist/protocol/session/native/index.js.map +1 -0
  69. package/dist/protocol/{session-event-log.d.ts → session/observability/event-log.d.ts} +1 -1
  70. package/dist/protocol/{session-event-log.d.ts.map → session/observability/event-log.d.ts.map} +1 -1
  71. package/dist/protocol/{session-event-log.js → session/observability/event-log.js} +4 -4
  72. package/dist/protocol/session/observability/event-log.js.map +1 -0
  73. package/dist/protocol/{session-history.d.ts → session/observability/history.d.ts} +3 -3
  74. package/dist/protocol/{session-history.d.ts.map → session/observability/history.d.ts.map} +1 -1
  75. package/dist/protocol/{session-history.js → session/observability/history.js} +4 -4
  76. package/dist/protocol/session/observability/history.js.map +1 -0
  77. package/dist/protocol/session/prompt/commands.d.ts +64 -0
  78. package/dist/protocol/session/prompt/commands.d.ts.map +1 -0
  79. package/dist/protocol/session/prompt/commands.js +121 -0
  80. package/dist/protocol/session/prompt/commands.js.map +1 -0
  81. package/dist/protocol/{prompt-usage.d.ts → session/prompt/usage.d.ts} +1 -1
  82. package/dist/protocol/session/prompt/usage.d.ts.map +1 -0
  83. package/dist/protocol/{prompt-usage.js → session/prompt/usage.js} +2 -2
  84. package/dist/protocol/session/prompt/usage.js.map +1 -0
  85. package/dist/protocol/{session-recording.d.ts → session/recording/recording.d.ts} +5 -1674
  86. package/dist/protocol/session/recording/recording.d.ts.map +1 -0
  87. package/dist/protocol/session/recording/recording.js +65 -0
  88. package/dist/protocol/session/recording/recording.js.map +1 -0
  89. package/dist/protocol/session/recording/turn-history.d.ts +1615 -0
  90. package/dist/protocol/session/recording/turn-history.d.ts.map +1 -0
  91. package/dist/protocol/{session-recording.js → session/recording/turn-history.js} +6 -111
  92. package/dist/protocol/session/recording/turn-history.js.map +1 -0
  93. package/dist/protocol/session/recording/webhooks.d.ts +60 -0
  94. package/dist/protocol/session/recording/webhooks.d.ts.map +1 -0
  95. package/dist/protocol/session/recording/webhooks.js +62 -0
  96. package/dist/protocol/session/recording/webhooks.js.map +1 -0
  97. package/dist/protocol/session/shared/index.d.ts +54 -0
  98. package/dist/protocol/session/shared/index.d.ts.map +1 -0
  99. package/dist/protocol/session/shared/index.js +65 -0
  100. package/dist/protocol/session/shared/index.js.map +1 -0
  101. package/dist/protocol/session/turn/index.d.ts +138 -0
  102. package/dist/protocol/session/turn/index.d.ts.map +1 -0
  103. package/dist/protocol/{resource-model.js → session/turn/index.js} +4 -77
  104. package/dist/protocol/session/turn/index.js.map +1 -0
  105. package/dist/protocol/session/workspace/index.d.ts +30 -0
  106. package/dist/protocol/session/workspace/index.d.ts.map +1 -0
  107. package/dist/protocol/session/workspace/index.js +31 -0
  108. package/dist/protocol/session/workspace/index.js.map +1 -0
  109. package/dist/protocol/shared/identifier.d.ts.map +1 -0
  110. package/dist/protocol/shared/identifier.js.map +1 -0
  111. package/dist/protocol/shared/message-codec.d.ts +24 -0
  112. package/dist/protocol/shared/message-codec.d.ts.map +1 -0
  113. package/dist/protocol/shared/message-codec.js +120 -0
  114. package/dist/protocol/shared/message-codec.js.map +1 -0
  115. package/dist/protocol/{daemon-transport.d.ts → transport/daemon-transport.d.ts} +11 -11
  116. package/dist/protocol/{daemon-transport.d.ts.map → transport/daemon-transport.d.ts.map} +1 -1
  117. package/dist/protocol/{daemon-transport.js → transport/daemon-transport.js} +15 -8
  118. package/dist/protocol/transport/daemon-transport.js.map +1 -0
  119. package/dist/service-client.d.ts +10 -1
  120. package/dist/service-client.d.ts.map +1 -1
  121. package/dist/service-client.js +18 -2
  122. package/dist/service-client.js.map +1 -1
  123. package/package.json +1 -1
  124. package/dist/protocol/codecs/messages.d.ts +0 -32
  125. package/dist/protocol/codecs/messages.d.ts.map +0 -1
  126. package/dist/protocol/codecs/messages.js +0 -249
  127. package/dist/protocol/codecs/messages.js.map +0 -1
  128. package/dist/protocol/control-messages.d.ts +0 -909
  129. package/dist/protocol/control-messages.d.ts.map +0 -1
  130. package/dist/protocol/control-messages.js +0 -724
  131. package/dist/protocol/control-messages.js.map +0 -1
  132. package/dist/protocol/conversation-title.d.ts +0 -2
  133. package/dist/protocol/conversation-title.d.ts.map +0 -1
  134. package/dist/protocol/conversation-title.js.map +0 -1
  135. package/dist/protocol/daemon-transport.js.map +0 -1
  136. package/dist/protocol/identifier.d.ts.map +0 -1
  137. package/dist/protocol/identifier.js.map +0 -1
  138. package/dist/protocol/messages.d.ts +0 -67
  139. package/dist/protocol/messages.d.ts.map +0 -1
  140. package/dist/protocol/messages.js +0 -16
  141. package/dist/protocol/messages.js.map +0 -1
  142. package/dist/protocol/mobius-api.d.ts.map +0 -1
  143. package/dist/protocol/mobius-api.js.map +0 -1
  144. package/dist/protocol/native-sessions.d.ts.map +0 -1
  145. package/dist/protocol/native-sessions.js.map +0 -1
  146. package/dist/protocol/project-location.d.ts.map +0 -1
  147. package/dist/protocol/project-location.js.map +0 -1
  148. package/dist/protocol/prompt-usage.d.ts.map +0 -1
  149. package/dist/protocol/prompt-usage.js.map +0 -1
  150. package/dist/protocol/resource-model.d.ts.map +0 -1
  151. package/dist/protocol/resource-model.js.map +0 -1
  152. package/dist/protocol/runtime-diagnostics.d.ts.map +0 -1
  153. package/dist/protocol/runtime-diagnostics.js.map +0 -1
  154. package/dist/protocol/runtime-upgrade.d.ts.map +0 -1
  155. package/dist/protocol/runtime-upgrade.js.map +0 -1
  156. package/dist/protocol/session-access.d.ts.map +0 -1
  157. package/dist/protocol/session-access.js.map +0 -1
  158. package/dist/protocol/session-event-log.js.map +0 -1
  159. package/dist/protocol/session-history.js.map +0 -1
  160. package/dist/protocol/session-recording.d.ts.map +0 -1
  161. package/dist/protocol/session-recording.js.map +0 -1
  162. /package/dist/protocol/{mobius-api.d.ts → platform/mobius-api.d.ts} +0 -0
  163. /package/dist/protocol/{mobius-api.js → platform/mobius-api.js} +0 -0
  164. /package/dist/protocol/{project-location.d.ts → platform/project-location.d.ts} +0 -0
  165. /package/dist/protocol/{project-location.js → platform/project-location.js} +0 -0
  166. /package/dist/protocol/{identifier.d.ts → shared/identifier.d.ts} +0 -0
  167. /package/dist/protocol/{identifier.js → shared/identifier.js} +0 -0
@@ -1,4 +1,4 @@
1
- import { decodeAgentSettingsDiscoveredEvent, decodeMobiusSessionExport, decodeNativeSessionEvents, decodeNativeSessionResult, decodeSessionClosedEvent, decodeSessionConfigUpdatedEvent, decodeSessionEventLogPage, decodeSessionLiveEventBatch, decodeSessionReadyEvent, decodeSessionRenamedEvent, decodeSessionRestoredEvent, decodeSessionsListedEvent, decodeSessionsQueriedEvent, decodeWorkspaceEntriesEvent, isIdentifier, MOBIUS_API_PREFIX, SessionPromptDisposition, } from "@moxt-ai/mobius-sdk/protocol";
1
+ import { decodeAgentSettingsDiscoveredEvent, decodeMobiusSessionExport, decodeNativeSessionEvents, decodeNativeSessionResult, decodeRuntimeDiagnosticsResult, decodeSessionClosedEvent, decodeSessionConfigUpdatedEvent, decodeSessionEventLogPage, decodeSessionLiveEventBatch, decodeSessionReadyEvent, decodeSessionRenamedEvent, decodeSessionRestoredEvent, decodeSessionsListedEvent, decodeSessionsQueriedEvent, decodeWorkspaceEntriesEvent, isIdentifier, MOBIUS_API_PREFIX, SessionPromptDisposition, } from "@moxt-ai/mobius-sdk/protocol";
2
2
  import { MobiusApiError, MobiusCancellationError, MobiusConnectionError, MobiusError, MobiusProtocolError, MobiusTimeoutError, MobiusValidationError, } from "./errors.js";
3
3
  import { MobiusPublicRequestExecutor } from "./public-request.js";
4
4
  import { decodeMobiusBrowserCredential, decodeMobiusChannelAccessGrant, decodeMobiusChannelDescriptor, decodeMobiusLinkedChannelDeviceList, decodeMobiusRedeemedChannelCredential, decodeMobiusRuntimeList, decodeMobiusRuntimePairing, decodeMobiusRuntimePairingStatus, decodeMobiusSession, decodeMobiusTurn, decodeRuntimeDescriptor, MobiusPairedRuntimePairingStatus, MobiusRuntimePairingLifecycle, MobiusSessionAccess, } from "./resources.js";
@@ -525,6 +525,19 @@ export class MobiusRuntimeResources {
525
525
  }
526
526
  list = async (signal) => decodeMobiusRuntimeList(await this.#executor.get(projectPath(this.#projectId, "runtimes"), signal));
527
527
  getAgents = async (runtimeId, signal) => decodeRuntimeDescriptor(await this.#executor.get(projectPath(this.#projectId, `runtimes/${encodeURIComponent(runtimeId)}/agents`), signal)).agents;
528
+ /**
529
+ * Read the Runtime's own bounded local diagnostic log through the Relay, for a
530
+ * bug report filed without shell access to the machine. Entries carry
531
+ * correlation identifiers and failure codes only; free text and local paths
532
+ * stay on that machine. Requires the Runtime to be online: an offline Runtime
533
+ * has no log reader to answer, so this reports `runtime_unavailable`.
534
+ */
535
+ readDiagnostics = async (runtimeId, signal) => {
536
+ if (!isIdentifier(runtimeId)) {
537
+ throw new MobiusValidationError("The Runtime identifier is invalid");
538
+ }
539
+ return decodeRuntimeDiagnosticsResult(JSON.stringify(await this.#executor.get(projectPath(this.#projectId, `runtimes/${encodeURIComponent(runtimeId)}/diagnostics`), signal)));
540
+ };
528
541
  listWorkspace = async (runtimeId, directoryId, signal) => decodeWorkspaceEntriesEvent(JSON.stringify(await this.#executor.post(projectPath(this.#projectId, `runtimes/${encodeURIComponent(runtimeId)}/workspace`), { directoryId }, signal)));
529
542
  discoverAgentSettings = async (runtimeId, agentId, request, signal) => decodeAgentSettingsDiscoveredEvent(JSON.stringify(await this.#executor.post(projectPath(this.#projectId, `runtimes/${encodeURIComponent(runtimeId)}/agents/${encodeURIComponent(agentId)}/settings`), request, signal)));
530
543
  nativeSessions = async (runtimeId, request, signal) => decodeNativeSessionResult(JSON.stringify(await this.#executor.post(projectPath(this.#projectId, `runtimes/${encodeURIComponent(runtimeId)}/native-sessions`), request, signal)));
@@ -919,7 +932,10 @@ export class MobiusClient {
919
932
  turns;
920
933
  constructor(options) {
921
934
  const executor = new MobiusRequestExecutor(options);
922
- const reconnectAttempts = validatePositiveInteger(options.maxStreamReconnectAttempts ?? DEFAULT_STREAM_RECONNECT_ATTEMPTS, "stream reconnect attempt limit");
935
+ const reconnectAttempts = options.maxStreamReconnectAttempts ?? DEFAULT_STREAM_RECONNECT_ATTEMPTS;
936
+ if (!Number.isSafeInteger(reconnectAttempts) || reconnectAttempts < 0) {
937
+ throw new MobiusValidationError("The stream reconnect attempt limit is invalid");
938
+ }
923
939
  this.channels = new MobiusChannelResources(executor);
924
940
  this.credentials = new MobiusCredentialResources(executor, options.projectId);
925
941
  this.events = new MobiusEventResources(executor, options.projectId, reconnectAttempts);
@@ -1 +1 @@
1
- {"version":3,"file":"service-client.js","sourceRoot":"","sources":["../src/service-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service-client.js","sourceRoot":"","sources":["../src/service-client.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moxt-ai/mobius-sdk",
3
- "version": "0.0.106",
3
+ "version": "0.0.108",
4
4
  "description": "Unified Mobius TypeScript SDK for browsers and Node.js.",
5
5
  "type": "module",
6
6
  "types": "./dist/index.d.ts",
@@ -1,32 +0,0 @@
1
- import { type RuntimeHeartbeatAckEvent, type RuntimeHeartbeatEvent, type RuntimeLivenessReadyEvent, type RuntimePingCommand, type RuntimePongEvent, type RuntimeStatusEvent, type SessionCancelCommand, type SessionPromptCommand, type SessionPromptDispositionCommand } from "../messages.ts";
2
- export declare const MAX_PROMPT_ATTACHMENT_LENGTH = 6000000;
3
- export declare class ProtocolMessageError extends Error {
4
- readonly code = "invalid_protocol_message";
5
- constructor(message: string, options?: ErrorOptions);
6
- }
7
- export declare class UnsupportedProtocolMessageKindError extends Error {
8
- readonly code = "unsupported_protocol_message_kind";
9
- readonly direction: "daemon-to-service" | "service-to-daemon";
10
- readonly messageKind: string;
11
- constructor(direction: "daemon-to-service" | "service-to-daemon", messageKind: string);
12
- }
13
- export declare function decodeMessageKind(encoded: string): string;
14
- export declare function decodeSessionPromptCommand(encoded: string): SessionPromptCommand;
15
- export declare function decodeSessionCancelCommand(encoded: string): SessionCancelCommand;
16
- export declare function decodeSessionPromptDispositionCommand(encoded: string): SessionPromptDispositionCommand;
17
- export declare function decodeRuntimeStatusEvent(encoded: string): RuntimeStatusEvent;
18
- export declare function decodeRuntimeLivenessReadyEvent(encoded: string): RuntimeLivenessReadyEvent;
19
- export declare function decodeRuntimeHeartbeatEvent(encoded: string): RuntimeHeartbeatEvent;
20
- export declare function decodeRuntimeHeartbeatAckEvent(encoded: string): RuntimeHeartbeatAckEvent;
21
- export declare function decodeRuntimePingCommand(encoded: string): RuntimePingCommand;
22
- export declare function decodeRuntimePongEvent(encoded: string): RuntimePongEvent;
23
- export declare function encodeSessionPromptCommand(message: SessionPromptCommand): string;
24
- export declare function encodeSessionCancelCommand(message: SessionCancelCommand): string;
25
- export declare function encodeSessionPromptDispositionCommand(message: SessionPromptDispositionCommand): string;
26
- export declare function encodeRuntimeStatusEvent(message: RuntimeStatusEvent): string;
27
- export declare function encodeRuntimeLivenessReadyEvent(message: RuntimeLivenessReadyEvent): string;
28
- export declare function encodeRuntimeHeartbeatEvent(message: RuntimeHeartbeatEvent): string;
29
- export declare function encodeRuntimeHeartbeatAckEvent(message: RuntimeHeartbeatAckEvent): string;
30
- export declare function encodeRuntimePingCommand(message: RuntimePingCommand): string;
31
- export declare function encodeRuntimePongEvent(message: RuntimePongEvent): string;
32
- //# sourceMappingURL=messages.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/protocol/codecs/messages.ts"],"names":[],"mappings":"AAMA,OAAO,EAOH,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EAIvB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EAEzB,KAAK,+BAA+B,EACvC,MAAM,gBAAgB,CAAC;AAIxB,eAAO,MAAM,4BAA4B,UAAY,CAAC;AAEtD,qBAAa,oBAAqB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,IAAI,8BAA8B;IAE3C,YAAY,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,EAGtD;CACJ;AAED,qBAAa,mCAAoC,SAAQ,KAAK;IAC1D,QAAQ,CAAC,IAAI,uCAAuC;IACpD,QAAQ,CAAC,SAAS,EAAE,mBAAmB,GAAG,mBAAmB,CAAC;IAC9D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,YAAY,SAAS,EAAE,mBAAmB,GAAG,mBAAmB,EAAE,WAAW,EAAE,MAAM,EAKpF;CACJ;AAwGD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,CAkDhF;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,CAShF;AAED,wBAAgB,qCAAqC,CAAC,OAAO,EAAE,MAAM,GAAG,+BAA+B,CAYtG;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,kBAAkB,CAS5E;AAED,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,MAAM,GAAG,yBAAyB,CAI1F;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,GAAG,qBAAqB,CAQlF;AAED,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,MAAM,GAAG,wBAAwB,CAQxF;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,kBAAkB,CAI5E;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,CAIxE;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM,CAEhF;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM,CAEhF;AAED,wBAAgB,qCAAqC,CAAC,OAAO,EAAE,+BAA+B,GAAG,MAAM,CAEtG;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,CAE5E;AAED,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,yBAAyB,GAAG,MAAM,CAE1F;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,CAElF;AAED,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,wBAAwB,GAAG,MAAM,CAExF;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,CAE5E;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAExE"}
@@ -1,249 +0,0 @@
1
- import { decodePromptImagesValue, decodePromptResourcesValue, decodeSessionConfigurationSelections, } from "../control-messages.js";
2
- import { decodeIdentifier, isIdentifier } from "../identifier.js";
3
- import { RUNTIME_HEARTBEAT_ACK_KIND, RUNTIME_HEARTBEAT_KIND, RUNTIME_LIVENESS_READY_KIND, RUNTIME_PING_KIND, RUNTIME_PONG_KIND, RUNTIME_STATUS_KIND, SESSION_CANCEL_KIND, SESSION_PROMPT_DISPOSITION_KIND, SESSION_PROMPT_KIND, SessionPromptDisposition, } from "../messages.js";
4
- const DIRECTORY_IDENTIFIER_PATTERN = /^[a-zA-Z0-9][a-zA-Z0-9_-]{0,2047}$/;
5
- const MAX_PROMPT_LENGTH = 100_000;
6
- export const MAX_PROMPT_ATTACHMENT_LENGTH = 6_000_000;
7
- export class ProtocolMessageError extends Error {
8
- code = "invalid_protocol_message";
9
- constructor(message, options = {}) {
10
- super(message, options);
11
- this.name = "ProtocolMessageError";
12
- }
13
- }
14
- export class UnsupportedProtocolMessageKindError extends Error {
15
- code = "unsupported_protocol_message_kind";
16
- direction;
17
- messageKind;
18
- constructor(direction, messageKind) {
19
- super(`Unsupported ${direction} message kind: ${messageKind}`);
20
- this.name = "UnsupportedProtocolMessageKindError";
21
- this.direction = direction;
22
- this.messageKind = messageKind;
23
- }
24
- }
25
- function isRecord(value) {
26
- return typeof value === "object" && value !== null && !Array.isArray(value);
27
- }
28
- function parseJson(encoded) {
29
- let value;
30
- try {
31
- value = JSON.parse(encoded);
32
- }
33
- catch (error) {
34
- throw new ProtocolMessageError("Message is not valid JSON", {
35
- cause: error,
36
- });
37
- }
38
- if (!isRecord(value)) {
39
- throw new ProtocolMessageError("Message must be a JSON object");
40
- }
41
- return value;
42
- }
43
- function readString(value, key, maximumLength) {
44
- const field = value[key];
45
- if (typeof field !== "string" || field.length === 0 || field.length > maximumLength) {
46
- throw new ProtocolMessageError(`Invalid string field: ${key}`);
47
- }
48
- return field;
49
- }
50
- function readText(value, key, maximumLength) {
51
- const field = value[key];
52
- if (typeof field !== "string" || field.length > maximumLength) {
53
- throw new ProtocolMessageError(`Invalid text field: ${key}`);
54
- }
55
- return field;
56
- }
57
- function readPromptDisposition(value) {
58
- const field = value["disposition"];
59
- if (field === undefined || field === SessionPromptDisposition.Reject) {
60
- return SessionPromptDisposition.Reject;
61
- }
62
- if (field === SessionPromptDisposition.Queue) {
63
- return SessionPromptDisposition.Queue;
64
- }
65
- if (field === SessionPromptDisposition.Steer) {
66
- return SessionPromptDisposition.Steer;
67
- }
68
- throw new ProtocolMessageError("Invalid value field: disposition");
69
- }
70
- function readDirectoryIdentifiers(value, key, maximumCount) {
71
- const field = value[key];
72
- if (!Array.isArray(field) || field.length > maximumCount) {
73
- throw new ProtocolMessageError(`Invalid directory list field: ${key}`);
74
- }
75
- const identifiers = [];
76
- const unique = new Set();
77
- for (const candidate of field) {
78
- if (typeof candidate !== "string" || !DIRECTORY_IDENTIFIER_PATTERN.test(candidate) || unique.has(candidate)) {
79
- throw new ProtocolMessageError(`Invalid directory in field: ${key}`);
80
- }
81
- unique.add(candidate);
82
- identifiers.push(candidate);
83
- }
84
- return identifiers;
85
- }
86
- function readIdentifier(value, key) {
87
- try {
88
- return decodeIdentifier(value[key]);
89
- }
90
- catch (cause) {
91
- throw new ProtocolMessageError(`Invalid identifier field: ${key}`, { cause });
92
- }
93
- }
94
- function readDirectoryIdentifier(value, key) {
95
- const field = readString(value, key, 2_048);
96
- if (!DIRECTORY_IDENTIFIER_PATTERN.test(field)) {
97
- throw new ProtocolMessageError(`Invalid directory identifier field: ${key}`);
98
- }
99
- return field;
100
- }
101
- function readBoolean(value, key) {
102
- const field = value[key];
103
- if (typeof field !== "boolean") {
104
- throw new ProtocolMessageError(`Invalid boolean field: ${key}`);
105
- }
106
- return field;
107
- }
108
- function assertKind(value, expectedKind) {
109
- if (value["kind"] !== expectedKind) {
110
- throw new ProtocolMessageError(`Expected message kind: ${expectedKind}`);
111
- }
112
- }
113
- export function decodeMessageKind(encoded) {
114
- return readString(parseJson(encoded), "kind", 64);
115
- }
116
- export function decodeSessionPromptCommand(encoded) {
117
- const value = parseJson(encoded);
118
- const hasSessionConfigurations = Object.hasOwn(value, "sessionConfigurations");
119
- assertKind(value, SESSION_PROMPT_KIND);
120
- const prompt = readText(value, "prompt", MAX_PROMPT_LENGTH);
121
- const images = decodePromptImagesValue(value["images"]);
122
- const resources = decodePromptResourcesValue(value["resources"]);
123
- const attachmentLength = images.reduce((total, image) => total + image.data.length, 0) +
124
- resources.reduce((total, resource) => total + resource.text.length, 0);
125
- if (attachmentLength > MAX_PROMPT_ATTACHMENT_LENGTH) {
126
- throw new ProtocolMessageError("Prompt attachments are too large");
127
- }
128
- if (prompt.trim().length === 0 && images.length === 0 && resources.length === 0) {
129
- throw new ProtocolMessageError("Prompt must contain content");
130
- }
131
- const disposition = readPromptDisposition(value);
132
- const rawTargetCommandId = value["targetCommandId"];
133
- const targetCommandId = rawTargetCommandId === undefined ? "" : readText(value, "targetCommandId", 128);
134
- if ((disposition === SessionPromptDisposition.Reject && targetCommandId.length > 0) ||
135
- (disposition !== SessionPromptDisposition.Reject && !isIdentifier(targetCommandId))) {
136
- throw new ProtocolMessageError("Prompt disposition has an invalid target command");
137
- }
138
- const sessionConfigurations = hasSessionConfigurations
139
- ? decodeSessionConfigurationSelections(value["sessionConfigurations"])
140
- : [];
141
- if (new Set(sessionConfigurations.map((selection) => selection.configId)).size !== sessionConfigurations.length) {
142
- throw new ProtocolMessageError("Session configuration identifiers must be unique");
143
- }
144
- return {
145
- additionalDirectoryIds: readDirectoryIdentifiers(value, "additionalDirectoryIds", 16),
146
- agentId: readIdentifier(value, "agentId"),
147
- bindingId: readIdentifier(value, "bindingId"),
148
- commandId: readIdentifier(value, "commandId"),
149
- directoryId: readDirectoryIdentifier(value, "directoryId"),
150
- disposition,
151
- images,
152
- kind: SESSION_PROMPT_KIND,
153
- prompt,
154
- resources,
155
- ...(hasSessionConfigurations ? { sessionConfigurations } : {}),
156
- sessionId: readIdentifier(value, "sessionId"),
157
- targetCommandId,
158
- };
159
- }
160
- export function decodeSessionCancelCommand(encoded) {
161
- const value = parseJson(encoded);
162
- assertKind(value, SESSION_CANCEL_KIND);
163
- return {
164
- commandId: readIdentifier(value, "commandId"),
165
- kind: SESSION_CANCEL_KIND,
166
- sessionId: readIdentifier(value, "sessionId"),
167
- };
168
- }
169
- export function decodeSessionPromptDispositionCommand(encoded) {
170
- const value = parseJson(encoded);
171
- assertKind(value, SESSION_PROMPT_DISPOSITION_KIND);
172
- if (readPromptDisposition(value) !== SessionPromptDisposition.Steer) {
173
- throw new ProtocolMessageError("Only queued prompts can be steered");
174
- }
175
- return {
176
- commandId: readIdentifier(value, "commandId"),
177
- disposition: SessionPromptDisposition.Steer,
178
- kind: SESSION_PROMPT_DISPOSITION_KIND,
179
- sessionId: readIdentifier(value, "sessionId"),
180
- };
181
- }
182
- export function decodeRuntimeStatusEvent(encoded) {
183
- const value = parseJson(encoded);
184
- assertKind(value, RUNTIME_STATUS_KIND);
185
- return {
186
- kind: RUNTIME_STATUS_KIND,
187
- online: readBoolean(value, "online"),
188
- runtimeId: readIdentifier(value, "runtimeId"),
189
- };
190
- }
191
- export function decodeRuntimeLivenessReadyEvent(encoded) {
192
- const value = parseJson(encoded);
193
- assertKind(value, RUNTIME_LIVENESS_READY_KIND);
194
- return { kind: RUNTIME_LIVENESS_READY_KIND };
195
- }
196
- export function decodeRuntimeHeartbeatEvent(encoded) {
197
- const value = parseJson(encoded);
198
- assertKind(value, RUNTIME_HEARTBEAT_KIND);
199
- return {
200
- heartbeatId: readIdentifier(value, "heartbeatId"),
201
- kind: RUNTIME_HEARTBEAT_KIND,
202
- };
203
- }
204
- export function decodeRuntimeHeartbeatAckEvent(encoded) {
205
- const value = parseJson(encoded);
206
- assertKind(value, RUNTIME_HEARTBEAT_ACK_KIND);
207
- return {
208
- heartbeatId: readIdentifier(value, "heartbeatId"),
209
- kind: RUNTIME_HEARTBEAT_ACK_KIND,
210
- };
211
- }
212
- export function decodeRuntimePingCommand(encoded) {
213
- const value = parseJson(encoded);
214
- assertKind(value, RUNTIME_PING_KIND);
215
- return { kind: RUNTIME_PING_KIND, requestId: readIdentifier(value, "requestId") };
216
- }
217
- export function decodeRuntimePongEvent(encoded) {
218
- const value = parseJson(encoded);
219
- assertKind(value, RUNTIME_PONG_KIND);
220
- return { kind: RUNTIME_PONG_KIND, requestId: readIdentifier(value, "requestId") };
221
- }
222
- export function encodeSessionPromptCommand(message) {
223
- return JSON.stringify(decodeSessionPromptCommand(JSON.stringify(message)));
224
- }
225
- export function encodeSessionCancelCommand(message) {
226
- return JSON.stringify(decodeSessionCancelCommand(JSON.stringify(message)));
227
- }
228
- export function encodeSessionPromptDispositionCommand(message) {
229
- return JSON.stringify(decodeSessionPromptDispositionCommand(JSON.stringify(message)));
230
- }
231
- export function encodeRuntimeStatusEvent(message) {
232
- return JSON.stringify(decodeRuntimeStatusEvent(JSON.stringify(message)));
233
- }
234
- export function encodeRuntimeLivenessReadyEvent(message) {
235
- return JSON.stringify(decodeRuntimeLivenessReadyEvent(JSON.stringify(message)));
236
- }
237
- export function encodeRuntimeHeartbeatEvent(message) {
238
- return JSON.stringify(decodeRuntimeHeartbeatEvent(JSON.stringify(message)));
239
- }
240
- export function encodeRuntimeHeartbeatAckEvent(message) {
241
- return JSON.stringify(decodeRuntimeHeartbeatAckEvent(JSON.stringify(message)));
242
- }
243
- export function encodeRuntimePingCommand(message) {
244
- return JSON.stringify(decodeRuntimePingCommand(JSON.stringify(message)));
245
- }
246
- export function encodeRuntimePongEvent(message) {
247
- return JSON.stringify(decodeRuntimePongEvent(JSON.stringify(message)));
248
- }
249
- //# sourceMappingURL=messages.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../src/protocol/codecs/messages.ts"],"names":[],"mappings":"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"}