agent-provider-anthropic / Exports / AnthropicProvider
Class: AnthropicProvider
Anthropic provider implementation for Robota
IMPORTANT PROVIDER-SPECIFIC RULES:
- This provider MUST extend BaseAIProvider from @robota-sdk/agent-core
- Content handling for Anthropic API:
- When tool_calls are present: content MUST be null (not empty string)
- For regular assistant messages: content should be a string
- Use override keyword for all methods inherited from BaseAIProvider
- Provider-specific API behavior should be documented here
Hierarchy
AbstractAIProvider↳
AnthropicProvider
Table of contents
Constructors
Properties
Methods
Constructors
constructor
• new AnthropicProvider(options): AnthropicProvider
Parameters
| Name | Type |
|---|---|
options | IAnthropicProviderOptions |
Returns
Overrides
AbstractAIProvider.constructor
Defined in
agent-provider-anthropic/src/provider.ts:52
Properties
name
• Readonly name: "anthropic"
Overrides
AbstractAIProvider.name
Defined in
agent-provider-anthropic/src/provider.ts:29
version
• Readonly version: "1.0.0"
Overrides
AbstractAIProvider.version
Defined in
agent-provider-anthropic/src/provider.ts:30
enableWebTools
• enableWebTools: boolean = false
When true, Anthropic server tools (web_search) are included in every request. The server executes these tools internally — no local tool registration needed.
Defined in
agent-provider-anthropic/src/provider.ts:39
onTextDelta
• Optional onTextDelta: TTextDeltaCallback
Optional callback for text deltas during streaming. Set by the consumer (e.g., Session) to receive real-time text chunks. When set, chat() uses streaming internally while still returning the complete assembled message.
Defined in
agent-provider-anthropic/src/provider.ts:47
onServerToolUse
• Optional onServerToolUse: (toolName: string, input: Record<string, string>) => void
Callback when a server tool (web_search etc.) is invoked by the API
Type declaration
▸ (toolName, input): void
Parameters
| Name | Type |
|---|---|
toolName | string |
input | Record<string, string> |
Returns
void
Defined in
agent-provider-anthropic/src/provider.ts:50
Methods
configure
▸ configure(config): Promise<void>
Configure the provider with type-safe configuration
Parameters
| Name | Type |
|---|---|
config | IProviderConfig |
Returns
Promise<void>
Inherited from
AbstractAIProvider.configure
Defined in
agent-core/dist/node/index.d.ts:2464
generateResponse
▸ generateResponse(payload): Promise<IRawProviderResponse>
Provider-agnostic raw response API.
This is the canonical "raw payload" entrypoint required by the AIProvider contract. The default implementation delegates to chat() and adapts the result into a RawProviderResponse shape.
Parameters
| Name | Type |
|---|---|
payload | IProviderRequest |
Returns
Promise<IRawProviderResponse>
Inherited from
AbstractAIProvider.generateResponse
Defined in
agent-core/dist/node/index.d.ts:2487
generateStreamingResponse
▸ generateStreamingResponse(payload): AsyncIterable<IRawProviderResponse, any, any>
Provider-agnostic raw streaming API.
If a provider does not implement chatStream, it does not support streaming.
Parameters
| Name | Type |
|---|---|
payload | IProviderRequest |
Returns
AsyncIterable<IRawProviderResponse, any, any>
Inherited from
AbstractAIProvider.generateStreamingResponse
Defined in
agent-core/dist/node/index.d.ts:2493
chat
▸ chat(messages, options?): Promise<TUniversalMessage>
Generate response using TUniversalMessage
Parameters
| Name | Type |
|---|---|
messages | TUniversalMessage[] |
options? | IChatOptions |
Returns
Promise<TUniversalMessage>
Overrides
AbstractAIProvider.chat
Defined in
agent-provider-anthropic/src/provider.ts:81
chatStream
▸ chatStream(messages, options?): AsyncIterable<TUniversalMessage, any, any>
Generate streaming response using TUniversalMessage
Parameters
| Name | Type |
|---|---|
messages | TUniversalMessage[] |
options? | IChatOptions |
Returns
AsyncIterable<TUniversalMessage, any, any>
Overrides
AbstractAIProvider.chatStream
Defined in
agent-provider-anthropic/src/provider.ts:270
supportsTools
▸ supportsTools(): boolean
Returns
boolean
Overrides
AbstractAIProvider.supportsTools
Defined in
agent-provider-anthropic/src/provider.ts:329
validateConfig
▸ validateConfig(): boolean
Returns
boolean
Overrides
AbstractAIProvider.validateConfig
Defined in
agent-provider-anthropic/src/provider.ts:333
dispose
▸ dispose(): Promise<void>
Returns
Promise<void>
Overrides
AbstractAIProvider.dispose