3 releases (breaking)
Uses new Rust 2024
| 0.3.0 | Jan 8, 2026 |
|---|---|
| 0.2.0 | Dec 5, 2025 |
| 0.1.0 | Nov 2, 2025 |
#12 in #http-transport
Used in 2 crates
195KB
3.5K
SLoC
Generic transport abstraction layer for TurboClaude
Provides a trait-based transport abstraction that enables both REST HTTP and CLI subprocess transports. This layer is used by both the REST client and Agent client to communicate with Claude.
Architecture
- Transport trait: Generic interface for any transport implementation
- HTTP transport: REST API client via reqwest
- Subprocess transport: CLI-based communication via stdin/stdout
- Error handling: Unified error types across transports
Usage
use turboclaude_transport::{Transport, http::HttpTransport};
use turboclaude_transport::traits::HttpRequest;
let transport = HttpTransport::new()?;
let request = HttpRequest::new("GET", "https://api.anthropic.com/v1/messages");
let response = transport.send_http(request).await?;
TurboClaude Transport
HTTP and subprocess transport layer for TurboClaude with retry, timeout, and rate-limiting support.
Features
- HTTP and subprocess transports
- Configurable retries with exponential backoff
- Per-request timeouts
- Rate limit handling
- Connection pooling
Testing
cargo test
Documentation
cargo doc --open for full API documentation
Dependencies
~22–40MB
~483K SLoC