/** * WorkingMemoryStateProcessor * * Experimental: delivers working memory to the model as a state signal instead * of folding it into the system message. Storage and the `setWorkingMemory` * tool are unchanged — this processor only changes the delivery path. * * Pattern matches `BrowserContextProcessor` in `@mastra/core/browser`: * - `stateId` namespaces the state lane on the thread. * - `cacheKey` is derived from the rendered payload so dedup is automatic. * - `contextWindow.hasSnapshot` re-injection ensures the model still sees the * current snapshot after older messages drop out of the window. * * Delta emission (markdown mode only): when a prior snapshot exists in the * context window, the processor emits a unified-diff delta against that * snapshot's contents. Schema mode and the snapshot fallback always emit a * full snapshot. * * @example * ```ts * new Memory({ * options: { * workingMemory: { * enabled: true, * template: '...', * useStateSignals: true, // auto-attaches this processor * }, * }, * }); * ``` */ import type { MastraMemory, MemoryConfigInternal, WorkingMemoryTemplate } from '@mastra/core/memory'; import type { ComputeStateSignalArgs, ComputeStateSignalResult, Processor } from '@mastra/core/processors'; export declare const WORKING_MEMORY_STATE_ID = "working-memory"; export declare const WORKING_MEMORY_STATE_PROCESSOR_ID = "working-memory-state"; export declare class WorkingMemoryStateProcessor implements Processor { private readonly memory; private readonly memoryConfig?; readonly id = "working-memory-state"; readonly stateId = "working-memory"; constructor(memory: MastraMemory, memoryConfig?: MemoryConfigInternal | undefined); computeStateSignal(args: ComputeStateSignalArgs): Promise; } /** * Stable cache key for the rendered working memory payload. Returns a SHA-256 * digest so dedup metadata stays compact regardless of payload size (working * memory blobs can grow arbitrarily long). */ export declare function stableWorkingMemoryCacheKey(input: { format: WorkingMemoryTemplate['format']; data: string | null; }): string; //# sourceMappingURL=processor.d.ts.map