ImageSupercompatDocs
Supercompat
npm i supercompat

AI compatibility without compromises

Switch AI providers with full persistence, computer use and no latency.

supercompat({
clientAdapter:
ImageAnthropic
,
storageAdapter:
Prisma
,
runAdapter:
Completions
,
})
const response = await client.responses.create({ model: 'claude-sonnet-4-6', input: 'My name is Alice.', previous_response_id: resp.id, })
Output SDK
ImageResponses API
ImageMessages API
ImageAssistants API

One SDK for every provider, every API feature, and persistent state — without a proxy.

0ms
Zero latency

In-process. No proxy, no extra hop.

Image
supercompat/openai
Image
supercompat/anthropic
Multiple output SDKs

Real OpenAI and Anthropic clients. More coming.

PrismaIn-memoryOpenAI ResponsesOpenAI AssistantsAzure ResponsesAzure Agents
6 storage adapters

Prisma, in-memory, or provider-managed state.

FunctionsWeb searchComputer useCodeFile search
Full tool support

Functions, web search, computer use, and more.

MIT
Open source & free

MIT licensed. No vendor lock-in, no usage fees.

Full SDK surface.

Every method from the OpenAI and Anthropic SDKs — responses, assistants, threads, messages, streaming, token counting — translated to work with any provider.

ImageOpenAI SDK
client.responses.create()client.responses.retrieve()client.responses.delete()client.beta.assistants.create()client.beta.threads.create()client.beta.threads.messages.create()client.beta.threads.runs.create()client.beta.threads.runs.stream()
ImageAnthropic SDK
client.messages.create()client.messages.stream()client.messages.create({ stream: true })client.models.list()client.models.retrieve()client.messages.count_tokens()

Wide provider support.

Swap one adapter to change backends. Your API calls, types, and streaming stay identical.

Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image

Store conversations your way.

Choose where conversation data lives — your own PostgreSQL via Prisma, in-memory for development, or let OpenAI and Azure manage state natively.

Prisma
PostgreSQL
In-memory
Ephemeral
Image
OpenAI Responses
Provider-managed
Image
OpenAI Assistants
Native threads & runs
Image
Azure Responses
Provider-managed
Image
Azure Agents
AI Agents

Computer use, any provider.

Screenshots, clicks, typing, and scrolling — one interface for OpenAI, Anthropic, and Google. Provider formats translated automatically.

ImageOpenAI
ImageAnthropic
ImageGoogle
computer_call
Taking screenshot...screenshot captured (1920×1080)
Clicking "Sign in"click at (940, 520)
Typing email addresstype "alice@example.com"
Scrolling downscroll delta_y: 300
Normalized to computer_call / computer_call_output
ImageSupercompat
byImageSupercorp

Battle-tested in production.

ImageSuperinterface· AI infrastructure
ImageSupermachine· MCP hosting
1.6Mthreads created
22Mmessages sent

Configure and go.

Pick a provider, a storage adapter, and a run adapter. The generated code is ready to copy.

Client
Image
Anthropic
Storage
Image
Prisma
Run
Completions
Output SDK
Image
Responses API
Image
Messages API
Image
Assistants API
import { supercompat, anthropicClientAdapter, completionsRunAdapter, prismaStorageAdapter, } from 'supercompat/openai' import Anthropic from '@anthropic-ai/sdk' import { PrismaClient } from '@prisma/client' const client = supercompat({ clientAdapter: anthropicClientAdapter({ anthropic: new Anthropic() }), storageAdapter: prismaStorageAdapter({ prisma: new PrismaClient() }), runAdapter: completionsRunAdapter(), }) const response = await client.responses.create({ model: 'claude-sonnet-4-6', input: 'My name is Alice.', previous_response_id: resp.id, })