stdiobus 1.1.1

AI agent transport layer - unified SDK for MCP/ACP protocols
Documentation

stdiobus

Crates.io License

AI agent transport layer - unified SDK for MCP/ACP protocols.

Installation

[dependencies]
stdiobus = "1.0"
tokio = { version = "1", features = ["full"] }

For native backend:

[dependencies]
stdiobus = { version = "1.0", features = ["native"] }

Usage

use stdiobus::{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: 4,
            }],
            limits: None,
        })
        .backend_native()
        .build()?;

    bus.start().await?;

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

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

Crate Structure

This is an umbrella crate. For granular control, use individual crates:

Crate Description
stdiobus This crate - re-exports everything
stdiobus-client Client API
stdiobus-core Core types
stdiobus-backend-docker Docker backend
stdiobus-backend-native Native FFI backend

License

Apache-2.0