Skip to main content

meerkat_memory/
lib.rs

1//! meerkat-memory — Semantic memory store for Meerkat.
2//!
3//! Provides `HnswMemoryStore` for indexing discarded conversation history
4//! during compaction, enabling semantic search across past sessions.
5//!
6//! Uses `hnsw_rs` for approximate nearest-neighbor search and SQLite for
7//! metadata persistence.
8
9pub mod hnsw;
10pub mod simple;
11pub mod tool;
12
13pub use hnsw::HnswMemoryStore;
14pub use simple::SimpleMemoryStore;
15pub use tool::MemorySearchDispatcher;
16
17// Skill registration
18inventory::submit! {
19    meerkat_skills::SkillRegistration {
20        id: "memory-retrieval",
21        name: "Memory Retrieval",
22        description: "How semantic memory works with compaction and the MemoryStore trait",
23        scope: meerkat_core::skills::SkillScope::Builtin,
24        requires_capabilities: &["memory_store"],
25        body: include_str!("../skills/memory-retrieval/SKILL.md"),
26        extensions: &[],
27    }
28}
29
30// Capability registration
31inventory::submit! {
32    meerkat_capabilities::CapabilityRegistration {
33        id: meerkat_capabilities::CapabilityId::MemoryStore,
34        description: "HNSW semantic search + SQLite persistence (indexes compaction discards)",
35        scope: meerkat_capabilities::CapabilityScope::Universal,
36        requires_feature: Some("memory-store"),
37        prerequisites: &[],
38        status_resolver: None,
39    }
40}