@contextvm/sdk 0.9.1 → 0.11.0

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 (88) hide show
  1. package/dist/esm/core/constants.d.ts +8 -0
  2. package/dist/esm/core/constants.d.ts.map +1 -1
  3. package/dist/esm/core/constants.js +8 -0
  4. package/dist/esm/core/constants.js.map +1 -1
  5. package/dist/esm/core/index.d.ts +1 -0
  6. package/dist/esm/core/index.d.ts.map +1 -1
  7. package/dist/esm/core/index.js +1 -0
  8. package/dist/esm/core/index.js.map +1 -1
  9. package/dist/esm/core/utils/common-schema.d.ts +25 -0
  10. package/dist/esm/core/utils/common-schema.d.ts.map +1 -0
  11. package/dist/esm/core/utils/common-schema.js +66 -0
  12. package/dist/esm/core/utils/common-schema.js.map +1 -0
  13. package/dist/esm/relay/applesauce-relay-pool.d.ts.map +1 -1
  14. package/dist/esm/relay/applesauce-relay-pool.js +14 -14
  15. package/dist/esm/relay/applesauce-relay-pool.js.map +1 -1
  16. package/dist/esm/transport/call-tool-stream.d.ts +22 -0
  17. package/dist/esm/transport/call-tool-stream.d.ts.map +1 -0
  18. package/dist/esm/transport/call-tool-stream.js +26 -0
  19. package/dist/esm/transport/call-tool-stream.js.map +1 -0
  20. package/dist/esm/transport/discovery-tags.d.ts +2 -0
  21. package/dist/esm/transport/discovery-tags.d.ts.map +1 -1
  22. package/dist/esm/transport/discovery-tags.js +1 -0
  23. package/dist/esm/transport/discovery-tags.js.map +1 -1
  24. package/dist/esm/transport/index.d.ts +4 -0
  25. package/dist/esm/transport/index.d.ts.map +1 -1
  26. package/dist/esm/transport/index.js +4 -0
  27. package/dist/esm/transport/index.js.map +1 -1
  28. package/dist/esm/transport/nostr-client-transport.d.ts +31 -1
  29. package/dist/esm/transport/nostr-client-transport.d.ts.map +1 -1
  30. package/dist/esm/transport/nostr-client-transport.js +168 -1
  31. package/dist/esm/transport/nostr-client-transport.js.map +1 -1
  32. package/dist/esm/transport/nostr-server/announcement-manager.d.ts +7 -1
  33. package/dist/esm/transport/nostr-server/announcement-manager.d.ts.map +1 -1
  34. package/dist/esm/transport/nostr-server/announcement-manager.js +18 -3
  35. package/dist/esm/transport/nostr-server/announcement-manager.js.map +1 -1
  36. package/dist/esm/transport/nostr-server/session-store.d.ts +2 -0
  37. package/dist/esm/transport/nostr-server/session-store.d.ts.map +1 -1
  38. package/dist/esm/transport/nostr-server/session-store.js +1 -0
  39. package/dist/esm/transport/nostr-server/session-store.js.map +1 -1
  40. package/dist/esm/transport/nostr-server-transport.d.ts +37 -2
  41. package/dist/esm/transport/nostr-server-transport.d.ts.map +1 -1
  42. package/dist/esm/transport/nostr-server-transport.js +254 -24
  43. package/dist/esm/transport/nostr-server-transport.js.map +1 -1
  44. package/dist/esm/transport/open-stream/constants.d.ts +8 -0
  45. package/dist/esm/transport/open-stream/constants.d.ts.map +1 -0
  46. package/dist/esm/transport/open-stream/constants.js +8 -0
  47. package/dist/esm/transport/open-stream/constants.js.map +1 -0
  48. package/dist/esm/transport/open-stream/errors.d.ts +19 -0
  49. package/dist/esm/transport/open-stream/errors.d.ts.map +1 -0
  50. package/dist/esm/transport/open-stream/errors.js +31 -0
  51. package/dist/esm/transport/open-stream/errors.js.map +1 -0
  52. package/dist/esm/transport/open-stream/frames.d.ts +37 -0
  53. package/dist/esm/transport/open-stream/frames.d.ts.map +1 -0
  54. package/dist/esm/transport/open-stream/frames.js +91 -0
  55. package/dist/esm/transport/open-stream/frames.js.map +1 -0
  56. package/dist/esm/transport/open-stream/index.d.ts +9 -0
  57. package/dist/esm/transport/open-stream/index.d.ts.map +1 -0
  58. package/dist/esm/transport/open-stream/index.js +9 -0
  59. package/dist/esm/transport/open-stream/index.js.map +1 -0
  60. package/dist/esm/transport/open-stream/receiver.d.ts +18 -0
  61. package/dist/esm/transport/open-stream/receiver.d.ts.map +1 -0
  62. package/dist/esm/transport/open-stream/receiver.js +31 -0
  63. package/dist/esm/transport/open-stream/receiver.js.map +1 -0
  64. package/dist/esm/transport/open-stream/registry.d.ts +37 -0
  65. package/dist/esm/transport/open-stream/registry.d.ts.map +1 -0
  66. package/dist/esm/transport/open-stream/registry.js +115 -0
  67. package/dist/esm/transport/open-stream/registry.js.map +1 -0
  68. package/dist/esm/transport/open-stream/session.d.ts +80 -0
  69. package/dist/esm/transport/open-stream/session.d.ts.map +1 -0
  70. package/dist/esm/transport/open-stream/session.js +343 -0
  71. package/dist/esm/transport/open-stream/session.js.map +1 -0
  72. package/dist/esm/transport/open-stream/types.d.ts +52 -0
  73. package/dist/esm/transport/open-stream/types.d.ts.map +1 -0
  74. package/dist/esm/transport/open-stream/types.js +2 -0
  75. package/dist/esm/transport/open-stream/types.js.map +1 -0
  76. package/dist/esm/transport/open-stream/writer.d.ts +38 -0
  77. package/dist/esm/transport/open-stream/writer.d.ts.map +1 -0
  78. package/dist/esm/transport/open-stream/writer.js +123 -0
  79. package/dist/esm/transport/open-stream/writer.js.map +1 -0
  80. package/dist/esm/transport/open-stream-policy.d.ts +12 -0
  81. package/dist/esm/transport/open-stream-policy.d.ts.map +1 -0
  82. package/dist/esm/transport/open-stream-policy.js +2 -0
  83. package/dist/esm/transport/open-stream-policy.js.map +1 -0
  84. package/dist/esm/transport/server-transport-common-schemas.d.ts +23 -0
  85. package/dist/esm/transport/server-transport-common-schemas.d.ts.map +1 -0
  86. package/dist/esm/transport/server-transport-common-schemas.js +119 -0
  87. package/dist/esm/transport/server-transport-common-schemas.js.map +1 -0
  88. package/package.json +2 -1
