[package] name = "clawhdf5-agent" version = "2.1.0" edition = "2024" description = "HDF5-backed persistent memory store for on-device AI agents" license = "MIT" repository = "https://github.com/redclawsystems/clawhdf5" readme = "README.md" keywords = ["agent", "memory", "hdf5", "vector-search", "embedding"] categories = ["database", "science", "algorithms"] [dependencies] clawhdf5-format = { path = "../clawhdf5-format", version = "2.1.0", features = ["parallel", "fast-checksum"] } clawhdf5 = { path = "../clawhdf5", version = "2.1.0" } clawhdf5-io = { path = "../clawhdf5-io", version = "2.1.0", features = ["mmap"] } clawhdf5-accel = { path = "../clawhdf5-accel", version = "2.1.0" } clawhdf5-ann = { path = "../clawhdf5-ann", version = "2.1.0", optional = true } clawhdf5-gpu = { path = "../clawhdf5-gpu", version = "2.1.0", optional = true, default-features = false } serde = { workspace = true } byteorder = "1" half = { workspace = true, optional = true } rayon = { version = "1", optional = true } matrixmultiply = { version = "0.3", optional = true } cblas-sys = { version = "0.1", optional = true } tokio = { version = "1", features = ["rt", "sync", "macros", "time"], optional = true } [target.'cfg(target_os = "macos")'.dependencies] accelerate-src = { version = "0.3", optional = true } [target.'cfg(not(target_os = "macos"))'.dependencies] openblas-src = { version = "0.10", optional = true, features = ["cblas"] } [dev-dependencies] tempfile = { workspace = true } criterion = { workspace = true } rayon = "1" tokio = { version = "1", features = ["rt-multi-thread", "sync", "macros"] } [[bench]] name = "bench" harness = false [[bench]] name = "memory_bench" harness = false [features] default = ["float16", "hnsw"] float16 = ["half"] parallel = ["rayon"] # HNSW approximate-nearest-neighbour acceleration for the vector stage of # hybrid_search. On by default; the index is rebuilt from the cache on demand # and stays self-consistent with the persisted memory store. Disable with # `--no-default-features` (plus re-enabling other defaults) to force the exact # linear cosine scan. hnsw = ["clawhdf5-ann"] agent = [] gpu = ["clawhdf5-gpu/gpu-wgpu"] fast-math = ["matrixmultiply"] accelerate = ["accelerate-src", "cblas-sys"] openblas = ["openblas-src", "cblas-sys"] async = ["tokio"]