[package]
edition = "2024"
rust-version = "1.85"
name = "mindcore"
version = "0.2.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Pluggable, feature-gated memory engine for AI agent applications"
readme = "README.md"
keywords = [
"memory",
"ai",
"agent",
"search",
"embedding",
]
categories = [
"database",
"text-processing",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/victorysightsound/mindcore"
[features]
activation-model = []
consolidation = []
default = ["fts5"]
encryption = ["rusqlite/bundled-sqlcipher"]
encryption-vendored = [
"encryption",
"rusqlite/bundled-sqlcipher-vendored-openssl",
]
fts5 = []
full = [
"vector-search",
"reranking",
"graph-memory",
"temporal",
"consolidation",
"activation-model",
"two-tier",
]
graph-memory = []
keychain = ["dep:keyring"]
local-embeddings = [
"dep:candle-core",
"dep:candle-nn",
"dep:candle-transformers",
"dep:tokenizers",
"dep:hf-hub",
]
mcp-server = [
"dep:axum",
"dep:tower",
]
reranking = ["local-embeddings"]
temporal = []
two-tier = []
vector-search = [
"local-embeddings",
"dep:tokio",
]
[lib]
name = "mindcore"
path = "src/lib.rs"
[[example]]
name = "benchmark"
path = "examples/benchmark.rs"
[[example]]
name = "validate"
path = "examples/validate.rs"
[[test]]
name = "candle_e2e"
path = "tests/candle_e2e.rs"
[[test]]
name = "full_pipeline"
path = "tests/full_pipeline.rs"
[[test]]
name = "hybrid_e2e"
path = "tests/hybrid_e2e.rs"
[[test]]
name = "integration"
path = "tests/integration.rs"
[[test]]
name = "scoring_integration"
path = "tests/scoring_integration.rs"
[[test]]
name = "vector_search"
path = "tests/vector_search.rs"
[dependencies.axum]
version = "0.7"
optional = true
[dependencies.candle-core]
version = "0.9"
optional = true
[dependencies.candle-nn]
version = "0.9"
optional = true
[dependencies.candle-transformers]
version = "0.9"
optional = true
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.hf-hub]
version = "0.4"
optional = true
[dependencies.keyring]
version = "3"
optional = true
[dependencies.rusqlite]
version = "0.32"
features = [
"bundled",
"functions",
]
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.10"
[dependencies.thiserror]
version = "2"
[dependencies.tokenizers]
version = "0.22"
features = ["onig"]
optional = true
default-features = false
[dependencies.tokio]
version = "1"
features = [
"rt",
"sync",
]
optional = true
[dependencies.tower]
version = "0.5"
optional = true
[dependencies.tracing]
version = "0.1"
[dev-dependencies.tempfile]
version = "3"
[lints.clippy]
expect_used = "deny"
if_same_then_else = "allow"
panic = "deny"
should_implement_trait = "allow"
type_complexity = "allow"
unwrap_used = "deny"
[lints.rust]
unsafe_code = "deny"