v1.0 TypeScript Pythonsoon Rustsoon

One API for every
LLM provider — that you own

No proxy to deploy, no take-rate, no second vendor. Your keys, your traffic, direct to OpenAI, Anthropic, Google, xAI, and OpenRouter. Zero runtime dependencies. Runs in the browser.

quickstart.ts
import { complete } from '@combycode/llm-sdk';

const { text } = await complete({
  model: 'anthropic/claude-opus-4.8',
  apiKey: process.env.ANTHROPIC_KEY,
  prompt: 'Write a haiku about the sea.',
});

console.log(text);

Everything you need. Nothing you don't.

Built for teams who want unification as code they own — not another hop in the call chain.

One API, every provider

Switch models with one string. We absorb OpenAI Responses, Anthropic Messages, Google generateContent — one interface behind all of it.

Zero dependencies

dependencies: {}. No transitive CVE surface, tiny install, fast cold start. Works on the edge, in serverless, anywhere.

Runs in the browser

True cross-env: Node, Bun, and the browser. Lazy node: loaders, browser bundle shipped. Call LLMs directly from the client.

Cost tracking built in

Bundled versioned model catalog + provider usage. Per-scope spend, budgets, alerts — no server to deploy, no gateway take-rate.

Observability built in

OTel-style traces, metrics, logs — emitted in-process, no @opentelemetry dep, no proxy hop. Point at Langfuse or read the built-ins.

Composable layers

Four optional layers: Network → Client → Agent → Server. Use a one-liner, or wire the pieces. No abstraction tax.

Official SDKs vs Gateways vs ORXA

Official SDKs give you one provider and nothing else. Gateways give you unification as a paid hop your traffic passes through. We give you the same unification as code you own — direct to providers, free, with cost and observability built in, in any runtime.

See full comparison
Official SDK Gateway ORXA
Multi-providernoyesyes
Cost trackingnoyes*yes
Network hopnoyesno
Take-ratenooftenno
Zero depsnon/ayes
Runs in browser~noyes