@strands-agents/sdk 1.17.0 → 1.19.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 (165) hide show
  1. package/README.md +4 -1
  2. package/dist/src/agent/agent-metadata.d.ts +12 -0
  3. package/dist/src/agent/agent-metadata.d.ts.map +1 -0
  4. package/dist/src/agent/agent-metadata.js +2 -0
  5. package/dist/src/agent/agent-metadata.js.map +1 -0
  6. package/dist/src/agent/agent.d.ts +14 -29
  7. package/dist/src/agent/agent.d.ts.map +1 -1
  8. package/dist/src/agent/agent.js +29 -62
  9. package/dist/src/agent/agent.js.map +1 -1
  10. package/dist/src/background-tasks/background-tasks.d.ts.map +1 -1
  11. package/dist/src/background-tasks/background-tasks.js +13 -10
  12. package/dist/src/background-tasks/background-tasks.js.map +1 -1
  13. package/dist/src/context-manager/context-manager.d.ts +27 -4
  14. package/dist/src/context-manager/context-manager.d.ts.map +1 -1
  15. package/dist/src/context-manager/context-manager.js +59 -13
  16. package/dist/src/context-manager/context-manager.js.map +1 -1
  17. package/dist/src/context-manager/methods/summarize.d.ts +6 -0
  18. package/dist/src/context-manager/methods/summarize.d.ts.map +1 -1
  19. package/dist/src/context-manager/methods/summarize.js +9 -0
  20. package/dist/src/context-manager/methods/summarize.js.map +1 -1
  21. package/dist/src/context-manager/presets.d.ts +42 -0
  22. package/dist/src/context-manager/presets.d.ts.map +1 -0
  23. package/dist/src/context-manager/presets.js +71 -0
  24. package/dist/src/context-manager/presets.js.map +1 -0
  25. package/dist/src/context-manager/retrieval-tool.d.ts.map +1 -1
  26. package/dist/src/context-manager/retrieval-tool.js +19 -1
  27. package/dist/src/context-manager/retrieval-tool.js.map +1 -1
  28. package/dist/src/context-manager/stash.d.ts.map +1 -1
  29. package/dist/src/context-manager/stash.js +10 -7
  30. package/dist/src/context-manager/stash.js.map +1 -1
  31. package/dist/src/context-manager/strategies/offload/base.d.ts +13 -7
  32. package/dist/src/context-manager/strategies/offload/base.d.ts.map +1 -1
  33. package/dist/src/context-manager/strategies/offload/base.js +46 -16
  34. package/dist/src/context-manager/strategies/offload/base.js.map +1 -1
  35. package/dist/src/context-manager/strategies/offload/summarize.d.ts.map +1 -1
  36. package/dist/src/context-manager/strategies/offload/summarize.js +11 -12
  37. package/dist/src/context-manager/strategies/offload/summarize.js.map +1 -1
  38. package/dist/src/context-manager/strategies/offload/truncate.d.ts.map +1 -1
  39. package/dist/src/context-manager/strategies/offload/truncate.js +4 -11
  40. package/dist/src/context-manager/strategies/offload/truncate.js.map +1 -1
  41. package/dist/src/context-manager/types.d.ts +11 -1
  42. package/dist/src/context-manager/types.d.ts.map +1 -1
  43. package/dist/src/conversation-manager/compression/context-compression.d.ts +13 -1
  44. package/dist/src/conversation-manager/compression/context-compression.d.ts.map +1 -1
  45. package/dist/src/conversation-manager/compression/context-compression.js +32 -5
  46. package/dist/src/conversation-manager/compression/context-compression.js.map +1 -1
  47. package/dist/src/index.d.ts +8 -0
  48. package/dist/src/index.d.ts.map +1 -1
  49. package/dist/src/index.js +1 -0
  50. package/dist/src/index.js.map +1 -1
  51. package/dist/src/interventions/registry.d.ts.map +1 -1
  52. package/dist/src/interventions/registry.js +5 -0
  53. package/dist/src/interventions/registry.js.map +1 -1
  54. package/dist/src/models/anthropic.d.ts +30 -0
  55. package/dist/src/models/anthropic.d.ts.map +1 -1
  56. package/dist/src/models/anthropic.js +338 -126
  57. package/dist/src/models/anthropic.js.map +1 -1
  58. package/dist/src/models/bedrock.d.ts +10 -0
  59. package/dist/src/models/bedrock.d.ts.map +1 -1
  60. package/dist/src/models/bedrock.js +25 -15
  61. package/dist/src/models/bedrock.js.map +1 -1
  62. package/dist/src/models/defaults.d.ts.map +1 -1
  63. package/dist/src/models/defaults.js +1 -0
  64. package/dist/src/models/defaults.js.map +1 -1
  65. package/dist/src/models/model.d.ts +12 -2
  66. package/dist/src/models/model.d.ts.map +1 -1
  67. package/dist/src/models/model.js +6 -1
  68. package/dist/src/models/model.js.map +1 -1
  69. package/dist/src/models/openai/cache.d.ts +11 -2
  70. package/dist/src/models/openai/cache.d.ts.map +1 -1
  71. package/dist/src/models/openai/cache.js +32 -6
  72. package/dist/src/models/openai/cache.js.map +1 -1
  73. package/dist/src/models/openai/chat-adapter.d.ts.map +1 -1
  74. package/dist/src/models/openai/chat-adapter.js +10 -4
  75. package/dist/src/models/openai/chat-adapter.js.map +1 -1
  76. package/dist/src/models/openai/mantle.js +1 -1
  77. package/dist/src/models/openai/mantle.js.map +1 -1
  78. package/dist/src/models/openai/responses-adapter.js +1 -1
  79. package/dist/src/models/openai/responses-adapter.js.map +1 -1
  80. package/dist/src/plugins/plugin.d.ts +1 -1
  81. package/dist/src/plugins/registry.js +1 -1
  82. package/dist/src/plugins/registry.js.map +1 -1
  83. package/dist/src/retry/model-retry-strategy.js +16 -3
  84. package/dist/src/retry/model-retry-strategy.js.map +1 -1
  85. package/dist/src/sandbox/errors.d.ts +5 -1
  86. package/dist/src/sandbox/errors.d.ts.map +1 -1
  87. package/dist/src/sandbox/errors.js +7 -1
  88. package/dist/src/sandbox/errors.js.map +1 -1
  89. package/dist/src/sandbox/stream-process.d.ts.map +1 -1
  90. package/dist/src/sandbox/stream-process.js +6 -1
  91. package/dist/src/sandbox/stream-process.js.map +1 -1
  92. package/dist/src/storage/in-memory-storage.d.ts +7 -0
  93. package/dist/src/storage/in-memory-storage.d.ts.map +1 -1
  94. package/dist/src/storage/in-memory-storage.js +16 -1
  95. package/dist/src/storage/in-memory-storage.js.map +1 -1
  96. package/dist/src/storage/local-file-storage.d.ts +9 -2
  97. package/dist/src/storage/local-file-storage.d.ts.map +1 -1
  98. package/dist/src/storage/local-file-storage.js +17 -4
  99. package/dist/src/storage/local-file-storage.js.map +1 -1
  100. package/dist/src/storage/s3-storage.d.ts +4 -0
  101. package/dist/src/storage/s3-storage.d.ts.map +1 -1
  102. package/dist/src/storage/s3-storage.js +8 -0
  103. package/dist/src/storage/s3-storage.js.map +1 -1
  104. package/dist/src/storage/search/qmd.d.ts +10 -6
  105. package/dist/src/storage/search/qmd.d.ts.map +1 -1
  106. package/dist/src/storage/search/qmd.js +4 -6
  107. package/dist/src/storage/search/qmd.js.map +1 -1
  108. package/dist/src/storage/search/types.d.ts +14 -2
  109. package/dist/src/storage/search/types.d.ts.map +1 -1
  110. package/dist/src/tsconfig.tsbuildinfo +1 -1
  111. package/dist/src/types/agent.d.ts +7 -3
  112. package/dist/src/types/agent.d.ts.map +1 -1
  113. package/dist/src/types/agent.js +6 -0
  114. package/dist/src/types/agent.js.map +1 -1
  115. package/dist/src/vended-plugins/context-offloader/search.d.ts.map +1 -1
  116. package/dist/src/vended-plugins/context-offloader/search.js +4 -2
  117. package/dist/src/vended-plugins/context-offloader/search.js.map +1 -1
  118. package/dist/src/vended-tools/handoff-to-user/handoff-to-user.d.ts +28 -0
  119. package/dist/src/vended-tools/handoff-to-user/handoff-to-user.d.ts.map +1 -0
  120. package/dist/src/vended-tools/handoff-to-user/handoff-to-user.js +45 -0
  121. package/dist/src/vended-tools/handoff-to-user/handoff-to-user.js.map +1 -0
  122. package/dist/src/vended-tools/handoff-to-user/index.d.ts +8 -0
  123. package/dist/src/vended-tools/handoff-to-user/index.d.ts.map +1 -0
  124. package/dist/src/vended-tools/handoff-to-user/index.js +6 -0
  125. package/dist/src/vended-tools/handoff-to-user/index.js.map +1 -0
  126. package/dist/src/vended-tools/handoff-to-user/types.d.ts +18 -0
  127. package/dist/src/vended-tools/handoff-to-user/types.d.ts.map +1 -0
  128. package/dist/src/vended-tools/handoff-to-user/types.js +11 -0
  129. package/dist/src/vended-tools/handoff-to-user/types.js.map +1 -0
  130. package/dist/src/vended-tools/index.d.ts +14 -3
  131. package/dist/src/vended-tools/index.d.ts.map +1 -1
  132. package/dist/src/vended-tools/index.js +14 -3
  133. package/dist/src/vended-tools/index.js.map +1 -1
  134. package/dist/src/vended-tools/notebook/index.d.ts +2 -1
  135. package/dist/src/vended-tools/notebook/index.d.ts.map +1 -1
  136. package/dist/src/vended-tools/notebook/index.js +1 -1
  137. package/dist/src/vended-tools/notebook/index.js.map +1 -1
  138. package/dist/src/vended-tools/notebook/notebook.d.ts +38 -8
  139. package/dist/src/vended-tools/notebook/notebook.d.ts.map +1 -1
  140. package/dist/src/vended-tools/notebook/notebook.js +130 -79
  141. package/dist/src/vended-tools/notebook/notebook.js.map +1 -1
  142. package/dist/src/vended-tools/shell/make-shell.d.ts.map +1 -1
  143. package/dist/src/vended-tools/shell/make-shell.js +7 -3
  144. package/dist/src/vended-tools/shell/make-shell.js.map +1 -1
  145. package/dist/src/vended-tools/shell/types.d.ts +10 -5
  146. package/dist/src/vended-tools/shell/types.d.ts.map +1 -1
  147. package/dist/src/vended-tools/shell/types.js +7 -2
  148. package/dist/src/vended-tools/shell/types.js.map +1 -1
  149. package/dist/src/vended-tools/web-fetch/extract.d.ts +23 -0
  150. package/dist/src/vended-tools/web-fetch/extract.d.ts.map +1 -0
  151. package/dist/src/vended-tools/web-fetch/extract.js +130 -0
  152. package/dist/src/vended-tools/web-fetch/extract.js.map +1 -0
  153. package/dist/src/vended-tools/web-fetch/index.d.ts +9 -0
  154. package/dist/src/vended-tools/web-fetch/index.d.ts.map +1 -0
  155. package/dist/src/vended-tools/web-fetch/index.js +7 -0
  156. package/dist/src/vended-tools/web-fetch/index.js.map +1 -0
  157. package/dist/src/vended-tools/web-fetch/types.d.ts +40 -0
  158. package/dist/src/vended-tools/web-fetch/types.d.ts.map +1 -0
  159. package/dist/src/vended-tools/web-fetch/types.js +8 -0
  160. package/dist/src/vended-tools/web-fetch/types.js.map +1 -0
  161. package/dist/src/vended-tools/web-fetch/web-fetch.d.ts +14 -0
  162. package/dist/src/vended-tools/web-fetch/web-fetch.d.ts.map +1 -0
  163. package/dist/src/vended-tools/web-fetch/web-fetch.js +175 -0
  164. package/dist/src/vended-tools/web-fetch/web-fetch.js.map +1 -0
  165. package/package.json +24 -4
