[package]
name = "memvid-cli"
version = "2.0.111"
edition = "2021"
rust-version = "1.90.0"
license = "Apache-2.0"
description = "Command-line interface for Memvid v2 - AI memory with crash-safe, single-file storage"
repository = "https://github.com/memvid/memvid"
documentation = "https://docs.memvid.com"
readme = "README.md"
keywords = ["ai", "memory", "cli", "search", "embeddings"]
categories = ["command-line-utilities", "database"]
[features]
default = ["temporal_track", "temporal_enrich", "parallel_segments", "candle-llm", "llama-cpp", "extractous"]
temporal_track = ["memvid-core/temporal_track"]
temporal_enrich = ["memvid-core/temporal_enrich"]
parallel_segments = ["memvid-core/parallel_segments"]
candle-llm = ["dep:candle-core", "dep:candle-nn", "dep:candle-transformers", "dep:tokenizers", "dep:hf-hub"]
metal = ["candle-core/metal", "candle-nn/metal", "candle-transformers/metal"]
accelerate = ["candle-core/accelerate", "candle-nn/accelerate", "candle-transformers/accelerate"]
llama-cpp = ["dep:llama_cpp", "memvid-ask-model/llama-cpp"]
audio-playback = ["dep:rodio"]
extractous = ["memvid-core/extractous"]
[dependencies]
anyhow = "1.0.89"
chrono = { version = "0.4", features = ["serde"] }
clap = { version = "4.5.18", features = ["derive", "wrap_help"] }
tracing = "0.1.41"
tracing-subscriber = { version = "0.3.18", features = ["fmt", "env-filter"] }
serde_json = "1.0.117"
memvid-core = { version = "2.0.111", default-features = false, features = ["lex", "vec"] }
memvid-ask-model = { version = "2.0.111", default-features = false }
blake3 = "1.5.1"
uuid = { version = "1.10.0", features = ["v4"] }
glob = "0.3.3"
zstd = "0.13.3"
infer = "0.19.0"
image = { version = "0.25.8", default-features = false, features = ["png", "jpeg", "gif", "bmp", "ico", "tiff", "webp"] }
color-thief = "0.2.2"
exif = { package = "kamadak-exif", version = "0.6.1" }
pathdiff = "0.2.3"
pdf-extract = "=0.6.5"
reqwest = { version = "0.11.27", features = ["json", "blocking"] }
serde = { version = "1.0.117", features = ["derive"] }
base64 = "0.21.7"
ed25519-dalek = { version = "2.2.0", features = ["std"] }
hex = "0.4.3"
which = "4.4"
indicatif = "0.17.8"
open = "5.3.2"
tempfile = "3.10.1"
fastembed = "5.3.1"
lofty = "0.17"
symphonia = { version = "0.5.3", default-features = false, features = ["aac", "mp3", "flac", "isomp4", "ogg", "wav"] }
tree_magic_mini = "3.0"
time = { version = "0.3.36", features = ["macros", "parsing"] }
tokio = { version = "1.47.1", features = ["rt", "rt-multi-thread"] }
llama_cpp = { version = "0.3.2", optional = true }
candle-core = { version = "0.9", optional = true }
candle-nn = { version = "0.9", optional = true }
candle-transformers = { version = "0.9", optional = true }
tokenizers = { version = "0.20", optional = true }
hf-hub = { version = "0.4", optional = true, features = ["tokio"] }
jsonpath_lib = "0.3"
libc = "0.2"
hostname = "0.4.1"
log = "0.4.28"
rayon = "1.11"
rodio = { version = "0.17", default-features = false, features = ["symphonia"], optional = true }
[dev-dependencies]
tempfile = "3.10.1"
tokio = { version = "1.47.1", features = ["macros", "rt-multi-thread"] }
serde_json = "1.0.117"
once_cell = "1.19"
regex = { version = "1.12", default-features = false, features = ["std"] }
[[bin]]
name = "memvid"
path = "src/main.rs"