| [package] | |
| name = "magmad" | |
| version = "0.1.0" | |
| edition = "2021" | |
| authors = ["Ahmad Ali Parr <ahmedparr93@gmail.com>"] | |
| description = "Sovereign agentic daemon β gRPC + SSE gateway to BOB/ERRANT/MAGMA" | |
| [[bin]] | |
| name = "magmad" | |
| path = "src/main.rs" | |
| [[bin]] | |
| name = "magma" | |
| path = "src/cli.rs" | |
| [dependencies] | |
| # Async runtime | |
| tokio = { version = "1", features = ["full"] } | |
| tokio-stream = { version = "0.1", features = ["sync"] } | |
| futures = "0.3" | |
| # HTTP / SSE (external API :3000) | |
| axum = { version = "0.7", features = ["macros"] } | |
| axum-extra = { version = "0.9", features = ["typed-header"] } | |
| tower = "0.4" | |
| tower-http = { version = "0.5", features = ["cors", "trace"] } | |
| # gRPC (internal API :50051) | |
| tonic = "0.11" | |
| prost = "0.12" | |
| # NATS pub/sub | |
| async-nats = "0.35" | |
| # Serialization | |
| serde = { version = "1", features = ["derive"] } | |
| serde_json = "1" | |
| # HTTP client (calls snap-os WORM chain + BOB dispatch) | |
| reqwest = { version = "0.12", default-features = false, | |
| features = ["rustls-tls", "json", "stream"] } | |
| # Timestamps | |
| chrono = { version = "0.4", features = ["serde"] } | |
| # Crypto (Rust-side hashing β C side uses inline SHA-256) | |
| sha2 = "0.10" | |
| hex = "0.4" | |
| # UUID for session IDs | |
| uuid = { version = "1", features = ["v4"] } | |
| # CLI | |
| clap = { version = "4", features = ["derive"] } | |
| # Error handling | |
| anyhow = "1" | |
| thiserror = "1" | |
| # Tracing | |
| tracing = "0.1" | |
| tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] } | |
| # Libc for FFI | |
| libc = "0.2" | |
| [build-dependencies] | |
| cc = "1" # compiles errant.c β liberrant.a | |
| [profile.release] | |
| opt-level = 3 | |
| lto = true | |
| codegen-units = 1 | |
| strip = true | |