@framers/agentos 0.1.255 → 0.2.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 (95) hide show
  1. package/README.md +33 -0
  2. package/dist/api/agent.d.ts +47 -6
  3. package/dist/api/agent.d.ts.map +1 -1
  4. package/dist/api/agent.js +16 -74
  5. package/dist/api/agent.js.map +1 -1
  6. package/dist/api/agentExport.js +1 -1
  7. package/dist/api/runtime/memoryProviderHooks.d.ts +33 -0
  8. package/dist/api/runtime/memoryProviderHooks.d.ts.map +1 -0
  9. package/dist/api/runtime/memoryProviderHooks.js +76 -0
  10. package/dist/api/runtime/memoryProviderHooks.js.map +1 -0
  11. package/dist/api/transferStyle.js +1 -1
  12. package/dist/cognitive_substrate/GMI.js +1 -1
  13. package/dist/core/config/VectorStoreConfiguration.d.ts +9 -16
  14. package/dist/core/config/VectorStoreConfiguration.d.ts.map +1 -1
  15. package/dist/core/config/VectorStoreConfiguration.js +9 -9
  16. package/dist/core/config/VectorStoreConfiguration.js.map +1 -1
  17. package/dist/core/validation/schema-primitives.js +1 -1
  18. package/dist/core/vector-store/IVectorStore.d.ts +29 -4
  19. package/dist/core/vector-store/IVectorStore.d.ts.map +1 -1
  20. package/dist/discovery/index.js +1 -1
  21. package/dist/emergent/SkillExporter.js +1 -1
  22. package/dist/emergent/index.js +1 -1
  23. package/dist/extensions/packs/provenance-pack.js +2 -2
  24. package/dist/index.d.ts +1 -1
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js.map +1 -1
  27. package/dist/media/video/VideoAnalyzer.js +1 -1
  28. package/dist/memory/CognitiveMemoryManager.d.ts.map +1 -1
  29. package/dist/memory/CognitiveMemoryManager.js +1 -0
  30. package/dist/memory/CognitiveMemoryManager.js.map +1 -1
  31. package/dist/memory/core/config.d.ts +12 -0
  32. package/dist/memory/core/config.d.ts.map +1 -1
  33. package/dist/memory/core/config.js.map +1 -1
  34. package/dist/memory/index.d.ts +1 -0
  35. package/dist/memory/index.d.ts.map +1 -1
  36. package/dist/memory/index.js +2 -0
  37. package/dist/memory/index.js.map +1 -1
  38. package/dist/memory/pipeline/observation/MemoryReflector.js +1 -1
  39. package/dist/memory/pipeline/observation/MemoryReflector.js.map +1 -1
  40. package/dist/memory/retrieval/graph/extraction/HeuristicEntityExtractor.d.ts +43 -0
  41. package/dist/memory/retrieval/graph/extraction/HeuristicEntityExtractor.d.ts.map +1 -0
  42. package/dist/memory/retrieval/graph/extraction/HeuristicEntityExtractor.js +108 -0
  43. package/dist/memory/retrieval/graph/extraction/HeuristicEntityExtractor.js.map +1 -0
  44. package/dist/memory/retrieval/graph/extraction/index.d.ts +5 -0
  45. package/dist/memory/retrieval/graph/extraction/index.d.ts.map +1 -0
  46. package/dist/memory/retrieval/graph/extraction/index.js +5 -0
  47. package/dist/memory/retrieval/graph/extraction/index.js.map +1 -0
  48. package/dist/memory/retrieval/store/MemoryStore.d.ts +22 -0
  49. package/dist/memory/retrieval/store/MemoryStore.d.ts.map +1 -1
  50. package/dist/memory/retrieval/store/MemoryStore.js +131 -3
  51. package/dist/memory/retrieval/store/MemoryStore.js.map +1 -1
  52. package/dist/provenance/config/PolicyProfiles.js +1 -1
  53. package/dist/rag/RetrievalAugmentor.d.ts.map +1 -1
  54. package/dist/rag/RetrievalAugmentor.js +10 -3
  55. package/dist/rag/RetrievalAugmentor.js.map +1 -1
  56. package/dist/rag/VectorStoreManager.d.ts.map +1 -1
  57. package/dist/rag/VectorStoreManager.js +3 -1
  58. package/dist/rag/VectorStoreManager.js.map +1 -1
  59. package/dist/rag/index.js +1 -1
  60. package/dist/rag/multimodal/MultimodalIndexer.js +1 -1
  61. package/dist/rag/multimodal/index.js +1 -1
  62. package/dist/rag/reranking/index.js +2 -2
  63. package/dist/rag/unified/UnifiedRetriever.js +2 -2
  64. package/dist/rag/unified/index.js +1 -1
  65. package/dist/rag/vector_stores/InMemoryVectorStore.d.ts +2 -1
  66. package/dist/rag/vector_stores/InMemoryVectorStore.d.ts.map +1 -1
  67. package/dist/rag/vector_stores/InMemoryVectorStore.js +42 -4
  68. package/dist/rag/vector_stores/InMemoryVectorStore.js.map +1 -1
  69. package/dist/rag/vector_stores/Neo4jVectorStore.d.ts +2 -1
  70. package/dist/rag/vector_stores/Neo4jVectorStore.d.ts.map +1 -1
  71. package/dist/rag/vector_stores/Neo4jVectorStore.js +57 -8
  72. package/dist/rag/vector_stores/Neo4jVectorStore.js.map +1 -1
  73. package/dist/rag/vector_stores/PineconeVectorStore.d.ts +15 -2
  74. package/dist/rag/vector_stores/PineconeVectorStore.d.ts.map +1 -1
  75. package/dist/rag/vector_stores/PineconeVectorStore.js +144 -16
  76. package/dist/rag/vector_stores/PineconeVectorStore.js.map +1 -1
  77. package/dist/rag/vector_stores/QdrantVectorStore.d.ts +2 -1
  78. package/dist/rag/vector_stores/QdrantVectorStore.d.ts.map +1 -1
  79. package/dist/rag/vector_stores/QdrantVectorStore.js +185 -14
  80. package/dist/rag/vector_stores/QdrantVectorStore.js.map +1 -1
  81. package/dist/rag/vector_stores/SqlVectorStore.d.ts +2 -1
  82. package/dist/rag/vector_stores/SqlVectorStore.d.ts.map +1 -1
  83. package/dist/rag/vector_stores/SqlVectorStore.js +51 -4
  84. package/dist/rag/vector_stores/SqlVectorStore.js.map +1 -1
  85. package/dist/safety/guardrails/index.js +2 -2
  86. package/dist/structured/output/index.js +1 -1
  87. package/dist/vision/SceneDetector.js +2 -2
  88. package/dist/vision/index.js +1 -1
  89. package/dist/vision/providers/LLMVisionProvider.js +1 -1
  90. package/dist/vision/providers/PipelineVisionProvider.js +2 -2
  91. package/dist/voice-pipeline/WebRTCStreamTransport.js +1 -1
  92. package/dist/voice-pipeline/index.js +1 -1
  93. package/dist/voice-pipeline/providers/AgentSessionVoiceAdapter.js +1 -1
  94. package/dist/web-search/index.js +1 -1
  95. package/package.json +1 -1
