[package]
name = "agentix"
version = "0.26.0"
edition = "2024"
description = "Multi-provider LLM client for Rust — streaming, non-streaming, tool calls, MCP, DeepSeek, OpenAI, Anthropic, Gemini, Codex"
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",
]
codex = []
server-anthropic = ["dep:axum"]
server-openai-chat = ["dep:axum"]
server-openai-responses = ["dep:axum"]
cli = [
"server-anthropic",
"server-openai-chat",
"server-openai-responses",
"claude-code",
"codex",
"dep:tracing-subscriber",
"dep:toml",
]
[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", "json"] }
base64 = { version = "0.22", optional = true }
tokio-util = { version = "0.7.18", features = ["net"] }
uuid = { version = "1", optional = true, features = ["v4"] }
tracing-subscriber = { version = "0.3", features = ["fmt", "env-filter"], optional = true }
toml = { version = "0.8", optional = true }
[[example]]
name = "10_claude_code"
required-features = ["claude-code"]
[[example]]
name = "12_server_anthropic"
required-features = ["server-anthropic"]
[[example]]
name = "13_codex_agent_multiturn"
required-features = ["codex"]
[[example]]
name = "14_admin_relay"
path = "examples/14_admin_relay/main.rs"
required-features = ["server-anthropic", "server-openai-chat", "server-openai-responses", "claude-code", "codex"]
[[bin]]
name = "aaagw"
path = "src/bin/aaagw.rs"
required-features = ["cli"]
[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"] }
base64 = "0.22"
toml = "0.8"