[package]
name = "terraphim_middleware"
version = "1.0.0"
edition = "2021"
authors = ["Terraphim Contributors"]
description = "Terraphim middleware for searching haystacks"
documentation = "https://terraphim.ai"
homepage = "https://terraphim.ai"
repository = "https://github.com/terraphim/terraphim-ai"
keywords = ["personal-assistant", "ai", "privacy", "middleware"]
license = "Apache-2.0"
readme = "../../README.md"
[dependencies]
terraphim_config = { path = "../terraphim_config", version = "1.0.0" }
terraphim_rolegraph = { path = "../terraphim_rolegraph", version = "1.0.0" }
terraphim_automata = { path = "../terraphim_automata", version = "1.0.0", features = ["tokio-runtime"] }
terraphim_types = { path = "../terraphim_types", version = "1.0.0" }
terraphim_persistence = { path = "../terraphim_persistence", version = "1.0.0" }
ahash = { version = "0.8.8", features = ["serde"] }
cached = { version = "0.56.0", features = ["async", "serde", "ahash"] }
log = "0.4"
serde = { version = "1.0.149", features = ["derive"] }
serde_json = "1.0.110"
thiserror = "1.0.56"
tokio = { version = "1.15.0", features = ["full"] }
wasm-bindgen-futures = "0.4"
html2md = "0.2.15"
async-trait = "0.1.73"
url = "2.4"
urlencoding = "2.1"
reqwest = { version = "0.12", features = ["json", "rustls-tls"], default-features = false }
scraper = "0.24.0"
reqwest-eventsource = { version = "0.5", optional = true }
mcp-client = { version = "0.1", optional = true }
mcp-spec = { version = "0.1", optional = true }
rmcp = { version = "0.6", features = ["client", "transport-child-process"], optional = true }
[dev-dependencies]
terraphim_persistence = { path = "../terraphim_persistence", features = ["memory"] }
terraphim_settings = { path = "../terraphim_settings" }
tokio = { version = "1", features = ["macros", "rt-multi-thread"] }
futures = "0.3"
test-log = { version = "0.2.11", features = ["trace"] }
serial_test = "3.0"
uuid = { version = "1.8.0", features = ["v4"] }
dotenvy = "0.15.7"
walkdir = "2.4.0"
env_logger = "0.11"
tempfile = "3.23"
[features]
default = []
openrouter = ["terraphim_config/openrouter"]
mcp-sse = ["reqwest-eventsource"]
mcp = ["mcp-sse"]
mcp-rust-sdk = ["mcp-sse", "mcp-client", "mcp-spec", "rmcp"]