Skip to main content

walrus_memory/
lib.rs

1//! Memory backends for Walrus agents.
2//!
3//! Concrete implementations of the [`wcore::Memory`] trait:
4//! [`InMemory`] (volatile), [`SqliteMemory`] (persistent with FTS5 + vector recall),
5//! and [`FsMemory`] (filesystem-backed Markdown files, human-editable).
6//!
7//! Memory abstractions (`Memory`, `Embedder`, `MemoryEntry`, `RecallOptions`) live in `wcore`.
8//!
9//! All SQL lives in `sql/*.sql` files, loaded via `include_str!`.
10//!
11//! All `Memory` types that are `Clone + 'static` automatically implement `Hook`
12//! via the blanket impl in `wcore::runtime::hook`.
13
14pub use fs::FsMemory;
15pub use mem::InMemory;
16pub use sqlite::SqliteMemory;
17pub use wcore::{Embedder, Memory, MemoryEntry, RecallOptions, memory::tools};
18
19mod fs;
20mod mem;
21mod sqlite;