Interface ConsolidationConfig

interface ConsolidationConfig {
    intervalMs: number;
    maxTracesPerCycle: number;
    mergeSimilarityThreshold: number;
    minClusterSize: number;
    trigger?: "manual" | "turns" | "interval";
    every?: number;
    pruneThreshold?: number;
    mergeThreshold?: number;
    deriveInsights?: boolean;
    maxDerivedPerCycle?: number;
}

Properties

intervalMs: number

How often to run consolidation (ms).

Default

3_600_000 (1 hour)
maxTracesPerCycle: number

Max traces to process per cycle.

Default

500
mergeSimilarityThreshold: number

Similarity threshold for merging redundant traces.

Default

0.92
minClusterSize: number

Minimum cluster size for schema integration.

Default

5
trigger?: "manual" | "turns" | "interval"

What event or schedule triggers a consolidation run.

  • 'turns' – fire after every N conversation turns (every = turn count).
  • 'interval' – fire on a wall-clock timer (every = milliseconds).
  • 'manual' – only fire when explicitly requested.

Default

'interval'
every?: number

Numeric complement to trigger. When trigger='turns' this is the turn count; when trigger='interval' this is the millisecond period.

Default

3_600_000
pruneThreshold?: number

Minimum Ebbinghaus strength below which a trace is pruned. Must be between 0 and 1.

Default

0.05
mergeThreshold?: number

Cosine similarity above which two traces are candidates for merging. Must be between 0 and 1.

Default

0.92
deriveInsights?: boolean

Whether the consolidation engine should derive new insight traces from clusters of related memories during each cycle.

Default

true
maxDerivedPerCycle?: number

Maximum number of new insight traces the engine may derive per cycle. Guards against unbounded graph growth.

Default

10