@@ -95,6 +95,10 @@ export declare const NOSTR_TAGS: {
95
95
  * Support CEP-22 oversized payload transfer via notifications/progress framing.
96
96
  */
97
97
  readonly SUPPORT_OVERSIZED_TRANSFER: "support_oversized_transfer";
98
+ /**
99
+ * Support CEP-41 open-ended stream transfer via notifications/progress framing.
100
+ */
101
+ readonly SUPPORT_OPEN_STREAM: "support_open_stream";
98
102
  };
99
103
  export declare const DEFAULT_LRU_SIZE = 5000;
100
104
  /**
@@ -104,4 +108,8 @@ export declare const DEFAULT_TIMEOUT_MS = 30000;
104
108
  export declare const announcementMethods: AnnouncementMethods;
105
109
  export declare const INITIALIZE_METHOD = "initialize";
106
110
  export declare const NOTIFICATIONS_INITIALIZED_METHOD = "notifications/initialized";
111
+ /**
112
+ * Namespace for CEP-15 common schema metadata in tool definitions.
113
+ */
114
+ export declare const COMMON_SCHEMA_META_NAMESPACE = "io.contextvm/common-schema";
107
115
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/core/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AAEzC;;;GAGG;AACH,eAAO,MAAM,cAAc,OAAO,CAAC;AAEnC;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,eAAe,QAAQ,CAAC;AAErC;;GAEG;AACH,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AAEzC;;GAEG;AACH,eAAO,MAAM,2BAA2B,QAAQ,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,qBAAqB,IAAI,CAAC;AAEvC;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,wJAO/B,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;IAGrB;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;CAEK,CAAC;AAEX,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAErC;;GAEG;AACH,eAAO,MAAM,kBAAkB,QAAS,CAAC;AAEzC,eAAO,MAAM,mBAAmB,EAAE,mBAKxB,CAAC;AAEX,eAAO,MAAM,iBAAiB,eAAe,CAAC;AAC9C,eAAO,MAAM,gCAAgC,8BAA8B,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/core/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AAEzC;;;GAGG;AACH,eAAO,MAAM,cAAc,OAAO,CAAC;AAEnC;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,eAAe,QAAQ,CAAC;AAErC;;GAEG;AACH,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AAEzC;;GAEG;AACH,eAAO,MAAM,2BAA2B,QAAQ,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,qBAAqB,IAAI,CAAC;AAEvC;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,wJAO/B,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;IAGrB;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;CAEK,CAAC;AAEX,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAErC;;GAEG;AACH,eAAO,MAAM,kBAAkB,QAAS,CAAC;AAEzC,eAAO,MAAM,mBAAmB,EAAE,mBAKxB,CAAC;AAEX,eAAO,MAAM,iBAAiB,eAAe,CAAC;AAC9C,eAAO,MAAM,gCAAgC,8BAA8B,CAAC;AAE5E;;GAEG;AACH,eAAO,MAAM,4BAA4B,+BAA+B,CAAC"}
@@ -101,6 +101,10 @@ export const NOSTR_TAGS = {
101
101
  * Support CEP-22 oversized payload transfer via notifications/progress framing.
102
102
  */
103
103
  SUPPORT_OVERSIZED_TRANSFER: 'support_oversized_transfer',
104
+ /**
105
+ * Support CEP-41 open-ended stream transfer via notifications/progress framing.
106
+ */
107
+ SUPPORT_OPEN_STREAM: 'support_open_stream',
104
108
  };
105
109
  export const DEFAULT_LRU_SIZE = 5000;
