/** * @module memory/memory-store * @description Store for agent memories — LLM-compressed summaries of past interactions. * * Memories are created by the agent (or auto-generated by the summarize tool) * and stored with a relevance score that decays over time. The FTS5 index * enables semantic search across all memories for context injection. */ import type { AgentMemoryRecord, MemoryType, MemorySearchResult, MemoryQueryOptions } from './types.js'; /** * @name MemoryStore * @description Manages agent memory records with relevance decay and FTS5 search. */ export declare class MemoryStore { /** * @name record * @description Creates a new agent memory entry. * @param record - Memory data to record (without id, timestamps, relevance). * @param initialRelevance - Initial relevance score 0-1. Default 0.8. * @returns The inserted record ID, or -1 if degraded. */ record(record: Pick, initialRelevance?: number): number; /** * @name search * @description Full-text search across agent memories using FTS5. * Results are ranked by BM25 relevance with decayed score. */ search(options: MemoryQueryOptions): MemorySearchResult; /** * @name recall * @description Returns the most relevant memories for a given category. * Used for prompt injection — the agent gets the top N memories ordered * by decayed relevance. * @param category - Tool category to recall memories for. * @param limit - Maximum number of memories. Default 5. * @returns Relevant memories sorted by decayed relevance. */ recall(category: string, limit?: number): AgentMemoryRecord[]; /** * @name count * @description Returns the total number of agent memory records. */ count(): number; /** * @name memoryTypeBreakdown * @description Returns counts grouped by memory type. */ memoryTypeBreakdown(): Record; /** * @name lastMemoryAt * @description Returns the timestamp of the most recent memory. */ lastMemoryAt(): string | null; /** * @name prune * @description Removes expired memories and memories with relevance below * the threshold after decay. * @param minRelevance - Minimum decayed relevance to keep. Default 0.05. * @returns Number of memories pruned. */ prune(minRelevance?: number): number; /** * @name buildFtsQuery * @description Converts a natural language query into a FTS5 MATCH expression. * @internal */ private buildFtsQuery; } /** * @name memoryStore * @description Singleton instance of the memory store. */ export declare const memoryStore: MemoryStore; //# sourceMappingURL=memory-store.d.ts.map