[package] name = "app-tauri" version = "0.3.0" edition.workspace = true license.workspace = true rust-version.workspace = true description = "IdeA — Tauri v2 shell: composition root (DI), IPC commands/events, PTY↔Channel bridge." # The library carries all the wiring so it is unit-testable; the binary is a # thin entry point. [lib] name = "app_tauri_lib" crate-type = ["lib", "cdylib", "staticlib"] [[bin]] name = "app-tauri" path = "src/main.rs" [build-dependencies] tauri-build = { workspace = true } [dependencies] domain = { workspace = true } application = { workspace = true } infrastructure = { workspace = true } tauri = { workspace = true } tauri-plugin-dialog = { workspace = true } # `io-std` (on top of the workspace features) gives the headless `mcp-server` # bridge access to `tokio::io::{stdin,stdout}` without widening tokio elsewhere. tokio = { workspace = true, features = ["io-std", "rt"] } serde = { workspace = true } serde_json = { workspace = true } thiserror = { workspace = true } uuid = { workspace = true } base64 = "0.22" # `AppAgentResumer` implements the application's async `AgentResumer` port (LS7). async-trait = { workspace = true } # Cross-OS local IPC for the MCP loopback transport (M5a): Unix domain socket # (Linux/macOS) + Windows named pipe behind one async API, no network port. Pulled # in only here (the transport is an app-tauri/infra concern); its `tokio` feature # keeps us off tokio's `net` feature workspace-wide. interprocess = { version = "2.4", features = ["tokio"] } [features] # Passthrough toggles to enable the real embedders in an IDE build. OFF by default # (founding posture: `none` ⇒ naïve recall, zero dependency). vector-http = ["infrastructure/vector-http"] vector-onnx = ["infrastructure/vector-onnx"] [dev-dependencies] uuid = { workspace = true } async-trait = { workspace = true }