[workspace] resolver = "2" members = [ # ZCLAW Core Crates "crates/zclaw-types", "crates/zclaw-memory", "crates/zclaw-runtime", "crates/zclaw-kernel", # ZCLAW Extension Crates "crates/zclaw-skills", "crates/zclaw-hands", "crates/zclaw-protocols", "crates/zclaw-pipeline", "crates/zclaw-growth", # Desktop Application "desktop/src-tauri", # SaaS Backend "crates/zclaw-saas", ] [workspace.package] version = "0.1.0" edition = "2021" license = "Apache-2.0 OR MIT" repository = "https://github.com/zclaw/zclaw" rust-version = "1.75" [workspace.dependencies] # Async runtime tokio = { version = "1", features = ["full"] } tokio-stream = "0.1" tokio-util = "0.7" futures = "0.3" async-stream = "0.3" # Serialization serde = { version = "1", features = ["derive"] } serde_json = "1" toml = "0.8" # Error handling thiserror = "2" anyhow = "1" # Concurrency dashmap = "6" parking_lot = "0.12" # Logging / Tracing tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } # Time chrono = { version = "0.4", features = ["serde"] } # IDs uuid = { version = "1", features = ["v4", "v5", "serde"] } # Database sqlx = { version = "0.7", features = ["runtime-tokio", "sqlite", "postgres"] } libsqlite3-sys = { version = "0.27", features = ["bundled"] } # HTTP client (for LLM drivers) reqwest = { version = "0.12", default-features = false, features = ["json", "stream", "rustls-tls"] } # URL parsing url = "2" # Async trait async-trait = "0.1" # Base64 base64 = "0.22" # Bytes bytes = "1" # Secrets secrecy = "0.8" # Random rand = "0.8" # Crypto sha2 = "0.10" aes-gcm = "0.10" # Home directory dirs = "6" # Regex regex = "1" # Shell parsing shlex = "1" # WASM runtime wasmtime = { version = "43", default-features = false, features = ["cranelift"] } wasmtime-wasi = { version = "43" } # Testing tempfile = "3" # SaaS dependencies axum = { version = "0.7", features = ["macros"] } axum-extra = { version = "0.9", features = ["typed-header", "cookie"] } tower = { version = "0.4", features = ["util"] } tower-http = { version = "0.5", features = ["cors", "trace", "limit", "timeout"] } jsonwebtoken = "9" argon2 = "0.5" totp-rs = "5" hex = "0.4" # TCP socket configuration socket2 = { version = "0.5", features = ["all"] } # Internal crates zclaw-types = { path = "crates/zclaw-types" } zclaw-memory = { path = "crates/zclaw-memory" } zclaw-runtime = { path = "crates/zclaw-runtime" } zclaw-kernel = { path = "crates/zclaw-kernel" } zclaw-skills = { path = "crates/zclaw-skills" } zclaw-hands = { path = "crates/zclaw-hands" } zclaw-protocols = { path = "crates/zclaw-protocols" } zclaw-pipeline = { path = "crates/zclaw-pipeline" } zclaw-growth = { path = "crates/zclaw-growth" } zclaw-saas = { path = "crates/zclaw-saas" } [profile.release] lto = true codegen-units = 1 strip = true opt-level = 3 [profile.release-fast] inherits = "release" lto = "thin" codegen-units = 8 opt-level = 2 strip = false