@@ -1,4 +1,5 @@
1
1
  import type { Sandbox } from '../sandbox/base.js';
2
+ import type { SearchStrategy } from './search/types.js';
2
3
  import type { Storage, StorageSearchResult } from './storage.js';
3
4
  /**
4
5
  * Local-filesystem {@link Storage} backend.
@@ -21,13 +22,16 @@ import type { Storage, StorageSearchResult } from './storage.js';
21
22
  export declare class LocalFileStorage implements Storage {
22
23
  private readonly _baseDir;
23
24
  private readonly _sandbox;
25
+ private readonly _searchStrategy;
24
26
  /** The resolved root directory for this storage instance. */
25
27
  get baseDir(): string;
26
28
  /**
27
29
  * @param baseDir - Root directory under which keys are stored. Defaults to `./.strands/`.
28
30
  * @param sandbox - Optional sandbox to route I/O through. Usually set via {@link forSandbox}.
31
+ * @param searchStrategy - Optional search strategy. When set, `write()` automatically indexes
32
+ * entries and `search()` delegates to the strategy instead of the default keyword scan.
29
33
  */
30
- constructor(baseDir?: string, sandbox?: Sandbox);
34
+ constructor(baseDir?: string, sandbox?: Sandbox, searchStrategy?: SearchStrategy<LocalFileStorage>);
31
35
  /**
32
36
  * Returns a storage instance whose I/O is routed through `sandbox`.
33
37
  *
@@ -72,7 +76,10 @@ export declare class LocalFileStorage implements Storage {
72
76
  private _listKeysHost;
73
77
  private _listKeysSandbox;
74
78
  /**
75
- * Searches stored content by keyword token-overlap scoring.
79
+ * Searches stored content using the configured strategy.
80
+ *
81
+ * Delegates to the search strategy when one is set, otherwise falls back
82
+ * to keyword token-overlap scoring.
76
83
  *
77
84
  * @param query - Natural-language search query
78
85
  * @returns All matches with relevance scores, ranked best-first
@@ -1 +1 @@
1
- {"version":3,"file":"local-file-storage.d.ts","sourceRoot":"","sources":["../../../src/storage/local-file-storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAiBhE;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,gBAAiB,YAAW,OAAO;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAE9C,6DAA6D;IAC7D,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;;OAGG;gBACS,OAAO,GAAE,MAAsB,EAAE,OAAO,CAAC,EAAE,OAAO;IAK9D;;;;;;;OAOG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,gBAAgB;IAK9C;;;;;;OAMG;IACG,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BzD;;;;;;OAMG;IACG,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAqBnD;;;;;OAKG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBxC;;;;;;OAMG;IACG,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAa7C,OAAO,CAAC,QAAQ;YAKF,aAAa;YA2Bb,gBAAgB;IA2B9B;;;;;OAKG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAI3D;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB;CAO5C"}
1
+ {"version":3,"file":"local-file-storage.d.ts","sourceRoot":"","sources":["../../../src/storage/local-file-storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAiBhE;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,gBAAiB,YAAW,OAAO;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA8C;IAE9E,6DAA6D;IAC7D,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;;;;OAKG;gBACS,OAAO,GAAE,MAAsB,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,cAAc,CAAC,gBAAgB,CAAC;IAMjH;;;;;;;OAOG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,gBAAgB;IAK9C;;;;;;OAMG;IACG,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAiCzD;;;;;;OAMG;IACG,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAqBnD;;;;;OAKG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBxC;;;;;;OAMG;IACG,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAa7C,OAAO,CAAC,QAAQ;YAKF,aAAa;YA2Bb,gBAAgB;IA2B9B;;;;;;;;OAQG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAO3D;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB;CAO5C"}
@@ -33,6 +33,7 @@ function isNotFoundError(error) {
33
33
  export class LocalFileStorage {
34
34
  _baseDir;
35
35
  _sandbox;
36
+ _searchStrategy;
36
37
  /** The resolved root directory for this storage instance. */
