n8n-nodes-mem0-self 0.2.9 → 0.2.11

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.
package/README.md CHANGED
@@ -1,42 +1,341 @@
1
1
  # n8n-nodes-mem0-self
2
2
 
3
- Community node for Mem0 Self-Hosted memory in n8n.
3
+ Community node package for using **Mem0 Self-Hosted** as memory in n8n AI workflows.
4
4
 
5
- ## Included Node
5
+ This package currently provides one memory node:
6
6
 
7
7
  - `Mem0 Chat Memory` (`mem0Memory`)
8
8
 
9
- This package is focused on AI Agent memory usage (safe profile) and intentionally avoids admin/destructive operations.
9
+ ---
10
10
 
11
- ## What It Does
11
+ ## Quick Start (3 minutes)
12
12
 
13
- - Stores conversation turns in Mem0 using `POST /memories`
14
- - Retrieves contextual memory using `POST /search`
15
- - Scopes memory by:
16
- - `user_id` (required)
17
- - `agent_id` (required)
18
- - `run_id` (optional)
13
+ 1. Install via n8n Community Nodes:
14
+ - Go to `Settings` -> `Community Nodes` -> `Install`
15
+ - Package: `n8n-nodes-mem0-self`
16
+ - Restart n8n
19
17
 
20
- ## Credential Setup
18
+ 2. Create credentials:
19
+ - Open `Credentials` in n8n
20
+ - Create `Mem0 Self-Hosted API`
21
+ - Set `Base URL` (example: `http://localhost:8000`)
22
+ - Set `API Key` (`X-API-Key`)
21
23
 
22
- Credential type: `Mem0 Self-Hosted API`
24
+ 3. Wire your workflow:
25
+ - Add `AI Agent`
26
+ - Connect your chat model to `ai_languageModel`
27
+ - Add `Mem0 Chat Memory` and connect it to `ai_memory`
28
+ - Set `User ID` and `Agent ID` (required), and `Run ID` (recommended)
23
29
 
24
- - Base URL default: `http://localhost:8000`
25
- - Header auth: `X-API-Key`
30
+ 4. Run a basic validation:
31
+ - Ask a message that contains a personal fact (for example, your name)
32
+ - Send another message asking the agent to recall it
33
+ - Confirm recall works and context size remains controlled by your chosen mode/settings
26
34
 
27
- ## Safe Profile Notes
35
+ ---
28
36
 
29
- - `clear()` is non-destructive (no-op) in this node.
30
- - If `run_id` is omitted, memory context is shared across sessions for the same `user_id + agent_id`.
31
- - Keep API keys only in n8n credential storage.
37
+ ## Introduction
32
38
 
33
- ## Build
39
+ Mem0 is an intelligent memory layer for AI agents and applications.
40
+
41
+ This package provides custom n8n memory integration for Mem0 **Self-Hosted (OSS REST API)**, enabling persistent memory directly in n8n AI Agent workflows with:
42
+
43
+ 1. Semantic memory retrieval (`POST /search`)
44
+ 2. Conversation-pair buffering (`human + ai`)
45
+ 3. Session/user/agent memory scoping
46
+ 4. Token-aware context controls
47
+
48
+ ---
49
+
50
+ ## Overview
51
+
52
+ `Mem0 Chat Memory` is designed for n8n AI Agents and supports:
53
+
54
+ 1. Storing memory with `POST /memories`
55
+ 2. Retrieving memory with:
56
+ - semantic search (`POST /search`)
57
+ - conversation buffer mode (latest human+ai turns)
58
+ 3. Scoped memory isolation by:
59
+ - `user_id` (required)
60
+ - `agent_id` (required)
61
+ - `run_id` (optional but strongly recommended for session isolation)
62
+
63
+ It is built for Mem0 OSS/self-hosted REST API usage.
64
+
65
+ ---
66
+
67
+ ## Installation
68
+
69
+ ## Community Nodes panel (recommended)
70
+
71
+ In n8n:
72
+
73
+ 1. Go to `Settings` -> `Community Nodes`
74
+ 2. Click `Install`
75
+ 3. Enter package name: `n8n-nodes-mem0-self`
76
+ 4. Confirm installation
77
+ 5. Restart n8n
78
+
79
+ ## Manual installation
80
+
81
+ Install the package in your n8n runtime environment:
82
+
83
+ ```bash
84
+ npm install n8n-nodes-mem0-self@latest
85
+ ```
86
+
87
+ Restart n8n after installation.
88
+
89
+ ## Local development install
34
90
 
35
91
  ```bash
36
92
  npm install
37
93
  npm run build
38
94
  ```
39
95
 
