@strands-agents/sdk 1.13.0 → 1.15.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 (260) hide show
  1. package/dist/src/agent/agent-as-tool.d.ts.map +1 -1
  2. package/dist/src/agent/agent-as-tool.js +8 -2
  3. package/dist/src/agent/agent-as-tool.js.map +1 -1
  4. package/dist/src/agent/agent-delegation.d.ts +9 -30
  5. package/dist/src/agent/agent-delegation.d.ts.map +1 -1
  6. package/dist/src/agent/agent-delegation.js +26 -98
  7. package/dist/src/agent/agent-delegation.js.map +1 -1
  8. package/dist/src/agent/agent.d.ts +49 -15
  9. package/dist/src/agent/agent.d.ts.map +1 -1
  10. package/dist/src/agent/agent.js +193 -60
  11. package/dist/src/agent/agent.js.map +1 -1
  12. package/dist/src/agent/continuation.d.ts +77 -0
  13. package/dist/src/agent/continuation.d.ts.map +1 -0
  14. package/dist/src/agent/continuation.js +167 -0
  15. package/dist/src/agent/continuation.js.map +1 -0
  16. package/dist/src/agent/tool-caller.d.ts.map +1 -1
  17. package/dist/src/agent/tool-caller.js +1 -0
  18. package/dist/src/agent/tool-caller.js.map +1 -1
  19. package/dist/src/background-tasks/errors.d.ts +8 -0
  20. package/dist/src/background-tasks/errors.d.ts.map +1 -0
  21. package/dist/src/background-tasks/errors.js +11 -0
  22. package/dist/src/background-tasks/errors.js.map +1 -0
  23. package/dist/src/background-tasks/in-process/engine.d.ts +96 -0
  24. package/dist/src/background-tasks/in-process/engine.d.ts.map +1 -0
  25. package/dist/src/background-tasks/in-process/engine.js +322 -0
  26. package/dist/src/background-tasks/in-process/engine.js.map +1 -0
  27. package/dist/src/background-tasks/in-process/types.d.ts +76 -0
  28. package/dist/src/background-tasks/in-process/types.d.ts.map +1 -0
  29. package/dist/src/background-tasks/in-process/types.js +2 -0
  30. package/dist/src/background-tasks/in-process/types.js.map +1 -0
  31. package/dist/src/context-manager/context-manager.d.ts +30 -0
  32. package/dist/src/context-manager/context-manager.d.ts.map +1 -0
  33. package/dist/src/context-manager/context-manager.js +89 -0
  34. package/dist/src/context-manager/context-manager.js.map +1 -0
  35. package/dist/src/context-manager/methods/summarize.d.ts +41 -0
  36. package/dist/src/context-manager/methods/summarize.d.ts.map +1 -0
  37. package/dist/src/context-manager/methods/summarize.js +108 -0
  38. package/dist/src/context-manager/methods/summarize.js.map +1 -0
  39. package/dist/src/context-manager/methods/truncate.d.ts +36 -0
  40. package/dist/src/context-manager/methods/truncate.d.ts.map +1 -0
  41. package/dist/src/context-manager/methods/truncate.js +86 -0
  42. package/dist/src/context-manager/methods/truncate.js.map +1 -0
  43. package/dist/src/context-manager/modes/agentic/agentic-context.d.ts +1 -2
  44. package/dist/src/context-manager/modes/agentic/agentic-context.d.ts.map +1 -1
  45. package/dist/src/context-manager/modes/agentic/agentic-context.js +6 -3
  46. package/dist/src/context-manager/modes/agentic/agentic-context.js.map +1 -1
  47. package/dist/src/context-manager/strategies/offload/base.d.ts +140 -0
  48. package/dist/src/context-manager/strategies/offload/base.d.ts.map +1 -0
  49. package/dist/src/context-manager/strategies/offload/base.js +376 -0
  50. package/dist/src/context-manager/strategies/offload/base.js.map +1 -0
  51. package/dist/src/context-manager/strategies/offload/drop.d.ts +19 -0
  52. package/dist/src/context-manager/strategies/offload/drop.d.ts.map +1 -0
  53. package/dist/src/context-manager/strategies/offload/drop.js +31 -0
  54. package/dist/src/context-manager/strategies/offload/drop.js.map +1 -0
  55. package/dist/src/context-manager/strategies/offload/index.d.ts +43 -0
  56. package/dist/src/context-manager/strategies/offload/index.d.ts.map +1 -0
  57. package/dist/src/context-manager/strategies/offload/index.js +37 -0
  58. package/dist/src/context-manager/strategies/offload/index.js.map +1 -0
  59. package/dist/src/context-manager/strategies/offload/summarize.d.ts +22 -0
  60. package/dist/src/context-manager/strategies/offload/summarize.d.ts.map +1 -0
  61. package/dist/src/context-manager/strategies/offload/summarize.js +104 -0
  62. package/dist/src/context-manager/strategies/offload/summarize.js.map +1 -0
  63. package/dist/src/context-manager/strategies/offload/truncate.d.ts +21 -0
  64. package/dist/src/context-manager/strategies/offload/truncate.d.ts.map +1 -0
  65. package/dist/src/context-manager/strategies/offload/truncate.js +66 -0
  66. package/dist/src/context-manager/strategies/offload/truncate.js.map +1 -0
  67. package/dist/src/context-manager/types.d.ts +50 -0
  68. package/dist/src/context-manager/types.d.ts.map +1 -0
  69. package/dist/src/context-manager/types.js +5 -0
  70. package/dist/src/context-manager/types.js.map +1 -0
  71. package/dist/src/hooks/events.d.ts +6 -5
  72. package/dist/src/hooks/events.d.ts.map +1 -1
  73. package/dist/src/hooks/events.js +5 -4
  74. package/dist/src/hooks/events.js.map +1 -1
  75. package/dist/src/hooks/types.d.ts +1 -0
  76. package/dist/src/hooks/types.d.ts.map +1 -1
  77. package/dist/src/hooks/types.js +1 -0
  78. package/dist/src/hooks/types.js.map +1 -1
  79. package/dist/src/index.d.ts +4 -2
  80. package/dist/src/index.d.ts.map +1 -1
  81. package/dist/src/index.js +3 -1
  82. package/dist/src/index.js.map +1 -1
  83. package/dist/src/injection/message-injection.d.ts +12 -9
  84. package/dist/src/injection/message-injection.d.ts.map +1 -1
  85. package/dist/src/injection/message-injection.js +17 -16
  86. package/dist/src/injection/message-injection.js.map +1 -1
  87. package/dist/src/mcp/client.d.ts.map +1 -1
  88. package/dist/src/mcp/client.js +9 -0
  89. package/dist/src/mcp/client.js.map +1 -1
  90. package/dist/src/middleware/stages.d.ts +15 -2
  91. package/dist/src/middleware/stages.d.ts.map +1 -1
  92. package/dist/src/middleware/stages.js.map +1 -1
  93. package/dist/src/mime.d.ts +1 -0
  94. package/dist/src/mime.d.ts.map +1 -1
  95. package/dist/src/mime.js.map +1 -1
  96. package/dist/src/models/anthropic.d.ts +26 -1
  97. package/dist/src/models/anthropic.d.ts.map +1 -1
  98. package/dist/src/models/anthropic.js +178 -54
  99. package/dist/src/models/anthropic.js.map +1 -1
  100. package/dist/src/models/bedrock.d.ts +36 -17
  101. package/dist/src/models/bedrock.d.ts.map +1 -1
  102. package/dist/src/models/bedrock.js +166 -34
  103. package/dist/src/models/bedrock.js.map +1 -1
  104. package/dist/src/models/google/adapters.d.ts.map +1 -1
  105. package/dist/src/models/google/adapters.js +18 -4
  106. package/dist/src/models/google/adapters.js.map +1 -1
  107. package/dist/src/models/google/model.d.ts.map +1 -1
  108. package/dist/src/models/google/model.js +9 -7
  109. package/dist/src/models/google/model.js.map +1 -1
  110. package/dist/src/models/google/types.d.ts +2 -0
  111. package/dist/src/models/google/types.d.ts.map +1 -1
  112. package/dist/src/models/model.d.ts +72 -5
  113. package/dist/src/models/model.d.ts.map +1 -1
  114. package/dist/src/models/model.js +15 -0
  115. package/dist/src/models/model.js.map +1 -1
  116. package/dist/src/models/openai/cache.d.ts +31 -0
  117. package/dist/src/models/openai/cache.d.ts.map +1 -0
  118. package/dist/src/models/openai/cache.js +56 -0
  119. package/dist/src/models/openai/cache.js.map +1 -0
  120. package/dist/src/models/openai/chat-adapter.d.ts.map +1 -1
  121. package/dist/src/models/openai/chat-adapter.js +2 -0
  122. package/dist/src/models/openai/chat-adapter.js.map +1 -1
  123. package/dist/src/models/openai/model.d.ts.map +1 -1
  124. package/dist/src/models/openai/model.js +14 -3
  125. package/dist/src/models/openai/model.js.map +1 -1
  126. package/dist/src/models/openai/responses-adapter.d.ts.map +1 -1
  127. package/dist/src/models/openai/responses-adapter.js +3 -1
  128. package/dist/src/models/openai/responses-adapter.js.map +1 -1
  129. package/dist/src/models/openai/types.d.ts +5 -1
  130. package/dist/src/models/openai/types.d.ts.map +1 -1
  131. package/dist/src/models/routing/fallback-strategy.d.ts +13 -0
  132. package/dist/src/models/routing/fallback-strategy.d.ts.map +1 -0
  133. package/dist/src/models/routing/fallback-strategy.js +33 -0
  134. package/dist/src/models/routing/fallback-strategy.js.map +1 -0
  135. package/dist/src/models/routing/index.d.ts +11 -0
  136. package/dist/src/models/routing/index.d.ts.map +1 -0
  137. package/dist/src/models/routing/index.js +9 -0
  138. package/dist/src/models/routing/index.js.map +1 -0
  139. package/dist/src/models/routing/router.d.ts +161 -0
  140. package/dist/src/models/routing/router.d.ts.map +1 -0
  141. package/dist/src/models/routing/router.js +474 -0
  142. package/dist/src/models/routing/router.js.map +1 -0
  143. package/dist/src/models/routing/strategy.d.ts +53 -0
  144. package/dist/src/models/routing/strategy.d.ts.map +1 -0
  145. package/dist/src/models/routing/strategy.js +2 -0
  146. package/dist/src/models/routing/strategy.js.map +1 -0
  147. package/dist/src/models/streaming.d.ts +12 -0
  148. package/dist/src/models/streaming.d.ts.map +1 -1
  149. package/dist/src/models/streaming.js +17 -0
  150. package/dist/src/models/streaming.js.map +1 -1
  151. package/dist/src/multiagent/plugins.d.ts +3 -1
  152. package/dist/src/multiagent/plugins.d.ts.map +1 -1
  153. package/dist/src/multiagent/plugins.js +6 -1
  154. package/dist/src/multiagent/plugins.js.map +1 -1
  155. package/dist/src/plugins/registry.d.ts +3 -1
  156. package/dist/src/plugins/registry.d.ts.map +1 -1
  157. package/dist/src/plugins/registry.js +6 -1
  158. package/dist/src/plugins/registry.js.map +1 -1
  159. package/dist/src/retry/default-model-retry-strategy.d.ts +3 -8
  160. package/dist/src/retry/default-model-retry-strategy.d.ts.map +1 -1
  161. package/dist/src/retry/default-model-retry-strategy.js +3 -8
  162. package/dist/src/retry/default-model-retry-strategy.js.map +1 -1
  163. package/dist/src/retry/model-retry-strategy.d.ts +6 -9
  164. package/dist/src/retry/model-retry-strategy.d.ts.map +1 -1
  165. package/dist/src/retry/model-retry-strategy.js +8 -12
  166. package/dist/src/retry/model-retry-strategy.js.map +1 -1
  167. package/dist/src/session/session-manager.d.ts +4 -0
  168. package/dist/src/session/session-manager.d.ts.map +1 -1
  169. package/dist/src/session/session-manager.js +6 -0
  170. package/dist/src/session/session-manager.js.map +1 -1
  171. package/dist/src/storage/in-memory-storage.d.ts +8 -1
  172. package/dist/src/storage/in-memory-storage.d.ts.map +1 -1
  173. package/dist/src/storage/in-memory-storage.js +10 -0
  174. package/dist/src/storage/in-memory-storage.js.map +1 -1
  175. package/dist/src/storage/local-file-storage.d.ts +8 -1
  176. package/dist/src/storage/local-file-storage.d.ts.map +1 -1
  177. package/dist/src/storage/local-file-storage.js +10 -0
  178. package/dist/src/storage/local-file-storage.js.map +1 -1
  179. package/dist/src/storage/s3-storage.d.ts +8 -1
  180. package/dist/src/storage/s3-storage.d.ts.map +1 -1
  181. package/dist/src/storage/s3-storage.js +10 -0
  182. package/dist/src/storage/s3-storage.js.map +1 -1
  183. package/dist/src/storage/search/index.d.ts +13 -0
  184. package/dist/src/storage/search/index.d.ts.map +1 -0
  185. package/dist/src/storage/search/index.js +11 -0
  186. package/dist/src/storage/search/index.js.map +1 -0
  187. package/dist/src/storage/search/keyword.d.ts +23 -0
  188. package/dist/src/storage/search/keyword.d.ts.map +1 -0
  189. package/dist/src/storage/search/keyword.js +53 -0
  190. package/dist/src/storage/search/keyword.js.map +1 -0
  191. package/dist/src/storage/search/types.d.ts +24 -0
  192. package/dist/src/storage/search/types.d.ts.map +1 -0
  193. package/dist/src/storage/search/types.js +2 -0
  194. package/dist/src/storage/search/types.js.map +1 -0
  195. package/dist/src/storage/storage.d.ts +46 -1
  196. package/dist/src/storage/storage.d.ts.map +1 -1
  197. package/dist/src/storage/storage.js +22 -0
  198. package/dist/src/storage/storage.js.map +1 -1
  199. package/dist/src/telemetry/meter.d.ts +8 -6
  200. package/dist/src/telemetry/meter.d.ts.map +1 -1
  201. package/dist/src/telemetry/meter.js +8 -7
  202. package/dist/src/telemetry/meter.js.map +1 -1
  203. package/dist/src/telemetry/tracer.d.ts.map +1 -1
  204. package/dist/src/telemetry/tracer.js +9 -2
  205. package/dist/src/telemetry/tracer.js.map +1 -1
  206. package/dist/src/tools/executors/executor.d.ts +2 -0
  207. package/dist/src/tools/executors/executor.d.ts.map +1 -1
  208. package/dist/src/tools/executors/executor.js +6 -4
  209. package/dist/src/tools/executors/executor.js.map +1 -1
  210. package/dist/src/tools/executors/sequential.d.ts +1 -1
  211. package/dist/src/tools/executors/sequential.js +2 -2
  212. package/dist/src/tools/executors/sequential.js.map +1 -1
  213. package/dist/src/tools/mcp-tool.d.ts +2 -1
  214. package/dist/src/tools/mcp-tool.d.ts.map +1 -1
  215. package/dist/src/tools/mcp-tool.js +2 -1
  216. package/dist/src/tools/mcp-tool.js.map +1 -1
  217. package/dist/src/tools/tool.d.ts +2 -0
  218. package/dist/src/tools/tool.d.ts.map +1 -1
  219. package/dist/src/tools/tool.js.map +1 -1
  220. package/dist/src/tools/types.d.ts +8 -0
  221. package/dist/src/tools/types.d.ts.map +1 -1
  222. package/dist/src/tsconfig.tsbuildinfo +1 -1
  223. package/dist/src/types/agent.d.ts +14 -4
  224. package/dist/src/types/agent.d.ts.map +1 -1
  225. package/dist/src/types/agent.js +3 -2
  226. package/dist/src/types/agent.js.map +1 -1
  227. package/dist/src/types/media.d.ts +65 -3
  228. package/dist/src/types/media.d.ts.map +1 -1
  229. package/dist/src/types/media.js +68 -1
  230. package/dist/src/types/media.js.map +1 -1
  231. package/dist/src/types/messages.d.ts +6 -4
  232. package/dist/src/types/messages.d.ts.map +1 -1
  233. package/dist/src/types/messages.js +4 -1
  234. package/dist/src/types/messages.js.map +1 -1
  235. package/dist/src/vended-memory-stores/bedrock-knowledge-base/store.d.ts +11 -0
  236. package/dist/src/vended-memory-stores/bedrock-knowledge-base/store.d.ts.map +1 -1
  237. package/dist/src/vended-memory-stores/bedrock-knowledge-base/store.js +53 -3
  238. package/dist/src/vended-memory-stores/bedrock-knowledge-base/store.js.map +1 -1
  239. package/dist/src/vended-memory-stores/file-memory-store/index.d.ts +3 -0
  240. package/dist/src/vended-memory-stores/file-memory-store/index.d.ts.map +1 -0
  241. package/dist/src/vended-memory-stores/file-memory-store/index.js +2 -0
  242. package/dist/src/vended-memory-stores/file-memory-store/index.js.map +1 -0
  243. package/dist/src/vended-memory-stores/file-memory-store/store.d.ts +104 -0
  244. package/dist/src/vended-memory-stores/file-memory-store/store.d.ts.map +1 -0
  245. package/dist/src/vended-memory-stores/file-memory-store/store.js +237 -0
  246. package/dist/src/vended-memory-stores/file-memory-store/store.js.map +1 -0
  247. package/dist/src/vended-memory-stores/test-memory-store/store.d.ts.map +1 -1
  248. package/dist/src/vended-memory-stores/test-memory-store/store.js +2 -25
  249. package/dist/src/vended-memory-stores/test-memory-store/store.js.map +1 -1
  250. package/dist/src/vended-plugins/context-offloader/plugin.d.ts.map +1 -1
  251. package/dist/src/vended-plugins/context-offloader/plugin.js +2 -8
  252. package/dist/src/vended-plugins/context-offloader/plugin.js.map +1 -1
  253. package/dist/src/vended-tools/http-request/http-request.d.ts +1 -1
  254. package/dist/src/vended-tools/http-request/http-request.js +2 -2
  255. package/dist/src/vended-tools/http-request/http-request.js.map +1 -1
  256. package/dist/src/vended-tools/sleep/make-sleep.d.ts +4 -6
  257. package/dist/src/vended-tools/sleep/make-sleep.d.ts.map +1 -1
  258. package/dist/src/vended-tools/sleep/make-sleep.js +5 -7
  259. package/dist/src/vended-tools/sleep/make-sleep.js.map +1 -1
  260. package/package.json +16 -4