106
110
  /**
@@ -115,4 +119,8 @@ export const announcementMethods = {
115
119
  };
116
120
  export const INITIALIZE_METHOD = 'initialize';
117
121
  export const NOTIFICATIONS_INITIALIZED_METHOD = 'notifications/initialized';
122
+ /**
123
+ * Namespace for CEP-15 common schema metadata in tool definitions.
124
+ */
125
+ export const COMMON_SCHEMA_META_NAMESPACE = 'io.contextvm/common-schema';
118
126
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/core/constants.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC;AAEzC;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC;AAErC;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC;AAEzC;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAC;AAEvC;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAE9C;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAEvC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,sBAAsB;IACtB,wBAAwB;IACxB,eAAe;IACf,2BAA2B;IAC3B,kBAAkB;IAClB,uBAAuB;CACf,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,MAAM,EAAE,GAAG;IACX,KAAK,EAAE,GAAG;IACV;;OAEG;IACH,QAAQ,EAAE,GAAG;IACb;;OAEG;IACH,UAAU,EAAE,KAAK;IACjB;;OAEG;IACH,IAAI,EAAE,MAAM;IACZ;;OAEG;IACH,OAAO,EAAE,SAAS;IAClB;;OAEG;IACH,OAAO,EAAE,SAAS;IAClB;;OAEG;IACH,KAAK,EAAE,OAAO;IACd;;OAEG;IACH,kBAAkB,EAAE,oBAAoB;IAExC;;OAEG;IACH,4BAA4B,EAAE,8BAA8B;IAE5D;;OAEG;IACH,0BAA0B,EAAE,4BAA4B;CAChD,CAAC;AAEX,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAErC;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAM,CAAC;AAEzC,MAAM,CAAC,MAAM,mBAAmB,GAAwB;IACtD,KAAK,EAAE,YAAY;IACnB,SAAS,EAAE,gBAAgB;IAC3B,iBAAiB,EAAE,0BAA0B;IAC7C,OAAO,EAAE,cAAc;CACf,CAAC;AAEX,MAAM,CAAC,MAAM,iBAAiB,GAAG,YAAY,CAAC;AAC9C,MAAM,CAAC,MAAM,gCAAgC,GAAG,2BAA2B,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/core/constants.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC;AAEzC;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC;AAErC;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC;AAEzC;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAC;AAEvC;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAE9C;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAEvC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,sBAAsB;IACtB,wBAAwB;IACxB,eAAe;IACf,2BAA2B;IAC3B,kBAAkB;IAClB,uBAAuB;CACf,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,MAAM,EAAE,GAAG;IACX,KAAK,EAAE,GAAG;IACV;;OAEG;IACH,QAAQ,EAAE,GAAG;IACb;;OAEG;IACH,UAAU,EAAE,KAAK;IACjB;;OAEG;IACH,IAAI,EAAE,MAAM;IACZ;;OAEG;IACH,OAAO,EAAE,SAAS;IAClB;;OAEG;IACH,OAAO,EAAE,SAAS;IAClB;;OAEG;IACH,KAAK,EAAE,OAAO;IACd;;OAEG;IACH,kBAAkB,EAAE,oBAAoB;IAExC;;OAEG;IACH,4BAA4B,EAAE,8BAA8B;IAE5D;;OAEG;IACH,0BAA0B,EAAE,4BAA4B;IAExD;;OAEG;IACH,mBAAmB,EAAE,qBAAqB;CAClC,CAAC;AAEX,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAErC;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAM,CAAC;AAEzC,MAAM,CAAC,MAAM,mBAAmB,GAAwB;IACtD,KAAK,EAAE,YAAY;IACnB,SAAS,EAAE,gBAAgB;IAC3B,iBAAiB,EAAE,0BAA0B;IAC7C,OAAO,EAAE,cAAc;CACf,CAAC;AAEX,MAAM,CAAC,MAAM,iBAAiB,GAAG,YAAY,CAAC;AAC9C,MAAM,CAAC,MAAM,gCAAgC,GAAG,2BAA2B,CAAC;AAE5E;;GAEG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,4BAA4B,CAAC"}
@@ -2,5 +2,6 @@ export * from './constants.js';
2
2
  export * from './interfaces.js';
3
3
  export * from './utils/websocket.js';
4
4
  export * from './utils/serializers.js';
5
+ export * from './utils/common-schema.js';
5
6
  export * from './encryption.js';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC"}
@@ -2,5 +2,6 @@ export * from './constants.js';
2
2
  export * from './interfaces.js';
3
3
  export * from './utils/websocket.js';
4
4
  export * from './utils/serializers.js';
5
+ export * from './utils/common-schema.js';
5
6
  export * from './encryption.js';
