mnemara-core
mnemara-core provides the product-neutral memory domain model, query types, scoring configuration, evaluation helpers, portable package types, and async store traits that the rest of the Mnemara workspace builds on.
Choose this crate when you need the typed memory model and retrieval or maintenance contracts, but not a specific storage backend or transport surface.
Install
Add the crate to your Rust project with:
What it contains
MemoryRecord,MemoryScope,MemoryRecordKind,MemoryQualityState,MemoryHistoricalState, andMemoryTrustLevel- episodic context types, continuity state, salience, recurrence, duration, boundary cues, and lineage links
RecallQuery,RecallFilters,RecallResult, recall explanations, and continuity-aware planning trace typesBatchUpsertRequest,UpsertRequest,DeleteRequest,ArchiveRequest,SuppressRequest,RecoverRequest, and admin operation reportsSnapshotManifest, portable export or import package types, integrity or repair reports, and maintenance statsEngineConfig, scorer kinds, scoring and policy profiles, planning profiles, embedding-provider configuration, and evaluation helpersMemoryStore, the async trait implemented by the file and sled backends
Minimal example
use ;
let mut config = default;
config.recall_scoring_profile = Balanced;
let query = RecallQuery ;
Notes
- additive schema evolution keeps missing episodic or lifecycle fields backward compatible for existing JSON records and portable packages
- embedded callers can keep record-only usage, or opt into episodic recall, planner traces, lineage-aware retrieval, and lifecycle controls as needed
- custom semantic providers can integrate through the public embedding seam without changing the domain model
Related crates
mnemarafor the facade cratemnemara-store-filefor the file-backed implementationmnemara-store-sledfor the embedded sled-backed implementationmnemara-protocolfor protobuf and gRPC surface typesmnemara-serverfor the daemon crate and reusable service surfaces
Project documentation: https://github.com/deliberium/mnemara