computeruse-rs 2.0.0

A Playwright-style SDK for automating desktop GUI applications
[package]
name = "computeruse-rs"
version = "2.0.0"
edition = "2021"
description = "A Playwright-style SDK for automating desktop GUI applications"
authors = ["elizaOS Contributors"]
repository = "https://github.com/mediar-ai/computeruse"
homepage = "https://github.com/mediar-ai/computeruse"
documentation = "https://docs.rs/computeruse-rs"
readme = "../../README.md"
keywords = ["automation", "gui", "desktop", "accessibility", "testing"]
categories = ["accessibility", "api-bindings", "development-tools::testing"]
license = "MIT"

[lib]
name = "computeruse"
path = "src/lib.rs"

[features]
default = []

[dependencies]
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
anyhow = "1.0"
thiserror = "2.0"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter", "time", "local-time"] }
tokio = { version = "1.44", features = ["full"] }
tokio-util = { version = "0.7", features = ["rt"] }
base64 = "0.22"
sysinfo = "0.36"
regex = "1.10"
computeruse-computer-use = { version = "2.0.0", path = "../computeruse-computer-use" }

# OCR / Vision
xcap = "0.6"
image = "0.25"
uni-ocr = "0.1"
async-trait = "0.1"
futures = "0.3"
blake3 = "1.5"

# Screenshot storage
chrono = "0.4"
dirs = "5.0"

# Extension bridge (WebSocket)
once_cell = "1.19"
similar = "2.5"
uuid = { version = "1", features = ["v4"] }
futures-util = "0.3"
tokio-tungstenite = "0.23"

[target.'cfg(not(target_os = "windows"))'.dependencies]
enigo = "0.6"

[target.'cfg(target_os = "macos")'.dependencies]
core-graphics = "0.25"
core-foundation = "0.10"
accessibility = "0.2"
accessibility-sys = "0.2"

[target.'cfg(target_os = "linux")'.dependencies]
atspi = "0.25"
zbus = "5.5"

[target.'cfg(target_os = "windows")'.dependencies]
windows = { version = "0.61", features = [
    "Win32_Foundation",
    "Win32_System_Diagnostics_ToolHelp",
    "Win32_System_Com",
    "Win32_UI_Shell",
    "Win32_Security",
    "Win32_UI_WindowsAndMessaging",
    "Win32_System_ProcessStatus",
    "Win32_System_Registry",
    "Win32_System_Threading",
    "Win32_UI_Input",
    "Win32_UI_Input_KeyboardAndMouse",
    "Win32_Graphics_Gdi",
    "Media_Ocr",
    "Graphics_Imaging",
    "Storage_Streams",
    "Foundation",
] }
uiautomation = { version = "0.22", features = ["clipboard", "input", "process"] }
reqwest = { version = "0.12", features = ["json", "blocking", "rustls-tls"] }

[dev-dependencies]
criterion = { version = "0.5", features = ["html_reports"] }
axum = "0.8"
tower-http = { version = "0.6", features = ["cors", "limit"] }
reqwest = { version = "0.12", features = ["json", "blocking"] }
serde_json = "1"
tokio = { version = "1.44", features = ["macros", "rt-multi-thread"] }
anyhow = "1.0"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
warp = "0.3"
tiny_http = "0.12"
urlencoding = "2.1"