import type { ReflectorResult as BaseReflectorResult } from './types.js'; /** * Result from parsing Reflector output, extending the base type with * token count used for compression validation. */ export interface ReflectorResult extends BaseReflectorResult { /** Token count of output (for compression validation) */ tokenCount?: number; } /** * Build the Reflector's system prompt. * * The Reflector handles meta-observation - when observations grow too large, * it reorganizes them into something more manageable by: * - Re-organizing and streamlining observations * - Drawing connections and conclusions between observations * - Identifying if the agent got off track and how to get back on track * - Preserving ALL important information (reflections become the ENTIRE memory) * * @param instruction - Optional custom instructions to append to the prompt */ export declare function buildReflectorSystemPrompt(instruction?: string): string; /** * The Reflector's system prompt (default - for backwards compatibility) */ export declare const REFLECTOR_SYSTEM_PROMPT: string; /** * Valid compression level values (0 = no guidance, 4 = most extreme). */ export type CompressionLevel = 0 | 1 | 2 | 3 | 4; /** * The highest available compression level. */ export declare const MAX_COMPRESSION_LEVEL: CompressionLevel; /** * Compression guidance by level. * - Level 0: No compression guidance (used as first attempt for regular reflection) * - Level 1: Gentle compression guidance * - Level 2: Aggressive compression guidance * - Level 3: Critical compression guidance * - Level 4: Extreme compression */ export declare const COMPRESSION_GUIDANCE: Record; /** * Compression retry prompt - backwards compat alias for level 1 */ export declare const COMPRESSION_RETRY_PROMPT: string; /** * Build the prompt for the Reflector agent */ export declare function buildReflectorPrompt(observations: string, manualPrompt?: string, compressionLevel?: boolean | CompressionLevel, skipContinuationHints?: boolean): string; /** * Parse the Reflector's output to extract observations, current task, and suggested response. * Uses XML tag parsing for structured extraction. */ export declare function parseReflectorOutput(output: string, sourceObservations?: string): ReflectorResult; /** * Validate that reflection actually compressed the observations below the target threshold * * @param reflectedTokens - Token count of reflected observations * @param targetThreshold - Target token count to compress below (the reflection threshold) * @returns true if compression was successful (reflected tokens are below target) */ export declare function validateCompression(reflectedTokens: number, targetThreshold: number): boolean; //# sourceMappingURL=reflector-agent.d.ts.map