Clarify Gemini OAuth as Google Cloud
Rename the Gemini OAuth provider surface to Google Cloud Gemini so the OAuth provider list points users toward the required Google Cloud project setup. Align model-provider metadata, usage-plan copy, README wording, and static assertions while keeping the Gemini API OAuth mechanics unchanged.
Alessandro committed
Jun 23, 2026 at 17:30 UTC
5c5dc07f92d2fb3f3213f1011a777687d56db42f
5 files changed
+9
-8
plugins/_oauth/README.md
+2
-2
@@ -25,7 +25,7 @@ OAuth-backed model providers do not require users to enter API keys. Agent Zero
25
- Exchanges the GitHub access token for a Copilot API token.
26
- Stores credentials under `usr/plugins/_oauth/github_copilot/auth.json`.
27
28
-### Google Gemini API (`gemini_api_oauth`)
28
+### Google Cloud Gemini (`gemini_api_oauth`)
29
30
- Uses Google's OAuth authorization-code flow with PKCE.
31
- Requires a user-provided Google Cloud OAuth client with the Generative Language API enabled.
@@ -41,7 +41,7 @@ OAuth-backed model providers do not require users to enter API keys. Agent Zero
41
42
## Usage Plan Metadata
43
44
-The status API exposes `usage_plan_catalog` for subscription and billing context. It covers only connectable providers: Codex, GitHub Copilot, Google Gemini API, and xAI Grok.
44
+The status API exposes `usage_plan_catalog` for subscription and billing context. It covers only connectable providers: Codex, GitHub Copilot, Google Cloud Gemini, and xAI Grok.
45
46
The same status response also includes `oauth_accounts`, a compact summary used by the settings modal, welcome discovery card, and onboarding wizard. Keep that summary provider-registry driven so new OAuth providers appear consistently across those surfaces.
47
plugins/_oauth/conf/model_providers.yaml
+1
-1
@@ -16,7 +16,7 @@ chat:
16
kwargs:
17
api_base: "http://127.0.0.1/oauth/github-copilot/v1"
18
gemini_api_oauth:
19
- name: Google Gemini API Account
19
+ name: Google Cloud Gemini Account
20
litellm_provider: openai
21
api_key_mode: oauth
22
models_list:
plugins/_oauth/helpers/providers/gemini_api.py
+2
-2
@@ -69,8 +69,8 @@ class GeminiApiOAuthProvider:
69
base_path = cfg["proxy_base_path"]
70
return OAuthProviderMetadata(
71
provider_id=GEMINI_API_PROVIDER_ID,
72
- display_name="Google Gemini API",
73
- short_name="Gemini API",
72
+ display_name="Google Cloud Gemini",
73
+ short_name="Google Cloud",
74
model_provider_id=GEMINI_API_PROVIDER_ID,
75
icon="google",
76
auth_flow="browser_pkce",
plugins/_oauth/helpers/usage_plans.py
+2
-2
@@ -57,10 +57,10 @@ USAGE_PLAN_CATALOG: dict[str, dict[str, Any]] = {
57
},
58
GEMINI_API_PROVIDER_ID: {
59
"provider_id": GEMINI_API_PROVIDER_ID,
60
- "display_name": "Google Gemini API",
60
+ "display_name": "Google Cloud Gemini",
61
"implemented": True,
62
"plans": [
63
- {"id": "oauth_cloud_project", "label": "OAuth Cloud project", "billing": "Google Cloud project", "usage": "Official OAuth access using a user-provided Google Cloud OAuth client."},
63
+ {"id": "oauth_cloud_project", "label": "Google Cloud project", "billing": "Google Cloud project", "usage": "Official OAuth access using a user-provided Google Cloud OAuth client."},
64
{"id": "api_key", "label": "API key", "billing": "Gemini API pricing", "usage": "Standard Gemini API key access through Google AI Studio or Google Cloud."},
65
{"id": "vertex_ai", "label": "Vertex AI", "billing": "Google Cloud", "usage": "Enterprise Gemini API access through Vertex AI projects and IAM."},
66
],
tests/test_oauth_static.py
+2
-1
@@ -148,7 +148,8 @@ def test_usage_plan_catalog_stays_backend_only_on_oauth_settings_page():
148
149
assert "oauth-plan-catalog" not in config_html
150
assert "usagePlanEntries" in store_js
151
- assert "Google Gemini API" in plans_py
151
+ assert "Google Cloud Gemini" in plans_py
152
+ assert "Google Cloud project" in plans_py
153
assert "GEMINI_API_PROVIDER_ID" in plans_py
154
assert "Google Gemini / Antigravity" not in plans_py
155
assert "Claude Code" not in plans_py