1> ## Documentation Index
2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt
3> Use this file to discover all available pages before exploring further.
4
5# Claude Code no Amazon Bedrock
6
7> Saiba como configurar Claude Code através do Amazon Bedrock, incluindo configuração, configuração de IAM e resolução de problemas.
8
9export const ContactSalesCard = ({surface}) => {
10 const utm = content => `utm_source=claude_code&utm_medium=docs&utm_content=${surface}_${content}`;
11 const iconArrowRight = (size = 13) => <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2.5" strokeLinecap="round" strokeLinejoin="round" aria-hidden="true">
12 <line x1="5" y1="12" x2="19" y2="12" />
13 <polyline points="12 5 19 12 12 19" />
14 </svg>;
15 const STYLES = `
16.cc-cs {
17 --cs-slate: #141413;
18 --cs-clay: #d97757;
19 --cs-clay-deep: #c6613f;
20 --cs-gray-000: #ffffff;
21 --cs-gray-700: #3d3d3a;
22 --cs-border-default: rgba(31, 30, 29, 0.15);
23 font-family: inherit;
24}
25.dark .cc-cs {
26 --cs-slate: #f0eee6;
27 --cs-gray-000: #262624;
28 --cs-gray-700: #bfbdb4;
29 --cs-border-default: rgba(240, 238, 230, 0.14);
30}
31.cc-cs-card {
32 display: flex; align-items: center; justify-content: space-between;
33 gap: 16px; padding: 14px 16px; margin: 0;
34 background: var(--cs-gray-000); border: 0.5px solid var(--cs-border-default);
35 border-radius: 8px; flex-wrap: wrap;
36}
37.cc-cs-text { font-size: 13px; color: var(--cs-gray-700); line-height: 1.5; flex: 1; min-width: 240px; }
38.cc-cs-text strong { font-weight: 550; color: var(--cs-slate); }
39.cc-cs-actions { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
40.cc-cs-btn-clay {
41 display: inline-flex; align-items: center; gap: 8px;
42 background: var(--cs-clay-deep); color: #fff; border: none;
43 border-radius: 8px; padding: 8px 14px;
44 font-size: 13px; font-weight: 500;
45 transition: background-color 0.15s; white-space: nowrap;
46}
47.cc-cs-btn-clay:hover { background: var(--cs-clay); }
48.cc-cs-btn-ghost {
49 display: inline-flex; align-items: center; gap: 8px;
50 background: transparent; color: var(--cs-gray-700);
51 border: 0.5px solid var(--cs-border-default);
52 border-radius: 8px; padding: 8px 14px;
53 font-size: 13px; font-weight: 500;
54}
55.cc-cs-btn-ghost:hover { background: rgba(0, 0, 0, 0.04); }
56.dark .cc-cs-btn-ghost:hover { background: rgba(255, 255, 255, 0.04); }
57@media (max-width: 720px) {
58 .cc-cs-actions { width: 100%; }
59}
60`;
61 return <div className="cc-cs not-prose">
62 <style>{STYLES}</style>
63 <div className="cc-cs-card">
64 <div className="cc-cs-text">
65 <strong>Deploying Claude Code across your organization?</strong> Talk to sales about enterprise plans, SSO, and centralized billing.
66 </div>
67 <div className="cc-cs-actions">
68 <a href={`https://claude.com/pricing?${utm('view_plans')}#plans-business`} className="cc-cs-btn-ghost">
69 View plans
70 </a>
71 <a href={`https://claude.com/contact-sales?${utm('contact_sales')}`} className="cc-cs-btn-clay">
72 Contact sales {iconArrowRight()}
73 </a>
74 </div>
75 </div>
76 </div>;
77};
78
79export const Experiment = ({flag, treatment, children}) => {
80 const VID_KEY = 'exp_vid';
81 const CONSENT_COUNTRIES = new Set(['AT', 'BE', 'BG', 'HR', 'CY', 'CZ', 'DK', 'EE', 'FI', 'FR', 'DE', 'GR', 'HU', 'IE', 'IT', 'LV', 'LT', 'LU', 'MT', 'NL', 'PL', 'PT', 'RO', 'SK', 'SI', 'ES', 'SE', 'RE', 'GP', 'MQ', 'GF', 'YT', 'BL', 'MF', 'PM', 'WF', 'PF', 'NC', 'AW', 'CW', 'SX', 'FO', 'GL', 'AX', 'GB', 'UK', 'AI', 'BM', 'IO', 'VG', 'KY', 'FK', 'GI', 'MS', 'PN', 'SH', 'TC', 'GG', 'JE', 'IM', 'CA', 'BR', 'IN']);
82 const fnv1a = s => {
83 let h = 0x811c9dc5;
84 for (let i = 0; i < s.length; i++) {
85 h ^= s.charCodeAt(i);
86 h += (h << 1) + (h << 4) + (h << 7) + (h << 8) + (h << 24);
87 }
88 return h >>> 0;
89 };
90 const bucket = (seed, vid) => fnv1a(fnv1a(seed + vid) + '') % 10000 < 5000 ? 'control' : 'treatment';
91 const [decision] = useState(() => {
92 const params = new URLSearchParams(location.search);
93 const preBucketed = document.documentElement.dataset['gb_' + flag.replace(/-/g, '_')];
94 const force = params.get('gb-force');
95 if (force) {
96 for (const p of force.split(',')) {
97 const [k, v] = p.split(':');
98 if (k === flag) return {
99 variant: v || 'treatment',
100 track: false
101 };
102 }
103 }
104 if (navigator.globalPrivacyControl) {
105 return {
106 variant: 'control',
107 track: false
108 };
109 }
110 const prefsMatch = document.cookie.match(/(?:^|; )anthropic-consent-preferences=([^;]+)/);
111 if (prefsMatch) {
112 try {
113 if (JSON.parse(decodeURIComponent(prefsMatch[1])).analytics !== true) {
114 return {
115 variant: 'control',
116 track: false
117 };
118 }
119 } catch {
120 return {
121 variant: 'control',
122 track: false
123 };
124 }
125 } else {
126 const country = params.get('country')?.toUpperCase() || (document.cookie.match(/(?:^|; )cf_geo=([A-Z]{2})/) || [])[1];
127 if (!country || CONSENT_COUNTRIES.has(country)) {
128 return {
129 variant: 'control',
130 track: false
131 };
132 }
133 }
134 let vid;
135 try {
136 const ajsMatch = document.cookie.match(/(?:^|; )ajs_anonymous_id=([^;]+)/);
137 if (ajsMatch) {
138 vid = decodeURIComponent(ajsMatch[1]).replace(/^"|"$/g, '');
139 } else {
140 vid = localStorage.getItem(VID_KEY);
141 if (!vid) {
142 vid = crypto.randomUUID();
143 }
144 document.cookie = `ajs_anonymous_id=${vid}; domain=.claude.com; path=/; Secure; SameSite=Lax; max-age=31536000`;
145 }
146 try {
147 localStorage.setItem(VID_KEY, vid);
148 } catch {}
149 } catch {
150 return {
151 variant: 'control',
152 track: false
153 };
154 }
155 const variant = preBucketed === '1' ? 'treatment' : preBucketed === '0' ? 'control' : bucket(flag, vid);
156 return {
157 variant,
158 track: true,
159 vid
160 };
161 });
162 useEffect(() => {
163 if (!decision.track) return;
164 fetch('https://api.anthropic.com/api/event_logging/v2/batch', {
165 method: 'POST',
166 headers: {
167 'Content-Type': 'application/json',
168 'x-service-name': 'claude_code_docs'
169 },
170 body: JSON.stringify({
171 events: [{
172 event_type: 'GrowthbookExperimentEvent',
173 event_data: {
174 device_id: decision.vid,
175 anonymous_id: decision.vid,
176 timestamp: new Date().toISOString(),
177 experiment_id: flag,
178 variation_id: decision.variant === 'treatment' ? 1 : 0,
179 environment: 'production'
180 }
181 }]
182 }),
183 keepalive: true
184 }).catch(() => {});
185 }, []);
186 return decision.variant === 'treatment' ? treatment : children;
187};
188
189<Experiment flag="docs-contact-sales-cta" treatment={<ContactSalesCard surface="bedrock" />} />
190
191## Pré-requisitos
192
193Antes de configurar Claude Code com Bedrock, certifique-se de que você tem:
194
195* Uma conta AWS com acesso ao Bedrock habilitado
196* Acesso aos modelos Claude desejados (por exemplo, Claude Sonnet 4.6) no Bedrock
197* AWS CLI instalado e configurado (opcional - necessário apenas se você não tiver outro mecanismo para obter credenciais)
198* Permissões IAM apropriadas
199
200Para entrar com suas próprias credenciais do Bedrock, siga [Entrar com Bedrock](#sign-in-with-bedrock) abaixo. Para implantar Claude Code em toda uma equipe, use as etapas de [configuração manual](#set-up-manually) e [fixe suas versões de modelo](#4-pin-model-versions) antes de fazer o lançamento.
201
202## Entrar com Bedrock
203
204Se você tem credenciais AWS e quer começar a usar Claude Code através do Bedrock, o assistente de login o guia através disso. Você completa os pré-requisitos do lado AWS uma vez por conta; o assistente cuida do lado do Claude Code.
205
206<Steps>
207 <Step title="Habilitar modelos Anthropic em sua conta AWS">
208 No [console do Amazon Bedrock](https://console.aws.amazon.com/bedrock/), abra o catálogo de modelos, selecione um modelo Anthropic e envie o formulário de caso de uso. O acesso é concedido imediatamente após o envio. Veja [Enviar detalhes do caso de uso](#1-submit-use-case-details) para AWS Organizations e [configuração de IAM](#iam-configuration) para as permissões que sua função precisa.
209 </Step>
210
211 <Step title="Iniciar Claude Code e escolher Bedrock">
212 Execute `claude`. No prompt de login, selecione **plataforma de terceiros**, depois **Amazon Bedrock**.
213 </Step>
214
215 <Step title="Seguir os prompts do assistente">
216 Escolha como você se autentica na AWS: um perfil AWS detectado do seu diretório `~/.aws`, uma chave de API do Bedrock, uma chave de acesso e segredo, ou credenciais já em seu ambiente. O assistente pega sua região, verifica quais modelos Claude sua conta pode invocar e permite que você os fixe. Ele salva o resultado no bloco `env` do seu [arquivo de configurações do usuário](/pt/settings), para que você não precise exportar variáveis de ambiente você mesmo.
217 </Step>
218</Steps>
219
220Depois de entrar, execute `/setup-bedrock` a qualquer momento para reabrir o assistente e alterar suas credenciais, região ou fixações de modelo.
221
222## Configurar manualmente
223
224Para configurar Bedrock através de variáveis de ambiente em vez do assistente, por exemplo em CI ou um lançamento empresarial com script, siga as etapas abaixo.
225
226### 1. Enviar detalhes do caso de uso
227
228Os usuários pela primeira vez dos modelos Anthropic são obrigados a enviar detalhes do caso de uso antes de invocar um modelo. Isso é feito uma vez por conta AWS.
229
2301. Certifique-se de que você tem as permissões IAM corretas descritas abaixo
2312. Navegue até o [console do Amazon Bedrock](https://console.aws.amazon.com/bedrock/)
2323. Selecione um modelo Anthropic do **catálogo de modelos**
2334. Complete o formulário de caso de uso. O acesso é concedido imediatamente após o envio.
234
235Se você usar AWS Organizations, você pode enviar o formulário uma vez da conta de gerenciamento usando a [API `PutUseCaseForModelAccess`](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_PutUseCaseForModelAccess.html). Esta chamada requer a permissão IAM `bedrock:PutUseCaseForModelAccess`. A aprovação se estende às contas filhas automaticamente.
236
237### 2. Configurar credenciais AWS
238
239Claude Code usa a cadeia de credenciais padrão do AWS SDK. Configure suas credenciais usando um destes métodos:
240
241**Opção A: Configuração da AWS CLI**
242
243```bash theme={null}
244aws configure
245```
246
247**Opção B: Variáveis de ambiente (chave de acesso)**
248
249```bash theme={null}
250export AWS_ACCESS_KEY_ID=your-access-key-id
251export AWS_SECRET_ACCESS_KEY=your-secret-access-key
252export AWS_SESSION_TOKEN=your-session-token
253```
254
255**Opção C: Variáveis de ambiente (perfil SSO)**
256
257```bash theme={null}
258aws sso login --profile=<your-profile-name>
259
260export AWS_PROFILE=your-profile-name
261```
262
263**Opção D: Credenciais do AWS Management Console**
264
265```bash theme={null}
266aws login
267```
268
269[Saiba mais](https://docs.aws.amazon.com/signin/latest/userguide/command-line-sign-in.html) sobre `aws login`.
270
271**Opção E: Chaves de API do Bedrock**
272
273```bash theme={null}
274export AWS_BEARER_TOKEN_BEDROCK=your-bedrock-api-key
275```
276
277As chaves de API do Bedrock fornecem um método de autenticação mais simples sem precisar de credenciais AWS completas. [Saiba mais sobre chaves de API do Bedrock](https://aws.amazon.com/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/).
278
279#### Configuração avançada de credenciais
280
281Claude Code suporta atualização automática de credenciais para AWS SSO e provedores de identidade corporativa. Adicione estas configurações ao seu arquivo de configurações do Claude Code (veja [Configurações](/pt/settings) para localizações de arquivo).
282
283Quando Claude Code detecta que suas credenciais AWS expiraram (localmente com base em seu timestamp ou quando Bedrock retorna um erro de credencial), ele executará automaticamente seus comandos `awsAuthRefresh` e/ou `awsCredentialExport` configurados para obter novas credenciais antes de tentar novamente a solicitação.
284
285##### Exemplo de configuração
286
287```json theme={null}
288{
289 "awsAuthRefresh": "aws sso login --profile myprofile",
290 "env": {
291 "AWS_PROFILE": "myprofile"
292 }
293}
294```
295
296##### Configurações explicadas
297
298**`awsAuthRefresh`**: Use isso para comandos que modificam o diretório `.aws`, como atualizar credenciais, cache SSO ou arquivos de configuração. A saída do comando é exibida ao usuário, mas entrada interativa não é suportada. Isso funciona bem para fluxos SSO baseados em navegador onde a CLI exibe uma URL ou código e você completa a autenticação no navegador.
299
300**`awsCredentialExport`**: Use apenas se você não puder modificar `.aws` e deve retornar credenciais diretamente. A saída é capturada silenciosamente e não é mostrada ao usuário. O comando deve gerar JSON neste formato:
301
302```json theme={null}
303{
304 "Credentials": {
305 "AccessKeyId": "value",
306 "SecretAccessKey": "value",
307 "SessionToken": "value"
308 }
309}
310```
311
312### 3. Configurar Claude Code
313
314Defina as seguintes variáveis de ambiente para habilitar Bedrock:
315
316```bash theme={null}
317# Habilitar integração Bedrock
318export CLAUDE_CODE_USE_BEDROCK=1
319export AWS_REGION=us-east-1 # ou sua região preferida
320
321# Opcional: Substituir a região para o modelo pequeno/rápido (Haiku).
322# Também se aplica ao Bedrock Mantle.
323export ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION=us-west-2
324
325# Opcional: Substituir a URL do endpoint Bedrock para endpoints personalizados ou gateways
326# export ANTHROPIC_BEDROCK_BASE_URL=https://bedrock-runtime.us-east-1.amazonaws.com
327```
328
329Ao habilitar Bedrock para Claude Code, tenha em mente o seguinte:
330
331* `AWS_REGION` é uma variável de ambiente obrigatória. Claude Code não lê do arquivo de configuração `.aws` para esta configuração.
332* Ao usar Bedrock, os comandos `/login` e `/logout` são desabilitados, pois a autenticação é tratada através de credenciais AWS.
333* Você pode usar arquivos de configurações para variáveis de ambiente como `AWS_PROFILE` que você não quer vazar para outros processos. Veja [Configurações](/pt/settings) para mais informações.
334
335### 4. Fixar versões de modelo
336
337<Warning>
338 Fixe versões de modelo específicas ao implantar para vários usuários. Sem fixação, aliases de modelo como `sonnet` e `opus` resolvem para a versão mais recente, que pode não estar disponível em sua conta Bedrock quando Anthropic lançar uma atualização. Claude Code [volta](#startup-model-checks) para a versão anterior na inicialização quando a versão mais recente não está disponível, mas fixação permite que você controle quando seus usuários se movem para um novo modelo.
339</Warning>
340
341Defina estas variáveis de ambiente para IDs de modelo Bedrock específicos.
342
343Sem `ANTHROPIC_DEFAULT_OPUS_MODEL`, o alias `opus` no Bedrock resolve para Opus 4.6. Defina-o para o ID do Opus 4.7 para usar o modelo mais recente:
344
345```bash theme={null}
346export ANTHROPIC_DEFAULT_OPUS_MODEL='us.anthropic.claude-opus-4-7'
347export ANTHROPIC_DEFAULT_SONNET_MODEL='us.anthropic.claude-sonnet-4-6'
348export ANTHROPIC_DEFAULT_HAIKU_MODEL='us.anthropic.claude-haiku-4-5-20251001-v1:0'
349```
350
351Estas variáveis usam IDs de perfil de inferência entre regiões (com o prefixo `us.`). Se você usar um prefixo de região diferente ou perfis de inferência de aplicação, ajuste de acordo. Para IDs de modelo atuais e legados, veja [Visão geral de modelos](https://platform.claude.com/docs/en/about-claude/models/overview). Veja [Configuração de modelo](/pt/model-config#pin-models-for-third-party-deployments) para a lista completa de variáveis de ambiente.
352
353Claude Code usa estes modelos padrão quando nenhuma variável de fixação está definida:
354
355| Tipo de modelo | Valor padrão |
356| :-------------------- | :--------------------------------------------- |
357| Modelo primário | `us.anthropic.claude-sonnet-4-5-20250929-v1:0` |
358| Modelo pequeno/rápido | `us.anthropic.claude-haiku-4-5-20251001-v1:0` |
359
360Para personalizar modelos ainda mais, use um destes métodos:
361
362```bash theme={null}
363# Usando ID de perfil de inferência
364export ANTHROPIC_MODEL='global.anthropic.claude-sonnet-4-6'
365export ANTHROPIC_DEFAULT_HAIKU_MODEL='us.anthropic.claude-haiku-4-5-20251001-v1:0'
366
367# Usando ARN de perfil de inferência de aplicação
368export ANTHROPIC_MODEL='arn:aws:bedrock:us-east-2:your-account-id:application-inference-profile/your-model-id'
369
370# Opcional: Desabilitar cache de prompt se necessário
371export DISABLE_PROMPT_CACHING=1
372
373# Opcional: Solicitar TTL de cache de prompt de 1 hora em vez do padrão de 5 minutos
374export ENABLE_PROMPT_CACHING_1H=1
375```
376
377<Note>[Cache de prompt](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) pode não estar disponível em todas as regiões. Gravações de cache com TTL de 1 hora são cobradas a uma taxa mais alta do que gravações de 5 minutos.</Note>
378
379#### Mapear cada versão de modelo para um perfil de inferência
380
381As variáveis de ambiente `ANTHROPIC_DEFAULT_*_MODEL` configuram um perfil de inferência por família de modelo. Se sua organização precisa expor várias versões da mesma família no seletor `/model`, cada uma roteada para seu próprio ARN de perfil de inferência de aplicação, use a configuração `modelOverrides` em seu [arquivo de configurações](/pt/settings#settings-files) em vez disso.
382
383Este exemplo mapeia quatro versões de Opus para ARNs distintos para que os usuários possam alternar entre elas sem contornar os perfis de inferência de sua organização:
384
385```json theme={null}
386{
387 "modelOverrides": {
388 "claude-opus-4-7": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-47-prod",
389 "claude-opus-4-6": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-46-prod",
390 "claude-opus-4-5-20251101": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-45-prod",
391 "claude-opus-4-1-20250805": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-41-prod"
392 }
393}
394```
395
396Quando um usuário seleciona uma dessas versões em `/model`, Claude Code chama Bedrock com o ARN mapeado. Versões sem uma substituição voltam para o ID de modelo Bedrock integrado ou qualquer perfil de inferência correspondente descoberto na inicialização. Veja [Substituir IDs de modelo por versão](/pt/model-config#override-model-ids-per-version) para detalhes sobre como as substituições interagem com `availableModels` e outras configurações de modelo.
397
398## Verificações de modelo na inicialização
399
400Quando Claude Code inicia com Bedrock configurado, ele verifica que os modelos que pretende usar estão acessíveis em sua conta. Esta verificação requer Claude Code v2.1.94 ou posterior.
401
402Se você fixou uma versão de modelo que é mais antiga do que o padrão atual do Claude Code, e sua conta pode invocar a versão mais recente, Claude Code o solicita a atualizar a fixação. Aceitar escreve o novo ID de modelo em seu [arquivo de configurações do usuário](/pt/settings) e reinicia Claude Code. Recusar é lembrado até a próxima mudança de versão padrão. Fixações que apontam para um [ARN de perfil de inferência de aplicação](#map-each-model-version-to-an-inference-profile) são ignoradas, pois são gerenciadas pelo seu administrador.
403
404Se você não fixou um modelo e o padrão atual não está disponível em sua conta, Claude Code volta para a versão anterior para a sessão atual e mostra um aviso. O fallback não é persistido. Habilite o modelo mais recente em sua conta Bedrock ou [fixe uma versão](#4-pin-model-versions) para tornar a escolha permanente.
405
406## Configuração de IAM
407
408Crie uma política de IAM com as permissões necessárias para Claude Code:
409
410```json theme={null}
411{
412 "Version": "2012-10-17",
413 "Statement": [
414 {
415 "Sid": "AllowModelAndInferenceProfileAccess",
416 "Effect": "Allow",
417 "Action": [
418 "bedrock:InvokeModel",
419 "bedrock:InvokeModelWithResponseStream",
420 "bedrock:ListInferenceProfiles",
421 "bedrock:GetInferenceProfile"
422 ],
423 "Resource": [
424 "arn:aws:bedrock:*:*:inference-profile/*",
425 "arn:aws:bedrock:*:*:application-inference-profile/*",
426 "arn:aws:bedrock:*:*:foundation-model/*"
427 ]
428 },
429 {
430 "Sid": "AllowMarketplaceSubscription",
431 "Effect": "Allow",
432 "Action": [
433 "aws-marketplace:ViewSubscriptions",
434 "aws-marketplace:Subscribe"
435 ],
436 "Resource": "*",
437 "Condition": {
438 "StringEquals": {
439 "aws:CalledViaLast": "bedrock.amazonaws.com"
440 }
441 }
442 }
443 ]
444}
445```
446
447Para permissões mais restritivas, você pode limitar o Resource para ARNs de perfil de inferência específicos.
448
449`bedrock:GetInferenceProfile` permite que Claude Code resolva um [ARN de perfil de inferência de aplicação](#map-each-model-version-to-an-inference-profile) para seu modelo de fundação de suporte, que é usado para selecionar a forma de solicitação correta para esse modelo.
450
451Se o token não tiver essa permissão, Claude Code se recupera automaticamente tentando novamente uma vez com a forma alternativa, portanto as solicitações ainda têm sucesso, mas cada novo modelo adiciona uma viagem extra. Conceder a permissão evita a tentativa novamente. Isso se aplica com mais frequência a implantações `AWS_BEARER_TOKEN_BEDROCK`, onde a política do token é normalmente mais restrita do que uma função IAM completa.
452
453Para detalhes, veja [documentação de IAM do Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/security-iam.html).
454
455<Note>
456 Crie uma conta AWS dedicada para Claude Code para simplificar o rastreamento de custos e controle de acesso.
457</Note>
458
459## Janela de contexto de 1M de tokens
460
461Claude Opus 4.7, Opus 4.6 e Sonnet 4.6 suportam a [janela de contexto de 1M de tokens](https://platform.claude.com/docs/en/build-with-claude/context-windows#1m-token-context-window) no Amazon Bedrock. Claude Code habilita automaticamente a janela de contexto estendida quando você seleciona uma variante de modelo de 1M.
462
463O [assistente de configuração](#sign-in-with-bedrock) oferece uma opção de contexto de 1M quando fixa modelos. Para habilitá-lo para um modelo fixado manualmente em vez disso, acrescente `[1m]` ao ID do modelo. Veja [Fixar modelos para implantações de terceiros](/pt/model-config#pin-models-for-third-party-deployments) para detalhes.
464
465## AWS Guardrails
466
467[Amazon Bedrock Guardrails](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.html) permitem que você implemente filtragem de conteúdo para Claude Code. Crie um Guardrail no [console do Amazon Bedrock](https://console.aws.amazon.com/bedrock/), publique uma versão, então adicione os cabeçalhos do Guardrail ao seu [arquivo de configurações](/pt/settings). Habilite inferência entre regiões em seu Guardrail se você estiver usando perfis de inferência entre regiões.
468
469Exemplo de configuração:
470
471```json theme={null}
472{
473 "env": {
474 "ANTHROPIC_CUSTOM_HEADERS": "X-Amzn-Bedrock-GuardrailIdentifier: your-guardrail-id\nX-Amzn-Bedrock-GuardrailVersion: 1"
475 }
476}
477```
478
479## Usar o endpoint Mantle
480
481Mantle é um endpoint do Amazon Bedrock que serve modelos Claude através da forma de API Anthropic nativa em vez da API Invoke do Bedrock. Ele usa as mesmas credenciais AWS, permissões IAM e configuração `awsAuthRefresh` descritas anteriormente nesta página.
482
483<Note>
484 Mantle requer Claude Code v2.1.94 ou posterior. Execute `claude --version` para verificar.
485</Note>
486
487### Habilitar Mantle
488
489Com credenciais AWS já configuradas, defina `CLAUDE_CODE_USE_MANTLE` para rotear solicitações para o endpoint Mantle:
490
491```bash theme={null}
492export CLAUDE_CODE_USE_MANTLE=1
493export AWS_REGION=us-east-1
494```
495
496Claude Code constrói a URL do endpoint a partir de `AWS_REGION`. Para substituí-la por um endpoint personalizado ou gateway, defina `ANTHROPIC_BEDROCK_MANTLE_BASE_URL`.
497
498Execute `/status` dentro do Claude Code para confirmar. A linha do provedor mostra `Amazon Bedrock (Mantle)` quando Mantle está ativo.
499
500### Selecionar um modelo Mantle
501
502Mantle usa IDs de modelo com prefixo `anthropic.` e sem sufixo de versão, por exemplo `anthropic.claude-haiku-4-5`. Os modelos disponíveis para sua conta dependem do que sua organização foi concedida; IDs de modelo adicionais estão listados em seus materiais de integração da AWS. Entre em contato com sua equipe de conta AWS para solicitar acesso aos modelos permitidos.
503
504Defina o modelo com a flag `--model` ou com `/model` dentro do Claude Code:
505
506```bash theme={null}
507claude --model anthropic.claude-haiku-4-5
508```
509
510### Executar Mantle junto com a API Invoke
511
512Os modelos disponíveis para você no Mantle podem não incluir todos os modelos que você usa hoje. Definir tanto `CLAUDE_CODE_USE_BEDROCK` quanto `CLAUDE_CODE_USE_MANTLE` permite que Claude Code chame ambos os endpoints da mesma sessão. IDs de modelo que correspondem ao formato Mantle são roteados para Mantle, e todos os outros IDs de modelo vão para a API Invoke do Bedrock.
513
514```bash theme={null}
515export CLAUDE_CODE_USE_BEDROCK=1
516export CLAUDE_CODE_USE_MANTLE=1
517```
518
519Para exibir um modelo Mantle no seletor `/model`, liste seu ID em `availableModels` em seu [arquivo de configurações](/pt/settings). Esta configuração também restringe o seletor às entradas listadas, então inclua cada alias que você quer manter disponível:
520
521```json theme={null}
522{
523 "availableModels": ["opus", "sonnet", "haiku", "anthropic.claude-haiku-4-5"]
524}
525```
526
527Entradas com o prefixo `anthropic.` são adicionadas como opções de seletor personalizadas e roteadas para Mantle. Substitua `anthropic.claude-haiku-4-5` pelo ID de modelo que sua conta foi concedida. Veja [Restringir seleção de modelo](/pt/model-config#restrict-model-selection) para como `availableModels` interage com outras configurações de modelo.
528
529Quando ambos os provedores estão ativos, `/status` mostra `Amazon Bedrock + Amazon Bedrock (Mantle)`.
530
531### Rotear Mantle através de um gateway
532
533Se sua organização roteia tráfego de modelo através de um [gateway LLM](/pt/llm-gateway) centralizado que injeta credenciais AWS no lado do servidor, desabilite a autenticação no lado do cliente para que Claude Code envie solicitações sem assinaturas SigV4 ou cabeçalhos `x-api-key`:
534
535```bash theme={null}
536export CLAUDE_CODE_USE_MANTLE=1
537export CLAUDE_CODE_SKIP_MANTLE_AUTH=1
538export ANTHROPIC_BEDROCK_MANTLE_BASE_URL=https://your-gateway.example.com
539```
540
541### Variáveis de ambiente Mantle
542
543Estas variáveis são específicas para o endpoint Mantle. Veja [Variáveis de ambiente](/pt/env-vars) para a lista completa.
544
545| Variável | Propósito |
546| :-------------------------------------- | :------------------------------------------------------------------------------ |
547| `CLAUDE_CODE_USE_MANTLE` | Habilitar o endpoint Mantle. Defina como `1` ou `true`. |
548| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | Substituir a URL do endpoint Mantle padrão |
549| `CLAUDE_CODE_SKIP_MANTLE_AUTH` | Pular autenticação no lado do cliente para configurações de proxy |
550| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Substituir região AWS para o modelo da classe Haiku (compartilhado com Bedrock) |
551
552## Resolução de problemas
553
554### Loop de autenticação com SSO e proxies corporativos
555
556Se abas do navegador aparecem repetidamente ao usar AWS SSO, remova a configuração `awsAuthRefresh` do seu [arquivo de configurações](/pt/settings). Isso pode ocorrer quando VPNs corporativas ou proxies de inspeção TLS interrompem o fluxo do navegador SSO. Claude Code trata a conexão interrompida como uma falha de autenticação, executa novamente `awsAuthRefresh` e entra em loop indefinidamente.
557
558Se seu ambiente de rede interfere com fluxos SSO automáticos baseados em navegador, use `aws sso login` manualmente antes de iniciar Claude Code em vez de depender de `awsAuthRefresh`.
559
560### Problemas de região
561
562Se você encontrar problemas de região:
563
564* Verifique disponibilidade de modelo: `aws bedrock list-inference-profiles --region your-region`
565* Mude para uma região suportada: `export AWS_REGION=us-east-1`
566* Considere usar perfis de inferência para acesso entre regiões
567
568Se você receber um erro "on-demand throughput isn't supported":
569
570* Especifique o modelo como um ID de [perfil de inferência](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-profiles-support.html)
571
572Claude Code usa a [API Invoke](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModelWithResponseStream.html) do Bedrock e não suporta a API Converse.
573
574### Erros de endpoint Mantle
575
576Se `/status` não mostra `Amazon Bedrock (Mantle)` depois que você defina `CLAUDE_CODE_USE_MANTLE`, a variável não está chegando ao processo. Confirme que ela é exportada no shell onde você lançou `claude`, ou defina-a no bloco `env` do seu [arquivo de configurações](/pt/settings).
577
578Um `403` do endpoint Mantle com credenciais válidas significa que sua conta AWS não foi concedida acesso ao modelo que você solicitou. Entre em contato com sua equipe de conta AWS para solicitar acesso.
579
580Um `400` que nomeia o ID do modelo significa que esse modelo não é servido no Mantle. Mantle tem seu próprio lineup de modelo separado do catálogo Bedrock padrão, então IDs de perfil de inferência como `us.anthropic.claude-sonnet-4-6` não funcionarão. Use um ID de formato Mantle, ou habilite [ambos os endpoints](#run-mantle-alongside-the-invoke-api) para que Claude Code roteia cada solicitação para o endpoint onde o modelo está disponível.
581
582## Recursos adicionais
583
584* [Documentação do Bedrock](https://docs.aws.amazon.com/bedrock/)
585* [Preços do Bedrock](https://aws.amazon.com/bedrock/pricing/)
586* [Perfis de inferência do Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-profiles-support.html)
587* [Burndown de token do Bedrock e cotas](https://docs.aws.amazon.com/bedrock/latest/userguide/quotas-token-burndown.html)
588* [Claude Code no Amazon Bedrock: Guia de Configuração Rápida](https://community.aws/content/2tXkZKrZzlrlu0KfH8gST5Dkppq/claude-code-on-amazon-bedrock-quick-setup-guide)
589* [Implementação de Monitoramento do Claude Code (Bedrock)](https://github.com/aws-solutions-library-samples/guidance-for-claude-code-with-amazon-bedrock/blob/main/assets/docs/MONITORING.md)