Pre-submission checklist
Model used
Other (specify in description)
Exact error message
403 Forbidden
{
"message": "You do not have a valid license of this product. Please contact your administrator to request a license. If you are not an enterprise user and believe you are receiving this message as an error, please try using the latest version and logging in again. (#3501)",
"status": "PERMISSION_DENIED",
"reason": "SUBSCRIPTION_REQUIRED",
"domain": "cloudaicompanion.googleapis.com",
"error_number": "1001"
}
Bug description
antigravity-gemini-3.8-flash consistently fails with 403 PERMISSION_DENIED / SUBSCRIPTION_REQUIRED (#3501).
The affected Google consumer account is reported by the plugin as active and has 100% Gemini quota available.
However, when the request is sent through opencode-antigravity-auth, the Antigravity backend rejects the generation request.
An important detail is that the same Google account works correctly when using Google Antigravity directly.
The failure therefore appears to be specific to the request path used by opencode-antigravity-auth, rather than a simple account authentication or quota exhaustion issue.
The plugin selects the account successfully and the request reaches:
https://cloudcode-pa.googleapis.com/v1internal:streamGenerateContent?alt=sse
The OpenCode model is:
antigravity-gemini-3.8-flash
while the underlying request contains:
The account's quota status is:
Gemini: 100%
non-Gemini: 100%
status: active
Steps to reproduce
- Configure a Google consumer account with
opencode-antigravity-auth.
- Verify that the account is active:
npx -y @cortexkit/opencode-antigravity-auth list
- Refresh the quota:
npx -y @cortexkit/opencode-antigravity-auth quota --refresh
- Configure/use:
antigravity-gemini-3.8-flash
- Send a prompt through OpenCode.
- The request reaches the Antigravity backend.
- The backend responds with:
403 PERMISSION_DENIED
SUBSCRIPTION_REQUIRED (#3501)
Did this ever work?
Worked before, now broken (regression)
Number of Google accounts configured
4+
Reproducibility
Always (100%)
Plugin version
2.2.1
OpenCode version
1.18.29
Operating System
Linux
Node.js version
v24.11.1
Environment type
Other (specify in additional context)
MCP servers installed
Not believed to be relevant to the issue.
Debug logs (REQUIRED)
Relevant redacted debug output:
[ModelFamily] url=https://generativelanguage.googleapis.com/v1beta/models/antigravity-gemini-3.8-flash:streamGenerateContent?alt=sse model=antigravity-gemini-3.8-flash family=gemini
[Account] Selected: <redacted> family=gemini
[Antigravity Debug] POST https://cloudcode-pa.googleapis.com/v1internal:streamGenerateContent?alt=sse
[Antigravity Debug] model: gemini-3.8-flash-preview
Response 403 Forbidden
{
"message": "You do not have a valid license of this product. Please contact your administrator to request a license. If you are not an enterprise user and believe you are receiving this message as an error, please try using the latest version and logging in again. (#3501)",
"status": "PERMISSION_DENIED",
"reason": "SUBSCRIPTION_REQUIRED",
"domain": "cloudaicompanion.googleapis.com",
"error_number": "1001"
}
Configuration (optional)
Compliance
Additional context
The account reports:
status: active
Gemini quota: 100%
non-Gemini quota: 100%
The same Google consumer account works successfully in Google Antigravity itself.
This makes me suspect a possible difference between:
- the entitlement checked by the Antigravity backend;
- the request/client metadata generated by
opencode-antigravity-auth;
- the managed Cloud Code Assist project;
- the model mapping from
antigravity-gemini-3.8-flash to gemini-3.8-flash-preview;
- or the handling of
403 SUBSCRIPTION_REQUIRED (#3501) by the account pool.
Could you confirm whether this response is expected for consumer accounts using Gemini 3.8, or whether the plugin should handle this response as an account/model eligibility failure and rotate to another account?
All sensitive account information has been intentionally redacted.
Pre-submission checklist
Model used
Other (specify in description)
Exact error message
Bug description
antigravity-gemini-3.8-flashconsistently fails with403 PERMISSION_DENIED / SUBSCRIPTION_REQUIRED (#3501).The affected Google consumer account is reported by the plugin as active and has 100% Gemini quota available.
However, when the request is sent through
opencode-antigravity-auth, the Antigravity backend rejects the generation request.An important detail is that the same Google account works correctly when using Google Antigravity directly.
The failure therefore appears to be specific to the request path used by
opencode-antigravity-auth, rather than a simple account authentication or quota exhaustion issue.The plugin selects the account successfully and the request reaches:
The OpenCode model is:
while the underlying request contains:
The account's quota status is:
Steps to reproduce
opencode-antigravity-auth.Did this ever work?
Worked before, now broken (regression)
Number of Google accounts configured
4+
Reproducibility
Always (100%)
Plugin version
2.2.1
OpenCode version
1.18.29
Operating System
Linux
Node.js version
v24.11.1
Environment type
Other (specify in additional context)
MCP servers installed
Not believed to be relevant to the issue.
Debug logs (REQUIRED)
Configuration (optional)
Compliance
Additional context
The account reports:
The same Google consumer account works successfully in Google Antigravity itself.
This makes me suspect a possible difference between:
opencode-antigravity-auth;antigravity-gemini-3.8-flashtogemini-3.8-flash-preview;403 SUBSCRIPTION_REQUIRED (#3501)by the account pool.Could you confirm whether this response is expected for consumer accounts using Gemini 3.8, or whether the plugin should handle this response as an account/model eligibility failure and rotate to another account?
All sensitive account information has been intentionally redacted.