37
38
  get baseDir() {
38
39
  return this._baseDir;
@@ -40,10 +41,13 @@ export class LocalFileStorage {
40
41
  /**
41
42
  * @param baseDir - Root directory under which keys are stored. Defaults to `./.strands/`.
42
43
  * @param sandbox - Optional sandbox to route I/O through. Usually set via {@link forSandbox}.
44
+ * @param searchStrategy - Optional search strategy. When set, `write()` automatically indexes
45
+ * entries and `search()` delegates to the strategy instead of the default keyword scan.
43
46
  */
44
- constructor(baseDir = './.strands/', sandbox) {
47
+ constructor(baseDir = './.strands/', sandbox, searchStrategy) {
45
48
  this._baseDir = baseDir.replace(/\/{2,}/g, '/').replace(/(.)\/$/, '$1');
46
49
  this._sandbox = sandbox;
50
+ this._searchStrategy = searchStrategy;
47
51
  }
48
52
  /**
49
53
  * Returns a storage instance whose I/O is routed through `sandbox`.
@@ -56,7 +60,7 @@ export class LocalFileStorage {
56
60
  forSandbox(sandbox) {
57
61
  if (this._sandbox)
58
62
  return this;
59
- return new LocalFileStorage(this._baseDir, sandbox);
63
+ return new LocalFileStorage(this._baseDir, sandbox, this._searchStrategy);
60
64
  }
61
65
  /**
62
66
  * Stores `data` under `key`, overwriting any existing value.
@@ -94,6 +98,9 @@ export class LocalFileStorage {
94
98
  }
95
99
  throw new StorageError(`Failed to write '${normalized}' to local storage`, { cause: error });
96
100
  }
101
+ if (this._searchStrategy) {
102
+ await this._searchStrategy.index?.(this, normalized, data);
103
+ }
97
104
  }
98
105
  /**
99
106
  * Retrieves the bytes previously stored under `key`.
@@ -234,12 +241,18 @@ export class LocalFileStorage {
234
241
  return walk(dir, keyPrefix);
235
242
  }
236
243
  /**
237
- * Searches stored content by keyword token-overlap scoring.
244
+ * Searches stored content using the configured strategy.
245
+ *
246
+ * Delegates to the search strategy when one is set, otherwise falls back
247
+ * to keyword token-overlap scoring.
238
248
  *
239
249
  * @param query - Natural-language search query
240
250
  * @returns All matches with relevance scores, ranked best-first
241
251
  */
242
252
  async search(query) {
253
+ if (this._searchStrategy) {
254
+ return this._searchStrategy.search(this, query);
255
+ }
243
256
  return KeywordSearchStrategy.search(this, query);
244
257
  }
245
258
  /**
@@ -248,7 +261,7 @@ export class LocalFileStorage {
248
261
  namespace(prefix) {
249
262
  const normalized = normalizePrefix(prefix);
250
263
  const subDir = normalized ? `${this._baseDir.replace(/\/$/, '')}/${normalized}` : this._baseDir;
251
- const scoped = new LocalFileStorage(subDir, this._sandbox);
264
+ const scoped = new LocalFileStorage(subDir, this._sandbox, this._searchStrategy);
252
265
  Object.defineProperty(scoped, NAMESPACED, { value: true });
253
266
  return scoped;
254
267
  }
@@ -1 +1 @@
1
- {"version":3,"file":"local-file-storage.js","sourceRoot":"","sources":["../../../src/storage/local-file-storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-file-storage.js","sourceRoot":"","sources":["../../../src/storage/local-file-storage.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { SearchStrategy } from './search/types.js';
1
2
  import type { Storage, StorageSearchResult } from './storage.js';
2
3
  /** Configuration for {@link S3Storage}. */
3
4
  export interface S3StorageConfig {
@@ -7,6 +8,8 @@ export interface S3StorageConfig {
7
8
  region?: string;
8
9
  /** Pre-configured S3 client. Cannot be combined with `region`. */
9
10
  s3Client?: import('@aws-sdk/client-s3').S3Client;
11
+ /** Optional search strategy. When set, `write()` indexes entries and `search()` delegates to the strategy. */
12
+ searchStrategy?: SearchStrategy<S3Storage>;
10
13
  }
11
14
  /**
12
15
  * Amazon S3 {@link Storage} backend.
@@ -27,6 +30,7 @@ export declare class S3Storage implements Storage {
27
30
  private readonly _bucket;
28
31
  private readonly _prefix;
29
32
  private readonly _region;
33
+ private readonly _searchStrategy;
30
34
  private _client;
31
35
  /**
32
36
  * @param bucket - Target S3 bucket name
@@ -1 +1 @@
1
- {"version":3,"file":"s3-storage.d.ts","sourceRoot":"","sources":["../../../src/storage/s3-storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAMhE,2CAA2C;AAC3C,MAAM,WAAW,eAAe;IAC9B,0FAA0F;IAC1F,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,0HAA0H;IAC1H,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,kEAAkE;IAClE,QAAQ,CAAC,EAAE,OAAO,oBAAoB,EAAE,QAAQ,CAAA;CACjD;AAID;;;;;;;;;;;;;;GAcG;AACH,qBAAa,SAAU,YAAW,OAAO;IACvC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAC5C,OAAO,CAAC,OAAO,CAAmD;IAElE;;;;OAIG;gBACS,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,eAAe;IAUpD;;;;;;OAMG;IACG,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzD;;;;;;OAMG;IACG,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAkBnD;;;;;OAKG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWxC;;;;;;OAMG;IACG,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IA6B7C;;;;;OAKG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;YAI7C,UAAU;IAOxB,6EAA6E;IAC7E,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAIlC,OAAO,CAAC,UAAU;CAGnB"}
1
+ {"version":3,"file":"s3-storage.d.ts","sourceRoot":"","sources":["../../../src/storage/s3-storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAMhE,2CAA2C;AAC3C,MAAM,WAAW,eAAe;IAC9B,0FAA0F;IAC1F,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,0HAA0H;IAC1H,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,kEAAkE;IAClE,QAAQ,CAAC,EAAE,OAAO,oBAAoB,EAAE,QAAQ,CAAA;IAChD,8GAA8G;IAC9G,cAAc,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAA;CAC3C;AAID;;;;;;;;;;;;;;GAcG;AACH,qBAAa,SAAU,YAAW,OAAO;IACvC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAC5C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAuC;IACvE,OAAO,CAAC,OAAO,CAAmD;IAElE;;;;OAIG;gBACS,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,eAAe;IAWpD;;;;;;OAMG;IACG,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAczD;;;;;;OAMG;IACG,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAkBnD;;;;;OAKG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWxC;;;;;;OAMG;IACG,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IA6B7C;;;;;OAKG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;YAO7C,UAAU;IAOxB,6EAA6E;IAC7E,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAIlC,OAAO,CAAC,UAAU;CAGnB"}
@@ -21,6 +21,7 @@ export class S3Storage {
21
21
  _bucket;
22
22
  _prefix;
23
23
  _region;
24
+ _searchStrategy;
24
25
  _client;
25
26
  /**
26
27
  * @param bucket - Target S3 bucket name
@@ -34,6 +35,7 @@ export class S3Storage {
34
35
  this._bucket = bucket;
35
36
  this._prefix = config?.prefix ? config.prefix.split('/').filter(Boolean).join('/') + '/' : '';
36
37
  this._region = config?.region;
38
+ this._searchStrategy = config?.searchStrategy;
37
39
  this._client = config?.s3Client;
38
40
  }
39
41
  /**
@@ -53,6 +55,9 @@ export class S3Storage {
53
55
  catch (error) {
54
56
  throw new StorageError(`Failed to write '${normalized}' to S3 bucket '${this._bucket}'`, { cause: error });
55
57
  }
58
+ if (this._searchStrategy) {
59
+ await this._searchStrategy.index?.(this, normalized, data);
60
+ }
56
61
  }
57
62
  /**
58
63
  * Retrieves the bytes previously stored under `key`.
@@ -136,6 +141,9 @@ export class S3Storage {
136
141
  * @returns All matches with relevance scores, ranked best-first
137
142
  */
138
143
  async search(query) {
144
+ if (this._searchStrategy) {
145
+ return this._searchStrategy.search(this, query);
146
+ }
139
147
  return KeywordSearchStrategy.search(this, query);
140
148
  }
141
149
  async _getClient() {
@@ -1 +1 @@
1
- {"version":3,"file":"s3-storage.js","sourceRoot":"","sources":["../../../src/storage/s3-storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"s3-storage.js","sourceRoot":"","sources":["../../../src/storage/s3-storage.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import type { Storage, StorageSearchResult } from '../storage.js';
1
+ import type { LocalFileStorage } from '../local-file-storage.js';
2
+ import type { StorageSearchResult } from '../storage.js';
2
3
  import type { SearchStrategy } from './types.js';
3
4
  /** Configuration for {@link QmdSearchStrategy}. */
4
5
  export interface QmdSearchStrategyConfig {
@@ -13,8 +14,7 @@ export interface QmdSearchStrategyConfig {
13
14
  * document frequency, and document length normalization.
14
15
  *
15
16
  * Works only with {@link LocalFileStorage} — reads `baseDir` from the storage
16
- * instance to know where files live on disk. Throws if passed a storage backend
17
- * without a `baseDir` property.
17
+ * instance to know where files live on disk.
18
18
  *
19
19
  * Requires `@tobilu/qmd` as a peer dependency.
20
20
  *
@@ -32,7 +32,7 @@ export interface QmdSearchStrategyConfig {
32
32
  * const results = await store.search('authentication flow')
33
33
  * ```
34
34
  */
35
- export declare class QmdSearchStrategy implements SearchStrategy {
35
+ export declare class QmdSearchStrategy implements SearchStrategy<LocalFileStorage> {
36
36
  private _store;
37
37
  private _storagePath;
38
38
  private readonly _config;
@@ -49,13 +49,13 @@ export declare class QmdSearchStrategy implements SearchStrategy {
49
49
  * @returns Matched keys with BM25 relevance scores, ranked best-first
50
50
  * @throws Error if storage is not a filesystem storage or `@tobilu/qmd` is not installed
51
51
  */
52
- search(storage: Storage, query: string): Promise<StorageSearchResult[]>;
52
+ search(storage: LocalFileStorage, query: string): Promise<StorageSearchResult[]>;
53
53
  /**
54
54
  * Re-indexes the backing storage directory without performing a search.
55
55
  *
56
56
  * @param storage - A LocalFileStorage instance
57
57
  */
58
- update(storage: Storage): Promise<void>;
58
+ update(storage: LocalFileStorage): Promise<void>;
59
59
  /**
60
60
  * Closes the QMD store and releases resources (SQLite connection).
61
61
  */
@@ -63,4 +63,8 @@ export declare class QmdSearchStrategy implements SearchStrategy {
63
63
  private _ensureStore;
64
64
  private _resolveStoragePath;
65
65
  }
66
+ /** Cross-SDK alias for {@link QmdSearchStrategy}. */
67
+ export { QmdSearchStrategy as Bm25SearchStrategy };
68
+ /** Cross-SDK alias for {@link QmdSearchStrategyConfig}. */
69
+ export type { QmdSearchStrategyConfig as Bm25SearchStrategyConfig };
66
70
  //# sourceMappingURL=qmd.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"qmd.d.ts","sourceRoot":"","sources":["../../../../src/storage/search/qmd.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAOhD,mDAAmD;AACnD,MAAM,WAAW,uBAAuB;IACtC,2HAA2H;IAC3H,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,iBAAkB,YAAW,cAAc;IACtD,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;gBAErC,MAAM,CAAC,EAAE,uBAAuB;IAI5C;;;;;;;;;;;OAWG;IACG,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAY7E;;;;OAIG;IACG,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAQd,YAAY;IA6B1B,OAAO,CAAC,mBAAmB;CAK5B"}
1
+ {"version":3,"file":"qmd.d.ts","sourceRoot":"","sources":["../../../../src/storage/search/qmd.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAOhD,mDAAmD;AACnD,MAAM,WAAW,uBAAuB;IACtC,2HAA2H;IAC3H,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,iBAAkB,YAAW,cAAc,CAAC,gBAAgB,CAAC;IACxE,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;gBAErC,MAAM,CAAC,EAAE,uBAAuB;IAI5C;;;;;;;;;;;OAWG;IACG,MAAM,CAAC,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAYtF;;;;OAIG;IACG,MAAM,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAQd,YAAY;IA6B1B,OAAO,CAAC,mBAAmB;CAG5B;AAmBD,qDAAqD;AACrD,OAAO,EAAE,iBAAiB,IAAI,kBAAkB,EAAE,CAAA;AAClD,2DAA2D;AAC3D,YAAY,EAAE,uBAAuB,IAAI,wBAAwB,EAAE,CAAA"}
@@ -9,8 +9,7 @@ const COLLECTION_PREFIX = `${COLLECTION_NAME}/`;
9
9
  * document frequency, and document length normalization.
10
10
  *
11
11
  * Works only with {@link LocalFileStorage} — reads `baseDir` from the storage
12
- * instance to know where files live on disk. Throws if passed a storage backend
13
- * without a `baseDir` property.
12
+ * instance to know where files live on disk.
14
13
  *
15
14
  * Requires `@tobilu/qmd` as a peer dependency.
16
15
  *
@@ -109,10 +108,7 @@ export class QmdSearchStrategy {
109
108
  return this._store;
110
109
  }
111
110
  _resolveStoragePath(storage) {
112
- const baseDir = storage.baseDir;
113
- if (typeof baseDir === 'string')
114
- return baseDir;
115
- throw new Error('QmdSearchStrategy requires a storage backend with a baseDir property (e.g. LocalFileStorage)');
111
+ return storage.baseDir;
116
112
  }
117
113
  }
118
114
  function buildQuery(query) {
@@ -121,4 +117,6 @@ function buildQuery(query) {
121
117
  return null;
122
118
  return terms.join(' ');
123
119
  }
120
+ /** Cross-SDK alias for {@link QmdSearchStrategy}. */
121
+ export { QmdSearchStrategy as Bm25SearchStrategy };
124
122
  //# sourceMappingURL=qmd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"qmd.js","sourceRoot":"","sources":["../../../../src/storage/search/qmd.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qmd.js","sourceRoot":"","sources":["../../../../src/storage/search/qmd.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,19 @@ import type { Storage, StorageSearchResult } from '../storage.js';
11
11
  * to `string` (a natural-language query). Strategies that support richer queries
12
12
  * (e.g. a pre-computed embedding vector with metadata filters) can widen this type.
13
13
  */
14
- export interface SearchStrategy<SearchQuery = string> {
14
+ export interface SearchStrategy<S extends Storage = Storage, SearchQuery = string> {
15
+ /**
16
+ * Indexes a single entry for future searches.
17
+ *
18
+ * Called on each write so strategies that maintain an index (FTS5, vector,
19
+ * etc.) can update incrementally. Strategies that search on the fly
20
+ * (keyword) or manage their own indexing (QMD) can omit this.
21
+ *
22
+ * @param storage - The storage backend the entry belongs to
23
+ * @param key - The storage key being written
24
+ * @param data - The raw bytes being stored
25
+ */
26
+ index?: (storage: S, key: string, data: Uint8Array) => Promise<void>;
15
27
  /**
16
28
  * Searches content in `storage` matching `query`.
17
29
  *
@@ -19,6 +31,6 @@ export interface SearchStrategy<SearchQuery = string> {
19
31
  * @param query - A string query or strategy-specific query object
20
32
  * @returns Matched keys with relevance scores, ranked best-first
21
33
  */
22
- search(storage: Storage, query: SearchQuery): Promise<StorageSearchResult[]>;
34
+ search(storage: S, query: SearchQuery): Promise<StorageSearchResult[]>;
23
35
  }
24
36
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/storage/search/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAEjE;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,cAAc,CAAC,WAAW,GAAG,MAAM;IAClD;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAA;CAC7E"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/storage/search/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAEjE;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,EAAE,WAAW,GAAG,MAAM;IAC/E;;;;;;;;;;OAUG;IACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAEpE;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAA;CACvE"}