@mastra/memory 1.0.0-beta.5 → 1.0.0-beta.6
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/CHANGELOG.md +11 -0
- package/dist/index.cjs +53 -13
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +51 -14
- package/dist/index.js.map +1 -1
- package/dist/working-memory-utils.d.ts +20 -0
- package/dist/working-memory-utils.d.ts.map +1 -0
- package/package.json +4 -4
package/dist/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ import type { StorageListThreadsByResourceIdOutput, StorageListThreadsByResource
|
|
|
6
6
|
import type { ToolAction } from '@mastra/core/tools';
|
|
7
7
|
import { deepMergeWorkingMemory } from './tools/working-memory.js';
|
|
8
8
|
export { deepMergeWorkingMemory };
|
|
9
|
+
export { extractWorkingMemoryTags, extractWorkingMemoryContent, removeWorkingMemoryTags } from './working-memory-utils.js';
|
|
9
10
|
/**
|
|
10
11
|
* Concrete implementation of MastraMemory that adds support for thread configuration
|
|
11
12
|
* and message injection.
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAIhD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EACV,oCAAoC,EACpC,mCAAmC,EACnC,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAQrD,OAAO,EAGL,sBAAsB,EACvB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,sBAAsB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -9213,6 +9213,50 @@ var __experimental_updateWorkingMemoryToolVNext = (config) => {
|
|
|
9213
9213
|
}
|
|
9214
9214
|
});
|
|
9215
9215
|
};
|
|
9216
|
+
|
|
9217
|
+
// src/working-memory-utils.ts
|
|
9218
|
+
var WORKING_MEMORY_START_TAG = "<working_memory>";
|
|
9219
|
+
var WORKING_MEMORY_END_TAG = "</working_memory>";
|
|
9220
|
+
function extractWorkingMemoryTags(text3) {
|
|
9221
|
+
const results = [];
|
|
9222
|
+
let pos = 0;
|
|
9223
|
+
while (pos < text3.length) {
|
|
9224
|
+
const start = text3.indexOf(WORKING_MEMORY_START_TAG, pos);
|
|
9225
|
+
if (start === -1) break;
|
|
9226
|
+
const end = text3.indexOf(WORKING_MEMORY_END_TAG, start + WORKING_MEMORY_START_TAG.length);
|
|
9227
|
+
if (end === -1) break;
|
|
9228
|
+
results.push(text3.substring(start, end + WORKING_MEMORY_END_TAG.length));
|
|
9229
|
+
pos = end + WORKING_MEMORY_END_TAG.length;
|
|
9230
|
+
}
|
|
9231
|
+
return results.length > 0 ? results : null;
|
|
9232
|
+
}
|
|
9233
|
+
function removeWorkingMemoryTags(text3) {
|
|
9234
|
+
let result = "";
|
|
9235
|
+
let pos = 0;
|
|
9236
|
+
while (pos < text3.length) {
|
|
9237
|
+
const start = text3.indexOf(WORKING_MEMORY_START_TAG, pos);
|
|
9238
|
+
if (start === -1) {
|
|
9239
|
+
result += text3.substring(pos);
|
|
9240
|
+
break;
|
|
9241
|
+
}
|
|
9242
|
+
result += text3.substring(pos, start);
|
|
9243
|
+
const end = text3.indexOf(WORKING_MEMORY_END_TAG, start + WORKING_MEMORY_START_TAG.length);
|
|
9244
|
+
if (end === -1) {
|
|
9245
|
+
result += text3.substring(start);
|
|
9246
|
+
break;
|
|
9247
|
+
}
|
|
9248
|
+
pos = end + WORKING_MEMORY_END_TAG.length;
|
|
9249
|
+
}
|
|
9250
|
+
return result;
|
|
9251
|
+
}
|
|
9252
|
+
function extractWorkingMemoryContent(text3) {
|
|
9253
|
+
const start = text3.indexOf(WORKING_MEMORY_START_TAG);
|
|
9254
|
+
if (start === -1) return null;
|
|
9255
|
+
const contentStart = start + WORKING_MEMORY_START_TAG.length;
|
|
9256
|
+
const end = text3.indexOf(WORKING_MEMORY_END_TAG, contentStart);
|
|
9257
|
+
if (end === -1) return null;
|
|
9258
|
+
return text3.substring(contentStart, end);
|
|
9259
|
+
}
|
|
9216
9260
|
var CHARS_PER_TOKEN = 4;
|
|
9217
9261
|
var DEFAULT_MESSAGE_RANGE = { before: 1, after: 1 };
|
|
9218
9262
|
var DEFAULT_TOP_K = 4;
|
|
@@ -9629,11 +9673,10 @@ ${workingMemory}`;
|
|
|
9629
9673
|
return result;
|
|
9630
9674
|
}
|
|
9631
9675
|
updateMessageToHideWorkingMemory(message) {
|
|
9632
|
-
const workingMemoryRegex = /<working_memory>([^]*?)<\/working_memory>/g;
|
|
9633
9676
|
if (typeof message?.content === `string`) {
|
|
9634
9677
|
return {
|
|
9635
9678
|
...message,
|
|
9636
|
-
content: message.content
|
|
9679
|
+
content: removeWorkingMemoryTags(message.content).trim()
|
|
9637
9680
|
};
|
|
9638
9681
|
} else if (Array.isArray(message?.content)) {
|
|
9639
9682
|
const filteredContent = message.content.filter(
|
|
@@ -9643,7 +9686,7 @@ ${workingMemory}`;
|
|
|
9643
9686
|
if (content.type === "text") {
|
|
9644
9687
|
return {
|
|
9645
9688
|
...content,
|
|
9646
|
-
text: content.text
|
|
9689
|
+
text: removeWorkingMemoryTags(content.text).trim()
|
|
9647
9690
|
};
|
|
9648
9691
|
}
|
|
9649
9692
|
return { ...content };
|
|
@@ -9655,13 +9698,12 @@ ${workingMemory}`;
|
|
|
9655
9698
|
}
|
|
9656
9699
|
}
|
|
9657
9700
|
updateMessageToHideWorkingMemoryV2(message) {
|
|
9658
|
-
const workingMemoryRegex = /<working_memory>([^]*?)<\/working_memory>/g;
|
|
9659
9701
|
const newMessage = { ...message };
|
|
9660
9702
|
if (message.content && typeof message.content === "object" && !Array.isArray(message.content)) {
|
|
9661
9703
|
newMessage.content = { ...message.content };
|
|
9662
9704
|
}
|
|
9663
9705
|
if (typeof newMessage.content?.content === "string" && newMessage.content.content.length > 0) {
|
|
9664
|
-
newMessage.content.content = newMessage.content.content
|
|
9706
|
+
newMessage.content.content = removeWorkingMemoryTags(newMessage.content.content).trim();
|
|
9665
9707
|
}
|
|
9666
9708
|
if (Array.isArray(newMessage.content?.parts)) {
|
|
9667
9709
|
newMessage.content.parts = newMessage.content.parts.filter((part) => {
|
|
@@ -9674,7 +9716,7 @@ ${workingMemory}`;
|
|
|
9674
9716
|
const text3 = typeof part.text === "string" ? part.text : "";
|
|
9675
9717
|
return {
|
|
9676
9718
|
...part,
|
|
9677
|
-
text: text3
|
|
9719
|
+
text: removeWorkingMemoryTags(text3).trim()
|
|
9678
9720
|
};
|
|
9679
9721
|
}
|
|
9680
9722
|
return part;
|
|
@@ -9687,13 +9729,8 @@ ${workingMemory}`;
|
|
|
9687
9729
|
}
|
|
9688
9730
|
parseWorkingMemory(text3) {
|
|
9689
9731
|
if (!this.threadConfig.workingMemory?.enabled) return null;
|
|
9690
|
-
const
|
|
9691
|
-
|
|
9692
|
-
const match = matches?.[0];
|
|
9693
|
-
if (match) {
|
|
9694
|
-
return match.replace(/<\/?working_memory>/g, "").trim();
|
|
9695
|
-
}
|
|
9696
|
-
return null;
|
|
9732
|
+
const content = extractWorkingMemoryContent(text3);
|
|
9733
|
+
return content?.trim() ?? null;
|
|
9697
9734
|
}
|
|
9698
9735
|
async getWorkingMemory({
|
|
9699
9736
|
threadId,
|
|
@@ -9922,6 +9959,6 @@ ${template.content !== this.defaultWorkingMemoryTemplate ? `- Only store informa
|
|
|
9922
9959
|
}
|
|
9923
9960
|
};
|
|
9924
9961
|
|
|
9925
|
-
export { Memory, deepMergeWorkingMemory };
|
|
9962
|
+
export { Memory, deepMergeWorkingMemory, extractWorkingMemoryContent, extractWorkingMemoryTags, removeWorkingMemoryTags };
|
|
9926
9963
|
//# sourceMappingURL=index.js.map
|
|
9927
9964
|
//# sourceMappingURL=index.js.map
|