anthropicClientAdapter

Points the OpenAI SDK at Anthropic. Use it to call Claude models through client.responses.create() or the Assistants surface.

Signature

anthropicClientAdapter({ anthropic: Anthropic, })

Install

npm install supercompat openai @anthropic-ai/sdk

Responses API

import Anthropic from '@anthropic-ai/sdk' import { supercompat, anthropicClientAdapter, completionsRunAdapter, memoryStorageAdapter, } from 'supercompat/openai' const client = supercompat({ clientAdapter: anthropicClientAdapter({ anthropic: new Anthropic({ apiKey: process.env.ANTHROPIC_API_KEY }), }), storageAdapter: memoryStorageAdapter(), runAdapter: completionsRunAdapter(), }) const response = await client.responses.create({ model: 'claude-sonnet-4-6', input: 'Summarize the strengths of Claude in one sentence.', })

Streaming

const stream = await client.responses.create({ model: 'claude-sonnet-4-6', input: 'Count from one to five.', stream: true, }) for await (const event of stream) { if (event.type === 'response.output_text.delta') { process.stdout.write(event.delta) } }

Tool use

await client.responses.create({ model: 'claude-sonnet-4-6', input: 'What is the weather in Paris?', tools: [ { type: 'function', name: 'get_weather', parameters: { type: 'object', properties: { city: { type: 'string' } }, required: ['city'], }, }, ], })

Compatible run adapters

completionsRunAdapter — recommended