@@ -16,6 +16,35 @@ function toAttributeValue(value) {
16
16
  }
17
17
  return undefined;
18
18
  }
19
+ /** Unwraps the `NumericValue` wrapper (aws/aws-sdk-js-v3#8246) to the stored number; anything else passes through. */
20
+ function fromAttributeValue(value) {
21
+ if (value === null || typeof value !== 'object' || Array.isArray(value))
22
+ return value;
23
+ const { string: encoded, type } = value;
24
+ if (typeof encoded !== 'string' || type !== 'bigDecimal')
25
+ return value;
26
+ // Number('') and Number(' ') are 0, which would coerce a blank payload instead of preserving it.
27
+ if (encoded.trim() === '')
28
+ return value;
29
+ const parsed = Number(encoded);
30
+ return Number.isFinite(parsed) ? parsed : value;
31
+ }
32
+ /**
33
+ * Whether a retrieval score sits inside the configured `minScore` / `maxScore` bound.
34
+ *
35
+ * Unset bounds keep everything. A result the knowledge base did not score is also kept: there is
36
+ * nothing to compare it against, and a bound should not silently discard entries whose relevance is
37
+ * unknown.
38
+ */
39
+ function passesScoreBound(score, minScore, maxScore) {
40
+ if (score == null)
41
+ return true;
42
+ if (minScore !== undefined)
43
+ return score >= minScore;
44
+ if (maxScore !== undefined)
45
+ return score <= maxScore;
46
+ return true;
47
+ }
19
48
  /**
20
49
  * A {@link MemoryStore} backed by Amazon Bedrock Knowledge Bases. Supports semantic search via
21
50
  * Retrieve and document ingestion via IngestKnowledgeBaseDocuments for CUSTOM and S3 data sources.
@@ -48,6 +77,8 @@ export class BedrockKnowledgeBaseStore {
48
77
  name;
49
78
  description;
50
79
  maxSearchResults;
80
+ minScore;
81
+ maxScore;
51
82
  writable;
52
83
  extraction;
53
84
  _runtimeClient;
@@ -76,7 +107,7 @@ export class BedrockKnowledgeBaseStore {
76
107
  /** Document-level access control entries stamped on every write, for ACL-aware data sources. */
