50 lines
1.0 KiB
TOML
50 lines
1.0 KiB
TOML
[package]
|
|
name = "butterfly-agent"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
description = "Butterfly Desktop Agent — captures display/audio from a VM and forwards HUD commands (mouse/keyboard)"
|
|
|
|
[dependencies]
|
|
# Async runtime
|
|
tokio = { version = "1", features = ["full"] }
|
|
|
|
# WebSocket client
|
|
tokio-tungstenite = { version = "0.24", features = ["connect"] }
|
|
futures-util = "0.3"
|
|
|
|
# Screen capture (cross-platform: DXGI on Windows, X11 on Linux, CG on macOS)
|
|
scrap = "0.5"
|
|
|
|
# Input simulation (cross-platform mouse/keyboard injection)
|
|
enigo = "0.2"
|
|
|
|
# Image encoding (BGRA → JPEG)
|
|
image = "0.25"
|
|
|
|
# Base64 encoding for frame data
|
|
base64 = "0.22"
|
|
|
|
# Serialization
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
|
|
# CLI argument parsing
|
|
clap = { version = "4", features = ["derive"] }
|
|
|
|
# Logging
|
|
log = "0.4"
|
|
env_logger = "0.11"
|
|
|
|
# UUID for agent identification
|
|
uuid = { version = "1", features = ["v4"] }
|
|
|
|
# Error handling
|
|
anyhow = "1"
|
|
|
|
# Audio capture (future use)
|
|
# cpal = "0.15"
|
|
|
|
[profile.release]
|
|
opt-level = 3
|
|
lto = true
|