[agents] Use dedicated GOOGLE_AI_API_KEY for Gemini agent provider
Some checks failed
ci / test (push) Has been cancelled
ci / build-and-deploy (push) Has been cancelled

This commit is contained in:
2026-07-31 09:50:02 -04:00
parent 66fa555f63
commit 668570188a
4 changed files with 10 additions and 8 deletions

View File

@ -125,7 +125,7 @@ def test_opencode_agent_prompt_no_text_output():
def test_gemini_agent_prompt(settings):
settings.GOOGLE_API_KEY = "test-key"
settings.GOOGLE_AI_API_KEY = "test-key"
settings.LLM_MODEL = "gemini-2.5-flash"
fake = MagicMock()
fake.raise_for_status = MagicMock()
@ -147,13 +147,13 @@ def test_gemini_agent_prompt(settings):
def test_gemini_agent_prompt_missing_key(settings):
settings.GOOGLE_API_KEY = ""
with pytest.raises(ValueError, match="VROBBLER_GOOGLE_API_KEY is not set"):
settings.GOOGLE_AI_API_KEY = ""
with pytest.raises(ValueError, match="VROBBLER_GOOGLE_AI_API_KEY is not set"):
gemini_agent_prompt("hi")
def test_gemini_agent_prompt_bad_response(settings):
settings.GOOGLE_API_KEY = "test-key"
settings.GOOGLE_AI_API_KEY = "test-key"
fake = MagicMock()
fake.raise_for_status = MagicMock()
fake.json.return_value = {"unexpected": True}
@ -163,7 +163,7 @@ def test_gemini_agent_prompt_bad_response(settings):
def test_gemini_agent_prompt_with_history(settings):
settings.GOOGLE_API_KEY = "test-key"
settings.GOOGLE_AI_API_KEY = "test-key"
fake = MagicMock()
fake.raise_for_status = MagicMock()
fake.json.return_value = {"candidates": [{"content": {"parts": [{"text": "12"}]}}]}
@ -211,7 +211,7 @@ def test_agent_prompt_unknown_provider(settings):
def test_agent_prompt_defaults_to_configured_provider(settings):
settings.AGENT_PROVIDER = "gemini"
settings.GOOGLE_API_KEY = "test-key"
settings.GOOGLE_AI_API_KEY = "test-key"
with patch("agents.providers.gemini_agent_prompt", return_value={"text": "x"}) as m:
agent_prompt("hi")
m.assert_called_once_with("hi", history=None)

View File

@ -24,6 +24,7 @@ VROBBLER_COMICVINE_API_KEY="<key>"
VROBBLER_TODOIST_CLIENT_ID="<id>"
VROBBLER_TODOIST_CLIENT_SECRET="<key>"
VROBBLER_GOOGLE_API_KEY="<key>"
VROBBLER_GOOGLE_AI_API_KEY="<key>"
VROBBLER_LICHESS_API_KEY = "<key>"
VROBBLER_FASTCORK_API_KEY="fc_<key>"

View File

@ -45,9 +45,9 @@ def _gemini_contents(prompt: str, history: list[dict] | None) -> list[dict]:
def gemini_agent_prompt(prompt: str, history: list[dict] | None = None) -> dict:
api_key = settings.GOOGLE_API_KEY
api_key = settings.GOOGLE_AI_API_KEY
if not api_key:
raise ValueError("VROBBLER_GOOGLE_API_KEY is not set")
raise ValueError("VROBBLER_GOOGLE_AI_API_KEY is not set")
model = settings.LLM_MODEL
response = httpx.post(

View File

@ -80,6 +80,7 @@ TODOIST_CLIENT_ID = os.getenv("VROBBLER_TODOIST_CLIENT_ID", "")
TODOIST_CLIENT_SECRET = os.getenv("VROBBLER_TODOIST_CLIENT_SECRET", "")
GOOGLE_API_KEY = os.getenv("VROBBLER_GOOGLE_API_KEY", "")
GOOGLE_AI_API_KEY = os.getenv("VROBBLER_GOOGLE_AI_API_KEY", "")
LICHESS_API_KEY = os.getenv("VROBBLER_LICHESS_API_KEY", "")
AGENT_PROVIDER = os.getenv("VROBBLER_AGENT_PROVIDER", "gemini")