docs: concept annexation, provider/reference docs, ACT-1 groundwork
Mosaic concepts pages now own the adapted content; source/license metadata under docs/reference/concepts. Adds ACT-1 agent-context planning capture, pinned concept test package + preparation utility, foundation observation notes (durability, evidence, federation, onboarding, workflow), and the #1495 consolidation assessment. TOOLS.md updated for the host-dev launcher.
This commit is contained in:
@@ -0,0 +1,247 @@
|
||||
---
|
||||
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 for the same region and bearer credential |
|
||||
| IAM token refresh | Every 2 hours, cached per region |
|
||||
|
||||
A failed refresh reports unavailable or rejected catalog access. The catalog keeps
|
||||
compatible last-good models with that failure status; expired discovery data does
|
||||
not become a successful refresh. A successful empty response clears discovered
|
||||
membership. Restore endpoint access and refresh again after a failure.
|
||||
|
||||
The plugin's public discovery helpers retain their v2026.9.2 advisory defaults:
|
||||
same-credential stale rows can be returned on failure, and implicit resolution
|
||||
returns `null` for empty results. Programmatic callers can pass
|
||||
`discoveryMode: "strict"` for failure propagation and successful empty provider
|
||||
results. The bundled catalog hooks always select that strict mode.
|
||||
|
||||
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">
|
||||
Failed endpoint requests report unavailable or rejected catalog access.
|
||||
Compatible last-good models remain listed with that failure status. A
|
||||
successful empty response clears discovered membership. If no bearer token
|
||||
can be resolved, discovery is not attempted and the implicit provider is
|
||||
skipped. 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 `/v1/models` lookup that returns at least one model:
|
||||
`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>
|
||||
Reference in New Issue
Block a user