How to Use Claude Code with AWS Bedrock
This guide shows how to run Claude Code using Anthropic models hosted on Amazon Bedrock, instead of Anthropic’s direct API.
Overview
Claude Code supports Amazon Bedrock as a backend. When enabled, it:
- Uses AWS credentials instead of an Anthropic API key
- Calls Bedrock’s InvokeModel / Inference Profiles
- Works with Claude Sonnet, Haiku, etc. available in your AWS Region
Prerequisites
1. AWS Account with Bedrock Enabled
- Ensure Amazon Bedrock is enabled in your AWS account
- Enable Anthropic models in the Bedrock console
👉 AWS Bedrock Console
https://console.aws.amazon.com/bedrock/
Important: The first time you use Anthropic models, AWS requires you to submit a use-case form in the Bedrock playground.
2. Install Claude Code
Follow the official Claude Code installation guide:
👉 Claude Code Docs
https://docs.anthropic.com/en/docs/claude-code
Verify installation:
claude --version
3. AWS Credentials
Claude Code uses the standard AWS SDK credential chain.
Supported options:
aws configure(access keys)- AWS SSO
- Environment variables
- EC2 / ECS / EKS IAM roles
Example: AWS CLI credentials
aws configure
Example: AWS SSO
aws sso login --profile my-profile
export AWS_PROFILE=my-profile
👉 AWS Credentials Documentation
https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html
Enable Bedrock in Claude Code
Set the following environment variables before running Claude Code.
Required
export CLAUDE_CODE_USE_BEDROCK=1
export AWS_REGION=us-east-1
⚠️
AWS_REGIONmust be set explicitly, even if your AWS config file has a default region.
Optional: Separate Region for Fast Model
export ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION=us-west-2
Choose Claude Models (Optional)
Claude Code provides defaults, but you can override them.
Example model overrides
export ANTHROPIC_MODEL="global.anthropic.claude-sonnet-4-5-20250929-v1:0"
export ANTHROPIC_SMALL_FAST_MODEL="us.anthropic.claude-haiku-4-5-20251001-v1:0"
Using an inference profile
You can also set an inference profile ARN:
export ANTHROPIC_MODEL="arn:aws:bedrock:us-east-1:123456789012:inference-profile/my-profile"
👉 Bedrock Inference Profiles
https://docs.aws.amazon.com/bedrock/latest/userguide/inference-profiles.html
Recommended Token Settings
Anthropic recommends these settings for Claude Code on Bedrock:
export CLAUDE_CODE_MAX_OUTPUT_TOKENS=4096
export MAX_THINKING_TOKENS=1024
To disable prompt caching:
export DISABLE_PROMPT_CACHING=1
Run Claude Code
Once everything is set:
claude
Authentication is handled entirely by AWS credentials.
/loginand/logoutcommands are not used when running via Bedrock.
IAM Permissions
Your IAM user or role needs (at minimum):
{
"Effect": "Allow",
"Action": [
"bedrock:InvokeModel",
"bedrock:InvokeModelWithResponseStream",
"bedrock:ListInferenceProfiles"
],
"Resource": "*"
}
👉 Bedrock IAM Permissions
https://docs.aws.amazon.com/bedrock/latest/userguide/security-iam.html
Troubleshooting
List available models / inference profiles
aws bedrock list-inference-profiles --region us-east-1
Common issues
| Issue | Fix |
|---|---|
| Model not found | Use a Region where the model is available |
| On-demand throughput error | Use an inference profile |
| Auth errors | Verify AWS credentials and IAM permissions |
/login doesn’t work | Expected when using Bedrock |
Useful Links
- Claude Code Documentation
https://docs.anthropic.com/en/docs/claude-code - Amazon Bedrock Documentation
https://docs.aws.amazon.com/bedrock/ - Anthropic Models on Bedrock
https://docs.aws.amazon.com/bedrock/latest/userguide/model-ids-arns.html
Summary
Using Claude Code with AWS Bedrock lets you:
- Avoid direct API keys
- Centralize billing and security in AWS
- Use IAM, SSO, and inference profiles
Once the environment variables are set, Claude Code works exactly the same—just backed by Bedrock.
Related Tutorials
How to Fix “‘adb’ is not recognized as an internal or external command”
If you’re seeing this error when trying to use Android Debug Bridge (ADB), it means your system can’t find the ADB executable. This comprehensive guide will walk you through understanding the problem and multiple solutions to fix it. Understanding the Problem ADB (Android Debug Bridge) is a command-line tool that’s part of the Android SDK […]
How to Enable ICMP (Ping) on Windows Public Firewall
This guide explains how to allow ICMP (Ping) traffic on a Windows machine using the Public firewall profile. This is useful for network troubleshooting, monitoring, and connectivity testing. ⚠️ Important: This only makes the Windows host pingable. It does not affect routers, public IPs on firewalls (e.g. MikroTik), or tunnel brokers like Hurricane Electric if […]
How to Run Claude Code with Gemini, OpenAI, or Anthropic Models
How to Run Claude Code with Gemini, OpenAI, or Anthropic Models via claude-code-proxy (Windows, macOS, Linux) The AI ecosystem is evolving fast, and many developers want to leverage Claude Code, Anthropic’s client, with different backends like Google Gemini, OpenAI, or Anthropic itself. claude-code-proxy is a lightweight proxy server that allows you to connect Claude Code […]