stdiobus-client 1.1.1

Async client for stdio_bus - AI agent transport layer for MCP/ACP protocols
Documentation
# stdiobus-client

[![Crates.io](https://img.shields.io/crates/v/stdiobus-client?style=for-the-badge&logo=rust&logoColor=white&color=orange)](https://crates.io/crates/stdiobus-client)
[![License](https://img.shields.io/badge/license-Apache--2.0-blue?style=for-the-badge&logo=apache)](LICENSE)

Async client for stdio_bus - the AI agent transport layer for MCP/ACP protocols.

This is the main crate you should use. It provides a high-level async API for communicating with stdio_bus workers.

## Installation

```toml
[dependencies]
stdiobus-client = "1.0"
tokio = { version = "1", features = ["full"] }
```

## Quick Start

```rust
use stdiobus_client::{StdioBus, BusConfig, PoolConfig, Result};
use serde_json::json;

#[tokio::main]
async fn main() -> Result<()> {
    let bus = StdioBus::builder()
        .config(BusConfig {
            pools: vec![PoolConfig {
                id: "worker".into(),
                command: "node".into(),
                args: vec!["./worker.js".into()],
                instances: 2,
            }],
            limits: None,
        })
        .build()?;

    bus.start().await?;

    let result = bus.request("tools/list", json!({})).await?;
    println!("Tools: {:?}", result);

    bus.stop().await?;
    Ok(())
}
```

## Features

- `docker` (default) - Docker backend support
- `native` - Native FFI backend (requires libstdio_bus)

## Documentation

See the [main repository README](https://github.com/stdiobus/stdiobus-rust) for full documentation.

## License

Apache-2.0