UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

236 lines (192 loc) 9.62 kB
--- summary: "Use Amazon Bedrock Mantle OpenAI-compatible and Claude Messages models with OpenClaw" read_when: - You want to use Bedrock Mantle hosted OSS models with OpenClaw - You need the Mantle OpenAI-compatible endpoint for GPT-OSS, Qwen, Kimi, or GLM - You want to use Claude Opus 5, Sonnet 5, or Mythos 5 through Amazon Bedrock Mantle title: "Amazon Bedrock Mantle" --- OpenClaw includes a bundled **Amazon Bedrock Mantle** provider that connects to the Mantle OpenAI-compatible endpoint. Mantle hosts open-source and third-party models (GPT-OSS, Qwen, Kimi, GLM, and similar) through a standard `/v1/chat/completions` surface backed by Bedrock infrastructure. Mantle also exposes Anthropic Claude models through an Anthropic Messages route. | Property | Value | | -------------- | -------------------------------------------------------------------------------------- | | Provider ID | `amazon-bedrock-mantle` | | API | `openai-completions` for discovered OSS models, `anthropic-messages` for Claude models | | Auth | Explicit `AWS_BEARER_TOKEN_BEDROCK` or IAM credential-chain bearer-token generation | | Default region | `us-east-1` (override with `AWS_REGION` or `AWS_DEFAULT_REGION`) | ## Getting started Choose your preferred auth method and follow the setup steps. <Tabs> <Tab title="Explicit bearer token"> **Best for:** environments where you already have a Mantle bearer token. <Steps> <Step title="Set the bearer token on the gateway host"> ```bash export AWS_BEARER_TOKEN_BEDROCK="..." ``` Optionally set a region (defaults to `us-east-1`): ```bash export AWS_REGION="us-west-2" ``` </Step> <Step title="Verify models are discovered"> ```bash openclaw models list ``` Discovered models appear under the `amazon-bedrock-mantle` provider. No additional config is required unless you want to override defaults. </Step> </Steps> </Tab> <Tab title="IAM credentials"> **Best for:** using AWS SDK-compatible credentials (shared config, SSO, web identity, instance or task roles). <Steps> <Step title="Configure AWS credentials on the gateway host"> Any AWS SDK-compatible auth source works: ```bash export AWS_PROFILE="default" export AWS_REGION="us-west-2" ``` </Step> <Step title="Verify models are discovered"> ```bash openclaw models list ``` OpenClaw generates a Mantle bearer token from the credential chain automatically. </Step> </Steps> <Tip> When `AWS_BEARER_TOKEN_BEDROCK` is not set, OpenClaw mints the bearer token for you from the AWS default credential chain, including shared credentials/config profiles, SSO, web identity, and instance or task roles. </Tip> </Tab> </Tabs> ## Automatic model discovery When `AWS_BEARER_TOKEN_BEDROCK` is set, OpenClaw uses it directly. Otherwise, OpenClaw attempts to generate a Mantle bearer token from the AWS default credential chain. It then discovers available Mantle models by querying the region's `/v1/models` endpoint. | Behavior | Detail | | ----------------- | ------------------------------------------------------------------------------------ | | Discovery cache | Results cached for 1 hour per region; a fetch failure returns the last cached result | | IAM token refresh | Every 2 hours, cached per region | To keep the Mantle plugin enabled but suppress automatic discovery and IAM bearer-token generation, disable the plugin-owned discovery toggle: ```bash openclaw config set plugins.entries.amazon-bedrock-mantle.config.discovery.enabled false ``` <Note> The bearer token is the same `AWS_BEARER_TOKEN_BEDROCK` used by the standard [Amazon Bedrock](/providers/bedrock) provider. </Note> ### Supported regions `us-east-1`, `us-east-2`, `us-west-2`, `ap-northeast-1`, `ap-south-1`, `ap-southeast-3`, `eu-central-1`, `eu-west-1`, `eu-west-2`, `eu-south-1`, `eu-north-1`, `sa-east-1`. ## Manual configuration If you prefer explicit config instead of auto-discovery: ```json5 { models: { providers: { "amazon-bedrock-mantle": { baseUrl: "https://bedrock-mantle.us-east-1.api.aws/v1", api: "openai-completions", auth: "api-key", apiKey: "env:AWS_BEARER_TOKEN_BEDROCK", models: [ { id: "gpt-oss-120b", name: "GPT-OSS 120B", reasoning: true, input: ["text"], cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }, contextWindow: 32000, maxTokens: 4096, }, ], }, }, }, } ``` An explicit non-empty `models` list controls membership and replaces discovered rows, including the Claude rows below. For matching rows, an explicit `input` wins; when the source row omits `input`, discovery can fill that capability metadata. Omit `models` to retain the automatic Mantle catalog, or include the complete Claude model entries you want to use. ## Advanced configuration <AccordionGroup> <Accordion title="Reasoning support"> Reasoning support is inferred from model IDs containing patterns like `thinking`, `reasoner`, `reasoning`, `deepseek.r`, `gpt-oss-120b`, or `gpt-oss-safeguard-120b`. OpenClaw sets `reasoning: true` automatically for matching models during discovery. </Accordion> <Accordion title="Endpoint unavailability"> If the Mantle endpoint is unavailable, returns no models, or bearer-token resolution fails, discovery returns an empty result and the implicit provider is skipped. OpenClaw does not error; other configured providers continue to work normally. </Accordion> <Accordion title="Claude via the Anthropic Messages route"> When automatic discovery owns the model list, OpenClaw appends five Claude models after a successful lookup, regardless of what `/v1/models` returns: `amazon-bedrock-mantle/anthropic.claude-opus-5` (Claude Opus 5), `amazon-bedrock-mantle/anthropic.claude-sonnet-5` (Claude Sonnet 5), `amazon-bedrock-mantle/anthropic.claude-opus-4-7` (Claude Opus 4.7), and `amazon-bedrock-mantle/anthropic.claude-mythos-5` (Claude Mythos 5), plus `amazon-bedrock-mantle/anthropic.claude-mythos-preview` (Claude Mythos Preview). They use the `anthropic-messages` API surface and stream through the same bearer-authenticated Anthropic-compatible endpoint (`<mantle-base>/anthropic`), so the AWS bearer token is not treated like an Anthropic API key. Claude Opus 5 publishes a 1,000,000-token context window, 128,000-token output limit, image input, and `$5/$25` input/output pricing. Adaptive thinking defaults to `high`; `/think off` disables thinking, and `/think xhigh|max` uses the model's native effort levels. OpenClaw omits caller-selected sampling parameters. Claude Sonnet 5 always uses adaptive thinking and defaults to `high` effort. `/think off` and `/think minimal` map to `low` because the Mantle route cannot disable thinking. OpenClaw also omits custom temperature for Sonnet 5 requests. Claude Mythos 5 is limited access. It publishes a 1,000,000-token context window and 128,000-token output limit, always uses adaptive thinking, maps `/think off` and `/think minimal` to `low`, and omits caller-selected sampling parameters. Claude Mythos Preview always requests reasoning, defaulting to `high` effort when no `/think` level is set (mapped from `xhigh`/`max` down to `high`, and `minimal` up to `low`). Opus 4.7 on Mantle streams without model-provided reasoning, and OpenClaw omits its `temperature` parameter since Opus 4.7 does not accept sampling overrides on this route; Mythos Preview accepts a `temperature` override normally. A non-empty explicit `models.providers["amazon-bedrock-mantle"].models` list controls membership and replaces the complete discovered catalog. Matching rows can inherit discovered `input` capability only when the source row omitted it. Omit the list when you want these built-in Claude rows. </Accordion> <Accordion title="Relationship to Amazon Bedrock provider"> Bedrock Mantle is a separate provider from the standard [Amazon Bedrock](/providers/bedrock) provider. Mantle uses an OpenAI-compatible `/v1` surface for its OSS catalog, while the standard Bedrock provider uses the native Bedrock Converse API. Both providers share the same `AWS_BEARER_TOKEN_BEDROCK` credential when present. </Accordion> </AccordionGroup> ## Related <CardGroup cols={2}> <Card title="Amazon Bedrock" href="/providers/bedrock" icon="cloud"> Native Bedrock provider for Anthropic Claude, Titan, and other models. </Card> <Card title="Model selection" href="/concepts/model-providers" icon="layers"> Choosing providers, model refs, and failover behavior. </Card> <Card title="OAuth and auth" href="/gateway/authentication" icon="key"> Auth details and credential reuse rules. </Card> <Card title="Troubleshooting" href="/help/troubleshooting" icon="wrench"> Common issues and how to resolve them. </Card> </CardGroup>