Class: ConsolidationLoop
Defined in: packages/agentos/src/memory/consolidation/ConsolidationLoop.ts:101
Self-improving background consolidation loop with 6 ordered steps: prune, merge, strengthen, derive, compact, re-index.
All database operations use the synchronous better-sqlite3 API through
the shared SqliteBrain connection. The run() method is async
to accommodate the LLM-backed derive step.
Constructors
Constructor
new ConsolidationLoop(
brain,memoryGraph,options?):ConsolidationLoop
Defined in: packages/agentos/src/memory/consolidation/ConsolidationLoop.ts:114
Parameters
brain
The agent's SQLite brain database connection.
memoryGraph
The memory association graph for co-activation and clustering.
options?
Optional LLM invoker and embedding function for derive and merge steps respectively.
embedFn?
(texts) => Promise<number[][]>
Embedding function for computing trace similarity.
llmInvoker?
(prompt) => Promise<string>
LLM function for deriving insights from memory clusters.
Returns
ConsolidationLoop
Accessors
isRunning
Get Signature
get isRunning():
boolean
Defined in: packages/agentos/src/memory/consolidation/ConsolidationLoop.ts:182
Whether consolidation is currently running. Useful for callers to check before scheduling a new run.
Returns
boolean
Methods
run()
run(
config?):Promise<MemoryConsolidationResult>
Defined in: packages/agentos/src/memory/consolidation/ConsolidationLoop.ts:138
Run one full consolidation cycle.
The mutex prevents concurrent runs — if _running is already true,
returns immediately with a zero-count result.
Parameters
config?
Partial<ExtendedConsolidationConfig>
Optional overrides for consolidation thresholds.
Returns
Promise<MemoryConsolidationResult>
Consolidation statistics (pruned, merged, derived, compacted, durationMs).