import { PromptModule, ModuleConfig } from './prompt-module.interface.js'; import { AttentionService } from '../self-improvement/attention.service.js'; import { PredictionCalibrationService } from '../self-improvement/prediction-calibration.service.js'; import type { MemoryConsolidationService } from '../self-improvement/memory-consolidation.service.js'; /** * Per-agent self-improvement readers the module consults when building * the "Your self-model" card. Injectable for tests. */ export interface SelfModelReaders { attention: Pick; predictions: Pick; consolidation: Pick; } /** * Memory reference module — tells the agent how to access and store memories. * * Consolidates memory routing rules and session recovery protocol * into a single module. Contains "how-to" instructions, not actual data — * with one deliberate exception: a small, bounded "Your self-model" card * (focus items, suppressed topics, consolidation insights, calibration * score) is appended when the agent has any such data on disk, so the * self-improvement services actually shape behaviour instead of only being * written to. * * Sources: Path A Steps 8+9, Path B Section 7. */ export declare class MemoryReferenceModule implements PromptModule { name: string; priority: number; maxTokens: number; compactable: boolean; private readonly readers; /** * @param readers - Optional self-improvement readers (defaults to disk-backed services) */ constructor(readers?: SelfModelReaders); /** * Always included — memory access is fundamental to agent continuity. */ shouldInclude(_config: ModuleConfig): boolean; /** * Build the memory reference section with routing rules * that tell the agent where to store different types of knowledge, * followed by the agent's self-model card when any data exists. * * @param config - Module configuration * @returns Formatted markdown memory reference section */ build(config: ModuleConfig): Promise; /** * Build the bounded self-model card, or an empty string when the agent * has no focus, suppressed topics, insights or resolved predictions. * Any read failure yields an empty string — the prompt must never fail * because a self-improvement file is unreadable. * * @param sessionName - Agent session name * @returns Markdown section (≤ MAX_CHARS) or '' */ buildSelfModelSection(sessionName: string): Promise; /** * One line of guidance keyed off the calibration score. * * @param score - Calibration score (0-1) * @returns Guidance sentence */ private calibrationGuidance; } //# sourceMappingURL=memory-reference.module.d.ts.map