Skip to main content

agentic_memory/
lib.rs

1//! AgenticMemory — binary graph-based memory system for AI agents.
2//!
3//! Stores cognitive events (facts, decisions, inferences, corrections, skills, episodes)
4//! as nodes in a graph, with typed edges representing relationships between them.
5
6#[cfg(feature = "cli")]
7pub mod cli;
8pub mod engine;
9#[cfg(feature = "ffi")]
10pub mod ffi;
11#[cfg(feature = "format")]
12pub mod format;
13pub mod graph;
14pub mod index;
15pub mod types;
16
17// V3: Immortal Architecture — Memory That Never Dies
18#[cfg(feature = "v3")]
19pub mod v3;
20
21// Re-export commonly used types at the crate root
22pub use engine::{
23    CausalParams, CausalResult, DecayReport, IngestResult, MemoryQualityParams,
24    MemoryQualityReport, PatternParams, PatternSort, QueryEngine, SimilarityMatchResult,
25    SimilarityParams, SubGraph, TemporalParams, TemporalResult, TimeRange, TraversalParams,
26    TraversalResult, WriteEngine,
27};
28#[cfg(feature = "format")]
29pub use format::{AmemReader, AmemWriter, MmapReader, SimilarityMatch};
30pub use graph::{GraphBuilder, MemoryGraph, TraversalDirection};
31pub use index::{
32    cosine_similarity, ClusterMap, DocLengths, SessionIndex, TemporalIndex, TermIndex, TypeIndex,
33};
34pub use types::{
35    now_micros, AmemError, AmemResult, CognitiveEvent, CognitiveEventBuilder, Edge, EdgeType,
36    EventType, FileHeader, DEFAULT_DIMENSION, MAX_CONTENT_SIZE, MAX_EDGES_PER_NODE,
37};
38
39// New query expansion re-exports
40pub use engine::{
41    AnalogicalAnchor, AnalogicalParams, Analogy, BeliefRevisionParams, BeliefSnapshot,
42    BeliefTimeline, CascadeEffect, CascadeStep, CentralityAlgorithm, CentralityParams,
43    CentralityResult, ChangeType, ConsolidationAction, ConsolidationOp, ConsolidationParams,
44    ConsolidationReport, ContradictedNode, DriftParams, DriftReport, Gap, GapDetectionParams,
45    GapReport, GapSeverity, GapSummary, GapType, HybridMatch, HybridSearchParams, PathResult,
46    PatternMatch, RevisionReport, ShortestPathParams, TextMatch, TextSearchParams, Tokenizer,
47    WeakenedNode,
48};
49pub use types::header::feature_flags;
50
51// V3 re-exports
52#[cfg(feature = "v3")]
53pub use v3::MemoryEngineV3;
54
55/// Check if V3 feature is enabled
56pub fn v3_enabled() -> bool {
57    cfg!(feature = "v3")
58}