Bug Description
When running video generation via the Claude Code plugin (or npx @the-focus-ai/nano-banana --video) without explicitly setting --video-model, the plugin defaults to veo-3.1-fast-generate-001. This model name returns HTTP 404 from the Gemini API:
Error generating video: ApiError: {"error":{"code":404,"message":"models/veo-3.1-fast-generate-001 is not found for API version v1beta, or is not supported for predictLongRunning. Call ModelService.ListModels to see the list of available models and their supported methods.","status":"NOT_FOUND"}}
The correct, currently-available preview model name is veo-3.1-fast-generate-preview (with -preview suffix, not -001).
Repro Steps
- Install the plugin in Claude Code:
/plugin marketplace add https://github.com/The-Focus-AI/claude-marketplace.git
/plugin install nano-banana@focus-marketplace
- Set `GEMINI_API_KEY` env var with a valid Gemini API key (billing-enabled project recommended).
- Run a video generation without explicit `--video-model`:
```bash
npx @the-focus-ai/nano-banana --video "A sunset over mountains" --output /tmp/test.mp4
```
- Observe 404 error from Gemini API.
Expected Behavior
The plugin should either:
- (a) Default to a working model name (`veo-3.1-fast-generate-preview`), or
- (b) Auto-resolve the latest `-preview` suffix dynamically via the `/v1beta/models` listing endpoint.
Workaround
Explicitly set `--video-model veo-3.1-fast-generate-preview` on every video call:
```bash
npx @the-focus-ai/nano-banana --video "..." --video-model veo-3.1-fast-generate-preview --output ...
```
Verified working as of 2026-05-19.
Environment
- Plugin version: `1.0.9` (auto-installed via npx)
- Claude Code: latest stable (as of May 2026)
- Node.js: v25.8.0
- OS: macOS 14.x
- Gemini API: `v1beta`
Reference
The `--list-models` command correctly lists the working model:
```
Video Generation (Veo):
veo-2.0-generate-001
veo-3.0-fast-generate-001
veo-3.0-generate-001
veo-3.1-fast-generate-preview ← works
veo-3.1-generate-preview
veo-3.1-lite-generate-preview
```
The `*-fast-generate-001` naming pattern only exists for Veo 2 and Veo 3 (non-3.1) — Veo 3.1 has switched to a `-preview` suffix during the preview phase.
Related
This is similar to the deprecation pattern Google applied to `gemini-3-pro-preview` (discontinued 2026-03-26, replaced by `gemini-3.1-pro-preview`). Plugin defaults should track upstream renames more closely or use the dynamic model-listing approach.
Thanks for the plugin — works great once the model-name workaround is in place!
Bug Description
When running video generation via the Claude Code plugin (or
npx @the-focus-ai/nano-banana --video) without explicitly setting--video-model, the plugin defaults toveo-3.1-fast-generate-001. This model name returns HTTP 404 from the Gemini API:The correct, currently-available preview model name is
veo-3.1-fast-generate-preview(with-previewsuffix, not-001).Repro Steps
```bash
npx @the-focus-ai/nano-banana --video "A sunset over mountains" --output /tmp/test.mp4
```
Expected Behavior
The plugin should either:
Workaround
Explicitly set `--video-model veo-3.1-fast-generate-preview` on every video call:
```bash
npx @the-focus-ai/nano-banana --video "..." --video-model veo-3.1-fast-generate-preview --output ...
```
Verified working as of 2026-05-19.
Environment
Reference
The `--list-models` command correctly lists the working model:
```
Video Generation (Veo):
veo-2.0-generate-001
veo-3.0-fast-generate-001
veo-3.0-generate-001
veo-3.1-fast-generate-preview ← works
veo-3.1-generate-preview
veo-3.1-lite-generate-preview
```
The `*-fast-generate-001` naming pattern only exists for Veo 2 and Veo 3 (non-3.1) — Veo 3.1 has switched to a `-preview` suffix during the preview phase.
Related
This is similar to the deprecation pattern Google applied to `gemini-3-pro-preview` (discontinued 2026-03-26, replaced by `gemini-3.1-pro-preview`). Plugin defaults should track upstream renames more closely or use the dynamic model-listing approach.
Thanks for the plugin — works great once the model-name workaround is in place!