[package]
name = "tinyagents"
version = "1.0.0"
edition = "2024"
license = "GPL-3.0-only"
description = "A recursive language-model (RLM) harness for Rust."
repository = "https://github.com/tinyhumansai/tinyagents"
readme = "README.md"
keywords = ["llm", "agents", "graph", "langchain", "langgraph"]
categories = ["asynchronous", "api-bindings"]
[dependencies]
async-trait = "0.1"
futures = "0.3"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
sha2 = "0.10"
thiserror = "2"
tokio = { version = "1", default-features = false, features = ["sync", "time", "macros"] }
reqwest = { version = "0.12", default-features = false, features = [
"json",
"rustls-tls",
"stream",
], optional = true }
rusqlite = { version = "0.40", features = ["bundled"], optional = true }
rhai = { version = "1", features = ["sync"], optional = true }
[features]
default = []
openai = ["dep:reqwest"]
sqlite = ["dep:rusqlite"]
repl = ["dep:rhai"]
[dev-dependencies]
tokio = { version = "1", features = ["macros", "rt-multi-thread", "time", "test-util"] }
dotenvy = "0.15"
futures = "0.3"
[[example]]
name = "openai_chat"
required-features = ["openai"]
[[example]]
name = "openai_tools"
required-features = ["openai"]
[[example]]
name = "openai_structured"
required-features = ["openai"]
[[example]]
name = "openai_graph_agent"
required-features = ["openai"]
[[example]]
name = "openai_self_blueprint"
required-features = ["openai"]
[[example]]
name = "orchestrator_subagents"
required-features = ["openai"]