universal-agent-memory 0.7.0 → 0.7.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.
- package/dist/bin/cli.js +4 -1
- package/dist/bin/cli.js.map +1 -1
- package/dist/cli/update.d.ts +3 -0
- package/dist/cli/update.d.ts.map +1 -1
- package/dist/cli/update.js +136 -11
- package/dist/cli/update.js.map +1 -1
- package/dist/index.d.ts +8 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -1
- package/dist/index.js.map +1 -1
- package/dist/memory/backends/qdrant-cloud.d.ts +12 -1
- package/dist/memory/backends/qdrant-cloud.d.ts.map +1 -1
- package/dist/memory/backends/qdrant-cloud.js +39 -3
- package/dist/memory/backends/qdrant-cloud.js.map +1 -1
- package/dist/memory/dynamic-retrieval.d.ts +62 -1
- package/dist/memory/dynamic-retrieval.d.ts.map +1 -1
- package/dist/memory/dynamic-retrieval.js +154 -32
- package/dist/memory/dynamic-retrieval.js.map +1 -1
- package/dist/memory/embeddings.d.ts +25 -2
- package/dist/memory/embeddings.d.ts.map +1 -1
- package/dist/memory/embeddings.js +72 -2
- package/dist/memory/embeddings.js.map +1 -1
- package/dist/memory/memory-consolidator.d.ts +36 -0
- package/dist/memory/memory-consolidator.d.ts.map +1 -1
- package/dist/memory/memory-consolidator.js +166 -0
- package/dist/memory/memory-consolidator.js.map +1 -1
- package/dist/memory/multi-view-memory.d.ts +134 -0
- package/dist/memory/multi-view-memory.d.ts.map +1 -0
- package/dist/memory/multi-view-memory.js +420 -0
- package/dist/memory/multi-view-memory.js.map +1 -0
- package/dist/memory/semantic-compression.d.ts +77 -0
- package/dist/memory/semantic-compression.d.ts.map +1 -0
- package/dist/memory/semantic-compression.js +344 -0
- package/dist/memory/semantic-compression.js.map +1 -0
- package/dist/memory/speculative-cache.d.ts +3 -0
- package/dist/memory/speculative-cache.d.ts.map +1 -1
- package/dist/memory/speculative-cache.js +2 -0
- package/dist/memory/speculative-cache.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,344 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Semantic Compression Module for UAM
|
|
3
|
+
*
|
|
4
|
+
* Implements SimpleMem-style semantic structured compression:
|
|
5
|
+
* 1. Entropy-aware filtering to distill raw content into atomic facts
|
|
6
|
+
* 2. Coreference normalization (entity resolution)
|
|
7
|
+
* 3. Multi-view indexing for efficient retrieval
|
|
8
|
+
*
|
|
9
|
+
* Based on SimpleMem research (2026): 30x token reduction while maintaining F1 scores
|
|
10
|
+
*/
|
|
11
|
+
import { estimateTokens } from './context-compressor.js';
|
|
12
|
+
const DEFAULT_CONFIG = {
|
|
13
|
+
maxFactsPerUnit: 10,
|
|
14
|
+
minActionability: 0.3,
|
|
15
|
+
minEntropy: 0.3, // Minimum entropy threshold
|
|
16
|
+
deduplicationThreshold: 0.85,
|
|
17
|
+
preserveHighImportance: true,
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Calculate Shannon entropy of text (normalized 0-1)
|
|
21
|
+
* Higher entropy = more information content, less repetition
|
|
22
|
+
* Based on SimpleMem's entropy-aware filtering
|
|
23
|
+
*/
|
|
24
|
+
export function calculateEntropy(text) {
|
|
25
|
+
const words = text.toLowerCase().split(/\s+/).filter(w => w.length > 1);
|
|
26
|
+
if (words.length === 0)
|
|
27
|
+
return 0;
|
|
28
|
+
// Count word frequencies
|
|
29
|
+
const freq = new Map();
|
|
30
|
+
for (const word of words) {
|
|
31
|
+
freq.set(word, (freq.get(word) || 0) + 1);
|
|
32
|
+
}
|
|
33
|
+
// Calculate Shannon entropy
|
|
34
|
+
let entropy = 0;
|
|
35
|
+
const total = words.length;
|
|
36
|
+
for (const count of freq.values()) {
|
|
37
|
+
const p = count / total;
|
|
38
|
+
entropy -= p * Math.log2(p);
|
|
39
|
+
}
|
|
40
|
+
// Normalize to 0-1 range (max entropy = log2(unique_words))
|
|
41
|
+
const maxEntropy = Math.log2(freq.size) || 1;
|
|
42
|
+
return entropy / maxEntropy;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Calculate information density (entropy per token)
|
|
46
|
+
* Helps identify high-value content worth preserving
|
|
47
|
+
*/
|
|
48
|
+
export function calculateInformationDensity(text) {
|
|
49
|
+
const entropy = calculateEntropy(text);
|
|
50
|
+
// Weight by unique word ratio
|
|
51
|
+
const words = text.toLowerCase().split(/\s+/).filter(w => w.length > 1);
|
|
52
|
+
const uniqueRatio = new Set(words).size / (words.length || 1);
|
|
53
|
+
// Combine entropy and uniqueness
|
|
54
|
+
return (entropy * 0.6 + uniqueRatio * 0.4);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Extract atomic facts from raw content
|
|
58
|
+
* Distills verbose content into minimal, self-contained units
|
|
59
|
+
*/
|
|
60
|
+
export function extractAtomicFacts(content, minEntropy = 0.3) {
|
|
61
|
+
const facts = [];
|
|
62
|
+
// Split into sentences
|
|
63
|
+
const sentences = content
|
|
64
|
+
.split(/(?<=[.!?])\s+/)
|
|
65
|
+
.map(s => s.trim())
|
|
66
|
+
.filter(s => s.length > 10);
|
|
67
|
+
for (const sentence of sentences) {
|
|
68
|
+
const normalized = sentence.toLowerCase();
|
|
69
|
+
// Skip low-entropy (repetitive) content
|
|
70
|
+
const entropy = calculateEntropy(sentence);
|
|
71
|
+
if (entropy < minEntropy && sentence.length > 50) {
|
|
72
|
+
continue; // Skip long repetitive sentences
|
|
73
|
+
}
|
|
74
|
+
// Determine fact type
|
|
75
|
+
let type = 'fact';
|
|
76
|
+
if (/learned|realized|discovered|found that/i.test(sentence)) {
|
|
77
|
+
type = 'lesson';
|
|
78
|
+
}
|
|
79
|
+
else if (/decided|chose|selected|went with/i.test(sentence)) {
|
|
80
|
+
type = 'decision';
|
|
81
|
+
}
|
|
82
|
+
else if (/pattern|always|usually|typically/i.test(sentence)) {
|
|
83
|
+
type = 'pattern';
|
|
84
|
+
}
|
|
85
|
+
else if (/careful|watch out|gotcha|avoid|don't|never/i.test(sentence)) {
|
|
86
|
+
type = 'gotcha';
|
|
87
|
+
}
|
|
88
|
+
// Calculate actionability (boost by entropy for high-info content)
|
|
89
|
+
const baseActionability = calculateActionability(sentence);
|
|
90
|
+
const actionability = Math.min(1, baseActionability + (entropy * 0.1));
|
|
91
|
+
// Determine temporality
|
|
92
|
+
const temporality = detectTemporality(sentence);
|
|
93
|
+
// Extract entities
|
|
94
|
+
const entities = extractEntities(sentence);
|
|
95
|
+
// Skip low-value sentences
|
|
96
|
+
if (isFillerSentence(normalized))
|
|
97
|
+
continue;
|
|
98
|
+
facts.push({
|
|
99
|
+
content: compressSentence(sentence),
|
|
100
|
+
entities,
|
|
101
|
+
actionability,
|
|
102
|
+
temporality,
|
|
103
|
+
type,
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
return facts;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Calculate actionability score (0-1)
|
|
110
|
+
* Higher = more directly usable information
|
|
111
|
+
*/
|
|
112
|
+
function calculateActionability(sentence) {
|
|
113
|
+
let score = 0.5;
|
|
114
|
+
// Boost for imperative/actionable language
|
|
115
|
+
if (/^(use|run|execute|call|apply|implement|add|remove|fix|change)/i.test(sentence)) {
|
|
116
|
+
score += 0.3;
|
|
117
|
+
}
|
|
118
|
+
// Boost for code/technical specifics
|
|
119
|
+
if (/`[^`]+`|"[^"]+"|'[^']+'/.test(sentence)) {
|
|
120
|
+
score += 0.2;
|
|
121
|
+
}
|
|
122
|
+
// Boost for concrete commands/paths
|
|
123
|
+
if (/\.(ts|js|py|sh|json|yaml|md)\b|\/[\w/]+/.test(sentence)) {
|
|
124
|
+
score += 0.15;
|
|
125
|
+
}
|
|
126
|
+
// Penalty for vague language
|
|
127
|
+
if (/might|maybe|perhaps|possibly|somewhat|kind of/i.test(sentence)) {
|
|
128
|
+
score -= 0.2;
|
|
129
|
+
}
|
|
130
|
+
// Penalty for meta-commentary
|
|
131
|
+
if (/I think|I believe|in my opinion|it seems/i.test(sentence)) {
|
|
132
|
+
score -= 0.15;
|
|
133
|
+
}
|
|
134
|
+
return Math.max(0, Math.min(1, score));
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Detect temporal relevance
|
|
138
|
+
*/
|
|
139
|
+
function detectTemporality(sentence) {
|
|
140
|
+
if (/will|going to|should|must|need to|plan to/i.test(sentence)) {
|
|
141
|
+
return 'future';
|
|
142
|
+
}
|
|
143
|
+
if (/was|were|did|had|previously|earlier|before/i.test(sentence)) {
|
|
144
|
+
return 'past';
|
|
145
|
+
}
|
|
146
|
+
if (/is|are|currently|now|today/i.test(sentence)) {
|
|
147
|
+
return 'present';
|
|
148
|
+
}
|
|
149
|
+
return 'timeless';
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Extract named entities from sentence
|
|
153
|
+
*/
|
|
154
|
+
function extractEntities(sentence) {
|
|
155
|
+
const entities = [];
|
|
156
|
+
// File paths
|
|
157
|
+
const paths = sentence.match(/[\w./\\-]+\.(ts|js|py|json|yaml|yml|md|sh|sql)/gi);
|
|
158
|
+
if (paths)
|
|
159
|
+
entities.push(...paths);
|
|
160
|
+
// Function/class names (camelCase or PascalCase)
|
|
161
|
+
const names = sentence.match(/\b[a-z][a-zA-Z0-9]*(?:[A-Z][a-zA-Z0-9]*)+\b/g);
|
|
162
|
+
if (names)
|
|
163
|
+
entities.push(...names);
|
|
164
|
+
// Commands (npm, git, uam, etc)
|
|
165
|
+
const commands = sentence.match(/\b(npm|git|uam|docker|curl|pip|python|node)\s+\w+/gi);
|
|
166
|
+
if (commands)
|
|
167
|
+
entities.push(...commands.map(c => c.trim()));
|
|
168
|
+
// Quoted strings
|
|
169
|
+
const quoted = sentence.match(/`([^`]+)`/g);
|
|
170
|
+
if (quoted)
|
|
171
|
+
entities.push(...quoted.map(q => q.replace(/`/g, '')));
|
|
172
|
+
return [...new Set(entities)];
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Detect filler sentences that add no value
|
|
176
|
+
*/
|
|
177
|
+
function isFillerSentence(sentence) {
|
|
178
|
+
const fillerPatterns = [
|
|
179
|
+
/^(let me|i will|i'll|we can|we should|okay|alright|sure)/i,
|
|
180
|
+
/^(as mentioned|as noted|as stated|as discussed)/i,
|
|
181
|
+
/^(this is|that is|here is|there is) (a|the|an)?\s*(good|great|nice)/i,
|
|
182
|
+
/^(in conclusion|to summarize|in summary|overall)/i,
|
|
183
|
+
/^(i hope|hope this|hopefully)/i,
|
|
184
|
+
/^(thanks|thank you|please)/i,
|
|
185
|
+
];
|
|
186
|
+
return fillerPatterns.some(p => p.test(sentence));
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Compress a single sentence while preserving meaning
|
|
190
|
+
*/
|
|
191
|
+
function compressSentence(sentence) {
|
|
192
|
+
let compressed = sentence;
|
|
193
|
+
// Remove filler phrases
|
|
194
|
+
const fillerPhrases = [
|
|
195
|
+
/\b(basically|essentially|actually|really|very|quite|somewhat|rather)\b/gi,
|
|
196
|
+
/\b(in order to)\b/gi,
|
|
197
|
+
/\b(it is worth noting that|it should be noted that)\b/gi,
|
|
198
|
+
/\b(as a matter of fact|in fact)\b/gi,
|
|
199
|
+
/\b(the fact that)\b/gi,
|
|
200
|
+
/\b(in this case|in that case)\b/gi,
|
|
201
|
+
/\b(please note that|note that)\b/gi,
|
|
202
|
+
];
|
|
203
|
+
for (const pattern of fillerPhrases) {
|
|
204
|
+
compressed = compressed.replace(pattern, '');
|
|
205
|
+
}
|
|
206
|
+
// Clean up whitespace
|
|
207
|
+
compressed = compressed.replace(/\s+/g, ' ').trim();
|
|
208
|
+
return compressed;
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Create a semantic unit from multiple memories
|
|
212
|
+
*/
|
|
213
|
+
export function createSemanticUnit(memories, config = {}) {
|
|
214
|
+
const cfg = { ...DEFAULT_CONFIG, ...config };
|
|
215
|
+
// Extract facts from all memories
|
|
216
|
+
const allFacts = [];
|
|
217
|
+
let sourceTokens = 0;
|
|
218
|
+
for (const mem of memories) {
|
|
219
|
+
sourceTokens += estimateTokens(mem.content);
|
|
220
|
+
const facts = extractAtomicFacts(mem.content);
|
|
221
|
+
// Filter by actionability
|
|
222
|
+
const filtered = facts.filter(f => f.actionability >= cfg.minActionability ||
|
|
223
|
+
(cfg.preserveHighImportance && (mem.importance || 0) >= 7));
|
|
224
|
+
allFacts.push(...filtered);
|
|
225
|
+
}
|
|
226
|
+
// Deduplicate similar facts
|
|
227
|
+
const uniqueFacts = deduplicateFacts(allFacts, cfg.deduplicationThreshold);
|
|
228
|
+
// Sort by actionability and take top N
|
|
229
|
+
uniqueFacts.sort((a, b) => b.actionability - a.actionability);
|
|
230
|
+
const topFacts = uniqueFacts.slice(0, cfg.maxFactsPerUnit);
|
|
231
|
+
// Collect all entities
|
|
232
|
+
const allEntities = new Set();
|
|
233
|
+
for (const fact of topFacts) {
|
|
234
|
+
fact.entities.forEach(e => allEntities.add(e));
|
|
235
|
+
}
|
|
236
|
+
// Collect temporal markers
|
|
237
|
+
const temporalMarkers = [...new Set(topFacts
|
|
238
|
+
.filter(f => f.temporality !== 'timeless')
|
|
239
|
+
.map(f => f.temporality))];
|
|
240
|
+
// Calculate compressed size
|
|
241
|
+
const compressedContent = topFacts.map(f => f.content).join(' ');
|
|
242
|
+
const compressedTokens = estimateTokens(compressedContent);
|
|
243
|
+
return {
|
|
244
|
+
id: `su-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`,
|
|
245
|
+
atomicFacts: topFacts,
|
|
246
|
+
entities: [...allEntities],
|
|
247
|
+
temporalMarkers,
|
|
248
|
+
sourceTokens,
|
|
249
|
+
compressedTokens,
|
|
250
|
+
compressionRatio: sourceTokens / Math.max(1, compressedTokens),
|
|
251
|
+
};
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Deduplicate facts by content similarity
|
|
255
|
+
*/
|
|
256
|
+
function deduplicateFacts(facts, threshold) {
|
|
257
|
+
const unique = [];
|
|
258
|
+
for (const fact of facts) {
|
|
259
|
+
const isDuplicate = unique.some(existing => {
|
|
260
|
+
const similarity = jaccardSimilarity(fact.content.toLowerCase(), existing.content.toLowerCase());
|
|
261
|
+
return similarity > threshold;
|
|
262
|
+
});
|
|
263
|
+
if (!isDuplicate) {
|
|
264
|
+
unique.push(fact);
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
return unique;
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* Jaccard similarity between two strings
|
|
271
|
+
*/
|
|
272
|
+
function jaccardSimilarity(a, b) {
|
|
273
|
+
const setA = new Set(a.split(/\s+/));
|
|
274
|
+
const setB = new Set(b.split(/\s+/));
|
|
275
|
+
const intersection = new Set([...setA].filter(x => setB.has(x)));
|
|
276
|
+
const union = new Set([...setA, ...setB]);
|
|
277
|
+
return intersection.size / (union.size || 1);
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Serialize semantic unit for storage/display
|
|
281
|
+
*/
|
|
282
|
+
export function serializeSemanticUnit(unit) {
|
|
283
|
+
const sections = [];
|
|
284
|
+
// Group facts by type
|
|
285
|
+
const byType = {};
|
|
286
|
+
for (const fact of unit.atomicFacts) {
|
|
287
|
+
if (!byType[fact.type])
|
|
288
|
+
byType[fact.type] = [];
|
|
289
|
+
byType[fact.type].push(fact);
|
|
290
|
+
}
|
|
291
|
+
// Format each section
|
|
292
|
+
const typeOrder = ['gotcha', 'lesson', 'decision', 'pattern', 'fact'];
|
|
293
|
+
for (const type of typeOrder) {
|
|
294
|
+
if (byType[type] && byType[type].length > 0) {
|
|
295
|
+
const emoji = type === 'gotcha' ? '⚠️' :
|
|
296
|
+
type === 'lesson' ? '💡' :
|
|
297
|
+
type === 'decision' ? '✓' :
|
|
298
|
+
type === 'pattern' ? '🔄' : '→';
|
|
299
|
+
sections.push(byType[type].map(f => `${emoji} ${f.content}`).join('\n'));
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
// Add entities if present
|
|
303
|
+
if (unit.entities.length > 0) {
|
|
304
|
+
sections.push(`[Entities: ${unit.entities.slice(0, 10).join(', ')}]`);
|
|
305
|
+
}
|
|
306
|
+
return sections.join('\n');
|
|
307
|
+
}
|
|
308
|
+
/**
|
|
309
|
+
* Compress batch of memories into semantic units
|
|
310
|
+
* Main entry point for semantic compression
|
|
311
|
+
*/
|
|
312
|
+
export function compressToSemanticUnits(memories, config = {}) {
|
|
313
|
+
// Group memories by type for better compression
|
|
314
|
+
const byType = {};
|
|
315
|
+
for (const mem of memories) {
|
|
316
|
+
const type = mem.type || 'general';
|
|
317
|
+
if (!byType[type])
|
|
318
|
+
byType[type] = [];
|
|
319
|
+
byType[type].push(mem);
|
|
320
|
+
}
|
|
321
|
+
const units = [];
|
|
322
|
+
let totalSourceTokens = 0;
|
|
323
|
+
let totalCompressedTokens = 0;
|
|
324
|
+
for (const [_type, typeMemories] of Object.entries(byType)) {
|
|
325
|
+
// Chunk into groups of 5-10 for manageable units
|
|
326
|
+
const chunkSize = 7;
|
|
327
|
+
for (let i = 0; i < typeMemories.length; i += chunkSize) {
|
|
328
|
+
const chunk = typeMemories.slice(i, i + chunkSize);
|
|
329
|
+
const unit = createSemanticUnit(chunk, config);
|
|
330
|
+
units.push(unit);
|
|
331
|
+
totalSourceTokens += unit.sourceTokens;
|
|
332
|
+
totalCompressedTokens += unit.compressedTokens;
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
const serialized = units.map(u => serializeSemanticUnit(u)).join('\n\n---\n\n');
|
|
336
|
+
return {
|
|
337
|
+
units,
|
|
338
|
+
totalSourceTokens,
|
|
339
|
+
totalCompressedTokens,
|
|
340
|
+
overallRatio: totalSourceTokens / Math.max(1, totalCompressedTokens),
|
|
341
|
+
serialized,
|
|
342
|
+
};
|
|
343
|
+
}
|
|
344
|
+
//# sourceMappingURL=semantic-compression.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"semantic-compression.js","sourceRoot":"","sources":["../../src/memory/semantic-compression.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Pre-computes likely next queries based on task patterns.
|
|
5
5
|
* Reduces latency by predicting and caching memory retrievals.
|
|
6
|
+
*
|
|
7
|
+
* Enhanced with task classifier integration for smarter prefetching
|
|
6
8
|
*/
|
|
7
9
|
export interface CacheEntry {
|
|
8
10
|
query: string;
|
|
@@ -12,6 +14,7 @@ export interface CacheEntry {
|
|
|
12
14
|
lastUsed: Date;
|
|
13
15
|
createdAt: Date;
|
|
14
16
|
predictedBy?: string;
|
|
17
|
+
taskCategory?: string;
|
|
15
18
|
}
|
|
16
19
|
export interface CacheConfig {
|
|
17
20
|
maxEntries: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"speculative-cache.d.ts","sourceRoot":"","sources":["../../src/memory/speculative-cache.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"speculative-cache.d.ts","sourceRoot":"","sources":["../../src/memory/speculative-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,IAAI,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;CACzB;AAuCD;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,KAAK,CAAsC;IACnD,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,YAAY,CAAkC;gBAE1C,MAAM,GAAE,OAAO,CAAC,WAAW,CAAM;IAI7C;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAoBrC;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;IAqBjE;;OAEG;IACH,OAAO,CAAC,WAAW;IAgBnB;;OAEG;IACH,OAAO,CAAC,cAAc;IActB;;OAEG;IACH,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE;IAkBnD;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAiC7B;;OAEG;IACG,OAAO,CACX,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,GAC7C,OAAO,CAAC,IAAI,CAAC;IAoBhB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAehB;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;OAEG;IACH,QAAQ,IAAI;QACV,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,KAAK,CAAC;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACzD;IAkBD;;OAEG;IACH,OAAO,IAAI,MAAM;IAejB;;OAEG;IACH,KAAK,IAAI,IAAI;CAKd;AAKD,wBAAgB,mBAAmB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,gBAAgB,CAKnF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"speculative-cache.js","sourceRoot":"","sources":["../../src/memory/speculative-cache.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"speculative-cache.js","sourceRoot":"","sources":["../../src/memory/speculative-cache.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "universal-agent-memory",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.1",
|
|
4
4
|
"description": "Universal AI agent memory system - CLAUDE.md templates, memory, worktrees for Claude Code, Factory.AI, VSCode, OpenCode",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|