@@ -129,10 +129,10 @@ const buildQdrantFilter = (filter) => {
129
129
  if (Array.isArray(condition.$nin))
130
130
  addNotAny(key, condition.$nin.filter(isScalar));
131
131
  addRange(key, {
132
- gt: condition.$gt,
133
- gte: condition.$gte,
134
- lt: condition.$lt,
135
- lte: condition.$lte,
132
+ gt: typeof condition.$gt === 'number' ? condition.$gt : undefined,
133
+ gte: typeof condition.$gte === 'number' ? condition.$gte : undefined,
134
+ lt: typeof condition.$lt === 'number' ? condition.$lt : undefined,
135
+ lte: typeof condition.$lte === 'number' ? condition.$lte : undefined,
136
136
  });
137
137
  // Best-effort: `$contains` works for array payloads in Qdrant (any element equals).
138
138
  if (isScalar(condition.$contains))
@@ -147,6 +147,121 @@ const buildQdrantFilter = (filter) => {
147
147
  qFilter.must_not = must_not;
148
148
  return qFilter;
149
149
  };
150
+ const payloadToMetadata = (payload) => {
151
+ if (!payload || typeof payload !== 'object')
152
+ return undefined;
153
+ const metadata = {};
154
+ for (const [key, value] of Object.entries(payload)) {
155
+ if (key === RESERVED_TEXT_PAYLOAD_KEY)
156
+ continue;
157
+ const sanitized = sanitizeMetadataValue(value);
158
+ if (sanitized === undefined)
159
+ continue;
160
+ metadata[key] = sanitized;
161
+ }
162
+ return Object.keys(metadata).length > 0 ? metadata : undefined;
163
+ };
164
+ const matchesMetadataFilter = (metadata, filter) => {
165
+ if (!metadata) {
166
+ for (const key in filter) {
167
+ const condition = filter[key];
168
+ if (typeof condition === 'object' && condition !== null && condition.$exists === false) {
169
+ continue;
170
+ }
171
+ return false;
172
+ }
173
+ return true;
174
+ }
175
+ for (const key in filter) {
176
+ const docValue = metadata[key];
177
+ const filterValue = filter[key];
178
+ if (typeof filterValue === 'object' && filterValue !== null) {
179
+ if (!evaluateMetadataCondition(docValue, filterValue)) {
180
+ return false;
181
+ }
182
+ }
183
+ else if (Array.isArray(docValue)) {
184
+ if (!docValue.includes(filterValue)) {
185
+ return false;
186
+ }
187
+ }
188
+ else if (docValue !== filterValue) {
189
+ return false;
190
+ }
191
+ }
192
+ return true;
193
+ };
194
+ const evaluateMetadataCondition = (docValue, condition) => {
195
+ if (condition.$exists !== undefined) {
196
+ return condition.$exists === (docValue !== undefined);
197
+ }
198
+ if (docValue === undefined)
199
+ return false;
200
+ if (condition.$eq !== undefined && docValue !== condition.$eq)
201
+ return false;
202
+ if (condition.$ne !== undefined && docValue === condition.$ne)
203
+ return false;
204
+ if (typeof docValue === 'number') {
205
+ if (typeof condition.$gt === 'number' && !(docValue > condition.$gt))
206
+ return false;
207
+ if (typeof condition.$gte === 'number' && !(docValue >= condition.$gte))
208
+ return false;
209
+ if (typeof condition.$lt === 'number' && !(docValue < condition.$lt))
210
+ return false;
211
+ if (typeof condition.$lte === 'number' && !(docValue <= condition.$lte))
212
+ return false;
213
+ }
214
+ else if (typeof docValue === 'string') {
215
+ if (condition.$gt !== undefined && !(docValue > String(condition.$gt)))
216
+ return false;
217
+ if (condition.$gte !== undefined && !(docValue >= String(condition.$gte)))
218
+ return false;
219
+ if (condition.$lt !== undefined && !(docValue < String(condition.$lt)))
220
+ return false;
221
+ if (condition.$lte !== undefined && !(docValue <= String(condition.$lte)))
222
+ return false;
223
+ }
224
+ if (condition.$in !== undefined) {
225
+ if (!Array.isArray(condition.$in))
226
+ return false;
227
+ if (Array.isArray(docValue)) {
228
+ if (!docValue.some((value) => condition.$in.includes(value)))
229
+ return false;
230
+ }
231
+ else if (!condition.$in.includes(docValue)) {
232
+ return false;
233
+ }
234
+ }
235
+ if (condition.$nin !== undefined) {
236
+ if (!Array.isArray(condition.$nin))
237
+ return false;
238
+ if (Array.isArray(docValue)) {
239
+ if (docValue.some((value) => condition.$nin.includes(value)))
240
+ return false;
241
+ }
242
+ else if (condition.$nin.includes(docValue)) {
243
+ return false;
244
+ }
245
+ }
246
+ if (Array.isArray(docValue)) {
247
+ if (condition.$contains !== undefined && !docValue.includes(condition.$contains))
248
+ return false;
249
+ if (condition.$all !== undefined) {
250
+ if (!Array.isArray(condition.$all) || !condition.$all.every((value) => docValue.includes(value)))
251
+ return false;
252
+ }
253
+ }
254
+ else if (typeof docValue === 'string' && condition.$contains !== undefined && typeof condition.$contains === 'string') {
255
+ if (!docValue.includes(condition.$contains))
256
+ return false;
257
+ }
258
+ if (condition.$textSearch !== undefined) {
259
+ if (typeof docValue !== 'string' || !docValue.toLowerCase().includes(condition.$textSearch.toLowerCase())) {
260
+ return false;
261
+ }
262
+ }
263
+ return true;
264
+ };
150
265
  export class QdrantVectorStore {
151
266
  constructor() {
152
267
  this.isInitialized = false;
@@ -400,16 +515,8 @@ export class QdrantVectorStore {
400
515
  ? payload[RESERVED_TEXT_PAYLOAD_KEY]
401
516
  : undefined;
402
517
  let metadata;
403
- if (includeMetadata && payload && typeof payload === 'object') {
404
- metadata = {};
405
- for (const [key, value] of Object.entries(payload)) {
406
- if (key === RESERVED_TEXT_PAYLOAD_KEY)
407
- continue;
408
- const sanitized = sanitizeMetadataValue(value);
409
- if (sanitized === undefined)
410
- continue;
411
- metadata[key] = sanitized;
412
- }
518
+ if (includeMetadata) {
519
+ metadata = payloadToMetadata(payload);
413
520
  }
414
521
  let embedding;
415
522
  if (includeEmbedding && p.vector) {
@@ -458,6 +565,70 @@ export class QdrantVectorStore {
458
565
  stats: resp.data?.time ? { time: resp.data.time } : undefined,
459
566
  };
460
567
  }
568
+ async scanByMetadata(collectionName, options) {
569
+ this.ensureInitialized();
570
+ const encoded = encodeURIComponent(collectionName);
571
+ const limit = Math.max(1, options?.limit ?? 100);
572
+ const qFilter = buildQdrantFilter(options?.filter);
573
+ const withPayload = options?.includeMetadata !== false || Boolean(options?.includeTextContent) || Boolean(options?.filter);
574
+ const withVector = Boolean(options?.includeEmbedding);
575
+ const documents = [];
576
+ let offset = options?.cursor;
577
+ let pagesScanned = 0;
578
+ let totalCandidates = 0;
579
+ while (documents.length < limit) {
580
+ const body = {
581
+ limit: limit - documents.length,
582
+ with_payload: withPayload,
583
+ with_vector: withVector,
584
+ };
585
+ if (qFilter)
586
+ body.filter = qFilter;
587
+ if (offset !== undefined)
588
+ body.offset = offset;
589
+ const resp = await this.requestJson({
590
+ method: 'POST',
591
+ path: `/collections/${encoded}/points/scroll`,
592
+ body,
593
+ });
594
+ pagesScanned += 1;
595
+ const points = resp.data?.result?.points ?? [];
596
+ totalCandidates += points.length;
597
+ for (const point of points) {
598
+ const metadata = payloadToMetadata((point.payload ?? undefined));
599
+ if (options?.filter && !matchesMetadataFilter(metadata, options.filter)) {
600
+ continue;
601
+ }
602
+ const [retrieved] = this.toRetrievedDocs([point], {
603
+ includeEmbedding: options?.includeEmbedding,
604
+ includeMetadata: options?.includeMetadata,
605
+ includeTextContent: options?.includeTextContent,
606
+ });
607
+ documents.push({
608
+ ...retrieved,
609
+ similarityScore: 1,
610
+ });
611
+ if (documents.length >= limit) {
612
+ break;
613
+ }
614
+ }
615
+ const nextOffset = resp.data?.result?.next_page_offset;
616
+ if (nextOffset === null || nextOffset === undefined || points.length === 0) {
617
+ offset = undefined;
618
+ break;
619
+ }
620
+ offset = safeStringId(nextOffset);
621
+ }
622
+ return {
623
+ documents,
624
+ nextCursor: offset,
625
+ stats: {
626
+ pagesScanned,
627
+ totalCandidates,
628
+ returnedCount: documents.length,
629
+ },
630
+ };
631
+ }
461
632
  async hybridSearch(collectionName, queryEmbedding, queryText, options) {
462
633
  this.ensureInitialized();
463
634
  const topK = options?.topK ?? 10;
@@ -1 +1 @@
1
- {"version":3,"file":"QdrantVectorStore.js","sourceRoot":"","sources":["../../../src/rag/vector_stores/QdrantVectorStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QdrantVectorStore.js","sourceRoot":"","sources":["../../../src/rag/vector_stores/QdrantVectorStore.ts"],"names":[],"mappings":"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"}
@@ -30,7 +30,7 @@
30
30
  * @see @framers/sql-storage-adapter for storage abstraction.
31
31
  */
32
32
  import { type StorageAdapter, type StorageResolutionOptions } from '@framers/sql-storage-adapter';
33
- import { IVectorStore, VectorStoreProviderConfig, VectorDocument, QueryOptions, QueryResult, UpsertOptions, UpsertResult, DeleteOptions, DeleteResult, CreateCollectionOptions } from '../IVectorStore.js';
33
+ import { IVectorStore, VectorStoreProviderConfig, VectorDocument, QueryOptions, QueryResult, MetadataScanOptions, MetadataScanResult, UpsertOptions, UpsertResult, DeleteOptions, DeleteResult, CreateCollectionOptions } from '../IVectorStore.js';
34
34
  import type { HnswIndexSidecar } from '../vector-search/HnswIndexSidecar.js';
35
35
  /**
36
36
  * Configuration for SQL-backed vector store.
@@ -218,6 +218,7 @@ export declare class SqlVectorStore implements IVectorStore {
218
218
  * @returns {Promise<QueryResult>} Query results sorted by similarity
219
219
  */
220
220
  query(collectionName: string, queryEmbedding: number[], options?: QueryOptions): Promise<QueryResult>;
221
+ scanByMetadata(collectionName: string, options?: MetadataScanOptions): Promise<MetadataScanResult>;
221
222
  /**
222
223
  * Performs hybrid search combining vector similarity with keyword matching.
223
224
  *
@@ -1 +1 @@
1
- {"version":3,"file":"SqlVectorStore.d.ts","sourceRoot":"","sources":["../../../src/rag/vector_stores/SqlVectorStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SqlVectorStore.d.ts","sourceRoot":"","sources":["../../../src/rag/vector_stores/SqlVectorStore.ts"],"names":[],"mappings":"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"}
@@ -499,6 +499,43 @@ export class SqlVectorStore {
499
499
  },
500
500
  };
501
501
  }
502
+ async scanByMetadata(collectionName, options) {
503
+ this.ensureInitialized();
504
+ await this.getCollectionMetadata(collectionName);
505
+ const limit = Math.max(1, options?.limit ?? 100);
506
+ const rows = await this.adapter.all(`SELECT id, embedding_blob, text_content, metadata_json
507
+ FROM ${this.tablePrefix}documents
508
+ WHERE collection_name = ?
509
+ ORDER BY updated_at ASC, id ASC`, [collectionName]);
510
+ const documents = [];
511
+ for (const row of rows) {
512
+ const metadata = row.metadata_json ? JSON.parse(row.metadata_json) : undefined;
513
+ if (options?.filter && !this.matchesFilter(metadata, options.filter)) {
514
+ continue;
515
+ }
516
+ const scannedDoc = {
517
+ id: row.id,
518
+ embedding: options?.includeEmbedding ? this.decodeStoredEmbedding(row.embedding_blob) : [],
519
+ similarityScore: 1,
520
+ };
521
+ if (options?.includeMetadata !== false && metadata) {
522
+ scannedDoc.metadata = metadata;
523
+ }
524
+ if (options?.includeTextContent && row.text_content) {
525
+ scannedDoc.textContent = row.text_content;
526
+ }
527
+ documents.push(scannedDoc);
528
+ if (documents.length >= limit)
529
+ break;
530
+ }
531
+ return {
532
+ documents,
533
+ stats: {
534
+ totalCandidates: rows.length,
535
+ returnedCount: documents.length,
536
+ },
537
+ };
538
+ }
502
539
  /**
503
540
  * Performs hybrid search combining vector similarity with keyword matching.
504
541
  *
@@ -1114,13 +1151,23 @@ export class SqlVectorStore {
1114
1151
  if (condition.$ne !== undefined && docValue === condition.$ne)
1115
1152
  return false;
1116
1153
  if (typeof docValue === 'number') {
1117
- if (condition.$gt !== undefined && !(docValue > condition.$gt))
1154
+ if (typeof condition.$gt === 'number' && !(docValue > condition.$gt))
1155
+ return false;
1156
+ if (typeof condition.$gte === 'number' && !(docValue >= condition.$gte))
1157
+ return false;
1158
+ if (typeof condition.$lt === 'number' && !(docValue < condition.$lt))
1159
+ return false;
1160
+ if (typeof condition.$lte === 'number' && !(docValue <= condition.$lte))
1161
+ return false;
1162
+ }
1163
+ else if (typeof docValue === 'string') {
1164
+ if (condition.$gt !== undefined && !(docValue > String(condition.$gt)))
1118
1165
  return false;
1119
- if (condition.$gte !== undefined && !(docValue >= condition.$gte))
1166
+ if (condition.$gte !== undefined && !(docValue >= String(condition.$gte)))
1120
1167
  return false;
1121
- if (condition.$lt !== undefined && !(docValue < condition.$lt))
1168
+ if (condition.$lt !== undefined && !(docValue < String(condition.$lt)))
1122
1169
  return false;
1123
- if (condition.$lte !== undefined && !(docValue <= condition.$lte))
1170
+ if (condition.$lte !== undefined && !(docValue <= String(condition.$lte)))
1124
1171
  return false;
1125
1172
  }
1126
1173
  if (condition.$in !== undefined) {