agentsdk 0.11.0

A lean, OpenAI-compatible AI SDK for Rust.
Documentation
[package]
name = "agentsdk"
version.workspace = true
edition.workspace = true
license.workspace = true
homepage.workspace = true
repository.workspace = true
readme.workspace = true
description = "A lean, OpenAI-compatible AI SDK for Rust."
keywords = ["ai", "llm", "openai", "agents"]
categories = ["api-bindings", "asynchronous"]

[workspace]
members = [".", "crates/*"]
default-members = ["."]

[workspace.package]
version = "0.11.0"
edition = "2024"
license = "MIT"
homepage = "https://github.com/dineshdb/agentsdk"
repository = "https://github.com/dineshdb/agentsdk"
readme = "README.md"

[workspace.dependencies]
agentsdk = { path = ".", version = "0.11.0" }
agentsdk-macros = { path = "crates/agentsdk-macros", version = "0.9.0" }
agentsdk-plugin-agentsmd = { path = "crates/agentsdk-plugin-agentsmd" }
agentsdk-plugin-fs = { path = "crates/agentsdk-plugin-fs" }
agentsdk-plugin-mcp = { path = "crates/agentsdk-plugin-mcp" }
agentsdk-plugin-shell = { path = "crates/agentsdk-plugin-shell" }
agentsdk-plugin-jewels = { path = "crates/agentsdk-plugin-jewels" }
agentsdk-plugin-skills = { path = "crates/agentsdk-plugin-skills" }
async-stream = "0.3.6"
async-trait = "0.1.89"
derive_builder = "0.20"
dotenv = "0.15.0"
futures = "0.3"
hecs = "0.11"
mockito = "1.7.2"
o3gen-openai = { version = "0.4", path = "../o3gen/crates/o3gen-openai" }
reqwest = { version = "0.13", features = ["json", "stream"] }
schemars = "1.2"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
serde_yaml = "0.9"
thiserror = "2.0"
glob = "0.3"
tokio = { version = "1.0", features = ["full"] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }

[dependencies]
agentsdk-macros = { workspace = true }
async-stream = { workspace = true }
async-trait = { workspace = true }
derive_builder = { workspace = true }
futures = { workspace = true }
hecs = { workspace = true }
o3gen-openai = { workspace = true }
reqwest = { workspace = true }
schemars = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
thiserror = { workspace = true }
glob = "0.3"
tokio = { workspace = true, features = ["rt", "macros", "sync"] }
tracing = { workspace = true }

[dev-dependencies]
agentsdk-plugin-agentsmd = { workspace = true }
agentsdk-plugin-fs = { workspace = true }
agentsdk-plugin-skills = { workspace = true }
async-trait = { workspace = true }
dirs = "5.0"
dotenv = { workspace = true }
mockito = { workspace = true }
o3gen-openai = { workspace = true, features = ["test-utils"] }
tracing-subscriber = { workspace = true }

[[example]]
name = "agent"
path = "examples/agent/src/main.rs"

[[example]]
name = "simple"
path = "examples/simple/src/main.rs"

[lints.rust]
future_incompatible = "warn"
nonstandard_style = "warn"
rust_2024_compatibility = "warn"
missing_debug_implementations = "warn"
missing_copy_implementations = "warn"
trivial_casts = "warn"
trivial_numeric_casts = "warn"
unsafe_op_in_unsafe_fn = "warn"
unused_import_braces = "warn"
unused_lifetimes = "warn"
unused_qualifications = "warn"
variant_size_differences = "warn"

[lints.clippy]
pedantic = { level = "warn", priority = -1 }
unwrap_used = "deny"
expect_used = "deny"
panic = "deny"
indexing_slicing = "deny"
module_name_repetitions = "allow"
multiple_crate_versions = "allow"
future_not_send = "allow"