← Back to PRs

#7418: feat (amazon-nova): add Amazon Nova 1P provider

by 5herlocked open 2026-02-02 20:01 View on GitHub →
docs cli commands agents
Closes #5785 --- Add support for Amazon Nova's direct 1P API (nova.amazon.com) as a model provider, with full onboarding wizard integration. ### What - **Provider:** Add `amazon-nova` provider with `nova-2-lite-v1` and `nova-2-pro-v1` models - **Onboarding:** Add `--auth-choice amazon-nova-api-key` and `--nova-api-key` CLI options - **Auto-detection:** Provider activates when `NOVA_API_KEY` env var is present - **Docs:** New provider documentation at `docs/providers/amazon-nova.md` ### Why Enables users to onboard with Amazon Nova's 1P API directly, separate from the existing Bedrock integration. Fits the current roadmap focus on improving the onboarding wizard UX. Nova's 1P API is entirely free up to certain RPM / TPM -- allowing free usage of OpenClaw. ### Usage ```bash # Onboarding openclaw onboard --auth-choice amazon-nova-api-key --nova-api-key "your-key" # Direct usage openclaw agent --model amazon-nova/nova-2-lite-v1 ``` Testing • [✓] pnpm build passes • [✓] pnpm test passes (208 tests) • [✓] Manual onboarding test verified AI Disclosure • [✓] AI-Assisted (Ona) • [✓] Fully tested locally • [✓] I understand what the code does <!-- greptile_comment --> <h2>Greptile Overview</h2> <h3>Greptile Summary</h3> This PR adds an `amazon-nova` model provider (Nova 1P API) with two default models and integrates it into the onboarding wizard (new `--auth-choice amazon-nova-api-key` and `--nova-api-key` flags). It also wires env-based auto-detection via `NOVA_API_KEY`, adds provider config application helpers, and includes provider documentation. The changes fit into the existing provider/onboarding architecture by: - Extending env/API-key resolution (`src/agents/model-auth.ts`) and implicit provider discovery (`src/agents/models-config.providers.ts`). - Adding a new auth-choice option and preferred-provider mapping for onboarding flows. - Adding config mutation helpers to insert the provider + models and set the default model ref. Key thing to double-check: the new provider id (`amazon-nova`) must match whatever `normalizeProviderId()` returns everywhere, otherwise env/profile auto-detection won’t activate the provider as expected. <h3>Confidence Score: 3/5</h3> - This PR is likely safe to merge, but there’s a plausible provider-id normalization mismatch that could break Nova auto-detection/onboarding expectations. - Most changes follow existing onboarding/provider patterns and include test coverage updates. The main risk is that provider identifiers are compared both raw and via `normalizeProviderId()`, and if `amazon-nova` normalizes differently than the keys used in env/profile lookups, `NOVA_API_KEY` and stored credentials may not be discovered, making the new provider appear non-functional. - src/agents/model-auth.ts; src/agents/models-config.providers.ts; src/commands/onboard-auth.credentials.ts <!-- greptile_other_comments_section --> <sub>(2/5) Greptile learns from your feedback when you react with thumbs up/down!</sub> <!-- /greptile_comment -->

Most Similar PRs