96
+ If testing with local n8n, make sure this package is available in the n8n runtime environment, then restart n8n.
97
+
98
+ ---
99
+
100
+ ## n8n Setup
101
+
102
+ Typical workflow wiring:
103
+
104
+ 1. Trigger node (`Manual Trigger`, `Chat Trigger`, etc.)
105
+ 2. `AI Agent`
106
+ 3. `Chat Model` node connected to Agent `ai_languageModel`
107
+ 4. `Mem0 Chat Memory` connected to Agent `ai_memory`
108
+
109
+ Without the `ai_memory` connection, the AI Agent will not use this memory node.
110
+
111
+ ---
112
+
113
+ ## Credentials
114
+
115
+ Credential type: **Mem0 Self-Hosted API**
116
+
117
+ Required values:
118
+
119
+ 1. `Base URL`
120
+ - Example: `http://localhost:8000`
121
+ - Purpose: base endpoint for Mem0 REST API
122
+
123
+ 2. `API Key` (header: `X-API-Key`)
124
+ - Purpose: authenticates requests against your Mem0 server
125
+
126
+ ---
127
+
128
+ ## Included Nodes
129
+
130
+ This package currently includes:
131
+
132
+ 1. `Mem0 Chat Memory`
133
+ - n8n AI memory provider for Mem0 Self-Hosted
134
+ - Supports semantic memory retrieval and conversation-pair buffering
135
+ - Connects directly to AI Agent via `ai_memory`
136
+
137
+ Note:
138
+
139
+ 1. This package is focused on Self-Hosted memory workflows.
140
+ 2. It does not expose Mem0 Cloud credential flow in this package line.
141
+
142
+ ---
143
+
144
+ ## Node Parameters (Detailed)
145
+
146
+ Below is a complete reference for every field in `Mem0 Chat Memory`.
147
+
148
+ ## Identity and Scope
149
+
150
+ ### `User ID` (`userId`)
151
+ - Required: **Yes**
152
+ - What it is: unique identifier of the end user.
153
+ - Why it exists: isolates memory by user.
154
+ - Importance: **Critical**. Incorrect value can mix memory between users.
155
+
156
+ ### `Agent ID` (`agentId`)
157
+ - Required: **Yes**
158
+ - What it is: identifier of the agent/persona using memory.
159
+ - Why it exists: isolates memory per assistant/agent.
160
+ - Importance: **Critical**.
161
+
162
+ ### `Run ID` (`runId`)
163
+ - Required: **No**
164
+ - What it is: session/conversation identifier.
165
+ - Why it exists: allows per-session memory partitioning.
166
+ - Importance: **High** for multi-session use cases.
167
+ - Recommendation: set this for strict conversation boundaries.
168
+
169
+ ## Retrieval Controls
170
+
171
+ ### `Top K` (`topK`)
172
+ - Required: **No** (default provided)
173
+ - What it is: max number of relevant memory items to retrieve in search mode.
174
+ - Why it exists: controls retrieval size and token usage.
175
+ - Importance: **High** for cost/performance tuning.
176
+
177
+ ### `Memory Mode` (`memoryMode`)
178
+ - Required: **No**
179
+ - Options:
180
+ - `semantic_facts`: semantic retrieval focused on relevant facts.
181
+ - `conversation_pairs`: chronological conversation retrieval (`human + ai`).
182
+ - Why it exists: supports different memory strategies for different workflows.
183
+ - Importance: **High** (primary behavior selector).
184
+
185
+ ### `Buffer Limit (Interactions)` (`bufferLimit`) *(shown when `memoryMode=conversation_pairs`)*
186
+ - Required: **No** (default `20`)
187
+ - What it is: number of latest user+assistant interactions to load.
188
+ - Technical behavior: each interaction is two messages, so max messages = `bufferLimit * 2`.
189
+ - Why it exists: prevents loading full conversation history by default.
190
+ - Importance: **High** for token control.
191
+
192
+ ### `Fallback to Search on Buffer Miss` (`fallbackToSearchOnBufferMiss`) *(shown when `memoryMode=conversation_pairs`)*
193
+ - Required: **No** (default `true`)
194
+ - What it is: if buffer seems unrelated to current query, fallback to semantic search.
195
+ - Why it exists: combines low-cost recent context with semantic recovery when needed.
196
+ - Importance: **High** for recall quality.
197
+
198
+ ### `Search Mode` (`searchMode`)
199
+ - Required: **No**
200
+ - Options:
201
+ - `balanced` (recommended): factual prioritization + safe fallback behavior.
202
+ - `strict_facts`: stricter factual preference.
203
+ - `legacy`: compatibility behavior.
204
+ - Why it exists: controls post-processing strategy for search results.
205
+ - Importance: **Medium/High**.
206
+
207
+ ### `Max Context Characters` (`maxContextChars`)
208
+ - Required: **No** (default `700`)
209
+ - What it is: max total characters injected into AI memory context.
210
+ - Why it exists: direct cap on memory payload size (and token growth).
211
+ - Importance: **High** for predictable token usage.
212
+
213
+ ### `Default Query` (`defaultQuery`)
214
+ - Required: **No**
215
+ - What it is: fallback search query when no user input can be extracted.
216
+ - Why it exists: avoids empty retrieval queries in edge workflows.
217
+ - Importance: **Medium**.
218
+
219
+ ### `Rerank` (`rerank`)
220
+ - Required: **No** (default `false`)
221
+ - What it is: enables Mem0 reranking on search.
222
+ - Why it exists: can improve relevance in some datasets.
223
+ - Importance: **Situational** (quality vs latency/cost tradeoff).
224
+
225
+ ### `Fields (Comma Separated)` (`fields`)
226
+ - Required: **No**
227
+ - What it is: optional fields sent in search payload.
228
+ - Why it exists: advanced response shaping/customization.
229
+ - Importance: **Advanced usage**.
230
+
231
+ ### `Include Assistant Memories` (`includeAssistantMemories`)
232
+ - Required: **No** (default `false`)
233
+ - What it is: include assistant-generated memory entries in retrieval.
234
+ - Why it exists: some scenarios need full dialog context; others prefer user facts only.
235
+ - Importance: **Medium**.
236
+
237
+ ### `Search Filters (JSON)` (`searchFilters`)
238
+ - Required: **No**
239
+ - What it is: JSON filters passed to Mem0 `POST /search`.
240
+ - Why it exists: metadata-filtered retrieval (precision control).
241
+ - Importance: **High** for advanced production tuning.
242
+ - Note: invalid JSON returns a validation error.
243
+
244
+ ### `Allow Empty Context` (`allowEmptyContext`)
245
+ - Required: **No** (default `false`)
246
+ - What it is: allows returning empty context without aggressive fallback.
247
+ - Why it exists: explicit control over strict retrieval behavior.
248
+ - Importance: **Medium**.
249
+
250
+ ## Storage Controls
251
+
252
+ ### `Store Strategy` (`storeStrategy`)
253
+ - Required: **No**
254
+ - Options:
255
+ - `conversation` (compatible default): store user and assistant turns.
256
+ - `facts_only`: store user-side factual signals only.
257
+ - Why it exists: lets you choose between conversational trace and lower-noise factual memory.
258
+ - Importance: **High** for long-term memory quality.
259
+
260
+ ### `Infer on Store` (`infer`)
261
+ - Required: **No** (default `false`)
262
+ - What it is: passes infer flag to Mem0 on memory write.
263
+ - Why it exists: enables Mem0 inference/extraction workflows where appropriate.
264
+ - Importance: **Situational**.
265
+
266
+ ---
267
+
268
+ ## Recommended Configurations
269
+
270
+ ## A) Low-token factual memory
271
+
272
+ Use:
273
+
274
+ 1. `memoryMode = semantic_facts`
275
+ 2. `searchMode = balanced`
276
+ 3. `topK = 3..6`
277
+ 4. `maxContextChars = 500..900`
278
+ 5. `storeStrategy = facts_only`
279
+ 6. `includeAssistantMemories = false`
280
+
281
+ ## B) Recent conversation memory
282
+
283
+ Use:
284
+
285
+ 1. `memoryMode = conversation_pairs`
286
+ 2. `bufferLimit = 10..20`
287
+ 3. `fallbackToSearchOnBufferMiss = true`
288
+ 4. `storeStrategy = conversation`
289
+
290
+ ---
291
+
292
+ ## Troubleshooting
293
+
294
+ ### 1) `chat_history` is empty
295
+
296
+ Check:
297
+
298
+ 1. `userId` and `agentId` values are correct and consistent.
299
+ 2. `runId` matches the same session where memory was stored.
300
+ 3. `searchFilters` is valid and not overly restrictive.
301
+ 4. `allowEmptyContext` behavior matches your expectations.
302
+
303
+ ### 2) Token usage is too high
304
+
305
+ Tune:
306
+
307
+ 1. Lower `topK`
308
+ 2. Lower `maxContextChars`
309
+ 3. Use `facts_only`
310
+ 4. Use `conversation_pairs` + smaller `bufferLimit`
311
+
312
+ ### 3) Memory quality is noisy
313
+
314
+ Try:
315
+
316
+ 1. `searchMode = balanced` or `strict_facts`
317
+ 2. `includeAssistantMemories = false`
318
+ 3. `storeStrategy = facts_only`
319
+ 4. Add `searchFilters` based on metadata
320
+
321
+ ---
322
+
323
+ ## Safety Notes
324
+
325
+ 1. Keep API keys only in n8n credentials.
326
+ 2. Use stable ID design (`userId`, `agentId`, `runId`) to avoid context leakage.
327
+ 3. This node is intended for safe memory operations in normal workflow usage.
328
+
329
+ ---
330
+
331
+ ## Changelog
332
+
333
+ See detailed release history in:
334
+
335
+ - [CHANGELOG.md](./CHANGELOG.md)
336
+
337
+ ---
338
+
40
339
  ## License
