# loa-core
**L**ightweight **O**bservability **A**gent Core - A Rust library for building observability agents with proper supervision and actor-based architecture.
## Features
- Actor-based architecture using [ractor](https://crates.io/crates/ractor)
- Supervised agent lifecycle management
- Ed25519 identity and X25519 key exchange for secure communication
- Built-in metrics collection and downsampling
- HTTP client with middleware support
- Configurable heartbeat and alerting
## Installation
Add to your `Cargo.toml`:
```toml
[dependencies]
loa-core = "1.0"
```
## Usage
```rust
use loa_core::Agent;
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let agent = Agent::builder()
.storage_path("/var/lib/loa")
.build()
.await?;
agent.run().await?;
Ok(())
}
```
## License
MIT