2026-01-24 02:03:12 +00:00
|
|
|
[package]
|
|
|
|
|
name = "stratum-llm"
|
|
|
|
|
version = "0.1.0"
|
|
|
|
|
edition.workspace = true
|
|
|
|
|
description = "Unified LLM abstraction with CLI detection, fallback, and caching"
|
|
|
|
|
license.workspace = true
|
|
|
|
|
|
|
|
|
|
[dependencies]
|
|
|
|
|
# Async runtime
|
|
|
|
|
tokio = { workspace = true }
|
|
|
|
|
async-trait = { workspace = true }
|
|
|
|
|
futures = { workspace = true }
|
|
|
|
|
|
|
|
|
|
# HTTP client
|
|
|
|
|
reqwest = { workspace = true, features = ["stream"] }
|
|
|
|
|
|
|
|
|
|
# Serialization
|
|
|
|
|
serde = { workspace = true }
|
|
|
|
|
serde_json = { workspace = true }
|
|
|
|
|
serde_yaml = { workspace = true, optional = true }
|
|
|
|
|
|
|
|
|
|
# Caching
|
|
|
|
|
moka = { workspace = true }
|
|
|
|
|
|
|
|
|
|
# Error handling
|
|
|
|
|
thiserror = { workspace = true }
|
|
|
|
|
|
|
|
|
|
# Logging
|
|
|
|
|
tracing = { workspace = true }
|
|
|
|
|
|
|
|
|
|
# Metrics
|
|
|
|
|
prometheus = { workspace = true, optional = true }
|
|
|
|
|
|
|
|
|
|
# Utilities
|
|
|
|
|
dirs = { workspace = true }
|
|
|
|
|
chrono = { workspace = true }
|
|
|
|
|
uuid = { workspace = true, features = ["v4"] }
|
|
|
|
|
which = { workspace = true, optional = true }
|
|
|
|
|
|
|
|
|
|
# Hashing for cache keys
|
|
|
|
|
xxhash-rust = { workspace = true }
|
|
|
|
|
|
|
|
|
|
[features]
|
|
|
|
|
default = ["anthropic", "openai", "ollama"]
|
|
|
|
|
anthropic = []
|
|
|
|
|
openai = []
|
|
|
|
|
deepseek = []
|
|
|
|
|
ollama = []
|
|
|
|
|
claude-cli = []
|
|
|
|
|
openai-cli = []
|
|
|
|
|
kogral = ["serde_yaml", "which"]
|
|
|
|
|
metrics = ["prometheus"]
|
|
|
|
|
all = [
|
|
|
|
|
"anthropic",
|
|
|
|
|
"openai",
|
|
|
|
|
"deepseek",
|
|
|
|
|
"ollama",
|
|
|
|
|
"claude-cli",
|
|
|
|
|
"openai-cli",
|
|
|
|
|
"kogral",
|
|
|
|
|
"metrics",
|
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
[dev-dependencies]
|
|
|
|
|
tokio-test = { workspace = true }
|
2026-02-03 22:06:50 +00:00
|
|
|
tracing-subscriber = { workspace = true }
|