6
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,25 @@
1
+ import type { Tool } from '@modelcontextprotocol/sdk/types.js';
2
+ export interface CommonToolSchemaDefinition {
3
+ name: Tool['name'];
4
+ inputSchema: Tool['inputSchema'];
5
+ outputSchema?: Tool['outputSchema'];
6
+ }
7
+ /**
8
+ * Recursively removes documentation-only JSON Schema fields used by CEP-15.
9
+ *
10
+ * The normalization rule explicitly strips non-functional fields such as `title`,
11
+ * `description`, `examples`, `default`, `deprecated`, `readOnly`, `writeOnly`,
12
+ * and any vendor extensions (`x-*`) while preserving compatibility-relevant structure.
13
+ *
14
+ * @param schema The JSON Schema value to normalize.
15
+ * @returns A normalized copy of the schema.
16
+ */
17
+ export declare function normalizeSchema<T>(schema: T): T;
18
+ /**
19
+ * Computes the CEP-15 schema hash for a common tool definition.
20
+ *
21
+ * @param definition Tool name and JSON Schemas participating in compatibility.
22
+ * @returns A deterministic SHA-256 hash of the normalized schema payload.
23
+ */
24
+ export declare function computeCommonSchemaHash(definition: CommonToolSchemaDefinition): string;
25
+ //# sourceMappingURL=common-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common-schema.d.ts","sourceRoot":"","sources":["../../../../src/core/utils/common-schema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAI/D,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACnB,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;CACrC;AASD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAuC/C;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,0BAA0B,GACrC,MAAM,CAgBR"}
@@ -0,0 +1,66 @@
1
+ import canonicalizePackage from 'canonicalize';
2
+ import { sha256 } from '@noble/hashes/sha2.js';
3
+ import { bytesToHex } from '@noble/hashes/utils.js';
4
+ const canonicalize = canonicalizePackage;
5
+ function isPlainObject(value) {
6
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
7
+ }
8
+ /**
9
+ * Recursively removes documentation-only JSON Schema fields used by CEP-15.
10
+ *
11
+ * The normalization rule explicitly strips non-functional fields such as `title`,
12
+ * `description`, `examples`, `default`, `deprecated`, `readOnly`, `writeOnly`,
13
+ * and any vendor extensions (`x-*`) while preserving compatibility-relevant structure.
14
+ *
15
+ * @param schema The JSON Schema value to normalize.
16
+ * @returns A normalized copy of the schema.
17
+ */
18
+ export function normalizeSchema(schema) {
19
+ if (Array.isArray(schema)) {
20
+ return schema.map((item) => normalizeSchema(item));
21
+ }
22
+ if (!isPlainObject(schema)) {
23
+ return schema;
24
+ }
25
+ const normalized = {};
26
+ Object.keys(schema).forEach((key) => {
27
+ if (key === 'title' ||
28
+ key === 'description' ||
29
+ key === 'default' ||
30
+ key === 'examples' ||
31
+ key === 'deprecated' ||
32
+ key === 'readOnly' ||
33
+ key === 'writeOnly' ||
34
+ key.startsWith('x-')) {
35
+ return;
36
+ }
37
+ if (key === '$ref' &&
38
+ typeof schema[key] === 'string' &&
39
+ !schema[key].startsWith('#')) {
40
+ throw new Error('External $ref pointers must be resolved before computing common schema hash');
41
+ }
42
+ normalized[key] = normalizeSchema(schema[key]);
43
+ });
44
+ return normalized;
45
+ }
46
+ /**
47
+ * Computes the CEP-15 schema hash for a common tool definition.
48
+ *
49
+ * @param definition Tool name and JSON Schemas participating in compatibility.
50
+ * @returns A deterministic SHA-256 hash of the normalized schema payload.
51
+ */
52
+ export function computeCommonSchemaHash(definition) {
53
+ const payload = {
54
+ name: definition.name,
55
+ inputSchema: normalizeSchema(definition.inputSchema),
56
+ };
57
+ if (definition.outputSchema != null) {
58
+ payload.outputSchema = normalizeSchema(definition.outputSchema);
59
+ }
60
+ const canonicalPayload = canonicalize(payload);
61
+ if (canonicalPayload === undefined) {
62
+ throw new Error('Failed to canonicalize common schema payload');
63
+ }
64
+ return bytesToHex(sha256(new TextEncoder().encode(canonicalPayload)));
65
+ }
66
+ //# sourceMappingURL=common-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common-schema.js","sourceRoot":"","sources":["../../../../src/core/utils/common-schema.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AASpD,MAAM,YAAY,GAAG,mBAAgD,CAAC;AAEtE,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAI,MAAS;IAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAM,CAAC;IAC1D,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,UAAU,GAA4B,EAAE,CAAC;IAE/C,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAClC,IACE,GAAG,KAAK,OAAO;YACf,GAAG,KAAK,aAAa;YACrB,GAAG,KAAK,SAAS;YACjB,GAAG,KAAK,UAAU;YAClB,GAAG,KAAK,YAAY;YACpB,GAAG,KAAK,UAAU;YAClB,GAAG,KAAK,WAAW;YACnB,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EACpB,CAAC;YACD,OAAO;QACT,CAAC;QAED,IACE,GAAG,KAAK,MAAM;YACd,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ;YAC/B,CAAE,MAAM,CAAC,GAAG,CAAY,CAAC,UAAU,CAAC,GAAG,CAAC,EACxC,CAAC;YACD,MAAM,IAAI,KAAK,CACb,6EAA6E,CAC9E,CAAC;QACJ,CAAC;QAED,UAAU,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,OAAO,UAAe,CAAC;AACzB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CACrC,UAAsC;IAEtC,MAAM,OAAO,GAA+B;QAC1C,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,WAAW,EAAE,eAAe,CAAC,UAAU,CAAC,WAAW,CAAC;KACrD,CAAC;IAEF,IAAI,UAAU,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;QACpC,OAAO,CAAC,YAAY,GAAG,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAC/C,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;AACxE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"applesauce-relay-pool.d.ts","sourceRoot":"","sources":["../../../src/relay/applesauce-relay-pool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAqBrD,mEAAmE;AACnE,eAAO,MAAM,WAAW,EAAE,MAGzB,CAAC;AAeF,oDAAoD;AACpD,MAAM,WAAW,0BAA0B;IACzC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,0CAA0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,yDAAyD;IACzD,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;GAEG;AACH,qBAAa,mBAAoB,YAAW,YAAY;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwC;IAGtE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAU;IAC5D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAO;IACxD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,6BAA6B,CAAU;IAG/D,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IAC9C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAG7C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAEvC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CAAS;IAE5D,OAAO,CAAC,uBAAuB;IA8B/B,OAAO,CAAC,gBAAgB,CAAC,CAAe;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAChD,OAAO,CAAC,eAAe,CAAC,CAAgB;IACxC,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,MAAM,CAAe;IAE7B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAY7B;;;OAGG;YACW,gBAAgB;IAwF9B,OAAO,CAAC,WAAW;IA8CnB;;;;OAIG;gBACS,SAAS,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,0BAA0B;IAWlE;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAe9B;;;OAGG;IACG,OAAO,CACX,KAAK,EAAE,UAAU,EACjB,IAAI,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,WAAW,CAAA;KAAE,GACnC,OAAO,CAAC,IAAI,CAAC;IA6DhB;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAkC1B;;;;;OAKG;IACG,SAAS,CACb,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,EACpC,MAAM,CAAC,EAAE,MAAM,IAAI,GAClB,OAAO,CAAC,MAAM,IAAI,CAAC;IA6BtB;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BjC;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAa/B;;OAEG;IACH,WAAW,IAAI,IAAI;IAgBnB;;;OAGG;IACH,YAAY,IAAI,MAAM,EAAE;IAIxB,sCAAsC;IACtC,OAAO,CAAC,eAAe;IAOvB,0EAA0E;IAC1E,OAAO,CAAC,gBAAgB;IA2BxB,gEAAgE;YAClD,aAAa;IA+E3B,6EAA6E;IAC7E,OAAO,CAAC,OAAO;CA2ChB"}
1
+ {"version":3,"file":"applesauce-relay-pool.d.ts","sourceRoot":"","sources":["../../../src/relay/applesauce-relay-pool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAoBrD,mEAAmE;AACnE,eAAO,MAAM,WAAW,EAAE,MAGzB,CAAC;AAeF,oDAAoD;AACpD,MAAM,WAAW,0BAA0B;IACzC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,0CAA0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,yDAAyD;IACzD,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;GAEG;AACH,qBAAa,mBAAoB,YAAW,YAAY;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwC;IAGtE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAU;IAC5D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAO;IACxD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,6BAA6B,CAAU;IAG/D,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IAC9C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAG7C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAEvC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CAAS;IAE5D,OAAO,CAAC,uBAAuB;IA8B/B,OAAO,CAAC,gBAAgB,CAAC,CAAe;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAChD,OAAO,CAAC,eAAe,CAAC,CAAgB;IACxC,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,MAAM,CAAe;IAE7B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAY7B;;;OAGG;YACW,gBAAgB;IAwF9B,OAAO,CAAC,WAAW;IA8CnB;;;;OAIG;gBACS,SAAS,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,0BAA0B;IAWlE;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAe9B;;;OAGG;IACG,OAAO,CACX,KAAK,EAAE,UAAU,EACjB,IAAI,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,WAAW,CAAA;KAAE,GACnC,OAAO,CAAC,IAAI,CAAC;IA6DhB;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAkC1B;;;;;OAKG;IACG,SAAS,CACb,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,EACpC,MAAM,CAAC,EAAE,MAAM,IAAI,GAClB,OAAO,CAAC,MAAM,IAAI,CAAC;IA6BtB;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BjC;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAa/B;;OAEG;IACH,WAAW,IAAI,IAAI;IAgBnB;;;OAGG;IACH,YAAY,IAAI,MAAM,EAAE;IAIxB,sCAAsC;IACtC,OAAO,CAAC,eAAe;IAOvB,0EAA0E;IAC1E,OAAO,CAAC,gBAAgB;IA2BxB,gEAAgE;YAClD,aAAa;IAgF3B,6EAA6E;IAC7E,OAAO,CAAC,OAAO;CA2ChB"}
@@ -2,7 +2,7 @@ import { Relay, RelayGroup } from 'applesauce-relay';
2
2
  import { createLogger } from '../core/utils/logger.js';
3
3
  import { sleep } from '../core/utils/utils.js';
4
4
  import { ensureWebSocket } from '../core/utils/websocket.js';
5
- import { lastValueFrom, takeUntil, timer, timeout, Subject, filter, take, merge, firstValueFrom, NEVER, } from 'rxjs';
5
+ import { lastValueFrom, takeUntil, timer, timeout, Subject, filter, take, firstValueFrom, NEVER, } from 'rxjs';
6
6
  const logger = createLogger('applesauce-relay');
7
7
  /** Dummy filter that returns no results, used for liveness ping */
8
8
  export const PING_FILTER = {
@@ -434,24 +434,24 @@ export class ApplesauceRelayPool {
434
434
  void this.rebuild('no-connected-relays');
435
435
  return;
436
436
  }
437
- const pingId = `ping:${Date.now()}`;
438
437
  try {
439
- // Send pings to all connected relays using the internal send method
440
- // Cast to Relay to access the non-interface send method
441
- for (const relay of connectedRelays) {
438
+ await Promise.all(connectedRelays.map(async (relay, index) => {
439
+ const pingId = `ping:${Date.now()}:${index}`;
442
440
  try {
443
441
  relay.send(['REQ', pingId, PING_FILTER]);
442
+ await lastValueFrom(relay.message$.pipe(filter((msg) => Array.isArray(msg) &&
443
+ msg[0] === 'EOSE' &&
444
+ msg[1] === pingId), take(1), timeout(this.pingTimeoutMs)));
444
445
  }
445
- catch (error) {
446
- // If send fails immediately, log but continue - timeout will catch it
447
- logger.debug('Failed to send ping to relay', {
448
- url: relay.url,
449
- error,
450
- });
446
+ finally {
447
+ try {
448
+ relay.send(['CLOSE', pingId]);
449
+ }
450
+ catch (_a) {
451
+ // best-effort cleanup
452
+ }
451
453
  }
452
- }
453
- // Wait for any response with timeout using raw message stream
454
- await lastValueFrom(merge(...connectedRelays.map((relay) => relay.message$)).pipe(filter((msg) => Array.isArray(msg) && msg[0] === 'EOSE' && msg[1] === pingId), take(1), timeout(this.pingTimeoutMs)));
454
+ }));
455
455
  }
456
456
  catch (error) {
457
457
  if (error instanceof Error && error.name === 'TimeoutError') {
@@ -1 +1 @@
1
- {"version":3,"file":"applesauce-relay-pool.js","sourceRoot":"","sources":["../../../src/relay/applesauce-relay-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"applesauce-relay-pool.js","sourceRoot":"","sources":["../../../src/relay/applesauce-relay-pool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import type { Client } from '@modelcontextprotocol/sdk/client/index.js';
2
+ import type { CallToolRequest } from '@modelcontextprotocol/sdk/types.js';
3
+ import type { OpenStreamSession } from './open-stream/index.js';
4
+ import type { NostrClientTransport } from './nostr-client-transport.js';
5
+ export interface CallToolStreamParams {
6
+ client: Client;
7
+ transport: NostrClientTransport;
8
+ name: CallToolRequest['params']['name'];
9
+ arguments?: CallToolRequest['params']['arguments'];
10
+ progressToken?: string;
11
+ }
12
+ export interface ToolStreamCall<TResult = unknown> {
13
+ readonly progressToken: string;
14
+ readonly stream: OpenStreamSession;
15
+ readonly result: Promise<TResult>;
16
+ abort(reason?: string): Promise<void>;
17
+ }
18
+ /**
19
+ * Calls an MCP tool with a CEP-41 progress token and returns the paired stream handle.
20
+ */
21
+ export declare function callToolStream<TResult = unknown>(params: CallToolStreamParams): Promise<ToolStreamCall<TResult>>;
22
+ //# sourceMappingURL=call-tool-stream.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"call-tool-stream.d.ts","sourceRoot":"","sources":["../../../src/transport/call-tool-stream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACxE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAExE,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,oBAAoB,CAAC;IAChC,IAAI,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;IACxC,SAAS,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC;IACnD,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,cAAc,CAAC,OAAO,GAAG,OAAO;IAC/C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAMD;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,GAAG,OAAO,EACpD,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAmBlC"}
@@ -0,0 +1,26 @@
1
+ function createProgressToken() {
2
+ return `open-stream-${Date.now()}-${Math.random().toString(36).slice(2, 10)}`;
3
+ }
4
+ /**
5
+ * Calls an MCP tool with a CEP-41 progress token and returns the paired stream handle.
6
+ */
7
+ export async function callToolStream(params) {
8
+ var _a;
9
+ const { client, transport, name, arguments: toolArguments } = params;
10
+ const progressToken = (_a = params.progressToken) !== null && _a !== void 0 ? _a : createProgressToken();
11
+ const stream = transport.createOutboundOpenStreamSession(progressToken);
12
+ const result = client.callTool({
13
+ name,
14
+ arguments: toolArguments,
15
+ _meta: {
16
+ progressToken,
17
+ },
18
+ });
19
+ return {
20
+ progressToken,
21
+ stream,
22
+ result,
23
+ abort: (reason) => stream.abort(reason),
24
+ };
25
+ }
26
+ //# sourceMappingURL=call-tool-stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"call-tool-stream.js","sourceRoot":"","sources":["../../../src/transport/call-tool-stream.ts"],"names":[],"mappings":"AAoBA,SAAS,mBAAmB;IAC1B,OAAO,eAAe,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AAChF,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAA4B;;IAE5B,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IACrE,MAAM,aAAa,GAAG,MAAA,MAAM,CAAC,aAAa,mCAAI,mBAAmB,EAAE,CAAC;IACpE,MAAM,MAAM,GAAG,SAAS,CAAC,+BAA+B,CAAC,aAAa,CAAC,CAAC;IAExE,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC;QAC7B,IAAI;QACJ,SAAS,EAAE,aAAa;QACxB,KAAK,EAAE;YACL,aAAa;SACd;KACkC,CAAqB,CAAC;IAE3D,OAAO;QACL,aAAa;QACb,MAAM;QACN,MAAM;QACN,KAAK,EAAE,CAAC,MAAe,EAAiB,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;KAChE,CAAC;AACJ,CAAC"}
@@ -7,6 +7,7 @@ export interface DiscoveredPeerCapabilities {
7
7
  supportsEncryption: boolean;
8
8
  supportsEphemeralEncryption: boolean;
9
9
  supportsOversizedTransfer: boolean;
10
+ supportsOpenStream: boolean;
10
11
  }
11
12
  /**
12
13
  * Capability flags learned from inbound peer discovery tags.
@@ -15,6 +16,7 @@ export interface PeerCapabilities {
15
16
  supportsEncryption: boolean;
16
17
  supportsEphemeralEncryption: boolean;
17
18
  supportsOversizedTransfer: boolean;
19
+ supportsOpenStream: boolean;
18
20
  }
19
21
  /**
20
22
  * Returns true when a single-valued tag is present (e.g. ['support_oversized_transfer']).
@@ -1 +1 @@
1
- {"version":3,"file":"discovery-tags.d.ts","sourceRoot":"","sources":["../../../src/transport/discovery-tags.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIzC;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,aAAa,EAAE,MAAM,EAAE,EAAE,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,2BAA2B,EAAE,OAAO,CAAC;IACrC,yBAAyB,EAAE,OAAO,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,2BAA2B,EAAE,OAAO,CAAC;IACrC,yBAAyB,EAAE,OAAO,CAAC;CACpC;AAMD;;GAEG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,EACpC,GAAG,EAAE,MAAM,GACV,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,UAAU,GAAG,SAAS,EAC7B,GAAG,EAAE,MAAM,GACV,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAStE;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,GACxB,0BAA0B,CAQ5B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,GACxC,gBAAgB,CAYlB"}
1
+ {"version":3,"file":"discovery-tags.d.ts","sourceRoot":"","sources":["../../../src/transport/discovery-tags.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIzC;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,aAAa,EAAE,MAAM,EAAE,EAAE,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,2BAA2B,EAAE,OAAO,CAAC;IACrC,yBAAyB,EAAE,OAAO,CAAC;IACnC,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,2BAA2B,EAAE,OAAO,CAAC;IACrC,yBAAyB,EAAE,OAAO,CAAC;IACnC,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAMD;;GAEG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,EACpC,GAAG,EAAE,MAAM,GACV,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,UAAU,GAAG,SAAS,EAC7B,GAAG,EAAE,MAAM,GACV,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAStE;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,GACxB,0BAA0B,CAQ5B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,GACxC,gBAAgB,CAalB"}
@@ -45,6 +45,7 @@ export function learnPeerCapabilities(eventTags) {
45
45
  supportsEncryption: hasSingleTag(eventTags, NOSTR_TAGS.SUPPORT_ENCRYPTION),
46
46
  supportsEphemeralEncryption: hasSingleTag(eventTags, NOSTR_TAGS.SUPPORT_ENCRYPTION_EPHEMERAL),
47
47
  supportsOversizedTransfer: hasSingleTag(eventTags, NOSTR_TAGS.SUPPORT_OVERSIZED_TRANSFER),
48
+ supportsOpenStream: hasSingleTag(eventTags, NOSTR_TAGS.SUPPORT_OPEN_STREAM),
48
49
  };
49
50
  }
50
51
  //# sourceMappingURL=discovery-tags.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"discovery-tags.js","sourceRoot":"","sources":["../../../src/transport/discovery-tags.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGlD,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAqB5D,SAAS,QAAQ,CAAC,GAAsB;IACtC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAC1B,IAAoC,EACpC,GAAW;IAEX,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CACzB,KAA6B,EAC7B,GAAW;IAEX,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AACrE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAyB;IACxD,OAAO,IAAI;SACR,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACd,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QACvB,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,CACrE,CAAC;IACJ,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,+BAA+B,CAC7C,IAAyB;IAEzB,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,YAAY,GAAG,qBAAqB,CAAC,aAAa,CAAC,CAAC;IAE1D,OAAO;QACL,aAAa;QACb,GAAG,YAAY;KAChB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,SAAyC;IAEzC,OAAO;QACL,kBAAkB,EAAE,YAAY,CAAC,SAAS,EAAE,UAAU,CAAC,kBAAkB,CAAC;QAC1E,2BAA2B,EAAE,YAAY,CACvC,SAAS,EACT,UAAU,CAAC,4BAA4B,CACxC;QACD,yBAAyB,EAAE,YAAY,CACrC,SAAS,EACT,UAAU,CAAC,0BAA0B,CACtC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"discovery-tags.js","sourceRoot":"","sources":["../../../src/transport/discovery-tags.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGlD,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAuB5D,SAAS,QAAQ,CAAC,GAAsB;IACtC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAC1B,IAAoC,EACpC,GAAW;IAEX,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CACzB,KAA6B,EAC7B,GAAW;IAEX,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AACrE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAyB;IACxD,OAAO,IAAI;SACR,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACd,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QACvB,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,CACrE,CAAC;IACJ,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,+BAA+B,CAC7C,IAAyB;IAEzB,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,YAAY,GAAG,qBAAqB,CAAC,aAAa,CAAC,CAAC;IAE1D,OAAO;QACL,aAAa;QACb,GAAG,YAAY;KAChB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,SAAyC;IAEzC,OAAO;QACL,kBAAkB,EAAE,YAAY,CAAC,SAAS,EAAE,UAAU,CAAC,kBAAkB,CAAC;QAC1E,2BAA2B,EAAE,YAAY,CACvC,SAAS,EACT,UAAU,CAAC,4BAA4B,CACxC;QACD,yBAAyB,EAAE,YAAY,CACrC,SAAS,EACT,UAAU,CAAC,0BAA0B,CACtC;QACD,kBAAkB,EAAE,YAAY,CAAC,SAAS,EAAE,UAAU,CAAC,mBAAmB,CAAC;KAC5E,CAAC;AACJ,CAAC"}
@@ -2,4 +2,8 @@ export * from './nostr-client-transport.js';
2
2
  export * from './nostr-server-transport.js';
3
3
  export * from './nostr-server/announcement-manager.js';
4
4
  export * from './base-nostr-transport.js';
5
+ export * from './server-transport-common-schemas.js';
6
+ export * from './open-stream/index.js';
7
+ export * from './open-stream-policy.js';
8
+ export * from './call-tool-stream.js';
5
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transport/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wCAAwC,CAAC;AACvD,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transport/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wCAAwC,CAAC;AACvD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sCAAsC,CAAC;AACrD,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC"}
@@ -2,4 +2,8 @@ export * from './nostr-client-transport.js';
2
2
  export * from './nostr-server-transport.js';
3
3
  export * from './nostr-server/announcement-manager.js';
4
4
  export * from './base-nostr-transport.js';
5
+ export * from './server-transport-common-schemas.js';
6
+ export * from './open-stream/index.js';
7
+ export * from './open-stream-policy.js';
8
+ export * from './call-tool-stream.js';
5
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transport/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wCAAwC,CAAC;AACvD,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transport/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wCAAwC,CAAC;AACvD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sCAAsC,CAAC;AACrD,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC"}
@@ -5,7 +5,9 @@ import { NostrEvent } from 'nostr-tools';
5
5
  import { LogLevel } from '../core/utils/logger.js';
6
6
  import { ClientCorrelationStore, PendingRequest } from './nostr-client/correlation-store.js';
7
7
  import { StatelessModeHandler } from './nostr-client/stateless-mode-handler.js';
8
- import { type TransferPolicy } from './oversized-transfer/index.js';
8
+ import { OversizedTransferReceiver, type TransferPolicy } from './oversized-transfer/index.js';
9
+ import { OpenStreamReceiver, OpenStreamSession } from './open-stream/index.js';
10
+ import type { OpenStreamTransportPolicy } from './open-stream-policy.js';
9
11
  /**
10
12
  * Options for configuring the NostrClientTransport.
11
13
  */
@@ -47,6 +49,13 @@ export interface NostrTransportOptions extends Omit<BaseNostrTransportOptions, '
47
49
  /** Receiver-side admission policy. */
48
50
  policy?: TransferPolicy;
49
51
  };
52
+ /** Options controlling CEP-41 open-ended stream transfer. */
53
+ openStream?: {
54
+ /** Whether open stream transfer is enabled. @default false */
55
+ enabled?: boolean;
56
+ /** Receiver/session policy reserved for CEP-41 stream lifecycle limits. */
57
+ policy?: OpenStreamTransportPolicy;
58
+ };
50
59
  }
51
60
  /**
52
61
  * A client transport layer for CTXVM that uses Nostr events for communication.
@@ -92,14 +101,20 @@ export declare class NostrClientTransport extends BaseNostrTransport implements
92
101
  private serverSupportsEphemeralGiftWraps;
93
102
  /** Whether the server has advertised CEP-22 oversized transfer support. */
94
103
  private serverSupportsOversizedTransfer;
104
+ /** Whether the server has advertised CEP-41 open stream support. */
105
+ private serverSupportsOpenStream;
95
106
  /** Whether this client has already sent its discovery tags to the server. */
96
107
  private hasSentDiscoveryTags;
97
108
  private readonly oversizedEnabled;
98
109
  private readonly oversizedThreshold;
99
110
  private readonly oversizedChunkSize;
100
111
  private readonly oversizedAcceptTimeoutMs;
112
+ private readonly openStreamEnabled;
113
+ private readonly openStreamPolicy;
101
114
  /** Receives inbound oversized-transfer frames from the server (server→client responses). */
102
115
  private readonly oversizedReceiver;
116
+ /** Receives inbound open-stream frames from the server (server→client notifications). */
117
+ private readonly openStreamReceiver;
103
118
  /**
104
119
  * Deduplicate inbound events to avoid redundant work.
105
120
  *
@@ -152,6 +167,19 @@ export declare class NostrClientTransport extends BaseNostrTransport implements
152
167
  * @internal
153
168
  */
154
169
  getPendingRequestForEventId(eventId: string): PendingRequest | undefined;
170
+ /**
171
+ * Returns the CEP-41 stream session for a progress token, creating it lazily if needed.
172
+ */
173
+ getOrCreateOpenStreamSession(progressToken: string): OpenStreamSession;
174
+ /**
175
+ * Returns an outbound CEP-41 session whose local abort publishes an abort
176
+ * notification to the server.
177
+ */
178
+ createOutboundOpenStreamSession(progressToken: string): OpenStreamSession;
179
+ /**
180
+ * Returns the CEP-41 stream session for a progress token when it already exists.
181
+ */
182
+ getOpenStreamSession(progressToken: string): OpenStreamSession | undefined;
155
183
  /**
156
184
  * Emulates the server's initialize response for stateless clients.
157
185
  * @param requestId - The ID of the original initialize request
@@ -240,6 +268,8 @@ export declare class NostrClientTransport extends BaseNostrTransport implements
240
268
  serverResourcesListEvent: import("nostr-tools").Event | undefined;
241
269
  serverResourceTemplatesListEvent: import("nostr-tools").Event | undefined;
242
270
  serverPromptsListEvent: import("nostr-tools").Event | undefined;
271
+ oversizedReceiver: OversizedTransferReceiver;
272
+ openStreamReceiver: OpenStreamReceiver;
243
273
  };
244
274
  }
245
275
  //# sourceMappingURL=nostr-client-transport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"nostr-client-transport.d.ts","sourceRoot":"","sources":["../../../src/transport/nostr-client-transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nostr-client-transport.d.ts","sourceRoot":"","sources":["../../../src/transport/nostr-client-transport.ts"],"names":[],"mappings":"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"}