@framers/agentos 0.1.181 → 0.1.182
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 +101 -0
- package/dist/api/agent.d.ts +24 -0
- package/dist/api/agent.d.ts.map +1 -1
- package/dist/api/agent.js.map +1 -1
- package/dist/core/validation/ValidatedLlmInvoker.d.ts +80 -0
- package/dist/core/validation/ValidatedLlmInvoker.d.ts.map +1 -0
- package/dist/core/validation/ValidatedLlmInvoker.js +176 -0
- package/dist/core/validation/ValidatedLlmInvoker.js.map +1 -0
- package/dist/core/validation/errors.d.ts +53 -0
- package/dist/core/validation/errors.d.ts.map +1 -0
- package/dist/core/validation/errors.js +42 -0
- package/dist/core/validation/errors.js.map +1 -0
- package/dist/core/validation/extractJson.d.ts +35 -0
- package/dist/core/validation/extractJson.d.ts.map +1 -0
- package/dist/core/validation/extractJson.js +179 -0
- package/dist/core/validation/extractJson.js.map +1 -0
- package/dist/core/validation/index.d.ts +14 -0
- package/dist/core/validation/index.d.ts.map +1 -0
- package/dist/core/validation/index.js +14 -0
- package/dist/core/validation/index.js.map +1 -0
- package/dist/core/validation/schema-primitives.d.ts +132 -0
- package/dist/core/validation/schema-primitives.d.ts.map +1 -0
- package/dist/core/validation/schema-primitives.js +141 -0
- package/dist/core/validation/schema-primitives.js.map +1 -0
- package/dist/memory/AgentMemory.d.ts +118 -1
- package/dist/memory/AgentMemory.d.ts.map +1 -1
- package/dist/memory/AgentMemory.js +388 -0
- package/dist/memory/AgentMemory.js.map +1 -1
- package/dist/memory/CognitiveMemoryManager.d.ts +44 -0
- package/dist/memory/CognitiveMemoryManager.d.ts.map +1 -1
- package/dist/memory/CognitiveMemoryManager.js +131 -5
- package/dist/memory/CognitiveMemoryManager.js.map +1 -1
- package/dist/memory/core/config.d.ts +49 -9
- package/dist/memory/core/config.d.ts.map +1 -1
- package/dist/memory/core/config.js +13 -0
- package/dist/memory/core/config.js.map +1 -1
- package/dist/memory/core/prompt/MemoryPromptAssembler.d.ts.map +1 -1
- package/dist/memory/core/prompt/MemoryPromptAssembler.js +59 -5
- package/dist/memory/core/prompt/MemoryPromptAssembler.js.map +1 -1
- package/dist/memory/core/types.d.ts +97 -0
- package/dist/memory/core/types.d.ts.map +1 -1
- package/dist/memory/pipeline/observation/MemoryReflector.d.ts +28 -1
- package/dist/memory/pipeline/observation/MemoryReflector.d.ts.map +1 -1
- package/dist/memory/pipeline/observation/MemoryReflector.js +80 -8
- package/dist/memory/pipeline/observation/MemoryReflector.js.map +1 -1
- package/dist/memory/retrieval/hyde/MemoryHydeRetriever.d.ts +69 -0
- package/dist/memory/retrieval/hyde/MemoryHydeRetriever.d.ts.map +1 -0
- package/dist/memory/retrieval/hyde/MemoryHydeRetriever.js +97 -0
- package/dist/memory/retrieval/hyde/MemoryHydeRetriever.js.map +1 -0
- package/dist/memory/retrieval/store/MemoryStore.d.ts +15 -0
- package/dist/memory/retrieval/store/MemoryStore.d.ts.map +1 -1
- package/dist/memory/retrieval/store/MemoryStore.js +67 -0
- package/dist/memory/retrieval/store/MemoryStore.js.map +1 -1
- package/dist/memory/retrieval/store/SqliteBrain.d.ts +7 -0
- package/dist/memory/retrieval/store/SqliteBrain.d.ts.map +1 -1
- package/dist/memory/retrieval/store/SqliteBrain.js +39 -0
- package/dist/memory/retrieval/store/SqliteBrain.js.map +1 -1
- package/package.json +1 -1
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* @module agentos/memory/CognitiveMemoryManager
|
|
11
11
|
*/
|
|
12
12
|
import { uuid } from './core/util/crossPlatformCrypto.js';
|
|
13
|
-
import { DEFAULT_ENCODING_CONFIG, DEFAULT_DECAY_CONFIG, } from './core/config.js';
|
|
13
|
+
import { DEFAULT_ENCODING_CONFIG, DEFAULT_DECAY_CONFIG, DEFAULT_GRAPH_CONFIG, } from './core/config.js';
|
|
14
14
|
import { computeEncodingStrength, buildEmotionalContext } from './core/encoding/EncodingModel.js';
|
|
15
15
|
import { createFeatureDetector, } from './core/encoding/ContentFeatureDetector.js';
|
|
16
16
|
import { computeCurrentStrength } from './core/decay/DecayModel.js';
|
|
@@ -66,7 +66,8 @@ export class CognitiveMemoryManager {
|
|
|
66
66
|
const { CognitiveMechanismsEngine } = await import('./mechanisms/CognitiveMechanismsEngine.js');
|
|
67
67
|
this.mechanismsEngine = new CognitiveMechanismsEngine(config.cognitiveMechanisms, config.traits);
|
|
68
68
|
}
|
|
69
|
-
// Memory store
|
|
69
|
+
// Memory store — in-memory vector index for fast reads, with optional
|
|
70
|
+
// SqliteBrain write-through for durable persistence across restarts.
|
|
70
71
|
this.store = new MemoryStore({
|
|
71
72
|
vectorStore: config.vectorStore,
|
|
72
73
|
embeddingManager: config.embeddingManager,
|
|
@@ -76,6 +77,11 @@ export class CognitiveMemoryManager {
|
|
|
76
77
|
mechanismsEngine: this.mechanismsEngine ?? undefined,
|
|
77
78
|
moodProvider: config.moodProvider,
|
|
78
79
|
});
|
|
80
|
+
// Attach SqliteBrain for durable write-through when configured.
|
|
81
|
+
// All store/softDelete/recordAccess operations mirror to SQL.
|
|
82
|
+
if (config.brain) {
|
|
83
|
+
this.store.setBrain(config.brain);
|
|
84
|
+
}
|
|
79
85
|
// Cognitive working memory (wraps the existing IWorkingMemory)
|
|
80
86
|
this.workingMemory = new CognitiveWorkingMemory(config.workingMemory, {
|
|
81
87
|
baseCapacity: config.workingMemoryCapacity ?? 7,
|
|
@@ -91,9 +97,13 @@ export class CognitiveMemoryManager {
|
|
|
91
97
|
});
|
|
92
98
|
// Feature detector
|
|
93
99
|
this.featureDetector = createFeatureDetector(config.featureDetectionStrategy, config.featureDetectionLlmInvoker);
|
|
94
|
-
// ---
|
|
95
|
-
|
|
96
|
-
|
|
100
|
+
// --- Memory Graph (enabled by default, opt-out via disabled: true) ---
|
|
101
|
+
// The knowledge graph powers spreading activation (Collins & Quillian model),
|
|
102
|
+
// Hebbian co-activation learning ("neurons that fire together wire together"),
|
|
103
|
+
// and graph-boosted retrieval scoring. It is fundamental to associative memory.
|
|
104
|
+
if (config.graph?.disabled !== true) {
|
|
105
|
+
const graphConfig = { ...DEFAULT_GRAPH_CONFIG, ...config.graph };
|
|
106
|
+
const backend = graphConfig.backend;
|
|
97
107
|
if (backend === 'graphology') {
|
|
98
108
|
this.graph = new GraphologyMemoryGraph();
|
|
99
109
|
}
|
|
@@ -159,6 +169,18 @@ export class CognitiveMemoryManager {
|
|
|
159
169
|
});
|
|
160
170
|
}
|
|
161
171
|
}
|
|
172
|
+
// --- HyDE Retriever (auto-attached when any LLM invoker is available) ---
|
|
173
|
+
// Generates hypothetical memory traces for improved recall on vague queries.
|
|
174
|
+
// Opt-in per query via retrieve({ hyde: true }). Based on the "generation
|
|
175
|
+
// effect" — generating what a memory WOULD look like activates retrieval
|
|
176
|
+
// pathways more effectively than raw query embedding.
|
|
177
|
+
const anyLlmInvoker = config.reflector?.llmInvoker
|
|
178
|
+
?? config.observer?.llmInvoker
|
|
179
|
+
?? config.featureDetectionLlmInvoker;
|
|
180
|
+
if (anyLlmInvoker && !this.hydeRetriever) {
|
|
181
|
+
const { MemoryHydeRetriever } = await import('./retrieval/hyde/MemoryHydeRetriever.js');
|
|
182
|
+
this.hydeRetriever = new MemoryHydeRetriever(anyLlmInvoker);
|
|
183
|
+
}
|
|
162
184
|
this.initialized = true;
|
|
163
185
|
}
|
|
164
186
|
// =========================================================================
|
|
@@ -368,9 +390,60 @@ export class CognitiveMemoryManager {
|
|
|
368
390
|
};
|
|
369
391
|
return assembleMemoryContext(input);
|
|
370
392
|
}
|
|
393
|
+
/**
|
|
394
|
+
* Infer the prospective trigger type from an observation note's content.
|
|
395
|
+
* Uses regex heuristics — no LLM call needed.
|
|
396
|
+
*
|
|
397
|
+
* Priority: temporal patterns (most specific) → event patterns → context-based fallback.
|
|
398
|
+
*
|
|
399
|
+
* @param note - The observation note to classify
|
|
400
|
+
* @returns The most likely trigger type for ProspectiveMemoryManager
|
|
401
|
+
*/
|
|
402
|
+
inferTriggerType(note) {
|
|
403
|
+
for (const pattern of CognitiveMemoryManager.TEMPORAL_PATTERNS) {
|
|
404
|
+
if (pattern.test(note.content))
|
|
405
|
+
return 'time_based';
|
|
406
|
+
}
|
|
407
|
+
for (const pattern of CognitiveMemoryManager.EVENT_PATTERNS) {
|
|
408
|
+
if (pattern.test(note.content))
|
|
409
|
+
return 'event_based';
|
|
410
|
+
}
|
|
411
|
+
// Default: context-based — fires when topic becomes relevant via embedding similarity
|
|
412
|
+
return 'context_based';
|
|
413
|
+
}
|
|
414
|
+
/**
|
|
415
|
+
* Extract an event cue string from "when X" / "after X" patterns.
|
|
416
|
+
* Returns undefined if no event language is detected.
|
|
417
|
+
*
|
|
418
|
+
* @param note - The observation note to extract from
|
|
419
|
+
* @returns Event cue string, or undefined
|
|
420
|
+
*/
|
|
421
|
+
extractEventCue(note) {
|
|
422
|
+
for (const pattern of CognitiveMemoryManager.EVENT_PATTERNS) {
|
|
423
|
+
const match = note.content.match(pattern);
|
|
424
|
+
if (match)
|
|
425
|
+
return match[1] ?? match[2];
|
|
426
|
+
}
|
|
427
|
+
return undefined;
|
|
428
|
+
}
|
|
371
429
|
// =========================================================================
|
|
372
430
|
// Batch 2: Observer
|
|
373
431
|
// =========================================================================
|
|
432
|
+
/**
|
|
433
|
+
* Feed a conversation message to the observation pipeline.
|
|
434
|
+
*
|
|
435
|
+
* Pipeline flow:
|
|
436
|
+
* 1. Observer extracts typed observation notes from buffered messages
|
|
437
|
+
* 2. Notes are fed to the Reflector for consolidation into long-term traces
|
|
438
|
+
* 3. Reflected traces are encoded via `encode()` (typed as semantic/episodic/etc.)
|
|
439
|
+
* 4. Superseded traces are soft-deleted
|
|
440
|
+
* 5. Commitment and intention notes are auto-registered with ProspectiveMemoryManager
|
|
441
|
+
*
|
|
442
|
+
* @param role - Message role (user, assistant, system, tool)
|
|
443
|
+
* @param content - Message text content
|
|
444
|
+
* @param mood - Optional PAD emotional state at observation time
|
|
445
|
+
* @returns Observation notes if threshold was reached, null otherwise
|
|
446
|
+
*/
|
|
374
447
|
async observe(role, content, mood) {
|
|
375
448
|
if (!this.observer)
|
|
376
449
|
return null;
|
|
@@ -396,6 +469,35 @@ export class CognitiveMemoryManager {
|
|
|
396
469
|
}
|
|
397
470
|
}
|
|
398
471
|
}
|
|
472
|
+
// Auto-register commitment and intention notes as prospective memory items.
|
|
473
|
+
// Commitment notes above 0.5 importance represent real intentions, not hedging
|
|
474
|
+
// ("maybe I'll..." vs "I will..."). Preference notes expressing future desire
|
|
475
|
+
// also register as low-priority context-based items so they surface naturally
|
|
476
|
+
// when the topic comes up again.
|
|
477
|
+
if (notes && notes.length > 0 && this.prospective) {
|
|
478
|
+
for (const note of notes) {
|
|
479
|
+
const isCommitment = note.type === 'commitment' && note.importance >= 0.5;
|
|
480
|
+
const isFuturePreference = note.type === 'preference' && note.importance >= 0.6
|
|
481
|
+
&& /\b(love to|want to|been meaning to|plan to|going to|hope to)\b/i.test(note.content);
|
|
482
|
+
if (isCommitment || isFuturePreference) {
|
|
483
|
+
const triggerType = this.inferTriggerType(note);
|
|
484
|
+
try {
|
|
485
|
+
await this.prospective.register({
|
|
486
|
+
content: note.content,
|
|
487
|
+
triggerType,
|
|
488
|
+
triggerEvent: triggerType === 'event_based' ? this.extractEventCue(note) : undefined,
|
|
489
|
+
cueText: note.content,
|
|
490
|
+
// Future preferences get a lower importance than explicit commitments
|
|
491
|
+
importance: isFuturePreference ? note.importance * 0.7 : note.importance,
|
|
492
|
+
recurring: false,
|
|
493
|
+
});
|
|
494
|
+
}
|
|
495
|
+
catch {
|
|
496
|
+
// Prospective registration is non-critical — don't fail the observe() call
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
}
|
|
399
501
|
return notes;
|
|
400
502
|
}
|
|
401
503
|
// =========================================================================
|
|
@@ -594,4 +696,28 @@ export class CognitiveMemoryManager {
|
|
|
594
696
|
}
|
|
595
697
|
}
|
|
596
698
|
}
|
|
699
|
+
// =========================================================================
|
|
700
|
+
// Prospective auto-registration helpers
|
|
701
|
+
// =========================================================================
|
|
702
|
+
/**
|
|
703
|
+
* Temporal patterns for extracting time-based triggers from observation notes.
|
|
704
|
+
* Matches relative expressions ("tomorrow", "next Friday", "in 2 hours")
|
|
705
|
+
* and absolute expressions ("on March 5th", "at 3pm").
|
|
706
|
+
*/
|
|
707
|
+
CognitiveMemoryManager.TEMPORAL_PATTERNS = [
|
|
708
|
+
/\b(tomorrow|tonight|next\s+(week|month|monday|tuesday|wednesday|thursday|friday|saturday|sunday))\b/i,
|
|
709
|
+
/\b(in\s+\d+\s+(hours?|days?|weeks?|minutes?))\b/i,
|
|
710
|
+
/\b(on\s+(january|february|march|april|may|june|july|august|september|october|november|december)\s+\d+)/i,
|
|
711
|
+
/\b(at\s+\d{1,2}(:\d{2})?\s*(am|pm)?)\b/i,
|
|
712
|
+
/\b(\d{4}-\d{2}-\d{2})\b/,
|
|
713
|
+
];
|
|
714
|
+
/**
|
|
715
|
+
* Event-based patterns for extracting event triggers from observation notes.
|
|
716
|
+
* Matches conditional language ("when X happens", "after the meeting").
|
|
717
|
+
*/
|
|
718
|
+
CognitiveMemoryManager.EVENT_PATTERNS = [
|
|
719
|
+
/\bwhen\s+(.{3,40}?)\s*(happens?|occurs?|starts?|ends?|finishes?|completes?)\b/i,
|
|
720
|
+
/\bafter\s+(the\s+)?(.{3,30})\b/i,
|
|
721
|
+
/\bonce\s+(.{3,30})\s+(is|are|has|have)\b/i,
|
|
722
|
+
];
|
|
597
723
|
//# sourceMappingURL=CognitiveMemoryManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CognitiveMemoryManager.js","sourceRoot":"","sources":["../../src/memory/CognitiveMemoryManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CognitiveMemoryManager.js","sourceRoot":"","sources":["../../src/memory/CognitiveMemoryManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,18 +58,43 @@ export interface ReflectorConfig {
|
|
|
58
58
|
/** LLM invoker function. */
|
|
59
59
|
llmInvoker?: (systemPrompt: string, userPrompt: string) => Promise<string>;
|
|
60
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Configuration for the memory graph subsystem.
|
|
63
|
+
*
|
|
64
|
+
* The memory graph powers spreading activation (Collins & Quillian model),
|
|
65
|
+
* Hebbian co-activation learning ("neurons that fire together wire together"),
|
|
66
|
+
* conflict detection, clustering, and graph-boosted retrieval scoring.
|
|
67
|
+
*
|
|
68
|
+
* Enabled by default when CognitiveMemoryManager is initialized.
|
|
69
|
+
* Set `disabled: true` to opt out entirely.
|
|
70
|
+
*/
|
|
61
71
|
export interface MemoryGraphConfig {
|
|
62
|
-
/**
|
|
63
|
-
|
|
72
|
+
/**
|
|
73
|
+
* Set to true to disable the memory graph entirely.
|
|
74
|
+
* When disabled, spreading activation, Hebbian co-activation,
|
|
75
|
+
* and graph-based retrieval boosting are all skipped.
|
|
76
|
+
* @default false
|
|
77
|
+
*/
|
|
78
|
+
disabled?: boolean;
|
|
79
|
+
/** Which graph backend to use. @default 'knowledge-graph' */
|
|
80
|
+
backend?: 'graphology' | 'knowledge-graph';
|
|
64
81
|
/** Max hops for spreading activation. @default 3 */
|
|
65
|
-
maxDepth
|
|
66
|
-
/** Activation decay per hop. @default 0.5 */
|
|
67
|
-
decayPerHop
|
|
68
|
-
/** Minimum activation to continue spreading. @default 0.1 */
|
|
69
|
-
activationThreshold
|
|
70
|
-
/** Hebbian learning rate for co-activation edge strengthening. @default 0.1 */
|
|
71
|
-
hebbianLearningRate
|
|
82
|
+
maxDepth?: number;
|
|
83
|
+
/** Activation decay per hop (0-1). @default 0.5 */
|
|
84
|
+
decayPerHop?: number;
|
|
85
|
+
/** Minimum activation to continue spreading (0-1). @default 0.1 */
|
|
86
|
+
activationThreshold?: number;
|
|
87
|
+
/** Hebbian learning rate for co-activation edge strengthening (0-1). @default 0.1 */
|
|
88
|
+
hebbianLearningRate?: number;
|
|
72
89
|
}
|
|
90
|
+
/**
|
|
91
|
+
* Default memory graph configuration.
|
|
92
|
+
* Graph is enabled by default with the KnowledgeGraph backend,
|
|
93
|
+
* providing spreading activation and Hebbian learning out of the box.
|
|
94
|
+
*/
|
|
95
|
+
export declare const DEFAULT_GRAPH_CONFIG: Required<Omit<MemoryGraphConfig, 'disabled'>> & {
|
|
96
|
+
disabled: false;
|
|
97
|
+
};
|
|
73
98
|
export interface ConsolidationConfig {
|
|
74
99
|
/** How often to run consolidation (ms). @default 3_600_000 (1 hour) */
|
|
75
100
|
intervalMs: number;
|
|
@@ -169,6 +194,21 @@ export interface CognitiveMemoryConfig {
|
|
|
169
194
|
maxContextTokens?: number;
|
|
170
195
|
/** @default 'cogmem' */
|
|
171
196
|
collectionPrefix?: string;
|
|
197
|
+
/**
|
|
198
|
+
* Optional SqliteBrain instance for durable persistence.
|
|
199
|
+
*
|
|
200
|
+
* When provided, memory traces, knowledge graph nodes/edges,
|
|
201
|
+
* prospective items, and observation pipeline state are persisted
|
|
202
|
+
* to the brain's SQL tables via sql-storage-adapter. The in-memory
|
|
203
|
+
* vector index remains the hot read path; SqliteBrain is the durable
|
|
204
|
+
* backing store that survives process restarts.
|
|
205
|
+
*
|
|
206
|
+
* Falls back to in-memory-only storage when omitted.
|
|
207
|
+
*
|
|
208
|
+
* @default undefined (in-memory only)
|
|
209
|
+
* @see {@link SqliteBrain} — the cross-platform persistence layer
|
|
210
|
+
*/
|
|
211
|
+
brain?: import('../retrieval/store/SqliteBrain.js').SqliteBrain;
|
|
172
212
|
}
|
|
173
213
|
export declare const DEFAULT_ENCODING_CONFIG: EncodingConfig;
|
|
174
214
|
export declare const DEFAULT_DECAY_CONFIG: DecayConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/memory/core/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAM1E,kDAAkD;AAClD,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAMD,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAMD,MAAM,WAAW,cAAc;IAC7B,yEAAyE;IACzE,YAAY,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,+DAA+D;IAC/D,2BAA2B,EAAE,MAAM,CAAC;IACpC,gEAAgE;IAChE,4BAA4B,EAAE,MAAM,CAAC;IACrC,0FAA0F;IAC1F,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,qEAAqE;IACrE,gBAAgB,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,iBAAiB,EAAE,MAAM,CAAC;IAC1B,2EAA2E;IAC3E,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,iEAAiE;IACjE,yBAAyB,EAAE,MAAM,CAAC;IAClC,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,UAAU,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC5E;AAED,MAAM,WAAW,eAAe;IAC9B,4EAA4E;IAC5E,yBAAyB,EAAE,MAAM,CAAC;IAClC,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,UAAU,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC5E;AAED,MAAM,WAAW,iBAAiB;IAChC,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/memory/core/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,19 @@
|
|
|
2
2
|
* @fileoverview Configuration types for the Cognitive Memory System.
|
|
3
3
|
* @module agentos/memory/config
|
|
4
4
|
*/
|
|
5
|
+
/**
|
|
6
|
+
* Default memory graph configuration.
|
|
7
|
+
* Graph is enabled by default with the KnowledgeGraph backend,
|
|
8
|
+
* providing spreading activation and Hebbian learning out of the box.
|
|
9
|
+
*/
|
|
10
|
+
export const DEFAULT_GRAPH_CONFIG = {
|
|
11
|
+
disabled: false,
|
|
12
|
+
backend: 'knowledge-graph',
|
|
13
|
+
maxDepth: 3,
|
|
14
|
+
decayPerHop: 0.5,
|
|
15
|
+
activationThreshold: 0.1,
|
|
16
|
+
hebbianLearningRate: 0.1,
|
|
17
|
+
};
|
|
5
18
|
// ---------------------------------------------------------------------------
|
|
6
19
|
// Defaults
|
|
7
20
|
// ---------------------------------------------------------------------------
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/memory/core/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/memory/core/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA2GH;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAwE;IACvG,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,iBAAiB;IAC1B,QAAQ,EAAE,CAAC;IACX,WAAW,EAAE,GAAG;IAChB,mBAAmB,EAAE,GAAG;IACxB,mBAAmB,EAAE,GAAG;CACzB,CAAC;AAyJF,8EAA8E;AAC9E,WAAW;AACX,8EAA8E;AAE9E,MAAM,CAAC,MAAM,uBAAuB,GAAmB;IACrD,YAAY,EAAE,GAAG;IACjB,kBAAkB,EAAE,GAAG;IACvB,2BAA2B,EAAE,GAAG;IAChC,4BAA4B,EAAE,GAAG;IACjC,eAAe,EAAE,OAAS;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAgB;IAC/C,gBAAgB,EAAE,IAAI;IACtB,iBAAiB,EAAE,QAAU;IAC7B,qBAAqB,EAAE,GAAG;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAA2B;IAC/D,aAAa,EAAE,IAAI;IACnB,cAAc,EAAE,IAAI;IACpB,cAAc,EAAE,IAAI;IACpB,iBAAiB,EAAE,IAAI;IACvB,iBAAiB,EAAE,IAAI;IACvB,gBAAgB,EAAE,IAAI;IACtB,gBAAgB,EAAE,IAAI;CACvB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryPromptAssembler.d.ts","sourceRoot":"","sources":["../../../../src/memory/core/prompt/MemoryPromptAssembler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EACV,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"MemoryPromptAssembler.d.ts","sourceRoot":"","sources":["../../../../src/memory/core/prompt/MemoryPromptAssembler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EACV,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAkFjD,MAAM,WAAW,oBAAoB;IACnC,2CAA2C;IAC3C,gBAAgB,EAAE,MAAM,CAAC;IACzB,qCAAqC;IACrC,UAAU,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC7C,oDAAoD;IACpD,MAAM,EAAE,YAAY,CAAC;IAGrB,uCAAuC;IACvC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sDAAsD;IACtD,eAAe,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACtC,2CAA2C;IAC3C,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,mCAAmC;IACnC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,uDAAuD;IACvD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAG9B,mEAAmE;IACnE,gBAAgB,CAAC,EAAE,OAAO,+CAA+C,EAAE,yBAAyB,CAAC;IACrG,wDAAwD;IACxD,SAAS,CAAC,EAAE,OAAO,aAAa,EAAE,WAAW,EAAE,CAAC;CACjD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,oBAAoB,GAAG,sBAAsB,CAiLzF"}
|
|
@@ -25,6 +25,14 @@ function estimateTokens(text) {
|
|
|
25
25
|
// Personality → formatting style
|
|
26
26
|
// ---------------------------------------------------------------------------
|
|
27
27
|
const clamp01 = (v) => v == null ? 0.5 : Math.max(0, Math.min(1, v));
|
|
28
|
+
/**
|
|
29
|
+
* Select the memory formatting style based on HEXACO personality traits.
|
|
30
|
+
* Highest trait wins: conscientiousness → structured, openness → narrative,
|
|
31
|
+
* emotionality → emotional. Ties favor structured > narrative > emotional.
|
|
32
|
+
*
|
|
33
|
+
* @param traits - HEXACO personality traits
|
|
34
|
+
* @returns Formatting style for memory trace presentation
|
|
35
|
+
*/
|
|
28
36
|
function selectFormattingStyle(traits) {
|
|
29
37
|
const c = clamp01(traits.conscientiousness);
|
|
30
38
|
const o = clamp01(traits.openness);
|
|
@@ -36,6 +44,42 @@ function selectFormattingStyle(traits) {
|
|
|
36
44
|
return 'narrative';
|
|
37
45
|
return 'emotional';
|
|
38
46
|
}
|
|
47
|
+
/**
|
|
48
|
+
* Build the memory usage preamble that teaches the LLM how to use
|
|
49
|
+
* each memory type differently in its response.
|
|
50
|
+
*
|
|
51
|
+
* This preamble is critical for memory-aware behavior. Without it,
|
|
52
|
+
* LLMs treat all memory sections as flat context and may announce
|
|
53
|
+
* facts, list memories, or state relationships explicitly — all of
|
|
54
|
+
* which feel unnatural.
|
|
55
|
+
*
|
|
56
|
+
* Personality variants add style-specific guidance:
|
|
57
|
+
* - Structured (high conscientiousness): logical, organized references
|
|
58
|
+
* - Narrative (high openness): flowing, associative references
|
|
59
|
+
* - Emotional (high emotionality): empathetic, mood-aware references
|
|
60
|
+
*
|
|
61
|
+
* @param traits - HEXACO traits for personality-aware variant selection
|
|
62
|
+
* @returns Formatted preamble string (~200 tokens)
|
|
63
|
+
*/
|
|
64
|
+
function buildMemoryPreamble(traits) {
|
|
65
|
+
const style = selectFormattingStyle(traits);
|
|
66
|
+
// Personality-specific guidance on how to reference memories in conversation
|
|
67
|
+
const styleGuidance = style === 'structured'
|
|
68
|
+
? '\nOrganize your references to past knowledge logically. Connect facts to the current discussion with clear reasoning.'
|
|
69
|
+
: style === 'narrative'
|
|
70
|
+
? '\nLet memories flow into your responses as stories and associations. Draw creative connections between past and present.'
|
|
71
|
+
: '\nLet emotional memories influence your mood and empathy. If you recall a time the user was struggling, let that inform your warmth now.';
|
|
72
|
+
return `## How To Use Your Memories
|
|
73
|
+
|
|
74
|
+
- **Working Memory**: Reference directly — this is your active context.
|
|
75
|
+
- **Semantic Recall** (facts): Background truth. Don't announce — let it shape responses naturally.
|
|
76
|
+
- **Episodic Memories** (experiences): Weave in naturally. Never list.
|
|
77
|
+
- **Prospective Alerts** (reminders): Act on these. Bring up naturally.
|
|
78
|
+
- **Relational Signals** (trust/bonds): Modulate TONE, not words. Never state explicitly.
|
|
79
|
+
- **Graph Associations** (connected memories): Use for richer context and connection depth.
|
|
80
|
+
- **Partial Memories** (feeling-of-knowing): Express uncertainty naturally — "I feel like we talked about..."
|
|
81
|
+
${styleGuidance}`;
|
|
82
|
+
}
|
|
39
83
|
/**
|
|
40
84
|
* Assemble memory context into a single formatted string within
|
|
41
85
|
* the given token budget, with overflow redistribution.
|
|
@@ -58,6 +102,16 @@ export function assembleMemoryContext(input) {
|
|
|
58
102
|
const sections = [];
|
|
59
103
|
const includedIds = [];
|
|
60
104
|
let totalTokens = 0;
|
|
105
|
+
// --- Memory Usage Preamble ---
|
|
106
|
+
// Teaches the LLM how to use each memory type differently (~200 tokens).
|
|
107
|
+
// Deducted from total budget before section allocation. Skipped when
|
|
108
|
+
// budget is too small to fit the preamble meaningfully.
|
|
109
|
+
const preamble = buildMemoryPreamble(input.traits);
|
|
110
|
+
const preambleTokens = estimateTokens(preamble);
|
|
111
|
+
if (budget >= preambleTokens + 100) {
|
|
112
|
+
sections.push(preamble);
|
|
113
|
+
totalTokens += preambleTokens;
|
|
114
|
+
}
|
|
61
115
|
// --- Persistent Memory (MEMORY.md) ---
|
|
62
116
|
if (input.persistentMemoryText && pmBudget > 0) {
|
|
63
117
|
let pmText = input.persistentMemoryText;
|
|
@@ -73,7 +127,7 @@ export function assembleMemoryContext(input) {
|
|
|
73
127
|
const wmTokens = estimateTokens(wmText);
|
|
74
128
|
let wmUsed = 0;
|
|
75
129
|
if (wmText && wmTokens <= wmBudget) {
|
|
76
|
-
sections.push(`## Active Context\n${wmText}`);
|
|
130
|
+
sections.push(`## Active Context (in focus — reference directly)\n${wmText}`);
|
|
77
131
|
wmUsed = wmTokens;
|
|
78
132
|
totalTokens += wmUsed;
|
|
79
133
|
}
|
|
@@ -111,7 +165,7 @@ export function assembleMemoryContext(input) {
|
|
|
111
165
|
includedIds.push(trace.id);
|
|
112
166
|
}
|
|
113
167
|
if (semanticLines.length > 0) {
|
|
114
|
-
sections.push(`## Relevant Memories\n${semanticLines.join('\n')}`);
|
|
168
|
+
sections.push(`## Relevant Memories (facts — use as background truth, don't announce)\n${semanticLines.join('\n')}`);
|
|
115
169
|
totalTokens += semanticUsed;
|
|
116
170
|
}
|
|
117
171
|
}
|
|
@@ -129,7 +183,7 @@ export function assembleMemoryContext(input) {
|
|
|
129
183
|
includedIds.push(trace.id);
|
|
130
184
|
}
|
|
131
185
|
if (episodicLines.length > 0) {
|
|
132
|
-
sections.push(`## Recent Experiences\n${episodicLines.join('\n')}`);
|
|
186
|
+
sections.push(`## Recent Experiences (events — weave in naturally, never list)\n${episodicLines.join('\n')}`);
|
|
133
187
|
totalTokens += episodicUsed;
|
|
134
188
|
}
|
|
135
189
|
}
|
|
@@ -145,7 +199,7 @@ export function assembleMemoryContext(input) {
|
|
|
145
199
|
prospectiveUsed += tokens;
|
|
146
200
|
}
|
|
147
201
|
if (prospectiveLines.length > 0) {
|
|
148
|
-
sections.push(`## Reminders\n${prospectiveLines.join('\n')}`);
|
|
202
|
+
sections.push(`## Reminders (act on these — bring up naturally)\n${prospectiveLines.join('\n')}`);
|
|
149
203
|
totalTokens += prospectiveUsed;
|
|
150
204
|
}
|
|
151
205
|
}
|
|
@@ -161,7 +215,7 @@ export function assembleMemoryContext(input) {
|
|
|
161
215
|
graphUsed += tokens;
|
|
162
216
|
}
|
|
163
217
|
if (graphLines.length > 0) {
|
|
164
|
-
sections.push(`## Related Context\n${graphLines.join('\n')}`);
|
|
218
|
+
sections.push(`## Related Context (connected memories — use for depth)\n${graphLines.join('\n')}`);
|
|
165
219
|
totalTokens += graphUsed;
|
|
166
220
|
}
|
|
167
221
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryPromptAssembler.js","sourceRoot":"","sources":["../../../../src/memory/core/prompt/MemoryPromptAssembler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAQH,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAwB,MAAM,uBAAuB,CAAC;AAEhF,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,iEAAiE;AACjE,SAAS,cAAc,CAAC,IAAY;IAClC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACpC,CAAC;AAED,8EAA8E;AAC9E,iCAAiC;AACjC,8EAA8E;AAE9E,MAAM,OAAO,GAAG,CAAC,CAAqB,EAAU,EAAE,CAChD,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAEhD,SAAS,qBAAqB,CAAC,MAAoB;IACjD,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAC5C,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAEvC,qBAAqB;IACrB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,YAAY,CAAC;IAC1C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,WAAW,CAAC;IACzC,OAAO,WAAW,CAAC;AACrB,CAAC;AAmCD;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAA2B;IAC/D,MAAM,KAAK,GAA2B;QACpC,GAAG,yBAAyB;QAC5B,GAAG,KAAK,CAAC,UAAU;KACpB,CAAC;IAEF,MAAM,MAAM,GAAG,KAAK,CAAC,gBAAgB,CAAC;IACtC,MAAM,KAAK,GAAG,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAElD,8BAA8B;IAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;IAC1D,IAAI,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;IAC/D,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;IACjE,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACvE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACjE,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAEtE,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,wCAAwC;IACxC,IAAI,KAAK,CAAC,oBAAoB,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;QAC/C,IAAI,MAAM,GAAG,KAAK,CAAC,oBAAoB,CAAC;QACxC,MAAM,QAAQ,GAAG,QAAQ,GAAG,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC;YAC7B,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,sBAAsB,CAAC;QAC9D,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,2BAA2B,MAAM,EAAE,CAAC,CAAC;QACnD,WAAW,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAE,QAAQ,CAAC,CAAC;IAChF,CAAC;IAED,yBAAyB;IACzB,MAAM,MAAM,GAAG,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,MAAM,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;QACnC,QAAQ,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"MemoryPromptAssembler.js","sourceRoot":"","sources":["../../../../src/memory/core/prompt/MemoryPromptAssembler.ts"],"names":[],"mappings":"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"}
|