dstack-memory 0.3.1

Pluggable memory layer for AI development stacks — FileProvider + ErukaProvider
Documentation
# dstack-memory

Pluggable memory layer for AI development stacks.

## Backends

- **FileProvider** — JSON-based local storage at `~/.dstack/memory/`
- **ErukaProvider** — REST API backend via [Eruka]https://eruka.dirmacs.com context engine

## Usage

```rust
use dstack_memory::{MemoryProvider, FileProvider, Field};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let provider = FileProvider::new("~/.dstack/memory")?;

    // Save a field
    provider.save(Field {
        path: "projects/myapp/learnings/auth-fix".to_string(),
        value: "JWT refresh token rotation prevents session hijacking".to_string(),
        ..Default::default()
    }).await?;

    // Search memory
    let results = provider.search("auth").await?;
    for field in results {
        println!("{}: {}", field.path, field.value);
    }

    Ok(())
}
```

## Features

- `file` — Enable FileProvider (default)
- `eruka` — Enable ErukaProvider (requires running Eruka instance)

```toml
[dependencies]
dstack-memory = { version = "0.3", features = ["file", "eruka"] }
```

## License

MIT