@mrc2204/agent-smart-memo 4.1.3 → 5.0.1

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 (70) hide show
  1. package/README.md +445 -141
  2. package/dist/adapters/openclaw/tool-runtime.d.ts +29 -0
  3. package/dist/adapters/openclaw/tool-runtime.d.ts.map +1 -0
  4. package/dist/adapters/openclaw/tool-runtime.js +48 -0
  5. package/dist/adapters/openclaw/tool-runtime.js.map +1 -0
  6. package/dist/commands/telegram-addproject-command.d.ts +33 -0
  7. package/dist/commands/telegram-addproject-command.d.ts.map +1 -0
  8. package/dist/commands/telegram-addproject-command.js +208 -0
  9. package/dist/commands/telegram-addproject-command.js.map +1 -0
  10. package/dist/core/contracts/adapter-contracts.d.ts +31 -0
  11. package/dist/core/contracts/adapter-contracts.d.ts.map +1 -0
  12. package/dist/core/contracts/adapter-contracts.js +2 -0
  13. package/dist/core/contracts/adapter-contracts.js.map +1 -0
  14. package/dist/core/runtime-boundary.d.ts +23 -0
  15. package/dist/core/runtime-boundary.d.ts.map +1 -0
  16. package/dist/core/runtime-boundary.js +39 -0
  17. package/dist/core/runtime-boundary.js.map +1 -0
  18. package/dist/core/usecases/default-memory-usecase-port.d.ts +54 -0
  19. package/dist/core/usecases/default-memory-usecase-port.d.ts.map +1 -0
  20. package/dist/core/usecases/default-memory-usecase-port.js +1139 -0
  21. package/dist/core/usecases/default-memory-usecase-port.js.map +1 -0
  22. package/dist/core/usecases/semantic-memory-usecase.d.ts +52 -0
  23. package/dist/core/usecases/semantic-memory-usecase.d.ts.map +1 -0
  24. package/dist/core/usecases/semantic-memory-usecase.js +136 -0
  25. package/dist/core/usecases/semantic-memory-usecase.js.map +1 -0
  26. package/dist/db/slot-db.d.ts +293 -0
  27. package/dist/db/slot-db.d.ts.map +1 -1
  28. package/dist/db/slot-db.js +1272 -0
  29. package/dist/db/slot-db.js.map +1 -1
  30. package/dist/index.d.ts +537 -64
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +239 -99
  33. package/dist/index.js.map +1 -1
  34. package/dist/services/qdrant.d.ts.map +1 -1
  35. package/dist/services/qdrant.js +17 -0
  36. package/dist/services/qdrant.js.map +1 -1
  37. package/dist/tools/graph-tools.d.ts +2 -0
  38. package/dist/tools/graph-tools.d.ts.map +1 -1
  39. package/dist/tools/graph-tools.js +126 -177
  40. package/dist/tools/graph-tools.js.map +1 -1
  41. package/dist/tools/project-tools.d.ts +8 -0
  42. package/dist/tools/project-tools.d.ts.map +1 -0
  43. package/dist/tools/project-tools.js +649 -0
  44. package/dist/tools/project-tools.js.map +1 -0
  45. package/dist/tools/semantic-memory-tools.d.ts +8 -0
  46. package/dist/tools/semantic-memory-tools.d.ts.map +1 -0
  47. package/dist/tools/semantic-memory-tools.js +111 -0
  48. package/dist/tools/semantic-memory-tools.js.map +1 -0
  49. package/dist/tools/slot-tools.d.ts +3 -1
  50. package/dist/tools/slot-tools.d.ts.map +1 -1
  51. package/dist/tools/slot-tools.js +82 -156
  52. package/dist/tools/slot-tools.js.map +1 -1
  53. package/openclaw.plugin.json +22 -2
  54. package/package.json +25 -32
  55. package/dist/config.d.ts +0 -62
  56. package/dist/config.d.ts.map +0 -1
  57. package/dist/config.js +0 -102
  58. package/dist/config.js.map +0 -1
  59. package/dist/scripts/reembed-collection.d.ts +0 -2
  60. package/dist/scripts/reembed-collection.d.ts.map +0 -1
  61. package/dist/scripts/reembed-collection.js +0 -165
  62. package/dist/scripts/reembed-collection.js.map +0 -1
  63. package/dist/tools/memory_search.d.ts +0 -89
  64. package/dist/tools/memory_search.d.ts.map +0 -1
  65. package/dist/tools/memory_search.js +0 -188
  66. package/dist/tools/memory_search.js.map +0 -1
  67. package/dist/tools/memory_store.d.ts +0 -65
  68. package/dist/tools/memory_store.d.ts.map +0 -1
  69. package/dist/tools/memory_store.js +0 -196
  70. package/dist/tools/memory_store.js.map +0 -1
