[package] name = "baibot" description = "A Matrix bot for using diffent capabilities (text-generation, text-to-speech, speech-to-text, image-generation, etc.) of AI / Large Language Models" authors = ["Slavi Pantaleev "] repository = "https://github.com/etkecc/baibot" license = "AGPL-3.0-or-later" readme = "README.md" keywords = ["matrix", "chat", "bot", "AI", "LLM"] include = ["/etc/assets/baibot-torso-768.png", "/src", "/README.md", "/CHANGELOG.md", "/LICENSE"] version = "1.17.0" edition = "2024" [lib] name = "baibot" path = "src/lib.rs" [dependencies] anthropic = { git = "https://github.com/etkecc/anthropic-rs.git", branch = "fix-content-block-image" } anyhow = "1.0.*" async-openai = { version = "0.34.0", features = ["audio", "chat-completion", "image", "responses"] } base64 = "0.22.*" chrono = { version = "0.4.*", default-features = false, features = ["std", "now"] } # We'd rather not depend on this, but we cannot use the ruma-events EventContent macro without it. # We add the `native-tls` feature, because of https://github.com/etkecc/rust-mxlink/issues/1 matrix-sdk = { version = "0.16.0", default-features = false, features = ["native-tls"] } mime_guess = "2.0.*" mxidwc = "1.0.*" mxlink = ">=1.13.0" etke_openai_api_rust = "0.1.*" quick_cache = "0.6.*" regex = "1.12.*" serde = { version = "1.0.*", features = ["derive"], default-features = false } serde_json = "1.0.*" serde_yaml_ng = "0.10.*" tempfile = "3.27.*" tiktoken-rs = { version = "0.9.*", default-features = false } tokio = { version = "1.50.*", features = ["rt", "rt-multi-thread", "macros"] } tracing = "0.1.*" tracing-subscriber = { version = "0.3.*", features = ["env-filter"] } url = "2.5.*" [profile.release] strip = true opt-level = "z" lto = "thin"