/** * Persistent project memory — a markdown file that survives across sessions. * * Mirrors `_harness/_memory.py`. Composes with `C.fromState(...)` / * `Agent.reads(...)` to inject the loaded content into the agent's prompt. */ export interface ProjectMemoryOptions { stateKey?: string; maxEntries?: number; } export declare class ProjectMemory { readonly path: string; readonly stateKey: string; readonly maxEntries: number; constructor(path: string, opts?: ProjectMemoryOptions); /** Read the memory file (or empty string if missing). */ load(): string; /** Overwrite the memory file. */ save(content: string): void; /** Append a markdown bullet, trimming to `maxEntries`. */ append(entry: string): void; /** Build a before-agent callback that injects memory into state. */ loadCallback(): (state: Record) => void; /** Build an after-agent callback that persists state[stateKey]. */ saveCallback(): (state: Record) => void; } /** * Multi-file memory hierarchy — load and merge files in priority order * (first = lowest priority, last = highest). Mirrors the CLAUDE.md * convention. */ export declare class MemoryHierarchy { readonly paths: readonly string[]; readonly stateKey: string; constructor(paths: readonly string[], stateKey?: string); load(): string; loadCallback(): (state: Record) => void; } //# sourceMappingURL=memory.d.ts.map