41
340
 
42
341
  MIT
@@ -3,7 +3,7 @@ type Ctx = IExecuteFunctions | IHookFunctions | ILoadOptionsFunctions | ISupplyD
3
3
  /**
4
4
  * Extracts the memories array from an API response.
5
5
  * Self-hosted usually returns arrays directly, but can also wrap results in
6
- * { results: [...], relations: [...] }.
6
+ * { results: [...], relations: [...] } or nested structures like { data: { results: [...] } }.
7
7
  */
8
8
  export declare function extractResults(res: any): any[];
9
9
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"GenericFunctions.d.ts","sourceRoot":"","sources":["../../../nodes/Mem0/GenericFunctions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EAErB,oBAAoB,EACpB,MAAM,cAAc,CAAC;AAGtB,KAAK,GAAG,GAAG,iBAAiB,GAAG,cAAc,GAAG,qBAAqB,GAAG,oBAAoB,CAAC;AAE7F;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,EAAE,CAK9C;AAED;;;GAGG;AACH,wBAAsB,cAAc,CACnC,IAAI,EAAE,GAAG,EACT,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,EAC9B,EAAE,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAC1B,OAAO,CAAC,GAAG,CAAC,CAmCd"}
1
+ {"version":3,"file":"GenericFunctions.d.ts","sourceRoot":"","sources":["../../../nodes/Mem0/GenericFunctions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EAErB,oBAAoB,EACpB,MAAM,cAAc,CAAC;AAGtB,KAAK,GAAG,GAAG,iBAAiB,GAAG,cAAc,GAAG,qBAAqB,GAAG,oBAAoB,CAAC;AAE7F;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,EAAE,CAQ9C;AAED;;;GAGG;AACH,wBAAsB,cAAc,CACnC,IAAI,EAAE,GAAG,EACT,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,EAC9B,EAAE,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAC1B,OAAO,CAAC,GAAG,CAAC,CAmCd"}
@@ -6,13 +6,18 @@ const n8n_workflow_1 = require("n8n-workflow");
6
6
  /**
7
7
  * Extracts the memories array from an API response.
8
8
  * Self-hosted usually returns arrays directly, but can also wrap results in
9
- * { results: [...], relations: [...] }.
9
+ * { results: [...], relations: [...] } or nested structures like { data: { results: [...] } }.
10
10
  */
11
11
  function extractResults(res) {
12
12
  if (Array.isArray(res))
13
13
  return res;
14
+ // Handle nested { data: { results: [...] } }
15
+ if (res?.data?.results && Array.isArray(res.data.results))
16
+ return res.data.results;
14
17
  if (res?.results && Array.isArray(res.results))
15
18
  return res.results;
19
+ if (res?.memories && Array.isArray(res.memories))
20
+ return res.memories;
16
21
  if (res)
17
22
  return [res];
18
23
  return [];
@@ -1 +1 @@
1
- {"version":3,"file":"GenericFunctions.js","sourceRoot":"","sources":["../../../nodes/Mem0/GenericFunctions.ts"],"names":[],"mappings":";;AAgBA,wCAKC;AAMD,wCAyCC;AA7DD,+CAA4C;AAI5C;;;;GAIG;AACH,SAAgB,cAAc,CAAC,GAAQ;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IACnC,IAAI,GAAG,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC;IACnE,IAAI,GAAG;QAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IACtB,OAAO,EAAE,CAAC;AACX,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,cAAc,CAEnC,MAAc,EACd,QAAgB,EAChB,OAA4B,EAAE,EAC9B,KAA0B,EAAE;IAE5B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;IACnE,MAAM,OAAO,GAAI,WAAW,CAAC,OAAkB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACnE,MAAM,gBAAgB,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC;IAC9E,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAEjG,MAAM,OAAO,GAAwB;QACpC,MAAM,EAAE,WAA4C;QACpD,EAAE;QACF,GAAG,EAAE,GAAG,OAAO,GAAG,gBAAgB,EAAE;QACpC,IAAI,EAAE,IAAI;KACV,CAAC;IACF,IAAI,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,IAAI,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;IAC9C,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;QACxB,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAgB,CAAC;IACrD,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,IAAI,CAAC;QACJ,OAAO,MAAO,IAA0B,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACvE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,IAAI,2BAAY,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAY,CAAC,CAAC;IACtD,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"GenericFunctions.js","sourceRoot":"","sources":["../../../nodes/Mem0/GenericFunctions.ts"],"names":[],"mappings":";;AAgBA,wCAQC;AAMD,wCAyCC;AAhED,+CAA4C;AAI5C;;;;GAIG;AACH,SAAgB,cAAc,CAAC,GAAQ;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IACnC,6CAA6C;IAC7C,IAAI,GAAG,EAAE,IAAI,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;IACnF,IAAI,GAAG,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC;IACnE,IAAI,GAAG,EAAE,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,GAAG,CAAC,QAAQ,CAAC;IACtE,IAAI,GAAG;QAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IACtB,OAAO,EAAE,CAAC;AACX,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,cAAc,CAEnC,MAAc,EACd,QAAgB,EAChB,OAA4B,EAAE,EAC9B,KAA0B,EAAE;IAE5B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;IACnE,MAAM,OAAO,GAAI,WAAW,CAAC,OAAkB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACnE,MAAM,gBAAgB,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC;IAC9E,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAEjG,MAAM,OAAO,GAAwB;QACpC,MAAM,EAAE,WAA4C;QACpD,EAAE;QACF,GAAG,EAAE,GAAG,OAAO,GAAG,gBAAgB,EAAE;QACpC,IAAI,EAAE,IAAI;KACV,CAAC;IACF,IAAI,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,IAAI,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;IAC9C,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;QACxB,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAgB,CAAC;IACrD,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,IAAI,CAAC;QACJ,OAAO,MAAO,IAA0B,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACvE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,IAAI,2BAAY,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAY,CAAC,CAAC;IACtD,CAAC;AACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Mem0Memory.node.d.ts","sourceRoot":"","sources":["../../../nodes/Mem0/Mem0Memory.node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,oBAAoB,EACpB,oBAAoB,EACpB,UAAU,EACV,MAAM,cAAc,CAAC;AAiMtB,qBAAa,UAAW,YAAW,SAAS;IAC3C,WAAW,EAAE,oBAAoB,CA6L/B;IAEI,UAAU,CAAC,IAAI,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IA6U9E,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;CAUvE"}
1
+ {"version":3,"file":"Mem0Memory.node.d.ts","sourceRoot":"","sources":["../../../nodes/Mem0/Mem0Memory.node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,oBAAoB,EACpB,oBAAoB,EACpB,UAAU,EACV,MAAM,cAAc,CAAC;AA0MtB,qBAAa,UAAW,YAAW,SAAS;IAC3C,WAAW,EAAE,oBAAoB,CA0N/B;IAEI,UAAU,CAAC,IAAI,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IA+W9E,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;CAUvE"}
@@ -79,11 +79,18 @@ function toMessageContent(memory) {
79
79
  function toLangchainMessage(memory) {
80
80
  const content = toMessageContent(memory);
81
81
  const role = String(memory?.metadata?.role || memory?.role || '').toLowerCase();
82
+ // Ensure message has full LangChain structure
83
+ const createMsg = (MsgClass) => {
84
+ const msg = new MsgClass(content);
85
+ msg.additional_kwargs = memory?.additional_kwargs || {};
86
+ msg.response_metadata = memory?.response_metadata || {};
87
+ return msg;
88
+ };
82
89
  if (role === 'user' || role === 'human')
83
- return new HumanMessage(content);
90
+ return createMsg(HumanMessage);
84
91
  if (role === 'assistant' || role === 'ai')
85
- return new AIMessage(content);
86
- return new SystemMessage(content);
92
+ return createMsg(AIMessage);
93
+ return createMsg(SystemMessage);
87
94
  }
88
95
  function wrapMemoryResponse(memory, ctx) {
89
96
  if (typeof logWrapper === 'function') {
@@ -250,6 +257,35 @@ class Mem0Memory {
250
257
  },
251
258
  },
252
259
  },
260
+ {
261
+ displayName: 'Conversation Retrieval Policy',
262
+ name: 'conversationRetrievalPolicy',
263
+ type: 'options',
264
+ default: 'smart_fallback',
265
+ options: [
266
+ {
267
+ name: 'Smart Fallback (Recommended)',
268
+ value: 'smart_fallback',
269
+ description: 'Uses buffer first, then falls back to search when relevance is low',
270
+ },
271
+ {
272
+ name: 'Search First',
273
+ value: 'search_first',
274
+ description: 'Always retrieves with semantic search first, then falls back to buffer if empty',
275
+ },
276
+ {
277
+ name: 'Buffer First',
278
+ value: 'buffer_first',
279
+ description: 'Always uses recent buffer only',
280
+ },
281
+ ],
282
+ description: 'How conversation mode chooses between buffer and semantic retrieval',
283
+ displayOptions: {
284
+ show: {
285
+ memoryMode: ['conversation_pairs'],
286
+ },
287
+ },
288
+ },
253
289
  {
254
290
  displayName: 'Search Mode',
255
291
  name: 'searchMode',
@@ -371,6 +407,7 @@ class Mem0Memory {
371
407
  const includeAssistantMemories = Boolean(this.getNodeParameter('includeAssistantMemories', itemIndex, false));
372
408
  const storeStrategy = String(this.getNodeParameter('storeStrategy', itemIndex, 'conversation') || 'conversation');
373
409
  const fallbackToSearchOnBufferMiss = Boolean(this.getNodeParameter('fallbackToSearchOnBufferMiss', itemIndex, true));
410
+ const conversationRetrievalPolicy = String(this.getNodeParameter('conversationRetrievalPolicy', itemIndex, 'smart_fallback') || 'smart_fallback');
374
411
  const searchFiltersInput = String(this.getNodeParameter('searchFilters', itemIndex, '') || '').trim();
375
412
  const allowEmptyContext = Boolean(this.getNodeParameter('allowEmptyContext', itemIndex, false));
376
413
  const inferOnStore = Boolean(this.getNodeParameter('infer', itemIndex, false));
@@ -403,10 +440,11 @@ class Mem0Memory {
403
440
  .sort((a, b) => {
404
441
  const aTs = new Date(a?.created_at || a?.updated_at || 0).getTime() || 0;
405
442
  const bTs = new Date(b?.created_at || b?.updated_at || 0).getTime() || 0;
406
- return aTs - bTs;
443
+ return bTs - aTs; // descendente: mais recentes primeiro
407
444
  });
408
445
  const maxMessages = bufferLimit * 2;
409
- return normalized.slice(-maxMessages).map((entry) => toLangchainMessage(entry));
446
+ // Pega os N mais recentes e reverte para ordem cronológica
447
+ return normalized.slice(0, maxMessages).reverse().map((entry) => toLangchainMessage(entry));
410
448
  };
411
449
  const shouldFallbackToSearch = (values, bufferMessages) => {
412
450
  if (!fallbackToSearchOnBufferMiss)
@@ -422,14 +460,28 @@ class Mem0Memory {
422
460
  .map((m) => String(m?.content || ''))
423
461
  .join(' ')
424
462
  .toLowerCase();
463
+ const stopwords = new Set([
464
+ 'a', 'an', 'and', 'are', 'as', 'at', 'do', 'for', 'from', 'how', 'i', 'in', 'is', 'it',
465
+ 'me', 'my', 'of', 'on', 'or', 'the', 'to', 'was', 'what', 'where', 'who',
466
+ 'com', 'como', 'da', 'de', 'do', 'e', 'ele', 'ela', 'em', 'eu', 'isso', 'meu', 'minha',
467
+ 'na', 'no', 'o', 'os', 'para', 'por', 'qual', 'que', 'se', 'uma', 'um',
468
+ 'yo', 'mi', 'donde', 'el', 'la', 'los', 'las', 'un', 'una',
469
+ ]);
425
470
  const tokens = query
426
- .split(/[^a-z0-9áàâãéêíóôõúçñ]+/i)
471
+ .split(/[^a-z0-9]+/i)
427
472
  .map((t) => t.trim())
428
- .filter((t) => t.length >= 3);
473
+ .filter((t) => t.length >= 3 && !stopwords.has(t));
429
474
  if (tokens.length === 0)
430
475
  return false;
431
- const matched = tokens.some((t) => bufferText.includes(t));
432
- return !matched;
476
+ const matchedCount = tokens.filter((t) => bufferText.includes(t)).length;
477
+ const coverage = matchedCount / tokens.length;
478
+ if (matchedCount === 0)
479
+ return true;
480
+ if (tokens.length >= 3 && coverage < 0.6)
481
+ return true;
482
+ if (tokens.length >= 5 && matchedCount < 2)
483
+ return true;
484
+ return false;
433
485
  };
434
486
  const searchMessages = async (values) => {
435
487
  const rawQuery = String(values?.input ||
@@ -485,12 +537,6 @@ class Mem0Memory {
485
537
  body.fields = fields;
486
538
  if (searchFilters)
487
539
  body.filters = searchFilters;
488
- if (strictFactsMode && !searchFilters) {
489
- body.filters = {
490
- AND: [{ role: 'user' }, { memory_type: 'fact' }],
491
- };
492
- filteredAttempt = true;
493
- }
494
540
  const response = await GenericFunctions_1.mem0ApiRequest.call(this, 'POST', '/search', body);
495
541
  results = (0, GenericFunctions_1.extractResults)(response);
496
542
  if (results.length > 0)
@@ -513,7 +559,15 @@ class Mem0Memory {
513
559
  break;
514
560
  }
515
561
  }
516
- const userOnlyOrAll = results.filter((entry) => {
562
+ const strictFactsLocallyFiltered = strictFactsMode
563
+ ? results.filter((entry) => {
564
+ const role = String(entry?.metadata?.role || entry?.role || '').toLowerCase();
565
+ const memoryType = String(entry?.metadata?.memory_type || '').toLowerCase();
566
+ return role === 'user' || role === 'human' || memoryType === 'fact';
567
+ })
568
+ : results;
569
+ const strictBaseResults = strictFactsLocallyFiltered.length > 0 ? strictFactsLocallyFiltered : results;
570
+ const userOnlyOrAll = strictBaseResults.filter((entry) => {
517
571
  if (searchMode === 'legacy' && includeAssistantMemories)
518
572
  return true;
519
573
  if (searchMode === 'legacy' && !includeAssistantMemories) {
@@ -533,9 +587,6 @@ class Mem0Memory {
533
587
  // Drop obvious non-memory placeholders.
534
588
  if (text.includes('$input.first().json'))
535
589
  return false;
536
- // Drop interrogative user utterances that usually pollute semantic recall for factual retrieval.
537
- if (text.endsWith('?'))
538
- return false;
539
590
  return true;
540
591
  });
541
592
  const sanitized = contentSanitized.length > 0 ? contentSanitized : roleFiltered;
@@ -583,6 +634,19 @@ class Mem0Memory {
583
634
  }
584
635
  return finalResults.map((entry) => toLangchainMessage(entry));
585
636
  };
637
+ const resolveConversationMessages = async (values, retrieveFn) => {
638
+ const bufferMessages = await loadConversationMessages();
639
+ if (conversationRetrievalPolicy === 'buffer_first') {
640
+ return bufferMessages;
641
+ }
642
+ if (conversationRetrievalPolicy === 'search_first') {
643
+ const searchResults = await retrieveFn(values);
644
+ return searchResults.length > 0 ? searchResults : bufferMessages;
645
+ }
646
+ return shouldFallbackToSearch(values, bufferMessages)
647
+ ? await retrieveFn(values)
648
+ : bufferMessages;
649
+ };
586
650
  const memory = BufferWindowMemory
587
651
  ? (() => {
588
652
  class SearchFirstBufferMemory extends BufferWindowMemory {
@@ -593,10 +657,7 @@ class Mem0Memory {
593
657
  async loadMemoryVariables(values) {
594
658
  let messages;
595
659
  if (memoryMode === 'conversation_pairs') {
596
- const bufferMessages = await loadConversationMessages();
597
- messages = shouldFallbackToSearch(values, bufferMessages)
598
- ? await this.retrieveFn(values)
599
- : bufferMessages;
660
+ messages = await resolveConversationMessages(values, this.retrieveFn);
600
661
  }
601
662
  else {
602
663
  messages = await this.retrieveFn(values);
@@ -621,11 +682,8 @@ class Mem0Memory {
621
682
  outputKey: 'output',
622
683
  async loadMemoryVariables(values) {
623
684
  if (memoryMode === 'conversation_pairs') {
624
- const bufferMessages = await loadConversationMessages();
625
685
  return {
626
- chat_history: shouldFallbackToSearch(values, bufferMessages)
627
- ? await searchMessages(values)
628
- : bufferMessages,
686
+ chat_history: await resolveConversationMessages(values, searchMessages),
629
687
  };
630
688
  }
631
689
  return { chat_history: await searchMessages(values) };
@@ -642,7 +700,12 @@ class Mem0Memory {
642
700
  return;
643
701
  },
644
702
  };
645
- return { response: wrapMemoryResponse(memory, this) };
703
+ // Return memory with correct LangChain key structure
704
+ const wrappedMemory = wrapMemoryResponse(memory, this);
705
+ if (wrappedMemory && typeof wrappedMemory === 'object') {
706
+ wrappedMemory.memoryKey = wrappedMemory.memoryKey || 'chat_history';
707
+ }
708
+ return { response: wrappedMemory };
646
709
  }
647
710
  async execute() {
648
711
  const items = this.getInputData();
@@ -1 +1 @@
1
- {"version":3,"file":"Mem0Memory.node.js","sourceRoot":"","sources":["../../../nodes/Mem0/Mem0Memory.node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Mem0Memory.node.js","sourceRoot":"","sources":["../../../nodes/Mem0/Mem0Memory.node.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,63 +1,70 @@
1
- {
2
- "name": "n8n-nodes-mem0-self",
3
- "version": "0.2.9",
4
- "description": "n8n community node for Mem0 Self-Hosted REST API",
5
- "license": "MIT",
6
- "author": {
7
- "name": "Amaral Karl"
8
- },
9
- "repository": {
10
- "type": "git",
11
- "url": "git+https://github.com/kallbuloso/n8n-nodes-mem0-self.git"
12
- },
13
- "homepage": "https://github.com/kallbuloso/n8n-nodes-mem0-self#readme",
14
- "bugs": {
15
- "url": "https://github.com/kallbuloso/n8n-nodes-mem0-self/issues"
16
- },
17
- "main": "index.js",
18
- "types": "dist/index.d.ts",
19
- "files": [
20
- "dist",
21
- "index.js",
22
- "README.md",
23
- "package.json"
24
- ],
25
- "scripts": {
26
- "build": "tsc -p tsconfig.json && node scripts/copy-assets.js",
27
- "dev": "tsc -w -p tsconfig.json",
28
- "prepublishOnly": "npm run build"
29
- },
30
- "keywords": [
31
- "n8n-community-node-package",
32
- "n8n",
33
- "mem0",
34
- "memory",
35
- "ai",
36
- "llm",
37
- "long-term-memory",
38
- "semantic-search",
39
- "vector-database",
40
- "ai-agent",
41
- "agent-id",
42
- "langchain",
43
- "self-hosted"
44
- ],
45
- "engines": {
46
- "node": ">=18.17"
47
- },
48
- "devDependencies": {
49
- "typescript": "^5.6.3"
50
- },
51
- "peerDependencies": {
52
- "n8n-workflow": "*"
53
- },
54
- "n8n": {
55
- "n8nNodesApiVersion": 1,
56
- "credentials": [
57
- "dist/credentials/Mem0SelfHostedApi.credentials.js"
58
- ],
59
- "nodes": [
60
- "dist/nodes/Mem0/Mem0Memory.node.js"
61
- ]
62
- }
63
- }
1
+ {
2
+ "name": "n8n-nodes-mem0-self",
3
+ "version": "0.2.11",
4
+ "description": "n8n community node for Mem0 Self-Hosted with LangChain-compliant AI memory",
5
+ "license": "MIT",
6
+ "author": {
7
+ "name": "Amaral Karl"
8
+ },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "git+https://github.com/kallbuloso/n8n-nodes-mem0-self.git"
12
+ },
13
+ "homepage": "https://github.com/kallbuloso/n8n-nodes-mem0-self#readme",
14
+ "bugs": {
15
+ "url": "https://github.com/kallbuloso/n8n-nodes-mem0-self/issues"
16
+ },
17
+ "main": "index.js",
18
+ "types": "dist/index.d.ts",
19
+ "files": [
20
+ "dist",
21
+ "index.js",
22
+ "README.md",
23
+ "package.json"
24
+ ],
25
+ "scripts": {
26
+ "build": "tsc -p tsconfig.json && node scripts/copy-assets.js",
27
+ "dev": "tsc -w -p tsconfig.json",
28
+ "prepublishOnly": "npm run build"
29
+ },
30
+ "keywords": [
31
+ "n8n-community-node-package",
32
+ "n8n",
33
+ "mem0",
34
+ "memory",
35
+ "ai",
36
+ "llm",
37
+ "long-term-memory",
38
+ "semantic-search",
39
+ "vector-database",
40
+ "ai-agent",
41
+ "agent-id",
42
+ "langchain",
43
+ "self-hosted",
44
+ "n8n",
45
+ "mem0",
46
+ "memory",
47
+ "ai-agent",
48
+ "ai-memory",
49
+ "langchain",
50
+ "self-hosted"
51
+ ],
52
+ "engines": {
53
+ "node": ">=18.17"
54
+ },
55
+ "devDependencies": {
56
+ "typescript": "^5.6.3"
57
+ },
58
+ "peerDependencies": {
59
+ "n8n-workflow": "*"
60
+ },
61
+ "n8n": {
62
+ "n8nNodesApiVersion": 1,
63
+ "credentials": [
64
+ "dist/credentials/Mem0SelfHostedApi.credentials.js"
65
+ ],
66
+ "nodes": [
67
+ "dist/nodes/Mem0/Mem0Memory.node.js"
68
+ ]
69
+ }
70
+ }