Skip to content

Gemini fails with API_KEY_INVALID while OpenAI works (fallback uses dummy_key) #2300

@luisApurata

Description

@luisApurata

Git provider

Github Cloud

System Info

Deployment: GitHub Actions (uses: qodo-ai/pr-agent@v0.33)

Model configured:
gemini/gemini-2.5-flash

Also tested:
o4-mini (OpenAI) → works correctly

API keys:

  • GEMINI_API_KEY (from GitHub Secrets)
  • OPENAI_KEY (only for testing, works fine)

Notes:

  • Gemini API key works correctly outside PR-Agent:
    • GET /v1beta/models works
    • generateContent works
  • Issue only happens inside PR-Agent

Bug details

I am using PR-Agent in GitHub Actions with:

config.model: gemini/gemini-2.5-flash
GEMINI_API_KEY from GitHub Secrets

The Gemini API key is valid:

  • listing models via API works
  • generateContent works via curl

However, inside PR-Agent:

  1. It tries gemini/gemini-2.5-flash
  2. Fails with:
    API_KEY_INVALID (generativelanguage.googleapis.com)
  3. Then falls back to o4-mini
  4. That fallback fails with:
    Incorrect API key provided: dummy_key

This happens for:

  • PR review
  • Code suggestions

Important observation:
Switching to OpenAI (o4-mini with OPENAI_KEY) works correctly.

So:

  • same workflow
  • same PR-Agent version
  • same environment

→ OpenAI works
→ Gemini fails

This suggests an issue in Gemini integration or auth handling inside PR-Agent / LiteLLM.

This behavior looks related to:

Expected behavior:

  • If GEMINI_API_KEY is valid, PR-Agent should use Gemini successfully
  • It should not fallback to OpenAI with dummy_key

Failed to generate prediction with gemini/gemini-2.5-flash
Generating prediction with o4-mini
Incorrect API key provided: dummy_key
Failed to generate prediction with any model of ['gemini/gemini-2.5-flash', 'o4-mini']

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions