claude_hippo/lib.rs
1//! claude-hippo — Claude Code に海馬を足す MCP サーバ。
2//!
3//! 全部覚える代わりに、特異性が高い瞬間だけを長期記憶化する surprise-aware
4//! memory store。schema は mcp-memory-service-rs と互換 (SHODH spec 準拠)、
5//! ライセンスは Apache-2.0 / MIT dual。
6//!
7//! # 構成
8//! - [`storage`][]: SQLite + sqlite-vec の記憶ストア (mcp-memory-service-rs 互換 schema)
9//! - [`embeddings`][]: fastembed (all-MiniLM-L6-v2, 384 dim, L2 normalized)
10//! - [`surprise`][]: surprise score 算出 (embedding outlier + engagement + explicit)
11//! - [`server`][]: rmcp で MCP stdio server (5 hippo_* tools + SHODH alias)
12//! - [`cli`][]: clap CLI (serve / verify / embed / bench)
13
14pub mod cli;
15pub mod embeddings;
16pub mod error;
17pub mod memory_tool;
18pub mod prediction_loss;
19pub mod server;
20pub mod shodh_rest;
21pub mod storage;
22pub mod surprise;
23
24pub use error::{HippoError, Result};
25
26/// このバイナリのバージョン。Cargo.toml の `version` を反映。
27pub const VERSION: &str = env!("CARGO_PKG_VERSION");
28
29/// 埋め込み次元 (BGE-small-en-v1.5 / all-MiniLM-L6-v2 共通の 384)。
30/// これは mcp-memory-service-rs と DB swap 互換性を保つために固定。
31pub const EMBEDDING_DIM: usize = 384;