npm.io
5.2.7 • Published 5h agoCLI

juggernaut-bedrock

Licence
MIT
Version
5.2.7
Deps
0
Size
15 kB
Vulns
0
Weekly
0

juggernaut-bedrock

Claude Code → Amazon Bedrock in one command.

Juggernaut is a cross-platform CLI that wires Claude Code to Amazon Bedrock instead of Anthropic's direct API. Install Claude Code with Anthropic's installer, run one apply, then keep typing claude.

Built for developers shipping with GenAI today: IAM and SSO for teams, API keys for solo runs, and a doctor command when something's off.

CI Release npm Codacy Grade

Install

curl -fsSL https://claude.ai/install.sh | bash
npm install -g juggernaut-bedrock

Or try it without installing globally:

npx juggernaut-bedrock version

Works on macOS, Linux, Windows, and WSLx64 and arm64.

Upgrading

Older Juggernaut users can install v5 directly:

npm install -g juggernaut-bedrock@latest
juggernaut apply --auth=iam

Using a Bedrock API key from an old Windows v3 install? See the Windows v3 API-key bridge in the GitHub README. You do not need to install v4 first.

Quickstart

# 1. Install Claude Code and Juggernaut (above)

# 2. Configure - IAM/SSO (recommended) or interactive prompt
juggernaut apply --auth=iam

# 3. Restart/source your shell, then launch Claude Code
claude

Bedrock API key auth? Run juggernaut apply --auth=bedrock-api-key; credentials land in your OS keychain, not your shell history.

What it does

juggernaut apply --auth=iam

That one command:

  1. Writes Bedrock config to ~/.claude/settings.json (or project scope)
  2. Sets model IDs, region, effort level, permission mode, and CLAUDE_CODE_USE_BEDROCK=1 — only after credentials check out
  3. Installs a marked shell activation block with a claude function that delegates to juggernaut launch

No overwriting the real Claude Code binary. No copying API keys into env vars.

Why Bedrock?

Direct Anthropic API Amazon Bedrock
Billing Separate account Your AWS bill
Auth API keys IAM, SSO, roles
Region Anthropic infra Your chosen AWS region
Compliance Anthropic certs SOC, HIPAA, FedRAMP via AWS
Network Public internet VPC endpoints, PrivateLink

Auth modes

Mode Command Best for
IAM / SSO juggernaut apply --auth=iam Teams, enterprise, existing AWS identity
Bedrock API key juggernaut apply --auth=bedrock-api-key Solo devs, quick setup
Interactive juggernaut apply (no flags) First run — guided prompts
Preview juggernaut apply --dry-run See what would change, change nothing

Commands

Command What it does
apply Configure Bedrock + install shell activation
show Print your current Juggernaut config
doctor Diagnostics for settings, credentials, activation, Claude Code, and legacy v4.2.6 artifacts
uninstall Remove config and token; --full also removes shell activation
version Print installed version (--json for machines)

Default models

Tier Model Global inference profile
Primary Claude Sonnet 4.6 global.anthropic.claude-sonnet-4-6
Opus Claude Opus 4.8 global.anthropic.claude-opus-4-8
Fable alias Claude Fable 5 Configure with --fable-model=<bedrock-fable-model-id>
Fast Claude Haiku 4.5 global.anthropic.claude-haiku-4-5-20251001-v1:0

Juggernaut enables Claude Code's 1M context accounting for Opus and Sonnet by appending [1m] to the alias environment variables, and does the same for the configured Fable alias when it matches Claude Code's Fable ID. Claude Code strips the suffix before provider calls. Use --no-1m-context to opt out.

Fable is exposed as an opt-in Claude Code alias. Pass --fable-model with a model ID that is available in your Bedrock account and region; Juggernaut does not pin a default Fable ID until one is configured.

Override all aliases: juggernaut apply --auth=iam --model=global.anthropic.claude-sonnet-4-6 Override one tier: juggernaut apply --auth=iam --fable-model=<bedrock-fable-model-id> Set native fallback chain: juggernaut apply --auth=iam --fallback-model=global.anthropic.claude-opus-4-8,global.anthropic.claude-sonnet-4-6

Effort levels

Controls adaptive thinking depth. Valid values: low | medium | high | xhigh | max | auto. Fixed persisted levels (low | medium | high | xhigh) are written to native effortLevel; max and auto are env-only because Claude Code settings do not accept them as persisted effortLevel values. Ultracode is separate from effortLevel and CLAUDE_CODE_EFFORT_LEVEL, so Juggernaut does not expose it as --effort.

juggernaut apply --auth=iam --effort=max

Default: high. On Opus 4.8/4.7, effort level controls adaptive thinking depth — manual thinking mode is not supported.

Permission modes

Controls how Claude Code handles tool-use approvals:

Mode Behavior
default Prompts for each action
acceptEdits Auto-approves file edits
plan Propose only, no execution
auto Agentic safety classifier
bypassPermissions Skip all prompts (containers/VMs only)
juggernaut apply --auth=iam --mode=auto

Auto mode on Bedrock requires CLAUDE_CODE_ENABLE_AUTO_MODE=1 — Juggernaut sets this automatically.

Other options

--always-thinking       # enable extended thinking by default (alwaysThinkingEnabled)
--service-tier=flex     # Bedrock service tier: default | flex | priority
--fable-model=<id>      # override Claude Code Fable alias
--fallback-model=a,b    # write Claude Code native fallbackModel chain
--opusplan              # route /plan to Opus 4.8, execution to Sonnet 4.6
--mode=auto             # auto-approve safe tool calls with background checks
--mantle                # enable Mantle routing
--scope=project         # write to ./.claude/settings.json instead of ~/.claude/

Troubleshooting

Stuck? Start here:

juggernaut doctor

Common fixes: complete Anthropic model access in the Bedrock console (403), refresh SSO (aws sso login), or re-run juggernaut apply.

Documentation

Full docs, IAM policy, migration guide, and platform notes:

github.com/jpvelasco/juggernaut

License

MIT — see LICENSE.

Juggernaut is an independent tool, not affiliated with Anthropic or Amazon Web Services.

Keywords