[package]
name = "spider_agent"
version = "2.44.21"
authors = ["j-mendez <jeff@spider.cloud>"]
description = "A concurrent-safe multimodal agent for web automation and research."
repository = "https://github.com/spider-rs/spider"
readme = "README.md"
keywords = ["agent", "llm", "automation", "web", "search"]
categories = ["web-programming", "asynchronous"]
license = "MIT"
documentation = "https://docs.rs/spider_agent"
edition = "2021"
[badges]
maintenance = { status = "actively-developed" }
[dependencies]
tokio = { version = "1", features = ["sync", "rt"] }
async-trait = "0.1"
reqwest = { version = "0.12", features = ["json"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
log = "0.4"
thiserror = "1"
dashmap = "6"
parking_lot = "0.12"
base64 = "0.22"
lol_html = "2"
aho-corasick = "1"
llm_models_spider = "0.1"
async-openai = { version = "0.29", optional = true }
tiktoken-rs = { version = "0.7", optional = true }
chromey = { version = "2", optional = true, default-features = false, features = [
"bytes",
"stream",
] }
thirtyfour = { version = "0.36", optional = true }
tempfile = { version = "3", optional = true }
futures = { version = "0.3", optional = true }
memvid-rs = { version = "1.2", optional = true }
spider_skills = { version = "0.1", optional = true, default-features = false }
aws-sdk-s3 = { version = "1", optional = true }
aws-config = { version = "1", optional = true }
[dev-dependencies]
tokio = { version = "1", features = ["full"] }
env_logger = "0.11"
fastrand = "2"
futures = "0.3"
[features]
default = []
openai = ["dep:async-openai", "dep:tiktoken-rs"]
chrome = ["dep:chromey", "dep:futures"]
webdriver = ["dep:thirtyfour"]
fs = ["dep:tempfile"]
skills = ["dep:spider_skills"]
memvid = ["dep:memvid-rs"]
skills_s3 = ["skills", "dep:aws-sdk-s3", "dep:aws-config"]
search = []
search_serper = ["search"]
search_brave = ["search"]
search_bing = ["search"]
search_tavily = ["search"]
full = ["openai", "chrome", "webdriver", "fs", "skills", "memvid", "search_serper", "search_brave", "search_bing", "search_tavily", "skills_s3"]
[[example]]
name = "basic_search"
required-features = ["search_serper"]
[[example]]
name = "research"
required-features = ["openai", "search_serper"]
[[example]]
name = "extract"
required-features = ["openai"]
[[example]]
name = "concurrent"
required-features = ["openai", "search_serper"]
[[example]]
name = "multimodal"
required-features = ["openai", "search_serper"]
[[example]]
name = "open_page_concurrent"
required-features = ["chrome"]