77
108
  accessControlList;
78
109
  constructor(options) {
79
- const { config, scope, name, description, writable, maxSearchResults, filter, extraction, accessControlList } = options;
110
+ const { config, scope, name, description, writable, maxSearchResults, minScore, maxScore, filter, extraction, accessControlList, } = options;
80
111
  this.name = name;
81
112
  if (description !== undefined)
82
113
  this.description = description;
@@ -86,6 +117,13 @@ export class BedrockKnowledgeBaseStore {
86
117
  }
87
118
  this.maxSearchResults = maxSearchResults;
88
119
  }
120
+ if (minScore !== undefined && maxScore !== undefined) {
121
+ throw new Error(`BedrockKnowledgeBaseStore: minScore and maxScore are mutually exclusive, but both are set (minScore=${minScore}, maxScore=${maxScore}).`);
122
+ }
123
+ if (minScore !== undefined)
124
+ this.minScore = minScore;
125
+ if (maxScore !== undefined)
126
+ this.maxScore = maxScore;
89
127
  this.writable = writable ?? false;
90
128
  if (extraction !== undefined)
91
129
  this.extraction = extraction;
@@ -144,6 +182,11 @@ export class BedrockKnowledgeBaseStore {
144
182
  * @returns Matching memory entries ordered by relevance. Each entry's `metadata` includes
145
183
  * user-provided attributes plus two reserved synthetic keys: `_relevanceScore` (number) and
146
184
  * `_sourceLocation` (Bedrock retrieval location object).
185
+ *
186
+ * When the store sets `minScore` or `maxScore`, results are filtered on that bound after the
187
+ * knowledge base retrieval, so fewer than `maxSearchResults` entries may come back, and a query
188
+ * the knowledge base has no good answer for can legitimately return none. A result the knowledge
189
+ * base did not score is kept.
147
190
  */
148
191
  async search(query, options) {
149
192
  if (options?.maxSearchResults !== undefined && options.maxSearchResults < 1) {
@@ -171,11 +214,14 @@ export class BedrockKnowledgeBaseStore {
171
214
  logger.error(`store=<${this.name}>, knowledgeBaseId=<${this._knowledgeBaseId}>, error=<${error}> | knowledge base retrieve failed`, error);
172
215
  throw error;
173
216
  }
174
- return (response.retrievalResults ?? []).map((result) => {
217
+ const results = response.retrievalResults ?? [];
218
+ const entries = results
219
+ .filter((result) => passesScoreBound(result.score, this.minScore, this.maxScore))
220
+ .map((result) => {
175
221
  const metadata = {};
176
222
  if (result.metadata) {
177
223
  for (const [key, value] of Object.entries(result.metadata)) {
178
- metadata[key] = value;
224
+ metadata[key] = fromAttributeValue(value);
179
225
  }
180
226
  }
181
227
  if (result.location) {
@@ -189,6 +235,10 @@ export class BedrockKnowledgeBaseStore {
189
235
  metadata,
190
236
  };
191
237
  });
238
+ if (this.minScore !== undefined || this.maxScore !== undefined) {
239
+ logger.debug(`store=<${this.name}>, minScore=<${this.minScore}>, maxScore=<${this.maxScore}>, retrieved=<${results.length}>, kept=<${entries.length}> | score bound applied`);
240
+ }
241
+ return entries;
192
242
  }
193
243
  /**
194
244
  * Ingests `content` (with optional `metadata`) into the knowledge base.
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../../src/vended-memory-stores/bedrock-knowledge-base/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../../src/vended-memory-stores/bedrock-knowledge-base/store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { FileMemoryStore } from './store.js';
2
+ export type { FileMemoryStoreConfig, FileMemoryExtractionConfig } from './store.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/vended-memory-stores/file-memory-store/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,YAAY,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAA"}
@@ -0,0 +1,2 @@
1
+ export { FileMemoryStore } from './store.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/vended-memory-stores/file-memory-store/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA"}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * File-based memory store implementing the {@link MemoryStore} interface.
3
+ *
4
+ * Stores knowledge as markdown files under a `memory/` storage namespace. Provides keyword-based
5
+ * search via `search_memory` (registered by {@link MemoryManager}).
6
+ */
7
+ import type { MemoryEntry, MemoryStore, MemoryStoreConfig, SearchOptions } from '../../memory/types.js';
8
+ import type { ExtractionConfig } from '../../memory/extraction/types.js';
9
+ import type { JSONValue } from '../../types/json.js';
10
+ import type { Storage } from '../../storage/storage.js';
11
+ import type { Model } from '../../models/model.js';
12
+ /**
13
+ * Configuration for {@link FileMemoryStore}.
14
+ */
15
+ export interface FileMemoryStoreConfig extends MemoryStoreConfig {
16
+ /**
17
+ * The unified Storage backend for file operations. Defaults to LocalFileStorage at `./.strands/`.
18
+ * Keys are auto-scoped under `memory/<name>/` unless the provided storage is already namespaced, so
19
+ * stores with distinct names safely share one backend. Two stores with the same name on the same
20
+ * backend share storage — give them different names (or separate storage) to isolate them.
21
+ */
22
+ storage?: Storage;
23
+ /**
24
+ * Automatic-extraction config. Accepts the shared {@link ExtractionConfig} (trigger/extractor/filter)
25
+ * plus `model` and `systemPrompt` knobs for the built-in key-aware extractor — see
26
+ * {@link FileMemoryExtractionConfig}.
27
+ */
28
+ extraction?: boolean | FileMemoryExtractionConfig;
29
+ }
30
+ /**
31
+ * Extraction config for {@link FileMemoryStore}: the shared {@link ExtractionConfig} plus knobs for the
32
+ * store's built-in key-aware extractor. `model` and `systemPrompt` are ignored when an `extractor` is
33
+ * supplied — a custom extractor brings its own model and prompt.
34
+ */
35
+ export interface FileMemoryExtractionConfig extends ExtractionConfig {
36
+ /** Model the built-in extractor uses to distill facts. Defaults to the agent's own model; set a cheaper one to cut cost. */
37
+ model?: Model;
38
+ /**
39
+ * Framing that steers what counts as a durable fact, replacing the default guidance. The store always
40
+ * appends its own output contract (JSON array shape and heading-first layout) after it, so extraction
41
+ * stays parseable and append-on-topic keeps grouping — you retune what is extracted, not its structure.
42
+ */
43
+ systemPrompt?: string;
44
+ }
45
+ /**
46
+ * A file-based memory store backed by the unified {@link Storage} interface.
47
+ *
48
+ * Implements {@link MemoryStore} for use with {@link MemoryManager}. Knowledge is stored as plain
49
+ * markdown files under a `memory/` storage namespace. Retrieval uses keyword-based token-overlap
50
+ * scoring against filename and body content.
51
+ *
52
+ * The storage backend defaults to {@link LocalFileStorage}. Keys are auto-scoped under
53
+ * `memory/<name>/` (so a store named `agent-memory` with the default backend writes to
54
+ * `./.strands/memory/agent-memory/`).
55
+ *
56
+ * @example
57
+ * ```typescript
58
+ * import { Agent, MemoryManager } from '@strands-agents/sdk'
59
+ * import { FileMemoryStore } from '@strands-agents/sdk/vended-memory-stores/file-memory-store'
60
+ *
61
+ * const memoryStore = new FileMemoryStore({ name: 'agent-memory' })
62
+ *
63
+ * const agent = new Agent({
64
+ * model,
65
+ * memoryManager: new MemoryManager({ stores: [memoryStore], injection: false }),
66
+ * })
67
+ * ```
68
+ */
69
+ export declare class FileMemoryStore implements MemoryStore {
70
+ readonly name: string;
71
+ readonly writable: boolean;
72
+ readonly description?: string;
73
+ readonly maxSearchResults?: number;
74
+ readonly extraction?: boolean | ExtractionConfig;
75
+ private readonly _storage;
76
+ private readonly _writeLocks;
77
+ constructor(config: FileMemoryStoreConfig);
78
+ private _resolveExtraction;
79
+ private _resolveStorage;
80
+ /**
81
+ * Search knowledge files by delegating to the storage backend's `search()` when available,
82
+ * or falling back to a local keyword token-overlap scan.
83
+ *
84
+ * @param query - Natural-language search query
85
+ * @param options - Optional search configuration (e.g. maxSearchResults)
86
+ * @returns Top matches ranked by relevance.
87
+ */
88
+ search(query: string, options?: SearchOptions): Promise<MemoryEntry[]>;
89
+ private _keywordSearch;
90
+ /**
91
+ * Add a knowledge entry to the store.
92
+ *
93
+ * The filename is derived from the first line of content (slugified, truncated to 50 chars).
94
+ * If a file with the same slug already exists, new facts (lines after the heading) are appended
95
+ * to it rather than overwriting. This keeps extraction token-cheap (only headings are injected
96
+ * into the prompt) while avoiding data loss on repeated topics.
97
+ *
98
+ * @param content - The knowledge content to store
99
+ * @param _metadata - Unused; accepted for interface compatibility with the ExtractionCoordinator
100
+ * @returns The canonical storage key the entry was written under
101
+ */
102
+ add(content: string, _metadata?: Record<string, JSONValue>): Promise<string>;
103
+ }
104
+ //# sourceMappingURL=store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../../src/vended-memory-stores/file-memory-store/store.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACvG,OAAO,KAAK,EAAE,gBAAgB,EAAiD,MAAM,kCAAkC,CAAA;AACvH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAA;AAElD;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,iBAAiB;IAC9D;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,GAAG,0BAA0B,CAAA;CAClD;AAED;;;;GAIG;AACH,MAAM,WAAW,0BAA2B,SAAQ,gBAAgB;IAClE,4HAA4H;IAC5H,KAAK,CAAC,EAAE,KAAK,CAAA;IACb;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AA8ED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,eAAgB,YAAW,WAAW;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAA;IAEhD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqC;gBAErD,MAAM,EAAE,qBAAqB;IAUzC,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,eAAe;IAIvB;;;;;;;OAOG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;YAqB9D,cAAc;IAsC5B;;;;;;;;;;;OAWG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;CAgCnF"}
@@ -0,0 +1,237 @@
1
+ /**
2
+ * File-based memory store implementing the {@link MemoryStore} interface.
3
+ *
4
+ * Stores knowledge as markdown files under a `memory/` storage namespace. Provides keyword-based
5
+ * search via `search_memory` (registered by {@link MemoryManager}).
6
+ */
7
+ import { LocalFileStorage } from '../../storage/local-file-storage.js';
8
+ import { ModelExtractor } from '../../memory/extraction/model-extractor.js';
9
+ import { normalizeKey, resolveNamespace } from '../../storage/storage.js';
10
+ import { tokenize, tokenOverlapScore } from '../../storage/search/keyword.js';
11
+ import { logger } from '../../logging/logger.js';
12
+ /** Overridable framing (via {@link FileMemoryExtractionConfig.systemPrompt}) for what to extract. */
13
+ const DEFAULT_EXTRACTION_GUIDANCE = `You extract durable facts worth remembering across future conversations from a transcript.`;
14
+ /**
15
+ * Output contract the store owns and always appends after the (possibly overridden) guidance: the JSON
16
+ * array shape {@link ModelExtractor} parses and the heading-first layout {@link FileMemoryStore.add}
17
+ * slugifies to group facts. Appending it lets an overridden prompt retune guidance without breaking
18
+ * parsing or append-on-topic.
19
+ */
20
+ const EXTRACTION_CONTRACT = `Return ONLY a JSON array of objects: {"content": string}.
21
+
22
+ Group related facts into a single entry. The first line is a markdown heading (e.g. "# User preferences", "# Project setup", "# Team conventions"). Put each fact on its own line below the heading.
23
+
24
+ If there is nothing worth remembering, return [].`;
25
+ const DEFAULT_MAX_SEARCH_RESULTS = 10;
26
+ const STORAGE_NAMESPACE = 'memory';
27
+ /** Cap concurrent reads to avoid throttling on remote storage backends (e.g. S3). */
28
+ const BATCH_SIZE = 8;
29
+ const encoder = new TextEncoder();
30
+ const decoder = new TextDecoder();
31
+ /** Extract the filename stem (without `.md` extension) from a storage key. */
32
+ function basename(key) {
33
+ const filename = key.split('/').pop() ?? key;
34
+ return filename.replace(/\.md$/, '');
35
+ }
36
+ /** Convert text to a URL-safe kebab-case slug, truncated to 50 characters. */
37
+ function slugify(text) {
38
+ return text
39
+ .toLowerCase()
40
+ .replace(/[^a-z0-9\s-]/g, '')
41
+ .trim()
42
+ .replace(/\s+/g, '-')
43
+ .slice(0, 50)
44
+ .replace(/-+$/, '');
45
+ }
46
+ /**
47
+ * Creates an {@link Extractor} that injects the store's existing topic headings into the extraction
48
+ * prompt so the model reuses them, keeping related facts in one entry instead of fragmenting.
49
+ *
50
+ * Headings are read via `storage.list`, so this must be the store's own namespaced storage.
51
+ *
52
+ * @param storage - Storage the entries live under, listed to derive existing headings
53
+ * @param model - Model used to extract facts. Defaults to the agent's own model; set a cheaper one to cut cost.
54
+ * @param systemPrompt - Framing for what to extract, replacing {@link DEFAULT_EXTRACTION_GUIDANCE}. The
55
+ * {@link EXTRACTION_CONTRACT} is always appended after it.
56
+ * @returns An extractor that reuses existing topic headings.
57
+ */
58
+ function createKeyAwareExtractor(storage, model, systemPrompt) {
59
+ return {
60
+ async extract(messages, context) {
61
+ const existingKeys = await storage.list('');
62
+ const headings = existingKeys.map((key) => basename(key).replace(/-/g, ' '));
63
+ const framing = systemPrompt ?? DEFAULT_EXTRACTION_GUIDANCE;
64
+ let composedPrompt = `${framing}\n\n${EXTRACTION_CONTRACT}`;
65
+ if (headings.length > 0) {
66
+ composedPrompt += `\n\nExisting topics: ${headings.join(', ')}. Reuse an existing topic heading when new facts belong to it.`;
67
+ }
68
+ return new ModelExtractor({ systemPrompt: composedPrompt, ...(model !== undefined && { model }) }).extract(messages, context);
69
+ },
70
+ };
71
+ }
72
+ /**
73
+ * A file-based memory store backed by the unified {@link Storage} interface.
74
+ *
75
+ * Implements {@link MemoryStore} for use with {@link MemoryManager}. Knowledge is stored as plain
76
+ * markdown files under a `memory/` storage namespace. Retrieval uses keyword-based token-overlap
77
+ * scoring against filename and body content.
78
+ *
79
+ * The storage backend defaults to {@link LocalFileStorage}. Keys are auto-scoped under
80
+ * `memory/<name>/` (so a store named `agent-memory` with the default backend writes to
81
+ * `./.strands/memory/agent-memory/`).
82
+ *
83
+ * @example
84
+ * ```typescript
85
+ * import { Agent, MemoryManager } from '@strands-agents/sdk'
86
+ * import { FileMemoryStore } from '@strands-agents/sdk/vended-memory-stores/file-memory-store'
87
+ *
88
+ * const memoryStore = new FileMemoryStore({ name: 'agent-memory' })
89
+ *
90
+ * const agent = new Agent({
91
+ * model,
92
+ * memoryManager: new MemoryManager({ stores: [memoryStore], injection: false }),
93
+ * })
94
+ * ```
95
+ */
96
+ export class FileMemoryStore {
97
+ name;
98
+ writable;
99
+ description;
100
+ maxSearchResults;
101
+ extraction;
102
+ _storage;
103
+ _writeLocks = new Map();
104
+ constructor(config) {
105
+ this.name = config.name;
106
+ this.writable = config.writable ?? true;
107
+ if (config.description !== undefined)
108
+ this.description = config.description;
109
+ if (config.maxSearchResults !== undefined)
110
+ this.maxSearchResults = config.maxSearchResults;
111
+ this._storage = this._resolveStorage(config.storage ?? new LocalFileStorage());
112
+ const extraction = this._resolveExtraction(config);
113
+ if (extraction !== undefined)
114
+ this.extraction = extraction;
115
+ }
116
+ _resolveExtraction(config) {
117
+ if (!config.extraction)
118
+ return config.extraction;
119
+ if (config.extraction === true) {
120
+ return { extractor: createKeyAwareExtractor(this._storage) };
121
+ }
122
+ const { model, systemPrompt, ...rest } = config.extraction;
123
+ if (rest.extractor)
124
+ return rest;
125
+ return { ...rest, extractor: createKeyAwareExtractor(this._storage, model, systemPrompt) };
126
+ }
127
+ _resolveStorage(storage) {
128
+ return resolveNamespace(storage, `${STORAGE_NAMESPACE}/${this.name}`);
129
+ }
130
+ /**
131
+ * Search knowledge files by delegating to the storage backend's `search()` when available,
132
+ * or falling back to a local keyword token-overlap scan.
133
+ *
134
+ * @param query - Natural-language search query
135
+ * @param options - Optional search configuration (e.g. maxSearchResults)
136
+ * @returns Top matches ranked by relevance.
137
+ */
138
+ async search(query, options) {
139
+ const maxResults = options?.maxSearchResults ?? this.maxSearchResults ?? DEFAULT_MAX_SEARCH_RESULTS;
140
+ if (this._storage.search) {
141
+ const results = await this._storage.search(query);
142
+ const entries = [];
143
+ for (const result of results.slice(0, maxResults)) {
144
+ const bytes = await this._storage.read(result.key);
145
+ if (bytes) {
146
+ entries.push({
147
+ content: decoder.decode(bytes).trim(),
148
+ metadata: { path: result.key, score: result.score },
149
+ });
150
+ }
151
+ }
152
+ return entries;
153
+ }
154
+ return this._keywordSearch(query, maxResults);
155
+ }
156
+ async _keywordSearch(query, maxResults) {
157
+ const queryTokens = tokenize(query);
158
+ if (queryTokens.size === 0)
159
+ return [];
160
+ const allKeys = await this._storage.list('');
161
+ const scored = [];
162
+ for (let offset = 0; offset < allKeys.length; offset += BATCH_SIZE) {
163
+ const batch = await Promise.all(allKeys.slice(offset, offset + BATCH_SIZE).map(async (key) => {
164
+ try {
165
+ const bytes = await this._storage.read(key);
166
+ if (!bytes)
167
+ return null;
168
+ const body = decoder.decode(bytes);
169
+ const searchable = `${basename(key)} ${body}`;
170
+ const relevanceScore = tokenOverlapScore(queryTokens, searchable);
171
+ if (relevanceScore === 0)
172
+ return null;
173
+ return {
174
+ entry: { content: body.trim(), metadata: { path: key, score: relevanceScore } },
175
+ relevanceScore,
176
+ };
177
+ }
178
+ catch (error) {
179
+ logger.debug(`key=<${key}> | skipped unreadable memory entry: ${error}`);
180
+ return null;
181
+ }
182
+ }));
183
+ for (const result of batch) {
184
+ if (result)
185
+ scored.push(result);
186
+ }
187
+ }
188
+ scored.sort((a, b) => b.relevanceScore - a.relevanceScore);
189
+ return scored.slice(0, maxResults).map((s) => s.entry);
190
+ }
191
+ /**
192
+ * Add a knowledge entry to the store.
193
+ *
194
+ * The filename is derived from the first line of content (slugified, truncated to 50 chars).
195
+ * If a file with the same slug already exists, new facts (lines after the heading) are appended
196
+ * to it rather than overwriting. This keeps extraction token-cheap (only headings are injected
197
+ * into the prompt) while avoiding data loss on repeated topics.
198
+ *
199
+ * @param content - The knowledge content to store
200
+ * @param _metadata - Unused; accepted for interface compatibility with the ExtractionCoordinator
201
+ * @returns The canonical storage key the entry was written under
202
+ */
203
+ async add(content, _metadata) {
204
+ const lines = content.split(/\n/);
205
+ const firstLine = lines[0].replace(/^#+\s*/, '');
206
+ const key = `${slugify(firstLine) || `entry-${Date.now()}`}.md`;
207
+ const canonicalKey = normalizeKey(key).toLowerCase();
208
+ // Serialize writes per key to prevent lost-update from concurrent read-modify-write
209
+ const prev = this._writeLocks.get(canonicalKey) ?? Promise.resolve('');
210
+ const current = prev
211
+ .catch(() => { })
212
+ .then(async () => {
213
+ const existing = await this._storage.read(canonicalKey);
214
+ let merged;
215
+ if (existing) {
216
+ const existingContent = decoder.decode(existing);
217
+ const newFacts = lines.slice(1).join('\n').trim();
218
+ merged = newFacts ? `${existingContent.trimEnd()}\n${newFacts}` : existingContent;
219
+ }
220
+ else {
221
+ merged = content;
222
+ }
223
+ await this._storage.write(canonicalKey, encoder.encode(merged));
224
+ return canonicalKey;
225
+ });
226
+ this._writeLocks.set(canonicalKey, current);
227
+ try {
228
+ return await current;
229
+ }
230
+ finally {
231
+ if (this._writeLocks.get(canonicalKey) === current) {
232
+ this._writeLocks.delete(canonicalKey);
233
+ }
234
+ }
235
+ }
236
+ }
237
+ //# sourceMappingURL=store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../../src/vended-memory-stores/file-memory-store/store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../../src/vended-memory-stores/test-memory-store/store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACvG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAoBpD;;;;;GAKG;AACH,MAAM,WAAW,qBAAsB,SAAQ,iBAAiB;IAC9D;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,sDAAsD;AACtD,MAAM,WAAW,mBAAmB;IAClC,mCAAmC;IACnC,EAAE,EAAE,MAAM,CAAA;CACX;AAyCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,eAAgB,YAAW,WAAW;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAClC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAA;IAEhD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,6GAA6G;IAC7G,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB;IAClD;;;;OAIG;IACH,OAAO,CAAC,SAAS,CAA+C;IAChE,2FAA2F;IAC3F,OAAO,CAAC,WAAW,CAAsC;gBAE7C,OAAO,EAAE,qBAAqB;IAyB1C;;;;;;;;;;;;OAYG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IA2B5E;;;;;;;;;;;;;;OAcG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAiC9F;;;;;OAKG;YACW,QAAQ;IAqBtB;;;;;;;OAOG;YACW,KAAK;IA4CnB;;;;OAIG;YACW,MAAM;CAKrB"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../../src/vended-memory-stores/test-memory-store/store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACvG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAoBpD;;;;;GAKG;AACH,MAAM,WAAW,qBAAsB,SAAQ,iBAAiB;IAC9D;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,sDAAsD;AACtD,MAAM,WAAW,mBAAmB;IAClC,mCAAmC;IACnC,EAAE,EAAE,MAAM,CAAA;CACX;AAcD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,eAAgB,YAAW,WAAW;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAClC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAA;IAEhD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,6GAA6G;IAC7G,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB;IAClD;;;;OAIG;IACH,OAAO,CAAC,SAAS,CAA+C;IAChE,2FAA2F;IAC3F,OAAO,CAAC,WAAW,CAAsC;gBAE7C,OAAO,EAAE,qBAAqB;IAyB1C;;;;;;;;;;;;OAYG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IA2B5E;;;;;;;;;;;;;;OAcG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAiC9F;;;;;OAKG;YACW,QAAQ;IAqBtB;;;;;;;OAOG;YACW,KAAK;IA4CnB;;;;OAIG;YACW,MAAM;CAKrB"}
@@ -1,10 +1,11 @@
1
1
  import { v7 as uuidv7 } from 'uuid';
2
2
  import { InMemoryStorage } from '../../storage/in-memory-storage.js';
3
3
  import { LocalFileStorage } from '../../storage/local-file-storage.js';
4
- const DEFAULT_MAX_SEARCH_RESULTS = 10;
4
+ import { tokenize, tokenOverlapScore } from '../../storage/search/keyword.js';
5
5
  /**
6
6
  * Metadata key holding the token-overlap relevance score on a search result.
7
7
  */
8
+ const DEFAULT_MAX_SEARCH_RESULTS = 10;
8
9
  const RELEVANCE_SCORE_KEY = '_relevanceScore';
9
10
  /**
10
11
  * Sanitizes a store name into a safe single-path-segment filename.
@@ -17,30 +18,6 @@ function sanitizeName(name) {
17
18
  .replace(/[/\\]/g, '_')
18
19
  .replace(/[^\w\-.]/g, '_');
19
20
  }
20
- /**
21
- * Lowercases and splits text into a set of word tokens, dropping empties. Splits on any run of
22
- * characters that are not Unicode letters, numbers, or underscore. Ensures cross-SDK consistent
23
- * tokenization.
24
- */
25
- function tokenize(text) {
26
- return new Set(text
27
- .toLowerCase()
28
- .split(/[^\p{L}\p{N}_]+/u)
29
- .filter(Boolean));
30
- }
31
- /**
32
- * Lexical relevance score for one record: the number of distinct query tokens that appear in the
33
- * record's content. A higher count means more of the query's words are present. Returns 0 when there
34
- * is no overlap.
35
- */
36
- function tokenOverlapScore(queryTokens, content) {
37
- let score = 0;
38
- for (const token of tokenize(content)) {
39
- if (queryTokens.has(token))
40
- score++;
41
- }
42
- return score;
43
- }
44
21
  /**
45
22
  * A zero-infrastructure store {@link MemoryStore} that keeps entries in memory and by default
46
23
  * persists them to a local JSON file. Use for prototyping and testing.
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../../src/vended-memory-stores/test-memory-store/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../../src/vended-memory-stores/test-memory-store/store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/vended-plugins/context-offloader/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,KAAK,EAAE,IAAI,EAAe,MAAM,qBAAqB,CAAA;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAWtD,OAAO,EAAyD,KAAK,OAAO,IAAI,gBAAgB,EAAE,MAAM,cAAc,CAAA;AACtH,OAAO,EAAyB,KAAK,OAAO,EAAE,MAAM,0BAA0B,CAAA;AA0I9E,6DAA6D;AAC7D,MAAM,WAAW,sBAAsB;IACrC;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAA;IACpC,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,wEAAwE;IACxE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,mFAAmF;IACnF,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,gBAAiB,YAAW,MAAM;IAC7C,QAAQ,CAAC,IAAI,+BAA8B;IAE3C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CAAK;IAExD,OAAO,CAAC,mBAAmB,CAAuD;IAClF,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAS;IAC/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAe;IACjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAwD;IACxF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA4B;IACzD,OAAO,CAAC,cAAc,CAAkB;gBAE5B,MAAM,EAAE,sBAAsB;IAuB1C,OAAO,CAAC,qBAAqB;IAgB7B,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAoBlC,OAAO,CAAC,MAAM;IAiBd,QAAQ,IAAI,IAAI,EAAE;IAMlB,OAAO,CAAC,gBAAgB;IAexB,OAAO,CAAC,sBAAsB;IAQ9B,OAAO,CAAC,oBAAoB;YAmDd,WAAW;IAkCzB,OAAO,CAAC,iBAAiB;YAiCX,iBAAiB;CAwEhC"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/vended-plugins/context-offloader/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,KAAK,EAAE,IAAI,EAAe,MAAM,qBAAqB,CAAA;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAWtD,OAAO,EAAyD,KAAK,OAAO,IAAI,gBAAgB,EAAE,MAAM,cAAc,CAAA;AACtH,OAAO,EAAoB,KAAK,OAAO,EAAE,MAAM,0BAA0B,CAAA;AA0IzE,6DAA6D;AAC7D,MAAM,WAAW,sBAAsB;IACrC;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAA;IACpC,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,wEAAwE;IACxE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,mFAAmF;IACnF,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,gBAAiB,YAAW,MAAM;IAC7C,QAAQ,CAAC,IAAI,+BAA8B;IAE3C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CAAK;IAExD,OAAO,CAAC,mBAAmB,CAAuD;IAClF,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAS;IAC/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAe;IACjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAwD;IACxF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA4B;IACzD,OAAO,CAAC,cAAc,CAAkB;gBAE5B,MAAM,EAAE,sBAAsB;IAuB1C,OAAO,CAAC,qBAAqB;IAY7B,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAoBlC,OAAO,CAAC,MAAM;IAiBd,QAAQ,IAAI,IAAI,EAAE;IAMlB,OAAO,CAAC,gBAAgB;IAexB,OAAO,CAAC,sBAAsB;IAQ9B,OAAO,CAAC,oBAAoB;YAmDd,WAAW;IAkCzB,OAAO,CAAC,iBAAiB;YAiCX,iBAAiB;CAwEhC"}