[package]
name = "agentix"
version = "0.22.2"
edition = "2024"
description = "Multi-provider LLM client for Rust — streaming, non-streaming, tool calls, MCP, DeepSeek, OpenAI, Anthropic, Gemini, Mimo"
authors = ["ozongzi <ozongzi@icloud.com>"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/ozongzi/agentix"
readme = "../README.md"
keywords = ["llm", "agent", "ai", "deepseek", "openai"]
categories = ["api-bindings", "web-programming"]
[features]
sensitive-logs = []
mcp = [
"dep:rmcp",
"rmcp/client",
"rmcp/transport-child-process",
"rmcp/transport-streamable-http-client-reqwest",
]
mcp-server = [
"dep:rmcp",
"rmcp/server",
"rmcp/transport-io",
"rmcp/transport-streamable-http-server",
"dep:axum",
"dep:base64",
]
claude-code = [
"mcp-server",
"dep:uuid",
]
[dependencies]
async-stream = "0.3"
async-trait = "0.1"
agentix-macros = { version = "0.5.1", path = "../agentix-macros" }
eventsource-stream = "0.2.3"
futures = "0.3.31"
reqwest = { version = "0.13", features = ["json", "stream"] }
schemars = "0.8"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
tokio = { version = "1.49.0", features = ["full"] }
thiserror = "1.0"
tiktoken-rs = "0.6"
tracing = "0.1"
rmcp = { version = "1.1", optional = true }
axum = { version = "0.8", optional = true, default-features = false, features = ["http1", "tokio"] }
base64 = { version = "0.22", optional = true }
tokio-util = { version = "0.7.18", features = ["net"] }
uuid = { version = "1", optional = true, features = ["v4"] }
[[example]]
name = "10_claude_code"
required-features = ["claude-code"]
[dev-dependencies]
axum = { version = "0.8", features = ["http1", "tokio"] }
tokio = { version = "1.49.0", features = ["macros", "rt-multi-thread"] }
tracing-subscriber = { version = "0.3", features = ["fmt", "env-filter"] }
tokio-stream = { version = "0.1", features = ["sync"] }