[package]
name = "beet_agent"
version.workspace = true
edition.workspace = true
license.workspace = true
authors.workspace = true
readme.workspace = true
description = "ECS agentic workflow patterns"
documentation.workspace = true
homepage.workspace = true
repository.workspace = true
categories.workspace = true
keywords.workspace = true
[features]
default = ["fs"]
rustls-tls = ["beet_net/rustls-tls"]
native-tls = ["beet_net/native-tls"]
fs = ["beet_core/fs"]
[dependencies]
beet_net = { workspace = true, features = ["ureq"] }
beet_core = { workspace = true, features = ["serde","exchange"] }
strum.workspace = true
thiserror.workspace = true
bevy.workspace = true
dotenv.workspace = true
serde.workspace = true
base64.workspace = true
mime_guess.workspace = true
async-lock.workspace = true
serde_json.workspace = true
serde_with = "3.12"
http.workspace = true
[target.'cfg(target_arch = "wasm32")'.dependencies]
js-sys = "0.3"
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"
web-sys = { workspace = true, features = [
'Window',
'Navigator',
'MediaDevices',
'MediaStream',
'MediaStreamConstraints',
'RtcPeerConnection',
'RtcDataChannel',
'RtcDataChannelInit',
'RtcSessionDescriptionInit',
'RtcSdpType',
'RtcTrackEvent',
'HtmlAudioElement',
'RtcRtpSender',
'MediaStreamTrack',
] }
[dev-dependencies]
beet_core = { workspace = true, features = ["testing"] }
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies]
beet_agent = { path = ".", features = ["native-tls"] }
[[test]]
name = "chat"
path = "tests/chat.rs"
required-features = ["native-tls"]
[[test]]
name = "gemini-image"
path = "tests/gemini-image.rs"
required-features = ["native-tls"]