thoughtmcp
Version:
AI that thinks more like humans do - MCP server with human-like cognitive architecture for enhanced reasoning, memory, and self-monitoring
78 lines • 2.71 kB
TypeScript
/**
* Consolidation Engine
*
* Implements pattern transfer and memory pruning between episodic and semantic memory.
* Handles the consolidation process that transfers important patterns from episodic
* to semantic memory, similar to sleep-based memory consolidation in humans.
*/
import { IConsolidationEngine, ComponentStatus, Pattern } from '../interfaces/cognitive.js';
import { Episode, Concept } from '../types/core.js';
export interface ConsolidationConfig {
consolidation_threshold: number;
pattern_similarity_threshold: number;
minimum_episode_count: number;
importance_weight: number;
recency_weight: number;
frequency_weight: number;
max_patterns_per_cycle: number;
pruning_threshold: number;
}
export interface ConsolidationResult {
patterns_extracted: number;
concepts_created: number;
relations_strengthened: number;
episodes_processed: number;
pruned_memories: number;
}
export declare class ConsolidationEngine implements IConsolidationEngine {
private config;
private initialized;
private lastActivity;
private consolidationHistory;
constructor(config?: Partial<ConsolidationConfig>);
initialize(config?: Partial<ConsolidationConfig>): Promise<void>;
process(input: Episode[]): Promise<Concept[]>;
reset(): void;
getStatus(): ComponentStatus;
/**
* Main consolidation process - extract patterns and create concepts
*/
consolidate(episodes: Episode[]): Concept[];
/**
* Extract patterns from a collection of episodes
*/
extractPatterns(episodes: Episode[]): Pattern[];
/**
* Strengthen connections between related concepts
*/
strengthenConnections(concepts: Concept[]): number;
/**
* Prune weak memories based on threshold
*/
pruneWeakMemories(_threshold?: number): void;
/**
* Get consolidation statistics
*/
getConsolidationStats(): ConsolidationResult[];
/**
* Get the most recent consolidation result
*/
getLastConsolidationResult(): ConsolidationResult | null;
private groupSimilarEpisodes;
private computeEpisodeSimilarity;
private computeEmotionalOverlap;
private extractCommonPattern;
private extractElementsFromEpisode;
private getTotalUniqueElements;
private isSignificantPattern;
private computeRecencyScore;
private classifyPattern;
private computePatternConfidence;
private computePatternSalience;
private patternsToConceptsConversion;
private generateConceptId;
private generateConceptEmbedding;
private computeRelationshipStrength;
private computeCosineSimilarity;
}
//# sourceMappingURL=ConsolidationEngine.d.ts.map