package/package.json CHANGED
@@ -1,36 +1,29 @@
1
1
  {
2
2
  "name": "@mrc2204/agent-smart-memo",
3
- "version": "4.1.3",
3
+ "version": "5.0.1",
4
4
  "description": "Smart Memory Plugin for OpenClaw — structured slot memory with auto-capture, auto-recall, essence distillation, and Qdrant vector search",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
- "openclaw": {
8
- "extensions": [
9
- "./dist/index.js"
10
- ]
11
- },
12
- "scripts": {
13
- "build": "tsc",
14
- "test": "npx tsx tests/test.ts && npx tsx tests/test-auto-recall.ts && npx tsx tests/test-memory-config.ts",
15
- "clean": "rm -rf dist",
16
- "migrate:namespaces": "npx tsx scripts/migrate-namespaces.ts",
17
- "distill:namespaces": "npx tsx scripts/distill-by-namespace.ts",
18
- "validate:ab": "npx tsx scripts/validate-ab.ts"
19
- },
20
- "dependencies": {
21
- "dotenv": "^17.3.1"
22
- },
23
- "devDependencies": {
24
- "@sinclair/typebox": "^0.34.0",
25
- "@types/node": "^22.0.0",
26
- "openclaw": "*",
27
- "typescript": "^5.0.0"
7
+ "exports": {
8
+ ".": "./dist/index.js"
28
9
  },
10
+ "types": "dist/index.d.ts",
11
+ "files": [
12
+ "dist/",
13
+ "README.md",
14
+ "LICENSE",
15
+ "CONFIG.example.json",
16
+ "openclaw.plugin.json"
17
+ ],
29
18
  "license": "MIT",
19
+ "author": "mrc2204",
30
20
  "repository": {
31
21
  "type": "git",
32
22
  "url": "git+https://github.com/cong91/agent-smart-memo.git"
33
23
  },
24
+ "publishConfig": {
25
+ "access": "public"
26
+ },
34
27
  "keywords": [
35
28
  "openclaw",
36
29
  "plugin",
@@ -41,15 +34,15 @@
41
34
  "qdrant",
42
35
  "auto-capture"
43
36
  ],
44
- "author": "mrc2204",
45
- "publishConfig": {
46
- "access": "public"
37
+ "dependencies": {
38
+ "dotenv": "^17.3.1"
47
39
  },
48
- "files": [
49
- "dist/",
50
- "openclaw.plugin.json",
51
- "CONFIG.example.json",
52
- "README.md",
53
- "LICENSE"
54
- ]
40
+ "openclaw": {
41
+ "extensions": [
42
+ "./dist/index.js"
43
+ ]
44
+ },
45
+ "devDependencies": {
46
+ "openclaw": "*"
47
+ }
55
48
  }
package/dist/config.d.ts DELETED
@@ -1,62 +0,0 @@
1
- /**
2
- * Configuration loader for Agent-Memo Plugin
3
- * Reads from environment variables or .env file
4
- */
5
- /**
6
- * Plugin configuration object
7
- * All values read from environment variables with sensible defaults
8
- */
9
- export declare const PluginConfig: {
10
- qdrant: {
11
- host: string;
12
- port: number;
13
- collection: string;
14
- timeout: number;
15
- };
16
- ollama: {
17
- host: string;
18
- port: number;
19
- model: string;
20
- timeout: number;
21
- readonly baseUrl: string;
22
- };
23
- embedding: {
24
- model: string;
25
- dimensions: number;
26
- apiUrl: string;
27
- };
28
- autoCapture: {
29
- enabled: boolean;
30
- minConfidence: number;
31
- useLLM: boolean;
32
- agentBlocklist: string[];
33
- noisePatterns: RegExp[];
34
- maxMessagesPerCapture: number;
35
- minContentLength: number;
36
- noiseThreshold: number;
37
- };
38
- contextWindow: {
39
- maxConversationTokens: number;
40
- tokenEstimateDivisor: number;
41
- absoluteMaxMessages: number;
42
- };
43
- stateDir: string;
44
- slotDbDir: string;
45
- defaults: {
46
- namespace: string;
47
- slotCategories: string[];
48
- };
49
- };
50
- /**
51
- * Validate configuration
52
- * Checks if required services are accessible
53
- */
54
- export declare function validateConfig(): Promise<{
55
- qdrant: boolean;
56
- ollama: boolean;
57
- }>;
58
- /**
59
- * Print configuration (for debugging)
60
- */
61
- export declare function printConfig(): void;
62
- //# sourceMappingURL=config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH;;;GAGG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8DxB,CAAC;AAEF;;;GAGG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,CAyBpF;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAQlC"}
package/dist/config.js DELETED
@@ -1,102 +0,0 @@
1
- /**
2
- * Configuration loader for Agent-Memo Plugin
3
- * Reads from environment variables or .env file
4
- */
5
- import { config } from "dotenv";
6
- import { join } from "path";
7
- // Load .env file from plugin directory
8
- config({ path: join(import.meta.dirname || "", "../.env") });
9
- /**
10
- * Plugin configuration object
11
- * All values read from environment variables with sensible defaults
12
- */
13
- export const PluginConfig = {
14
- // Qdrant settings
15
- qdrant: {
16
- host: process.env.QDRANT_HOST || "localhost",
17
- port: parseInt(process.env.QDRANT_PORT || "6333"),
18
- collection: process.env.QDRANT_COLLECTION || "mrc_bot",
19
- timeout: parseInt(process.env.QDRANT_TIMEOUT || "30000"),
20
- },
21
- // Ollama LLM settings
22
- ollama: {
23
- host: process.env.OLLAMA_HOST || "http://localhost",
24
- port: parseInt(process.env.OLLAMA_PORT || "11434"),
25
- model: process.env.OLLAMA_MODEL || "deepseek-r1:8b",
26
- timeout: parseInt(process.env.OLLAMA_TIMEOUT || "60000"),
27
- get baseUrl() {
28
- return `${this.host}:${this.port}`;
29
- },
30
- },
31
- // Embedding service settings
32
- embedding: {
33
- model: process.env.EMBEDDING_MODEL || "text-embedding-3-small",
34
- dimensions: parseInt(process.env.EMBEDDING_DIMENSIONS || "1024"),
35
- apiUrl: process.env.EMBEDDING_API_URL || "http://localhost:8000",
36
- },
37
- // Auto-capture settings
38
- autoCapture: {
39
- enabled: process.env.AUTO_CAPTURE_ENABLED !== "false", // default true
40
- minConfidence: parseFloat(process.env.AUTO_CAPTURE_MIN_CONFIDENCE || "0.7"),
41
- useLLM: process.env.AUTO_CAPTURE_USE_LLM !== "false", // default true
42
- // RAG Memory Isolation - Noise Filter settings
43
- agentBlocklist: (process.env.AUTO_CAPTURE_AGENT_BLOCKLIST || "").split(",").filter(Boolean),
44
- noisePatterns: (process.env.AUTO_CAPTURE_NOISE_PATTERNS || "").split(",").filter(Boolean).map((p) => new RegExp(p, "i")),
45
- maxMessagesPerCapture: parseInt(process.env.AUTO_CAPTURE_MAX_MESSAGES || "50"),
46
- minContentLength: parseInt(process.env.AUTO_CAPTURE_MIN_CONTENT_LENGTH || "20"),
47
- noiseThreshold: parseFloat(process.env.AUTO_CAPTURE_NOISE_THRESHOLD || "0.5"),
48
- },
49
- // Context window management settings
50
- contextWindow: {
51
- maxConversationTokens: parseInt(process.env.CONTEXT_WINDOW_MAX_TOKENS || "12000"),
52
- tokenEstimateDivisor: parseInt(process.env.CONTEXT_WINDOW_TOKEN_DIVISOR || "4"),
53
- absoluteMaxMessages: parseInt(process.env.CONTEXT_WINDOW_MAX_MESSAGES || "200"),
54
- },
55
- // State storage
56
- stateDir: process.env.STATE_DIR || process.env.OPENCLAW_STATE_DIR || `${process.env.HOME}/.openclaw`,
57
- slotDbDir: process.env.OPENCLAW_SLOTDB_DIR || `${process.env.HOME}/.openclaw/agent-memo`,
58
- // Plugin defaults
59
- defaults: {
60
- namespace: process.env.DEFAULT_NAMESPACE || "default",
61
- slotCategories: (process.env.DEFAULT_SLOT_CATEGORIES || "profile,preferences,project,environment,custom").split(","),
62
- },
63
- };
64
- /**
65
- * Validate configuration
66
- * Checks if required services are accessible
67
- */
68
- export async function validateConfig() {
69
- const results = { qdrant: false, ollama: false };
70
- // Check Qdrant
71
- try {
72
- const response = await fetch(`http://${PluginConfig.qdrant.host}:${PluginConfig.qdrant.port}/collections`, { signal: AbortSignal.timeout(5000) });
73
- results.qdrant = response.ok;
74
- }
75
- catch {
76
- results.qdrant = false;
77
- }
78
- // Check Ollama
79
- try {
80
- const response = await fetch(`${PluginConfig.ollama.baseUrl}/api/tags`, {
81
- signal: AbortSignal.timeout(5000),
82
- });
83
- results.ollama = response.ok;
84
- }
85
- catch {
86
- results.ollama = false;
87
- }
88
- return results;
89
- }
90
- /**
91
- * Print configuration (for debugging)
92
- */
93
- export function printConfig() {
94
- console.log("[AgentMemo] Configuration:");
95
- console.log(` Qdrant: ${PluginConfig.qdrant.host}:${PluginConfig.qdrant.port}/${PluginConfig.qdrant.collection}`);
96
- console.log(` Ollama: ${PluginConfig.ollama.baseUrl} (model: ${PluginConfig.ollama.model})`);
97
- console.log(` Embedding: ${PluginConfig.embedding.model} (${PluginConfig.embedding.dimensions}d)`);
98
- console.log(` AutoCapture: ${PluginConfig.autoCapture.enabled ? "enabled" : "disabled"}`);
99
- console.log(` StateDir: ${PluginConfig.stateDir}`);
100
- console.log(` SlotDbDir: ${PluginConfig.slotDbDir}`);
101
- }
102
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import "dotenv/config";
2
- //# sourceMappingURL=reembed-collection.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"reembed-collection.d.ts","sourceRoot":"","sources":["../../src/scripts/reembed-collection.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC"}
@@ -1,165 +0,0 @@
1
- import "dotenv/config";
2
- import { EmbeddingClient } from "../services/embedding.js";
3
- import { QdrantClient } from "../services/qdrant.js";
4
- function sampleArray(items, n) {
5
- if (items.length <= n)
6
- return [...items];
7
- const copy = [...items];
8
- const out = [];
9
- while (out.length < n && copy.length > 0) {
10
- const idx = Math.floor(Math.random() * copy.length);
11
- out.push(copy.splice(idx, 1)[0]);
12
- }
13
- return out;
14
- }
15
- async function run() {
16
- const qdrantHost = process.env.QDRANT_HOST || "localhost";
17
- const qdrantPort = Number(process.env.QDRANT_PORT || 6333);
18
- const qdrantCollection = process.env.QDRANT_COLLECTION || "mrc_bot_memory";
19
- const embeddingApiUrl = process.env.EMBEDDING_API_URL || process.env.OLLAMA_URL || "http://localhost:4142";
20
- const embeddingModel = process.env.EMBEDDING_MODEL || "text-embedding-3-small";
21
- let embeddingDimensions = Number(process.env.EMBEDDING_DIMENSIONS || 1536);
22
- const batchSize = Math.max(1, Number(process.env.REEMBED_BATCH_SIZE || 25));
23
- const qdrant = new QdrantClient({
24
- host: qdrantHost,
25
- port: qdrantPort,
26
- collection: qdrantCollection,
27
- vectorSize: embeddingDimensions,
28
- timeout: 60000,
29
- maxRetries: 4,
30
- }, console);
31
- const collectionInfo = await qdrant.getCollectionInfo();
32
- const detectedVectorSize = Number(collectionInfo?.result?.config?.params?.vectors?.size || 0);
33
- if (detectedVectorSize > 0 && detectedVectorSize !== embeddingDimensions) {
34
- console.warn(`[Reembed] EMBEDDING_DIMENSIONS mismatch env=${embeddingDimensions} qdrant=${detectedVectorSize}. Using qdrant size.`);
35
- embeddingDimensions = detectedVectorSize;
36
- }
37
- const embedding = new EmbeddingClient({
38
- embeddingApiUrl,
39
- model: embeddingModel,
40
- dimensions: embeddingDimensions,
41
- timeout: 120000,
42
- }, console);
43
- const stats = {
44
- totalProcessed: 0,
45
- chunkedCount: 0,
46
- maxChunksSeen: 0,
47
- failedCount: 0,
48
- startedAt: Date.now(),
49
- };
50
- console.log(`[Reembed] Start collection=${qdrantCollection} host=${qdrantHost}:${qdrantPort} model=${embeddingModel} dims=${embeddingDimensions}`);
51
- const pointsBefore = await qdrant.countPoints(true);
52
- console.log(`[Reembed] points_before=${pointsBefore}`);
53
- const processedIds = [];
54
- let offset = undefined;
55
- while (true) {
56
- const page = await qdrant.scroll(batchSize, offset, false);
57
- if (page.points.length === 0)
58
- break;
59
- const fallbackUpsertPoints = [];
60
- const vectorUpdates = [];
61
- for (const point of page.points) {
62
- const payload = point.payload || {};
63
- const text = typeof payload.text === "string" ? payload.text.trim() : "";
64
- if (!text) {
65
- stats.failedCount += 1;
66
- console.warn(`[Reembed] Skip id=${point.id}: empty text`);
67
- continue;
68
- }
69
- try {
70
- const embedded = await embedding.embedDetailed(text);
71
- const mergedPayload = {
72
- ...payload,
73
- ...embedded.metadata,
74
- metadata: {
75
- ...(payload.metadata && typeof payload.metadata === "object" ? payload.metadata : {}),
76
- ...embedded.metadata,
77
- },
78
- };
79
- vectorUpdates.push({ id: point.id, vector: embedded.vector });
80
- fallbackUpsertPoints.push({ id: point.id, vector: embedded.vector, payload: mergedPayload });
81
- processedIds.push(point.id);
82
- stats.totalProcessed += 1;
83
- if (embedded.metadata.embedding_chunked)
84
- stats.chunkedCount += 1;
85
- if (embedded.metadata.embedding_chunks_count > stats.maxChunksSeen) {
86
- stats.maxChunksSeen = embedded.metadata.embedding_chunks_count;
87
- }
88
- }
89
- catch (error) {
90
- stats.failedCount += 1;
91
- console.error(`[Reembed] Failed id=${point.id}: ${error.message}`);
92
- }
93
- }
94
- if (vectorUpdates.length > 0) {
95
- let usedFallbackUpsert = false;
96
- try {
97
- await qdrant.updateVectors(vectorUpdates);
98
- await qdrant.setPayload(fallbackUpsertPoints.map((p) => ({ id: p.id, payload: p.payload })));
99
- }
100
- catch (_error) {
101
- usedFallbackUpsert = true;
102
- await qdrant.upsert(fallbackUpsertPoints);
103
- }
104
- console.log(`[Reembed] Batch done size=${page.points.length} updated=${vectorUpdates.length} mode=${usedFallbackUpsert ? "upsert_fallback" : "updateVectors+setPayload"}`);
105
- }
106
- offset = page.nextOffset;
107
- if (offset === undefined || offset === null)
108
- break;
109
- }
110
- const pointsAfter = await qdrant.countPoints(true);
111
- console.log(`[Reembed] points_after=${pointsAfter}`);
112
- if (pointsBefore !== pointsAfter) {
113
- throw new Error(`Point count mismatch: before=${pointsBefore}, after=${pointsAfter}`);
114
- }
115
- const verifyIds = sampleArray(processedIds, Math.min(10, processedIds.length));
116
- const toKey = (id) => JSON.stringify(id);
117
- let verifyChecked = 0;
118
- if (verifyIds.length > 0) {
119
- let verifyOffset = undefined;
120
- const need = new Set(verifyIds.map((id) => toKey(id)));
121
- while (need.size > 0) {
122
- const page = await qdrant.scroll(100, verifyOffset, true);
123
- if (page.points.length === 0)
124
- break;
125
- for (const p of page.points) {
126
- const key = toKey(p.id);
127
- if (need.has(key)) {
128
- const dim = p.vector?.length || 0;
129
- if (dim !== embeddingDimensions) {
130
- throw new Error(`Vector dim mismatch for id=${key}: expected=${embeddingDimensions}, got=${dim}`);
131
- }
132
- verifyChecked += 1;
133
- need.delete(key);
134
- }
135
- }
136
- verifyOffset = page.nextOffset;
137
- if (verifyOffset === undefined || verifyOffset === null)
138
- break;
139
- }
140
- }
141
- const smokeVector = await embedding.embed("memory search smoke test");
142
- const smokeResults = await qdrant.search(smokeVector, 3);
143
- if (!Array.isArray(smokeResults)) {
144
- throw new Error("Search smoke test failed: no result array");
145
- }
146
- const totalTime = Date.now() - stats.startedAt;
147
- console.log("[Reembed] Verification passed");
148
- console.log(JSON.stringify({
149
- collection: qdrantCollection,
150
- points_before: pointsBefore,
151
- points_after: pointsAfter,
152
- random_verified_vectors: verifyChecked,
153
- search_smoke_test: true,
154
- total_processed: stats.totalProcessed,
155
- chunked_count: stats.chunkedCount,
156
- max_chunks_seen: stats.maxChunksSeen,
157
- failed_count: stats.failedCount,
158
- total_time_ms: totalTime,
159
- }, null, 2));
160
- }
161
- run().catch((error) => {
162
- console.error(`[Reembed] Fatal: ${error.stack || error.message}`);
163
- process.exit(1);
164
- });
165
- //# sourceMappingURL=reembed-collection.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"reembed-collection.js","sourceRoot":"","sources":["../../src/scripts/reembed-collection.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAUrD,SAAS,WAAW,CAAI,KAAU,EAAE,CAAS;IAC3C,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IACxB,MAAM,GAAG,GAAQ,EAAE,CAAC;IACpB,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QACpD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,GAAG;IAChB,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,WAAW,CAAC;IAC1D,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC;IAC3D,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,gBAAgB,CAAC;IAC3E,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,uBAAuB,CAAC;IAC3G,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,wBAAwB,CAAC;IAC/E,IAAI,mBAAmB,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,IAAI,CAAC,CAAC;IAC3E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC,CAAC;IAE5E,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC;QAC9B,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,UAAU,EAAE,gBAAgB;QAC5B,UAAU,EAAE,mBAAmB;QAC/B,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,CAAC;KACd,EAAE,OAAO,CAAC,CAAC;IAEZ,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,iBAAiB,EAAE,CAAC;IACxD,MAAM,kBAAkB,GAAG,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;IAC9F,IAAI,kBAAkB,GAAG,CAAC,IAAI,kBAAkB,KAAK,mBAAmB,EAAE,CAAC;QACzE,OAAO,CAAC,IAAI,CAAC,+CAA+C,mBAAmB,WAAW,kBAAkB,sBAAsB,CAAC,CAAC;QACpI,mBAAmB,GAAG,kBAAkB,CAAC;IAC3C,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC;QACpC,eAAe;QACf,KAAK,EAAE,cAAc;QACrB,UAAU,EAAE,mBAAmB;QAC/B,OAAO,EAAE,MAAM;KAChB,EAAE,OAAO,CAAC,CAAC;IAEZ,MAAM,KAAK,GAAiB;QAC1B,cAAc,EAAE,CAAC;QACjB,YAAY,EAAE,CAAC;QACf,aAAa,EAAE,CAAC;QAChB,WAAW,EAAE,CAAC;QACd,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;KACtB,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,8BAA8B,gBAAgB,SAAS,UAAU,IAAI,UAAU,UAAU,cAAc,SAAS,mBAAmB,EAAE,CAAC,CAAC;IAEnJ,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,2BAA2B,YAAY,EAAE,CAAC,CAAC;IAEvD,MAAM,YAAY,GAAU,EAAE,CAAC;IAC/B,IAAI,MAAM,GAAQ,SAAS,CAAC;IAE5B,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM;QAEpC,MAAM,oBAAoB,GAA0E,EAAE,CAAC;QACvG,MAAM,aAAa,GAA4C,EAAE,CAAC;QAElE,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAEzE,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC;gBACvB,OAAO,CAAC,IAAI,CAAC,qBAAqB,KAAK,CAAC,EAAE,cAAc,CAAC,CAAC;gBAC1D,SAAS;YACX,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBACrD,MAAM,aAAa,GAAG;oBACpB,GAAG,OAAO;oBACV,GAAG,QAAQ,CAAC,QAAQ;oBACpB,QAAQ,EAAE;wBACR,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;wBACrF,GAAG,QAAQ,CAAC,QAAQ;qBACrB;iBACF,CAAC;gBAEF,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC9D,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;gBAC7F,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAE5B,KAAK,CAAC,cAAc,IAAI,CAAC,CAAC;gBAC1B,IAAI,QAAQ,CAAC,QAAQ,CAAC,iBAAiB;oBAAE,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC;gBACjE,IAAI,QAAQ,CAAC,QAAQ,CAAC,sBAAsB,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC;oBACnE,KAAK,CAAC,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAC,sBAAsB,CAAC;gBACjE,CAAC;YACH,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC;gBACvB,OAAO,CAAC,KAAK,CAAC,uBAAuB,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;QAED,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,IAAI,kBAAkB,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;gBAC1C,MAAM,MAAM,CAAC,UAAU,CACrB,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CACpE,CAAC;YACJ,CAAC;YAAC,OAAO,MAAM,EAAE,CAAC;gBAChB,kBAAkB,GAAG,IAAI,CAAC;gBAC1B,MAAM,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;YAC5C,CAAC;YACD,OAAO,CAAC,GAAG,CACT,6BAA6B,IAAI,CAAC,MAAM,CAAC,MAAM,YAAY,aAAa,CAAC,MAAM,SAAS,kBAAkB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,0BAA0B,EAAE,CAC9J,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;QACzB,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI;YAAE,MAAM;IACrD,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,0BAA0B,WAAW,EAAE,CAAC,CAAC;IAErD,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,gCAAgC,YAAY,WAAW,WAAW,EAAE,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,SAAS,GAAG,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/E,MAAM,KAAK,GAAG,CAAC,EAAO,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC9C,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,IAAI,YAAY,GAAQ,SAAS,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;YAC1D,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM;YACpC,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC5B,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACxB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBAClB,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC;oBAClC,IAAI,GAAG,KAAK,mBAAmB,EAAE,CAAC;wBAChC,MAAM,IAAI,KAAK,CAAC,8BAA8B,GAAG,cAAc,mBAAmB,SAAS,GAAG,EAAE,CAAC,CAAC;oBACpG,CAAC;oBACD,aAAa,IAAI,CAAC,CAAC;oBACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACnB,CAAC;YACH,CAAC;YACD,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC;YAC/B,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI;gBAAE,MAAM;QACjE,CAAC;IACH,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IACtE,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACzD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;QACzB,UAAU,EAAE,gBAAgB;QAC5B,aAAa,EAAE,YAAY;QAC3B,YAAY,EAAE,WAAW;QACzB,uBAAuB,EAAE,aAAa;QACtC,iBAAiB,EAAE,IAAI;QACvB,eAAe,EAAE,KAAK,CAAC,cAAc;QACrC,aAAa,EAAE,KAAK,CAAC,YAAY;QACjC,eAAe,EAAE,KAAK,CAAC,aAAa;QACpC,YAAY,EAAE,KAAK,CAAC,WAAW;QAC/B,aAAa,EAAE,SAAS;KACzB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACf,CAAC;AAED,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACpB,OAAO,CAAC,KAAK,CAAC,oBAAoB,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -1,89 +0,0 @@
1
- import { QdrantClient } from "../services/qdrant.js";
2
- import { EmbeddingClient } from "../services/embedding.js";
3
- import { SearchParams, ToolResult, MemoryNamespace } from "../types.js";
4
- export declare const memorySearchSchema: {
5
- type: string;
6
- properties: {
7
- query: {
8
- type: string;
9
- description: string;
10
- };
11
- limit: {
12
- type: string;
13
- description: string;
14
- minimum: number;
15
- maximum: number;
16
- };
17
- namespace: {
18
- type: string;
19
- description: string;
20
- };
21
- sessionId: {
22
- type: string;
23
- description: string;
24
- };
25
- userId: {
26
- type: string;
27
- description: string;
28
- };
29
- minScore: {
30
- type: string;
31
- description: string;
32
- minimum: number;
33
- maximum: number;
34
- };
35
- sourceAgent: {
36
- type: string;
37
- description: string;
38
- };
39
- };
40
- required: string[];
41
- };
42
- export declare function createMemorySearchTool(qdrant: QdrantClient, embedding: EmbeddingClient, defaultNamespace: MemoryNamespace): {
43
- name: string;
44
- label: string;
45
- description: string;
46
- parameters: {
47
- type: string;
48
- properties: {
49
- query: {
50
- type: string;
51
- description: string;
52
- };
53
- limit: {
54
- type: string;
55
- description: string;
56
- minimum: number;
57
- maximum: number;
58
- };
59
- namespace: {
60
- type: string;
61
- description: string;
62
- };
63
- sessionId: {
64
- type: string;
65
- description: string;
66
- };
67
- userId: {
68
- type: string;
69
- description: string;
70
- };
71
- minScore: {
72
- type: string;
73
- description: string;
74
- minimum: number;
75
- maximum: number;
76
- };
77
- sourceAgent: {
78
- type: string;
79
- description: string;
80
- };
81
- };
82
- required: string[];
83
- };
84
- execute(_id: string, params: SearchParams & {
85
- sourceAgent?: string;
86
- agentId?: string;
87
- }, _signal?: AbortSignal): Promise<ToolResult>;
88
- };
89
- //# sourceMappingURL=memory_search.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory_search.d.ts","sourceRoot":"","sources":["../../src/tools/memory_search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,UAAU,EAAe,eAAe,EAAE,MAAM,aAAa,CAAC;AAyBrF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqC9B,CAAC;AAEF,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,eAAe,EAC1B,gBAAgB,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAcxB,MAAM,UACH,YAAY,GAAG;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,YACvD,WAAW,GACpB,OAAO,CAAC,UAAU,CAAC;EAuIzB"}