rig-agent 0.42.0

Rig's classic agent runtime.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "rig-agent"
version = "0.42.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Rig's classic agent runtime."
readme = "README.md"
license = "MIT"
repository = "https://github.com/0xPlaygrounds/rig"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[features]
audio = ["rig-core/audio"]
default = ["derive"]
derive = [
    "dep:rig-derive",
    "rig-core/derive",
]
discord-bot = ["dep:serenity"]
image = ["rig-core/image"]
rmcp = ["dep:rmcp"]
test-utils = ["rig-core/test-utils"]

[lib]
name = "rig_agent"
path = "src/lib.rs"
doctest = true

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

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

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

[[test]]
name = "runtime_model_swapping"
path = "tests/runtime_model_swapping.rs"

[dependencies.async-stream]
version = "0.3"

[dependencies.fastrand]
version = "2"

[dependencies.futures]
version = "0.3"

[dependencies.http]
version = "1"

[dependencies.indexmap]
version = "2"

[dependencies.rig-core]
version = "0.42.0"
default-features = false

[dependencies.rig-derive]
version = "0.42.0"
optional = true

[dependencies.schemars]
version = "1"

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1.0.54"

[dependencies.serenity]
version = "0.12"
optional = true

[dependencies.thiserror]
version = "2"

[dependencies.tokio]
version = "1"
features = [
    "rt",
    "sync",
]

[dependencies.tracing]
version = "0.1"

[dependencies.tracing-futures]
version = "0.2.5"
features = ["futures-03"]

[dev-dependencies.anyhow]
version = "1"

[dev-dependencies.tokio]
version = "1"
features = ["full"]

[dev-dependencies.tokio-test]
version = "0.4"

[dev-dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]

[target.'cfg(not(target_family = "wasm"))'.dependencies.rmcp]
version = "2"
features = ["client"]
optional = true

[lints.clippy]
await_holding_lock = "deny"
await_holding_refcell_ref = "deny"
dbg_macro = "forbid"
expect_fun_call = "deny"
expect_used = "deny"
indexing_slicing = "deny"
panic = "deny"
panic_in_result_fn = "deny"
todo = "forbid"
unimplemented = "forbid"
unreachable = "deny"
unwrap_used = "deny"