import { ConsoleLogger, LLMRequestHookPayload, LLMResponseHookPayload } from '@tarko/mcp-agent'; /** * Message history trace entry */ export interface MessageHistoryTrace { /** Type of the trace entry */ type: 'request' | 'response'; /** Timestamp when the entry was created */ timestamp: number; /** Session/request identifier */ id: string; /** The actual data payload */ data: LLMRequestHookPayload | LLMResponseHookPayload; } /** * Output structure for message history dump */ export interface MessageHistoryOutput { /** Agent metadata */ agent: { id: string; name: string; }; /** Session identifier */ sessionId: string; /** Current timestamp */ timestamp: number; /** Array of trace entries */ history: MessageHistoryTrace[]; } /** * Configuration options for MessageHistoryDumper */ export interface MessageHistoryDumperOptions { /** Working directory where files will be saved */ workspace: string; /** Agent identifier */ agentId: string; /** Agent name */ agentName: string; /** Logger instance for debugging */ logger: ConsoleLogger; } /** * MessageHistoryDumper - Handles dumping LLM request/response traces to files * * This class provides a clean separation of concerns for message history functionality, * allowing agents to track and persist their LLM interactions for debugging and analysis. */ export declare class MessageHistoryDumper { private readonly options; private readonly traces; constructor(options: MessageHistoryDumperOptions); /** * Add a request trace to the history * * @param sessionId - Session identifier * @param payload - LLM request payload */ addRequestTrace(sessionId: string, payload: LLMRequestHookPayload): void; /** * Add a response trace to the history * * @param sessionId - Session identifier * @param payload - LLM response payload */ addResponseTrace(sessionId: string, payload: LLMResponseHookPayload): void; /** * Get current traces (for testing or inspection) * * @returns Array of current traces */ getTraces(): readonly MessageHistoryTrace[]; /** * Clear all traces from memory */ clearTraces(): void; /** * Dump the current message history to a file * * @param sessionId - Session identifier used for filename */ private dumpToFile; } //# sourceMappingURL=message-history-dumper.d.ts.map