[package]
edition = "2021"
rust-version = "1.88"
name = "synaptic"
version = "0.4.0"
authors = ["Synaptic Contributors"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A Rust agent framework with LangChain-compatible architecture"
homepage = "https://dnw3.github.io/synaptic/"
readme = "README.md"
license = "MIT"
repository = "https://github.com/dnw3/synaptic"
[features]
agent = [
"default",
"graph",
"memory",
"middleware",
"store",
"condenser",
"secrets",
"config",
"session",
]
agent-anthropic = [
"agent",
"anthropic",
]
agent-ollama = [
"agent",
"ollama",
]
agent-openai = [
"agent",
"openai",
]
anthropic = [
"model-utils",
"dep:synaptic-anthropic",
]
bedrock = ["dep:synaptic-bedrock"]
browser = ["dep:synaptic-browser"]
cache = ["dep:synaptic-cache"]
callbacks = ["dep:synaptic-callbacks"]
chroma = ["dep:synaptic-chroma"]
cohere = ["dep:synaptic-cohere"]
condenser = [
"middleware",
"dep:synaptic-condenser",
]
config = ["dep:synaptic-config"]
confluence = ["dep:synaptic-confluence"]
deep = [
"agent",
"dep:synaptic-deep",
]
deep-config = [
"deep",
"config",
"openai",
"synaptic-deep/config-builder",
]
default = [
"runnables",
"prompts",
"parsers",
"tools",
"callbacks",
]
e2b = ["dep:synaptic-e2b"]
elasticsearch = ["dep:synaptic-elasticsearch"]
embeddings = ["dep:synaptic-embeddings"]
eval = [
"embeddings",
"dep:synaptic-eval",
]
flashrank = ["dep:synaptic-flashrank"]
full = [
"default",
"agent",
"rag",
"cache",
"eval",
"mcp",
"macros",
"deep",
"schemars",
"otel",
"langfuse",
"models",
"qdrant",
"postgres",
"redis",
"redis-cluster",
"pdf",
"pinecone",
"chroma",
"mongodb",
"elasticsearch",
"sqlite",
"tavily",
"huggingface",
"voyage",
"nomic",
"jina",
"weaviate",
"sqltoolkit",
"e2b",
"confluence",
"slack",
"milvus",
"opensearch",
"lancedb",
"flashrank",
"lark",
"store-filesystem",
"deep-config",
"voice",
"browser",
"scheduler",
"sandbox",
"metrics",
]
gemini = [
"model-utils",
"dep:synaptic-gemini",
]
graph = [
"tools",
"dep:synaptic-graph",
]
huggingface = ["dep:synaptic-huggingface"]
jina = ["dep:synaptic-jina"]
lancedb = ["dep:synaptic-lancedb"]
langfuse = ["dep:synaptic-langfuse"]
lark = ["dep:synaptic-lark"]
lark-bot = [
"dep:synaptic-lark",
"synaptic-lark/bot",
]
loaders = ["dep:synaptic-loaders"]
macros = ["dep:synaptic-macros"]
mcp = ["dep:synaptic-mcp"]
memory = [
"runnables",
"dep:synaptic-memory",
]
metrics = [
"callbacks",
"dep:synaptic-metrics",
]
middleware = [
"graph",
"dep:synaptic-middleware",
]
milvus = ["dep:synaptic-milvus"]
model-utils = ["dep:synaptic-models"]
models = [
"openai",
"anthropic",
"gemini",
"ollama",
"bedrock",
"cohere",
]
mongodb = ["dep:synaptic-mongodb"]
nomic = ["dep:synaptic-nomic"]
ollama = [
"model-utils",
"dep:synaptic-ollama",
]
openai = [
"model-utils",
"dep:synaptic-openai",
]
opensearch = ["dep:synaptic-opensearch"]
otel = [
"callbacks",
"synaptic-callbacks/otel",
]
parsers = [
"runnables",
"dep:synaptic-parsers",
]
pdf = ["dep:synaptic-pdf"]
pinecone = ["dep:synaptic-pinecone"]
postgres = ["dep:synaptic-postgres"]
prompts = [
"runnables",
"dep:synaptic-prompts",
]
qdrant = ["dep:synaptic-qdrant"]
rag = [
"default",
"embeddings",
"retrieval",
"loaders",
"splitters",
"vectorstores",
]
rag-anthropic = [
"rag",
"anthropic",
]
rag-ollama = [
"rag",
"ollama",
]
rag-openai = [
"rag",
"openai",
]
redis = ["dep:synaptic-redis"]
redis-cluster = [
"redis",
"synaptic-redis/cluster",
]
retrieval = [
"embeddings",
"dep:synaptic-retrieval",
]
runnables = ["dep:synaptic-runnables"]
sandbox = ["dep:synaptic-sandbox"]
scheduler = ["dep:synaptic-scheduler"]
schemars = [
"synaptic-macros/schemars",
"synaptic-core/schemars",
"dep:schemars",
]
secrets = [
"middleware",
"dep:synaptic-secrets",
]
session = [
"graph",
"memory",
"store",
"dep:synaptic-session",
]
slack = ["dep:synaptic-slack"]
splitters = ["dep:synaptic-splitters"]
sqlite = ["dep:synaptic-sqlite"]
sqltoolkit = ["dep:synaptic-sqltoolkit"]
store = ["dep:synaptic-store"]
store-filesystem = [
"store",
"synaptic-store/filesystem",
]
tavily = ["dep:synaptic-tavily"]
tools = ["dep:synaptic-tools"]
vectorstores = ["dep:synaptic-vectorstores"]
voice = ["dep:synaptic-voice"]
voyage = ["dep:synaptic-voyage"]
weaviate = ["dep:synaptic-weaviate"]
[lib]
name = "synaptic"
path = "src/lib.rs"
[[test]]
name = "facade"
path = "tests/facade.rs"
[dependencies.schemars]
version = "1"
features = ["derive"]
optional = true
[dependencies.synaptic-anthropic]
version = "0.4"
optional = true
[dependencies.synaptic-bedrock]
version = "0.4"
optional = true
[dependencies.synaptic-browser]
version = "0.4"
optional = true
[dependencies.synaptic-cache]
version = "0.4"
optional = true
[dependencies.synaptic-callbacks]
version = "0.4"
optional = true
[dependencies.synaptic-chroma]
version = "0.4"
optional = true
[dependencies.synaptic-cohere]
version = "0.4"
optional = true
[dependencies.synaptic-condenser]
version = "0.4"
optional = true
[dependencies.synaptic-config]
version = "0.4"
optional = true
[dependencies.synaptic-confluence]
version = "0.4"
optional = true
[dependencies.synaptic-core]
version = "0.4"
[dependencies.synaptic-deep]
version = "0.4"
optional = true
[dependencies.synaptic-e2b]
version = "0.4"
optional = true
[dependencies.synaptic-elasticsearch]
version = "0.4"
optional = true
[dependencies.synaptic-embeddings]
version = "0.4"
optional = true
[dependencies.synaptic-eval]
version = "0.4"
optional = true
[dependencies.synaptic-flashrank]
version = "0.4"
optional = true
[dependencies.synaptic-gemini]
version = "0.4"
optional = true
[dependencies.synaptic-graph]
version = "0.4"
optional = true
[dependencies.synaptic-huggingface]
version = "0.4"
optional = true
[dependencies.synaptic-jina]
version = "0.4"
optional = true
[dependencies.synaptic-lancedb]
version = "0.4"
optional = true
[dependencies.synaptic-langfuse]
version = "0.4"
optional = true
[dependencies.synaptic-lark]
version = "0.4"
optional = true
[dependencies.synaptic-loaders]
version = "0.4"
optional = true
[dependencies.synaptic-macros]
version = "0.4"
optional = true
[dependencies.synaptic-mcp]
version = "0.4"
optional = true
[dependencies.synaptic-memory]
version = "0.4"
optional = true
[dependencies.synaptic-metrics]
version = "0.4"
optional = true
[dependencies.synaptic-middleware]
version = "0.4"
optional = true
[dependencies.synaptic-milvus]
version = "0.4"
optional = true
[dependencies.synaptic-models]
version = "0.4"
optional = true
[dependencies.synaptic-mongodb]
version = "0.4"
optional = true
[dependencies.synaptic-nomic]
version = "0.4"
optional = true
[dependencies.synaptic-ollama]
version = "0.4"
optional = true
[dependencies.synaptic-openai]
version = "0.4"
optional = true
[dependencies.synaptic-opensearch]
version = "0.4"
optional = true
[dependencies.synaptic-parsers]
version = "0.4"
optional = true
[dependencies.synaptic-pdf]
version = "0.4"
optional = true
[dependencies.synaptic-pinecone]
version = "0.4"
optional = true
[dependencies.synaptic-postgres]
version = "0.4"
optional = true
[dependencies.synaptic-prompts]
version = "0.4"
optional = true
[dependencies.synaptic-qdrant]
version = "0.4"
optional = true
[dependencies.synaptic-redis]
version = "0.4"
optional = true
[dependencies.synaptic-retrieval]
version = "0.4"
optional = true
[dependencies.synaptic-runnables]
version = "0.4"
optional = true
[dependencies.synaptic-sandbox]
version = "0.4"
optional = true
[dependencies.synaptic-scheduler]
version = "0.4"
optional = true
[dependencies.synaptic-secrets]
version = "0.4"
optional = true
[dependencies.synaptic-session]
version = "0.4"
optional = true
[dependencies.synaptic-slack]
version = "0.4"
optional = true
[dependencies.synaptic-splitters]
version = "0.4"
optional = true
[dependencies.synaptic-sqlite]
version = "0.4"
optional = true
[dependencies.synaptic-sqltoolkit]
version = "0.4"
optional = true
[dependencies.synaptic-store]
version = "0.4"
optional = true
[dependencies.synaptic-tavily]
version = "0.4"
optional = true
[dependencies.synaptic-tools]
version = "0.4"
optional = true
[dependencies.synaptic-vectorstores]
version = "0.4"
optional = true
[dependencies.synaptic-voice]
version = "0.4"
optional = true
[dependencies.synaptic-voyage]
version = "0.4"
optional = true
[dependencies.synaptic-weaviate]
version = "0.4"
optional = true
[dev-dependencies.tokio]
version = "1.41"
features = [
"macros",
"rt-multi-thread",
"sync",
"time",
"fs",
]
[dev-dependencies.tracing]
version = "0.1"
[dev-dependencies.tracing-subscriber]
version = "0.3"
features = ["fmt"]