[package]
name = "lellm-agent"
version.workspace = true
edition.workspace = true
license.workspace = true
description = "Agent Runtime for LeLLM — ToolUseLoop, Executor, Fallback"
documentation = "https://docs.rs/lellm-agent"
repository = "https://github.com/lellm-ai/lellm"

[dependencies]
lellm-core = { workspace = true, features = ["anyhow"] }
lellm-graph.workspace = true
lellm-provider.workspace = true
async-trait.workspace = true
serde.workspace = true
serde_json.workspace = true
tokio.workspace = true
tokio-stream.workspace = true
anyhow.workspace = true
tracing.workspace = true
futures-core.workspace = true
futures-util.workspace = true
schemars.workspace = true
indexmap.workspace = true

[features]
default = []

[dev-dependencies]
lellm-provider = { path = "../lellm-provider", features = ["mock", "openai-compat"] }
lellm-derive = { path = "../lellm-derive" }
reqwest.workspace = true
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
yunli = "0.1"
urlencoding = "2"

[[example]]
name = "simple_agent"
path = "examples/simple_agent.rs"

[[example]]
name = "streaming_agent"
path = "examples/streaming_agent.rs"

[[example]]
name = "system_prompt"
path = "examples/system_prompt.rs"

[[example]]
name = "tool_definition"
path = "examples/tool_definition.rs"

[[example]]
name = "tool_use"
path = "examples/tool_use.rs"

[[example]]
name = "weather_agent_prompt"
path = "examples/weather_agent_prompt.rs"

[[example]]
name = "weather_agent"
path = "examples/weather_agent.rs"

[[example]]
name = "calculator_graph"
path = "examples/calculator_graph.rs"

[[example]]
name = "calculator_graph_mock"
path = "examples/calculator_graph_mock.rs"
