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
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
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
getModel()
getModel(): string;
Defined in: providers/claude.ts:211
Get the current default model ID.
Returns
string
Implementation of
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