---
title: agent | CodeWeaver Docs
description: API reference for codeweaver.providers.config.sdk.agent
url: "https://docs.knitli.com/api/providers/config/sdk/agent"
type: static
generatedAt: "2026-04-17T17:21:08.877Z"
---

# agent
       [Open in ChatGPT](https://chatgpt.com/?q=Read%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fconfig%2Fsdk%2Fagent%2F.%20I%20want%20to%20ask%20questions%20about%20it.)[Open in Claude](https://claude.ai/new?q=Read%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fconfig%2Fsdk%2Fagent%2F.%20I%20want%20to%20ask%20questions%20about%20it.)[View in Markdown](/codeweaver/api/providers/config/sdk/agent.md)       [Share on LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fconfig%2Fsdk%2Fagent%2F)[Share on X](https://x.com/intent/tweet?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fconfig%2Fsdk%2Fagent%2F&text=agent)[Share on Threads](https://threads.net/intent/post?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fconfig%2Fsdk%2Fagent%2F&text=agent)[Share on Bluesky](https://bsky.app/intent/compose?text=agent%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fconfig%2Fsdk%2Fagent%2F)[Share on Facebook](https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fconfig%2Fsdk%2Fagent%2F)[Share on Reddit](https://reddit.com/submit?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fconfig%2Fsdk%2Fagent%2F&title=agent)[Share on Hacker News](https://news.ycombinator.com/submitlink?u=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fconfig%2Fsdk%2Fagent%2F&t=agent)[Share on Email](mailto:?subject=agent&body=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fconfig%2Fsdk%2Fagent%2F)[Share on WhatsApp](https://wa.me/?text=agent%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fconfig%2Fsdk%2Fagent%2F)[Share on Telegram](https://t.me/share/url?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Fconfig%2Fsdk%2Fagent%2F&text=agent)
# `codeweaver.providers.config.sdk.agent`
[Section titled “codeweaver.providers.config.sdk.agent”](#codeweaverprovidersconfigsdkagent)
Settings objects for agent model constructors.

NOTE: As with other function config modules, the corresponding provider (i.e. anthropic for `AnthropicAgentModelConfig`), refers to the *SDK client* that uses these settings — not necessarily the model provider or the service provider (i.e. AWS for Bedrock). For example: `BedrockAgentModelConfig` refers to settings used by the Bedrock SDK client, which may be used to access models from multiple service providers, while for Anthropic’s Claude models with AWS Bedrock, the agent model config is `AnthropicAgentModelConfig`, because Anthropic’s native client is being used, even though the service provider is AWS.

It might seem complicated, but we’ve simplified it at the top provider-level settings by differentiating by both provider and SDK client where necessary, so for the example above, there is a `AnthropicBedrockAgentProviderSettings` class for using Anthropic’s Claude models via AWS Bedrock where the `agent_config` field’s type is `AnthropicAgentModelConfig`, and a `BedrockAgentProviderSettings` class for using other models via Bedrock where the `agent_config` field’s type is `BedrockAgentModelConfig`.

*Not all settings in a model are necessarily supported by every model or every SDK*. These are `pydantic_ai` types, and that library takes a little bit of a different approach to configuration than we do. I’m not sure we’d do it differently though because it quickly becomes a complex problem space given the number of providers, models, and SDKs and the speed at which new models and features are released. When in doubt, refer to the SDK documentation and model card/docs for the specific model you’re using to verify which settings are supported.

Each ModelConfig inherits from the base `AgentModelConfig` (which is actually `pydantic_ai.models.ModelSettings`) and adds additional fields for settings that are specific to that provider’s SDK. Generally you can be certain that the SDK will support the namespaced fields (e.g. `anthropic_thinking` or `bedrock_guardrail_config` — not necessarily for every model), but for the general fields inherited from `AgentModelConfig`, it’s a good idea to check the SDK documentation for the specific model you’re using to verify that the setting is supported. The `AgentModelConfig` fields are common settings found across providers (like `temperature` and `max_tokens`), but not every provider supports every setting, and some providers have unique settings that aren’t shared by others, which is why we have provider-specific ModelConfig classes that inherit from the base `AgentModelConfig`. If two fields are similar, use the namespaced field. For example, if you’re using Anthropic’s SDK, use `anthropic_thinking` instead of a hypothetical `thinking` field that might be added to the base `AgentModelConfig` in the future, even if other providers eventually support a similar setting. This way you can be sure that the setting is supported by the SDK you’re using, and you won’t run into issues with your settings not being applied.

## Class: `AnthropicAgentModelConfig`
[Section titled “Class: AnthropicAgentModelConfig”](#class-anthropicagentmodelconfig)
Simplified settings used for AnthropicModelSettings when Anthropic is not installed, used for an Anthropic model request.

## Class: `BedrockAgentModelConfig`
[Section titled “Class: BedrockAgentModelConfig”](#class-bedrockagentmodelconfig)
Settings for Bedrock models.

See [the Bedrock Converse API docs ↗](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html#API_runtime_Converse_RequestSyntax) for a full list. See [the boto3 implementation ↗](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/bedrock-runtime/client/converse.html) of the Bedrock Converse API.

## Class: `CerebrasAgentModelConfig`
[Section titled “Class: CerebrasAgentModelConfig”](#class-cerebrasagentmodelconfig)
Simplified settings object for CerebrasModelSettings when OpenAI is not installed.

## Class: `CohereAgentModelConfig`
[Section titled “Class: CohereAgentModelConfig”](#class-cohereagentmodelconfig)
Settings for a Cohere model request.

## Class: `GoogleAgentModelConfig`
[Section titled “Class: GoogleAgentModelConfig”](#class-googleagentmodelconfig)
Simplified settings object for GoogleModelSettings when Google is not installed.

## Class: `GroqAgentModelConfig`
[Section titled “Class: GroqAgentModelConfig”](#class-groqagentmodelconfig)
Simplified settings object for GroqModelSettings when Groq is not installed; settings for a Groq model request.

## Class: `HuggingFaceAgentModelConfig`
[Section titled “Class: HuggingFaceAgentModelConfig”](#class-huggingfaceagentmodelconfig)
Simplified settings object for HuggingFaceModelSettings when HuggingFace is not installed; settings for a Hugging Face model request.

## Class: `MistralAgentModelConfig`
[Section titled “Class: MistralAgentModelConfig”](#class-mistralagentmodelconfig)
Simplified settings object for MistralModelSettings when Mistral is not installed; settings for a Mistral model request.

## Class: `OpenAIAgentModelConfig`
[Section titled “Class: OpenAIAgentModelConfig”](#class-openaiagentmodelconfig)
Settings used for an OpenAI model request.

## Class: `OpenRouterAgentModelConfig`
[Section titled “Class: OpenRouterAgentModelConfig”](#class-openrouteragentmodelconfig)
Settings for an OpenRouter model request.

## Class: `OpenRouterAgentProviderConfig`
[Section titled “Class: OpenRouterAgentProviderConfig”](#class-openrouteragentproviderconfig)
Represents the ‘Provider’ object from the OpenRouter API.