Interface for memory storage backends. Agent developers implement this or use provided defaults.

Implementations decide:

  • How data is persisted (files, database, vector store, etc.)
  • How search works (keyword, vector, hybrid, full-text)
  • What filters are supported
interface MemoryStorageProvider {
    store(record: MemoryRecord): Promise<void>;
    search(query: MemorySearchQuery): Promise<MemorySearchResult[]>;
    delete(filter: MemoryDeleteFilter): Promise<number>;
    count?(filter: MemoryDeleteFilter): Promise<number>;
}

Implemented by

Methods