Class: ClaudeProvider

Defined in: providers/claude.ts:186

LLM provider for Anthropic’s Claude models (Opus, Sonnet, Haiku).

Supports streaming, tool use, prompt caching, extended context (1M tokens), and token-efficient tool schemas.

Examples

const provider = new ClaudeProvider({
  apiKey: process.env.ANTHROPIC_API_KEY,
  model: 'claude-sonnet-4-20250514',
});

const agent = new Agent({
  provider,
  systemPrompt: 'You are a helpful assistant.',
});
// Using the factory function
const provider = createClaudeProvider({
  apiKey: 'sk-ant-...',
  enableExtendedContext: true, // 1M token context
});

Implements

Constructors

Constructor

new ClaudeProvider(config): ClaudeProvider;

Defined in: providers/claude.ts:197

Parameters

Parameter Type
config ClaudeProviderConfig

Returns

ClaudeProvider

Properties

name

readonly name: "claude" = 'claude';

Defined in: providers/claude.ts:187

Provider identifier (e.g., ‘claude’, ‘openai’, ‘gemini’)

Implementation of

LLMProvider.name

Methods

chat()

chat(messages, options?): AsyncIterable<StreamChunk>;

Defined in: providers/claude.ts:222

Send messages and stream the response

Parameters

Parameter Type
messages Message[]
options? ChatOptions

Returns

AsyncIterable<StreamChunk>

Implementation of

LLMProvider.chat

countTokens()

countTokens(messages): Promise<number>;

Defined in: providers/claude.ts:341

Count tokens in messages using tiktoken (cl100k_base encoding)

Parameters

Parameter Type
messages Message[]

Returns

Promise<number>

Implementation of

LLMProvider.countTokens

getModel()

getModel(): string;

Defined in: providers/claude.ts:211

Get the current default model ID.

Returns

string

Implementation of

LLMProvider.getModel

setModel()

setModel(modelId): void;

Defined in: providers/claude.ts:215

Change the default model for subsequent calls. Same provider only. Takes effect on the next chat() call, not mid-stream.

Parameters

Parameter Type Description
modelId string The new model ID (e.g., ‘claude-opus-4-20250514’)

Returns

void

Implementation of

LLMProvider.setModel