Bridge SDK
Overview
Introduction to @oro.ad/bridge-sdk — typed transport layer for ORO Claude Bridge.
Bridge SDK
@oro.ad/bridge-sdk is the low-level transport package for communicating with an ORO Claude Bridge server. It provides:
- BridgeApi — typed REST client for sessions, messages, and attachments
- BridgeClient — Socket.IO client for real-time stream events
- Type definitions — complete TypeScript types for all bridge entities
- Error hierarchy — structured error classes for all failure modes
- Parsers — utilities for extracting structured data from bridge messages
Installation
npm install @oro.ad/bridge-sdk
Quick Example
import { BridgeApi, BridgeClient } from '@oro.ad/bridge-sdk'
// REST API
const api = new BridgeApi({ baseUrl: 'http://localhost:3000' })
const sessions = await api.listSessions()
// WebSocket
const client = new BridgeClient({ url: 'http://localhost:3000' })
client.connect()
client.on('stream:text_delta', (e) => {
process.stdout.write(e.text)
})
Architecture
┌──────────────────────────────────────────┐
│ Your Application │
├──────────────────────────────────────────┤
│ BridgeApi (REST) │ BridgeClient (WS)│
├──────────────────────────────────────────┤
│ ORO Claude Bridge │
├──────────────────────────────────────────┤
│ Claude AI │
└──────────────────────────────────────────┘
BridgeApi handles request-response operations (create sessions, send messages, upload attachments). BridgeClient handles real-time streaming (text deltas, tool calls, results).
When to use bridge-sdk directly
Use @oro.ad/bridge-sdk when you need low-level control:
- Building a custom dashboard or monitoring tool
- Integrating with an existing application framework
- Implementing a thin client without orchestration overhead
For building platform adapters (Telegram, Slack, Discord), use @oro.ad/bridge-adapter-sdk instead — it re-exports everything from bridge-sdk and adds orchestration.