opencode-antigravity-auth 1.1.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +84 -17
- package/dist/src/plugin/accounts.d.ts.map +1 -1
- package/dist/src/plugin/accounts.js +8 -1
- package/dist/src/plugin/accounts.js.map +1 -1
- package/dist/src/plugin/cli.d.ts +10 -0
- package/dist/src/plugin/cli.d.ts.map +1 -1
- package/dist/src/plugin/cli.js +29 -0
- package/dist/src/plugin/cli.js.map +1 -1
- package/dist/src/plugin/storage.d.ts +1 -0
- package/dist/src/plugin/storage.d.ts.map +1 -1
- package/dist/src/plugin/storage.js +12 -0
- package/dist/src/plugin/storage.js.map +1 -1
- package/dist/src/plugin/types.d.ts +6 -14
- package/dist/src/plugin/types.d.ts.map +1 -1
- package/dist/src/plugin.d.ts.map +1 -1
- package/dist/src/plugin.js +257 -39
- package/dist/src/plugin.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -15,28 +15,51 @@ Enable Opencode to authenticate against **Antigravity** (Google's IDE) via OAuth
|
|
|
15
15
|
|
|
16
16
|
## Quick start
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
### Step 1: Create your config file
|
|
19
|
+
|
|
20
|
+
If this is your first time using Opencode, create the config directory first:
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
mkdir -p ~/.config/opencode
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Then create or edit the config file at `~/.config/opencode/opencode.json`:
|
|
19
27
|
|
|
20
28
|
```json
|
|
21
29
|
{
|
|
22
|
-
"plugin": ["opencode-antigravity-auth@1.1.
|
|
30
|
+
"plugin": ["opencode-antigravity-auth@1.1.1"]
|
|
23
31
|
}
|
|
24
32
|
```
|
|
25
33
|
|
|
26
|
-
|
|
34
|
+
> **Note:** You can also use a project-local `.opencode.json` file in your project root instead. The global config at `~/.config/opencode/opencode.json` applies to all projects.
|
|
27
35
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
36
|
+
### Step 2: Authenticate
|
|
37
|
+
|
|
38
|
+
Run the authentication command:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
opencode auth login
|
|
42
|
+
```
|
|
33
43
|
|
|
34
|
-
|
|
44
|
+
1. Select **Google** as the provider
|
|
45
|
+
2. Select **OAuth with Google (Antigravity)**
|
|
46
|
+
3. **Project ID prompt:** You'll see this prompt:
|
|
47
|
+
```
|
|
48
|
+
Project ID (leave blank to use your default project):
|
|
49
|
+
```
|
|
50
|
+
**Just press Enter to skip this** — it's optional and only needed if you want to use a specific Google Cloud project. Most users can leave it blank.
|
|
51
|
+
4. Sign in via the browser and return to Opencode. If the browser doesn't open, copy the displayed URL manually.
|
|
52
|
+
5. After signing in, you can add more Google accounts (up to 10) for load balancing, or press Enter to finish.
|
|
53
|
+
|
|
54
|
+
> **Alternative:** For a quick single-account setup without project ID options, open `opencode` and use the `/connect` command instead.
|
|
55
|
+
|
|
56
|
+
### Step 3: Add the models you want to use
|
|
57
|
+
|
|
58
|
+
Open the **same config file** you created in Step 1 (`~/.config/opencode/opencode.json`) and add the models under `provider.google.models`:
|
|
35
59
|
|
|
36
|
-
Add Antigravity models under the `provider.google.models` section of your config:
|
|
37
60
|
```json
|
|
38
61
|
{
|
|
39
|
-
"plugin": ["opencode-antigravity-auth"],
|
|
62
|
+
"plugin": ["opencode-antigravity-auth@1.1.1"],
|
|
40
63
|
"provider": {
|
|
41
64
|
"google": {
|
|
42
65
|
"models": {
|
|
@@ -88,19 +111,63 @@ Add Antigravity models under the `provider.google.models` section of your config
|
|
|
88
111
|
}
|
|
89
112
|
```
|
|
90
113
|
|
|
91
|
-
|
|
114
|
+
> **Tip:** You only need to add the models you plan to use. The example above includes all available models, but you can remove any you don't need.
|
|
115
|
+
|
|
116
|
+
### Step 4: Use a model
|
|
92
117
|
|
|
93
118
|
```bash
|
|
94
119
|
opencode run "Hello world" --model=google/gemini-3-pro-high
|
|
95
120
|
```
|
|
96
121
|
|
|
122
|
+
Or start the interactive TUI and select a model from the model picker:
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
opencode
|
|
126
|
+
```
|
|
127
|
+
|
|
97
128
|
## Multi-account load balancing
|
|
98
129
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
-
|
|
130
|
+
The plugin supports multiple Google accounts to maximize rate limits and provide automatic failover.
|
|
131
|
+
|
|
132
|
+
### How it works
|
|
133
|
+
|
|
134
|
+
- **Round-robin selection:** Each request uses the next account in the pool
|
|
135
|
+
- **Automatic failover:** On HTTP `429` (rate limit), the plugin automatically switches to the next available account
|
|
136
|
+
- **Smart cooldown:** Rate-limited accounts are temporarily cooled down and automatically become available again after the cooldown expires
|
|
137
|
+
- **Single-account retry:** If you only have one account, the plugin waits for the rate limit to reset and retries automatically
|
|
138
|
+
- **Toast notifications:** The TUI shows which account is being used and when switching occurs
|
|
139
|
+
|
|
140
|
+
### Adding accounts
|
|
141
|
+
|
|
142
|
+
**CLI flow (`opencode auth login`):**
|
|
143
|
+
|
|
144
|
+
When you run `opencode auth login` and already have accounts saved, you'll be prompted:
|
|
145
|
+
|
|
146
|
+
```
|
|
147
|
+
2 account(s) saved:
|
|
148
|
+
1. user1@gmail.com
|
|
149
|
+
2. user2@gmail.com
|
|
150
|
+
|
|
151
|
+
(a)dd new account(s) or (f)resh start? [a/f]:
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
- Press `a` to add more accounts to your existing pool
|
|
155
|
+
- Press `f` to clear all existing accounts and start fresh
|
|
156
|
+
|
|
157
|
+
**TUI flow (`/connect`):**
|
|
158
|
+
|
|
159
|
+
The `/connect` command in the TUI adds accounts non-destructively — it will never clear your existing accounts. To start fresh via TUI, run `opencode auth logout` first, then `/connect`.
|
|
160
|
+
|
|
161
|
+
### Account storage
|
|
162
|
+
|
|
163
|
+
- Account pool is stored in `~/.config/opencode/antigravity-accounts.json` (or `%APPDATA%\opencode\antigravity-accounts.json` on Windows)
|
|
164
|
+
- This file contains OAuth refresh tokens; **treat it like a password** and don't share or commit it
|
|
165
|
+
- The plugin automatically syncs with OpenCode's auth state — if you log out via OpenCode, stale account storage is cleared automatically
|
|
166
|
+
|
|
167
|
+
### Automatic account recovery
|
|
168
|
+
|
|
169
|
+
- If Google revokes a refresh token (`invalid_grant`), that account is automatically removed from the pool
|
|
170
|
+
- Rerun `opencode auth login` to re-add the account
|
|
104
171
|
|
|
105
172
|
## Debugging
|
|
106
173
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../../src/plugin/accounts.ts"],"names":[],"mappings":"AACA,OAAO,EAA8B,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAC5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE9D,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAaD;;;;GAIG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAwB;IACxC,OAAO,CAAC,MAAM,CAAK;WAEN,YAAY,CAAC,YAAY,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC;gBAKvE,YAAY,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI;IAuE3E,eAAe,IAAI,MAAM;IAIzB,mBAAmB,IAAI,cAAc,EAAE;IAIvC;;OAEG;IACH,QAAQ,IAAI,cAAc,GAAG,IAAI;IAiCjC,eAAe,CAAC,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAMpE,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO;IAwB/C,cAAc,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,GAAG,IAAI;IAOrE,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,gBAAgB;IASxD,gBAAgB,IAAI,MAAM;
|
|
1
|
+
{"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../../src/plugin/accounts.ts"],"names":[],"mappings":"AACA,OAAO,EAA8B,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAC5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE9D,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAaD;;;;GAIG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAwB;IACxC,OAAO,CAAC,MAAM,CAAK;WAEN,YAAY,CAAC,YAAY,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC;gBAKvE,YAAY,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI;IAuE3E,eAAe,IAAI,MAAM;IAIzB,mBAAmB,IAAI,cAAc,EAAE;IAIvC;;OAEG;IACH,QAAQ,IAAI,cAAc,GAAG,IAAI;IAiCjC,eAAe,CAAC,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAMpE,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO;IAwB/C,cAAc,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,GAAG,IAAI;IAOrE,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,gBAAgB;IASxD,gBAAgB,IAAI,MAAM;IAuBpB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAkBlC"}
|
|
@@ -160,7 +160,14 @@ export class AccountManager {
|
|
|
160
160
|
}
|
|
161
161
|
getMinWaitTimeMs() {
|
|
162
162
|
const now = nowMs();
|
|
163
|
-
|
|
163
|
+
// Clear expired cooldowns first (same logic as pickNext)
|
|
164
|
+
for (const acc of this.accounts) {
|
|
165
|
+
if (acc.isRateLimited && acc.rateLimitResetTime > 0 && now > acc.rateLimitResetTime) {
|
|
166
|
+
acc.isRateLimited = false;
|
|
167
|
+
acc.rateLimitResetTime = 0;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
const available = this.accounts.some((a) => !a.isRateLimited);
|
|
164
171
|
if (available) {
|
|
165
172
|
return 0;
|
|
166
173
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../../src/plugin/accounts.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../../src/plugin/accounts.ts"],"names":[],"mappings":"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"}
|
package/dist/src/plugin/cli.d.ts
CHANGED
|
@@ -6,4 +6,14 @@ export declare function promptProjectId(): Promise<string>;
|
|
|
6
6
|
* Prompts user whether they want to add another OAuth account.
|
|
7
7
|
*/
|
|
8
8
|
export declare function promptAddAnotherAccount(currentCount: number): Promise<boolean>;
|
|
9
|
+
export type LoginMode = "add" | "fresh";
|
|
10
|
+
export interface ExistingAccountInfo {
|
|
11
|
+
email?: string;
|
|
12
|
+
index: number;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Prompts user to choose login mode when accounts already exist.
|
|
16
|
+
* Returns "add" to append new accounts, "fresh" to clear and start over.
|
|
17
|
+
*/
|
|
18
|
+
export declare function promptLoginMode(existingAccounts: ExistingAccountInfo[]): Promise<LoginMode>;
|
|
9
19
|
//# sourceMappingURL=cli.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/plugin/cli.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAQvD;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CASpF"}
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/plugin/cli.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAQvD;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CASpF;AAED,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,OAAO,CAAC;AAExC,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CA0BjG"}
|
package/dist/src/plugin/cli.js
CHANGED
|
@@ -27,4 +27,33 @@ export async function promptAddAnotherAccount(currentCount) {
|
|
|
27
27
|
rl.close();
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* Prompts user to choose login mode when accounts already exist.
|
|
32
|
+
* Returns "add" to append new accounts, "fresh" to clear and start over.
|
|
33
|
+
*/
|
|
34
|
+
export async function promptLoginMode(existingAccounts) {
|
|
35
|
+
const rl = createInterface({ input, output });
|
|
36
|
+
try {
|
|
37
|
+
console.log(`\n${existingAccounts.length} account(s) saved:`);
|
|
38
|
+
for (const acc of existingAccounts) {
|
|
39
|
+
const label = acc.email || `Account ${acc.index + 1}`;
|
|
40
|
+
console.log(` ${acc.index + 1}. ${label}`);
|
|
41
|
+
}
|
|
42
|
+
console.log("");
|
|
43
|
+
while (true) {
|
|
44
|
+
const answer = await rl.question("(a)dd new account(s) or (f)resh start? [a/f]: ");
|
|
45
|
+
const normalized = answer.trim().toLowerCase();
|
|
46
|
+
if (normalized === "a" || normalized === "add") {
|
|
47
|
+
return "add";
|
|
48
|
+
}
|
|
49
|
+
if (normalized === "f" || normalized === "fresh") {
|
|
50
|
+
return "fresh";
|
|
51
|
+
}
|
|
52
|
+
console.log("Please enter 'a' to add accounts or 'f' to start fresh.");
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
finally {
|
|
56
|
+
rl.close();
|
|
57
|
+
}
|
|
58
|
+
}
|
|
30
59
|
//# sourceMappingURL=cli.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/plugin/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AAEhE;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC,CAAC;QAC3F,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,YAAoB;IAChE,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,YAAY,iBAAiB,CAAC,CAAC;QACzF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC/C,OAAO,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,KAAK,CAAC;IACpD,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/plugin/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AAEhE;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC,CAAC;QAC3F,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,YAAoB;IAChE,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,YAAY,iBAAiB,CAAC,CAAC;QACzF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC/C,OAAO,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,KAAK,CAAC;IACpD,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AASD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,gBAAuC;IAC3E,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9C,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,KAAK,gBAAgB,CAAC,MAAM,oBAAoB,CAAC,CAAC;QAC9D,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,WAAW,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,KAAK,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC,CAAC;YACnF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAE/C,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;gBAC/C,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;gBACjD,OAAO,OAAO,CAAC;YACjB,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC"}
|
|
@@ -21,4 +21,5 @@ export interface AccountStorage {
|
|
|
21
21
|
export declare function getStoragePath(): string;
|
|
22
22
|
export declare function loadAccounts(): Promise<AccountStorage | null>;
|
|
23
23
|
export declare function saveAccounts(storage: AccountStorage): Promise<void>;
|
|
24
|
+
export declare function clearAccounts(): Promise<void>;
|
|
24
25
|
//# sourceMappingURL=storage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/plugin/storage.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,CAAC,CAAC;IACX,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;CACrB;AAYD,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CA0BnE;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAMzE"}
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/plugin/storage.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,CAAC,CAAC;IACX,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;CACrB;AAYD,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CA0BnE;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAMzE;AAED,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAUnD"}
|
|
@@ -44,4 +44,16 @@ export async function saveAccounts(storage) {
|
|
|
44
44
|
const content = JSON.stringify(storage, null, 2);
|
|
45
45
|
await fs.writeFile(path, content, "utf-8");
|
|
46
46
|
}
|
|
47
|
+
export async function clearAccounts() {
|
|
48
|
+
try {
|
|
49
|
+
const path = getStoragePath();
|
|
50
|
+
await fs.unlink(path);
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
const code = error.code;
|
|
54
|
+
if (code !== "ENOENT") {
|
|
55
|
+
console.error("[opencode-antigravity-auth] Failed to clear account storage:", error);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
47
59
|
//# sourceMappingURL=storage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/plugin/storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAwBlC,SAAS,YAAY;IACnB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAClC,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,UAAU,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;IAC5E,OAAO,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,OAAO,IAAI,CAAC,YAAY,EAAE,EAAE,2BAA2B,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAA4B,CAAC;QAE9D,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;YACrF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAwB,EAAE;gBAC3D,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAQ,CAAqB,CAAC,YAAY,KAAK,QAAQ,CAAC;YACjG,CAAC,CAAC;YACF,WAAW,EAAE,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;SACpH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,GAAI,KAA+B,CAAC,IAAI,CAAC;QACnD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,6DAA6D,EAAE,KAAK,CAAC,CAAC;QACpF,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAAuB;IACxD,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;IAC9B,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEnD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACjD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC7C,CAAC"}
|
|
1
|
+
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/plugin/storage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { PluginInput } from "@opencode-ai/plugin";
|
|
1
2
|
import type { AntigravityTokenExchangeResult } from "../antigravity/oauth";
|
|
2
3
|
export interface OAuthAuthDetails {
|
|
3
4
|
type: "oauth";
|
|
@@ -25,6 +26,10 @@ export interface LoaderResult {
|
|
|
25
26
|
apiKey: string;
|
|
26
27
|
fetch(input: RequestInfo, init?: RequestInit): Promise<Response>;
|
|
27
28
|
}
|
|
29
|
+
export type PluginClient = PluginInput["client"];
|
|
30
|
+
export interface PluginContext {
|
|
31
|
+
client: PluginClient;
|
|
32
|
+
}
|
|
28
33
|
export type AuthPrompt = {
|
|
29
34
|
type: "text";
|
|
30
35
|
key: string;
|
|
@@ -60,23 +65,10 @@ export interface AuthMethod {
|
|
|
60
65
|
prompts?: AuthPrompt[];
|
|
61
66
|
authorize?: (inputs?: Record<string, string>) => Promise<OAuthAuthorizationResult>;
|
|
62
67
|
}
|
|
63
|
-
export interface PluginClient {
|
|
64
|
-
auth: {
|
|
65
|
-
set(input: {
|
|
66
|
-
path: {
|
|
67
|
-
id: string;
|
|
68
|
-
};
|
|
69
|
-
body: OAuthAuthDetails;
|
|
70
|
-
}): Promise<void>;
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
export interface PluginContext {
|
|
74
|
-
client: PluginClient;
|
|
75
|
-
}
|
|
76
68
|
export interface PluginResult {
|
|
77
69
|
auth: {
|
|
78
70
|
provider: string;
|
|
79
|
-
loader: (getAuth: GetAuth, provider: Provider) => Promise<LoaderResult |
|
|
71
|
+
loader: (getAuth: GetAuth, provider: Provider) => Promise<LoaderResult | Record<string, unknown>>;
|
|
80
72
|
methods: AuthMethod[];
|
|
81
73
|
};
|
|
82
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/plugin/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AAE3E,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,MAAM,WAAW,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;AAEjE,MAAM,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;AAEjD,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE;QACL,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAClE;AAED,MAAM,MAAM,UAAU,GAClB;IACE,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACjD,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,OAAO,CAAC;CACzD,GACD;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChE,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,OAAO,CAAC;CACzD,CAAC;AAEN,MAAM,MAAM,wBAAwB,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAAG,CAC3E;IACE,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,OAAO,CAAC,8BAA8B,CAAC,CAAC;CACzD,GACD;IACE,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,8BAA8B,CAAC,CAAC;CACrE,CACJ,CAAC;AAEF,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,GAAG,KAAK,CAAC;IACtB,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,OAAO,CAAC,wBAAwB,CAAC,CAAC;CACpF;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE;QACJ,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/plugin/types.ts"],"names":[],"mappings":"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"}
|
package/dist/src/plugin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/plugin.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAGV,aAAa,EACb,YAAY,EAGb,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/plugin.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAGV,aAAa,EACb,YAAY,EAGb,MAAM,gBAAgB,CAAC;AAoNxB;;GAEG;AACH,eAAO,MAAM,uBAAuB,GAAI,YAAY,MAAM,MACxD,YAAY,aAAa,KACxB,OAAO,CAAC,YAAY,CAisBrB,CAAC;AAEH,eAAO,MAAM,yBAAyB,eApsBxB,aAAa,KACxB,OAAO,CAAC,YAAY,CAmsBkE,CAAC;AAC1F,eAAO,MAAM,iBAAiB,eArsBhB,aAAa,KACxB,OAAO,CAAC,YAAY,CAosBmC,CAAC"}
|
package/dist/src/plugin.js
CHANGED
|
@@ -2,13 +2,13 @@ import { exec } from "node:child_process";
|
|
|
2
2
|
import { ANTIGRAVITY_ENDPOINT_FALLBACKS, ANTIGRAVITY_PROVIDER_ID } from "./constants";
|
|
3
3
|
import { authorizeAntigravity, exchangeAntigravity } from "./antigravity/oauth";
|
|
4
4
|
import { accessTokenExpired, isOAuthAuth, parseRefreshParts } from "./plugin/auth";
|
|
5
|
-
import { promptAddAnotherAccount, promptProjectId } from "./plugin/cli";
|
|
5
|
+
import { promptAddAnotherAccount, promptLoginMode, promptProjectId } from "./plugin/cli";
|
|
6
6
|
import { ensureProjectContext } from "./plugin/project";
|
|
7
7
|
import { startAntigravityDebugRequest } from "./plugin/debug";
|
|
8
8
|
import { isGenerativeLanguageRequest, prepareAntigravityRequest, transformAntigravityResponse, } from "./plugin/request";
|
|
9
9
|
import { AntigravityTokenRefreshError, refreshAccessToken } from "./plugin/token";
|
|
10
10
|
import { startOAuthListener } from "./plugin/server";
|
|
11
|
-
import { loadAccounts, saveAccounts } from "./plugin/storage";
|
|
11
|
+
import { clearAccounts, loadAccounts, saveAccounts } from "./plugin/storage";
|
|
12
12
|
import { AccountManager } from "./plugin/accounts";
|
|
13
13
|
const MAX_OAUTH_ACCOUNTS = 10;
|
|
14
14
|
async function openBrowser(url) {
|
|
@@ -84,12 +84,14 @@ function clampInt(value, min, max) {
|
|
|
84
84
|
}
|
|
85
85
|
return Math.min(max, Math.max(min, Math.floor(value)));
|
|
86
86
|
}
|
|
87
|
-
async function persistAccountPool(results) {
|
|
87
|
+
async function persistAccountPool(results, replaceAll = false) {
|
|
88
88
|
if (results.length === 0) {
|
|
89
89
|
return;
|
|
90
90
|
}
|
|
91
91
|
const now = Date.now();
|
|
92
|
-
|
|
92
|
+
// If replaceAll is true (fresh login), start with empty accounts
|
|
93
|
+
// Otherwise, load existing accounts and merge
|
|
94
|
+
const stored = replaceAll ? null : await loadAccounts();
|
|
93
95
|
const accounts = stored?.accounts ? [...stored.accounts] : [];
|
|
94
96
|
const indexByRefreshToken = new Map();
|
|
95
97
|
for (let i = 0; i < accounts.length; i++) {
|
|
@@ -133,7 +135,10 @@ async function persistAccountPool(results) {
|
|
|
133
135
|
if (accounts.length === 0) {
|
|
134
136
|
return;
|
|
135
137
|
}
|
|
136
|
-
|
|
138
|
+
// For fresh logins, always start at index 0
|
|
139
|
+
const activeIndex = replaceAll
|
|
140
|
+
? 0
|
|
141
|
+
: (typeof stored?.activeIndex === "number" && Number.isFinite(stored.activeIndex) ? stored.activeIndex : 0);
|
|
137
142
|
await saveAccounts({
|
|
138
143
|
version: 1,
|
|
139
144
|
accounts,
|
|
@@ -157,6 +162,30 @@ function retryAfterMsFromResponse(response) {
|
|
|
157
162
|
}
|
|
158
163
|
return 60_000;
|
|
159
164
|
}
|
|
165
|
+
/**
|
|
166
|
+
* Sleep for a given number of milliseconds, respecting an abort signal.
|
|
167
|
+
*/
|
|
168
|
+
function sleep(ms, signal) {
|
|
169
|
+
return new Promise((resolve, reject) => {
|
|
170
|
+
if (signal?.aborted) {
|
|
171
|
+
reject(signal.reason instanceof Error ? signal.reason : new Error("Aborted"));
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
const timeout = setTimeout(() => {
|
|
175
|
+
cleanup();
|
|
176
|
+
resolve();
|
|
177
|
+
}, ms);
|
|
178
|
+
const onAbort = () => {
|
|
179
|
+
cleanup();
|
|
180
|
+
reject(signal?.reason instanceof Error ? signal.reason : new Error("Aborted"));
|
|
181
|
+
};
|
|
182
|
+
const cleanup = () => {
|
|
183
|
+
clearTimeout(timeout);
|
|
184
|
+
signal?.removeEventListener("abort", onAbort);
|
|
185
|
+
};
|
|
186
|
+
signal?.addEventListener("abort", onAbort, { once: true });
|
|
187
|
+
});
|
|
188
|
+
}
|
|
160
189
|
/**
|
|
161
190
|
* Creates an Antigravity OAuth plugin for a specific provider ID.
|
|
162
191
|
*/
|
|
@@ -164,9 +193,36 @@ export const createAntigravityPlugin = (providerId) => async ({ client }) => ({
|
|
|
164
193
|
auth: {
|
|
165
194
|
provider: providerId,
|
|
166
195
|
loader: async (getAuth, provider) => {
|
|
196
|
+
// Track which account was used in the previous request for detecting switches
|
|
197
|
+
let previousAccountIndex = null;
|
|
167
198
|
const auth = await getAuth();
|
|
199
|
+
// If OpenCode has no valid OAuth auth, clear any stale account storage
|
|
168
200
|
if (!isOAuthAuth(auth)) {
|
|
169
|
-
|
|
201
|
+
try {
|
|
202
|
+
await clearAccounts();
|
|
203
|
+
}
|
|
204
|
+
catch {
|
|
205
|
+
// ignore
|
|
206
|
+
}
|
|
207
|
+
return {};
|
|
208
|
+
}
|
|
209
|
+
// Validate that stored accounts are in sync with OpenCode's auth
|
|
210
|
+
// If OpenCode's refresh token doesn't match any stored account, clear stale storage
|
|
211
|
+
const authParts = parseRefreshParts(auth.refresh);
|
|
212
|
+
const storedAccounts = await loadAccounts();
|
|
213
|
+
if (storedAccounts && storedAccounts.accounts.length > 0 && authParts.refreshToken) {
|
|
214
|
+
const hasMatchingAccount = storedAccounts.accounts.some((acc) => acc.refreshToken === authParts.refreshToken);
|
|
215
|
+
if (!hasMatchingAccount) {
|
|
216
|
+
// OpenCode's auth doesn't match any stored account - storage is stale
|
|
217
|
+
// Clear it and let the user re-authenticate
|
|
218
|
+
console.warn("[opencode-antigravity-auth] Stored accounts don't match OpenCode's auth. Clearing stale storage.");
|
|
219
|
+
try {
|
|
220
|
+
await clearAccounts();
|
|
221
|
+
}
|
|
222
|
+
catch {
|
|
223
|
+
// ignore
|
|
224
|
+
}
|
|
225
|
+
}
|
|
170
226
|
}
|
|
171
227
|
const accountManager = await AccountManager.loadFromDisk(auth);
|
|
172
228
|
if (accountManager.getAccountCount() > 0) {
|
|
@@ -197,19 +253,56 @@ export const createAntigravityPlugin = (providerId) => async ({ client }) => ({
|
|
|
197
253
|
if (!isOAuthAuth(latestAuth)) {
|
|
198
254
|
return fetch(input, init);
|
|
199
255
|
}
|
|
200
|
-
|
|
201
|
-
if (accountCount === 0) {
|
|
256
|
+
if (accountManager.getAccountCount() === 0) {
|
|
202
257
|
throw new Error("No Antigravity accounts configured. Run `opencode auth login`.");
|
|
203
258
|
}
|
|
204
259
|
let lastFailure = null;
|
|
205
260
|
let lastError = null;
|
|
206
|
-
|
|
261
|
+
const abortSignal = init?.signal ?? undefined;
|
|
262
|
+
// Use while(true) loop to handle rate limits with backoff
|
|
263
|
+
// This ensures we wait and retry when all accounts are rate-limited
|
|
264
|
+
while (true) {
|
|
265
|
+
const accountCount = accountManager.getAccountCount();
|
|
266
|
+
if (accountCount === 0) {
|
|
267
|
+
throw new Error("No Antigravity accounts available. Run `opencode auth login`.");
|
|
268
|
+
}
|
|
207
269
|
const account = accountManager.pickNext();
|
|
208
270
|
if (!account) {
|
|
209
|
-
|
|
271
|
+
// All accounts are rate-limited - wait and retry
|
|
272
|
+
const waitMs = accountManager.getMinWaitTimeMs() || 60_000;
|
|
210
273
|
const waitSec = Math.max(1, Math.ceil(waitMs / 1000));
|
|
211
|
-
|
|
274
|
+
try {
|
|
275
|
+
await client.tui.showToast({
|
|
276
|
+
body: {
|
|
277
|
+
message: `All ${accountCount} account(s) rate-limited. Waiting ${waitSec}s...`,
|
|
278
|
+
variant: "warning",
|
|
279
|
+
},
|
|
280
|
+
});
|
|
281
|
+
}
|
|
282
|
+
catch {
|
|
283
|
+
// TUI may not be available
|
|
284
|
+
}
|
|
285
|
+
// Wait for the cooldown to expire
|
|
286
|
+
await sleep(waitMs, abortSignal);
|
|
287
|
+
continue;
|
|
288
|
+
}
|
|
289
|
+
// Show toast when switching to a different account
|
|
290
|
+
const isAccountSwitch = previousAccountIndex !== null && previousAccountIndex !== account.index;
|
|
291
|
+
if (isAccountSwitch || previousAccountIndex === null) {
|
|
292
|
+
const accountLabel = account.email || `Account ${account.index + 1}`;
|
|
293
|
+
try {
|
|
294
|
+
await client.tui.showToast({
|
|
295
|
+
body: {
|
|
296
|
+
message: `Using ${accountLabel}${accountCount > 1 ? ` (${account.index + 1}/${accountCount})` : ""}`,
|
|
297
|
+
variant: "info",
|
|
298
|
+
},
|
|
299
|
+
});
|
|
300
|
+
}
|
|
301
|
+
catch {
|
|
302
|
+
// TUI may not be available
|
|
303
|
+
}
|
|
212
304
|
}
|
|
305
|
+
previousAccountIndex = account.index;
|
|
213
306
|
try {
|
|
214
307
|
await accountManager.saveToDisk();
|
|
215
308
|
}
|
|
@@ -249,7 +342,7 @@ export const createAntigravityPlugin = (providerId) => async ({ client }) => ({
|
|
|
249
342
|
try {
|
|
250
343
|
await client.auth.set({
|
|
251
344
|
path: { id: providerId },
|
|
252
|
-
body: { type: "oauth", refresh: "" },
|
|
345
|
+
body: { type: "oauth", refresh: "", access: "", expires: 0 },
|
|
253
346
|
});
|
|
254
347
|
}
|
|
255
348
|
catch (storeError) {
|
|
@@ -287,6 +380,8 @@ export const createAntigravityPlugin = (providerId) => async ({ client }) => ({
|
|
|
287
380
|
console.error("[opencode-antigravity-auth] Failed to persist project context:", error);
|
|
288
381
|
}
|
|
289
382
|
}
|
|
383
|
+
// Try endpoint fallbacks
|
|
384
|
+
let shouldSwitchAccount = false;
|
|
290
385
|
for (let i = 0; i < ANTIGRAVITY_ENDPOINT_FALLBACKS.length; i++) {
|
|
291
386
|
const currentEndpoint = ANTIGRAVITY_ENDPOINT_FALLBACKS[i];
|
|
292
387
|
try {
|
|
@@ -303,7 +398,8 @@ export const createAntigravityPlugin = (providerId) => async ({ client }) => ({
|
|
|
303
398
|
projectId: projectContext.effectiveProjectId,
|
|
304
399
|
});
|
|
305
400
|
const response = await fetch(prepared.request, prepared.init);
|
|
306
|
-
|
|
401
|
+
// Handle 429 rate limit
|
|
402
|
+
if (response.status === 429) {
|
|
307
403
|
const retryAfterMs = retryAfterMsFromResponse(response);
|
|
308
404
|
accountManager.markRateLimited(account, retryAfterMs);
|
|
309
405
|
try {
|
|
@@ -312,25 +408,71 @@ export const createAntigravityPlugin = (providerId) => async ({ client }) => ({
|
|
|
312
408
|
catch (error) {
|
|
313
409
|
console.error("[opencode-antigravity-auth] Failed to persist rate-limit state:", error);
|
|
314
410
|
}
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
411
|
+
const accountLabel = account.email || `Account ${account.index + 1}`;
|
|
412
|
+
if (accountManager.getAccountCount() > 1) {
|
|
413
|
+
// Multiple accounts - switch to next
|
|
414
|
+
try {
|
|
415
|
+
await client.tui.showToast({
|
|
416
|
+
body: {
|
|
417
|
+
message: `Rate limited on ${accountLabel}. Switching...`,
|
|
418
|
+
variant: "warning",
|
|
419
|
+
},
|
|
420
|
+
});
|
|
421
|
+
}
|
|
422
|
+
catch {
|
|
423
|
+
// TUI may not be available
|
|
424
|
+
}
|
|
425
|
+
lastFailure = {
|
|
426
|
+
response,
|
|
427
|
+
streaming: prepared.streaming,
|
|
428
|
+
debugContext,
|
|
429
|
+
requestedModel: prepared.requestedModel,
|
|
430
|
+
projectId: prepared.projectId,
|
|
431
|
+
endpoint: prepared.endpoint,
|
|
432
|
+
effectiveModel: prepared.effectiveModel,
|
|
433
|
+
toolDebugMissing: prepared.toolDebugMissing,
|
|
434
|
+
toolDebugSummary: prepared.toolDebugSummary,
|
|
435
|
+
toolDebugPayload: prepared.toolDebugPayload,
|
|
436
|
+
};
|
|
437
|
+
shouldSwitchAccount = true;
|
|
438
|
+
break;
|
|
439
|
+
}
|
|
440
|
+
else {
|
|
441
|
+
// Single account - wait and retry
|
|
442
|
+
const waitSec = Math.max(1, Math.ceil(retryAfterMs / 1000));
|
|
443
|
+
try {
|
|
444
|
+
await client.tui.showToast({
|
|
445
|
+
body: {
|
|
446
|
+
message: `Rate limited. Waiting ${waitSec}s...`,
|
|
447
|
+
variant: "warning",
|
|
448
|
+
},
|
|
449
|
+
});
|
|
450
|
+
}
|
|
451
|
+
catch {
|
|
452
|
+
// TUI may not be available
|
|
453
|
+
}
|
|
454
|
+
lastFailure = {
|
|
455
|
+
response,
|
|
456
|
+
streaming: prepared.streaming,
|
|
457
|
+
debugContext,
|
|
458
|
+
requestedModel: prepared.requestedModel,
|
|
459
|
+
projectId: prepared.projectId,
|
|
460
|
+
endpoint: prepared.endpoint,
|
|
461
|
+
effectiveModel: prepared.effectiveModel,
|
|
462
|
+
toolDebugMissing: prepared.toolDebugMissing,
|
|
463
|
+
toolDebugSummary: prepared.toolDebugSummary,
|
|
464
|
+
toolDebugPayload: prepared.toolDebugPayload,
|
|
465
|
+
};
|
|
466
|
+
// Wait and let the outer loop retry
|
|
467
|
+
await sleep(retryAfterMs, abortSignal);
|
|
468
|
+
shouldSwitchAccount = true;
|
|
469
|
+
break;
|
|
470
|
+
}
|
|
328
471
|
}
|
|
329
|
-
const
|
|
472
|
+
const shouldRetryEndpoint = (response.status === 403 ||
|
|
330
473
|
response.status === 404 ||
|
|
331
|
-
(response.status === 429 && accountManager.getAccountCount() <= 1) ||
|
|
332
474
|
response.status >= 500);
|
|
333
|
-
if (
|
|
475
|
+
if (shouldRetryEndpoint && i < ANTIGRAVITY_ENDPOINT_FALLBACKS.length - 1) {
|
|
334
476
|
lastFailure = {
|
|
335
477
|
response,
|
|
336
478
|
streaming: prepared.streaming,
|
|
@@ -345,6 +487,7 @@ export const createAntigravityPlugin = (providerId) => async ({ client }) => ({
|
|
|
345
487
|
};
|
|
346
488
|
continue;
|
|
347
489
|
}
|
|
490
|
+
// Success or non-retryable error - return the response
|
|
348
491
|
return transformAntigravityResponse(response, prepared.streaming, debugContext, prepared.requestedModel, prepared.projectId, prepared.endpoint, prepared.effectiveModel, prepared.toolDebugMissing, prepared.toolDebugSummary, prepared.toolDebugPayload);
|
|
349
492
|
}
|
|
350
493
|
catch (error) {
|
|
@@ -352,15 +495,21 @@ export const createAntigravityPlugin = (providerId) => async ({ client }) => ({
|
|
|
352
495
|
lastError = error instanceof Error ? error : new Error(String(error));
|
|
353
496
|
continue;
|
|
354
497
|
}
|
|
498
|
+
// All endpoints failed for this account - try next account
|
|
355
499
|
lastError = error instanceof Error ? error : new Error(String(error));
|
|
356
|
-
|
|
500
|
+
shouldSwitchAccount = true;
|
|
501
|
+
break;
|
|
357
502
|
}
|
|
358
503
|
}
|
|
504
|
+
if (shouldSwitchAccount) {
|
|
505
|
+
continue;
|
|
506
|
+
}
|
|
507
|
+
// If we get here without returning, something went wrong
|
|
508
|
+
if (lastFailure) {
|
|
509
|
+
return transformAntigravityResponse(lastFailure.response, lastFailure.streaming, lastFailure.debugContext, lastFailure.requestedModel, lastFailure.projectId, lastFailure.endpoint, lastFailure.effectiveModel, lastFailure.toolDebugMissing, lastFailure.toolDebugSummary, lastFailure.toolDebugPayload);
|
|
510
|
+
}
|
|
511
|
+
throw lastError || new Error("All Antigravity accounts failed");
|
|
359
512
|
}
|
|
360
|
-
if (lastFailure) {
|
|
361
|
-
return transformAntigravityResponse(lastFailure.response, lastFailure.streaming, lastFailure.debugContext, lastFailure.requestedModel, lastFailure.projectId, lastFailure.endpoint, lastFailure.effectiveModel, lastFailure.toolDebugMissing, lastFailure.toolDebugSummary, lastFailure.toolDebugPayload);
|
|
362
|
-
}
|
|
363
|
-
throw lastError || new Error("All Antigravity accounts failed");
|
|
364
513
|
},
|
|
365
514
|
};
|
|
366
515
|
},
|
|
@@ -376,6 +525,23 @@ export const createAntigravityPlugin = (providerId) => async ({ client }) => ({
|
|
|
376
525
|
// CLI flow (`opencode auth login`) passes an inputs object.
|
|
377
526
|
if (inputs) {
|
|
378
527
|
const accounts = [];
|
|
528
|
+
// Check for existing accounts and prompt user for login mode
|
|
529
|
+
let startFresh = true;
|
|
530
|
+
const existingStorage = await loadAccounts();
|
|
531
|
+
if (existingStorage && existingStorage.accounts.length > 0) {
|
|
532
|
+
const existingAccounts = existingStorage.accounts.map((acc, idx) => ({
|
|
533
|
+
email: acc.email,
|
|
534
|
+
index: idx,
|
|
535
|
+
}));
|
|
536
|
+
const loginMode = await promptLoginMode(existingAccounts);
|
|
537
|
+
startFresh = loginMode === "fresh";
|
|
538
|
+
if (startFresh) {
|
|
539
|
+
console.log("\nStarting fresh - existing accounts will be replaced.\n");
|
|
540
|
+
}
|
|
541
|
+
else {
|
|
542
|
+
console.log("\nAdding to existing accounts.\n");
|
|
543
|
+
}
|
|
544
|
+
}
|
|
379
545
|
while (accounts.length < MAX_OAUTH_ACCOUNTS) {
|
|
380
546
|
console.log(`\n=== Antigravity OAuth (Account ${accounts.length + 1}) ===`);
|
|
381
547
|
const projectId = await promptProjectId();
|
|
@@ -442,8 +608,22 @@ export const createAntigravityPlugin = (providerId) => async ({ client }) => ({
|
|
|
442
608
|
break;
|
|
443
609
|
}
|
|
444
610
|
accounts.push(result);
|
|
611
|
+
// Show toast for successful account authentication
|
|
612
|
+
try {
|
|
613
|
+
await client.tui.showToast({
|
|
614
|
+
body: {
|
|
615
|
+
message: `Account ${accounts.length} authenticated${result.email ? ` (${result.email})` : ""}`,
|
|
616
|
+
variant: "success",
|
|
617
|
+
},
|
|
618
|
+
});
|
|
619
|
+
}
|
|
620
|
+
catch {
|
|
621
|
+
// TUI may not be available in CLI mode
|
|
622
|
+
}
|
|
445
623
|
try {
|
|
446
|
-
|
|
624
|
+
// Use startFresh only on first account, subsequent accounts always append
|
|
625
|
+
const isFirstAccount = accounts.length === 1;
|
|
626
|
+
await persistAccountPool([result], isFirstAccount && startFresh);
|
|
447
627
|
}
|
|
448
628
|
catch {
|
|
449
629
|
// ignore
|
|
@@ -472,8 +652,13 @@ export const createAntigravityPlugin = (providerId) => async ({ client }) => ({
|
|
|
472
652
|
callback: async () => primary,
|
|
473
653
|
};
|
|
474
654
|
}
|
|
475
|
-
// TUI flow (`/connect`) does not support per-account prompts
|
|
655
|
+
// TUI flow (`/connect`) does not support per-account prompts.
|
|
656
|
+
// Default to adding new accounts (non-destructive).
|
|
657
|
+
// Users can run `opencode auth logout` first if they want a fresh start.
|
|
476
658
|
const projectId = "";
|
|
659
|
+
// Check existing accounts count for toast message
|
|
660
|
+
const existingStorage = await loadAccounts();
|
|
661
|
+
const existingCount = existingStorage?.accounts.length ?? 0;
|
|
477
662
|
let listener = null;
|
|
478
663
|
if (!isHeadless) {
|
|
479
664
|
try {
|
|
@@ -503,11 +688,28 @@ export const createAntigravityPlugin = (providerId) => async ({ client }) => ({
|
|
|
503
688
|
const result = await exchangeAntigravity(params.code, params.state);
|
|
504
689
|
if (result.type === "success") {
|
|
505
690
|
try {
|
|
506
|
-
|
|
691
|
+
// TUI flow adds to existing accounts (non-destructive)
|
|
692
|
+
await persistAccountPool([result], false);
|
|
507
693
|
}
|
|
508
694
|
catch {
|
|
509
695
|
// ignore
|
|
510
696
|
}
|
|
697
|
+
// Show appropriate toast message
|
|
698
|
+
const newTotal = existingCount + 1;
|
|
699
|
+
const toastMessage = existingCount > 0
|
|
700
|
+
? `Added account${result.email ? ` (${result.email})` : ""} - ${newTotal} total`
|
|
701
|
+
: `Authenticated${result.email ? ` (${result.email})` : ""}`;
|
|
702
|
+
try {
|
|
703
|
+
await client.tui.showToast({
|
|
704
|
+
body: {
|
|
705
|
+
message: toastMessage,
|
|
706
|
+
variant: "success",
|
|
707
|
+
},
|
|
708
|
+
});
|
|
709
|
+
}
|
|
710
|
+
catch {
|
|
711
|
+
// TUI may not be available
|
|
712
|
+
}
|
|
511
713
|
}
|
|
512
714
|
return result;
|
|
513
715
|
}
|
|
@@ -540,11 +742,28 @@ export const createAntigravityPlugin = (providerId) => async ({ client }) => ({
|
|
|
540
742
|
const result = await exchangeAntigravity(params.code, params.state);
|
|
541
743
|
if (result.type === "success") {
|
|
542
744
|
try {
|
|
543
|
-
|
|
745
|
+
// TUI flow adds to existing accounts (non-destructive)
|
|
746
|
+
await persistAccountPool([result], false);
|
|
544
747
|
}
|
|
545
748
|
catch {
|
|
546
749
|
// ignore
|
|
547
750
|
}
|
|
751
|
+
// Show appropriate toast message
|
|
752
|
+
const newTotal = existingCount + 1;
|
|
753
|
+
const toastMessage = existingCount > 0
|
|
754
|
+
? `Added account${result.email ? ` (${result.email})` : ""} - ${newTotal} total`
|
|
755
|
+
: `Authenticated${result.email ? ` (${result.email})` : ""}`;
|
|
756
|
+
try {
|
|
757
|
+
await client.tui.showToast({
|
|
758
|
+
body: {
|
|
759
|
+
message: toastMessage,
|
|
760
|
+
variant: "success",
|
|
761
|
+
},
|
|
762
|
+
});
|
|
763
|
+
}
|
|
764
|
+
catch {
|
|
765
|
+
// TUI may not be available
|
|
766
|
+
}
|
|
548
767
|
}
|
|
549
768
|
return result;
|
|
550
769
|
},
|
|
@@ -552,7 +771,6 @@ export const createAntigravityPlugin = (providerId) => async ({ client }) => ({
|
|
|
552
771
|
},
|
|
553
772
|
},
|
|
554
773
|
{
|
|
555
|
-
provider: providerId,
|
|
556
774
|
label: "Manually enter API Key",
|
|
557
775
|
type: "api",
|
|
558
776
|
},
|
package/dist/src/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/plugin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/plugin.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "opencode-antigravity-auth",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.1",
|
|
4
4
|
"description": "Google Antigravity IDE OAuth auth plugin for Opencode - access Gemini 3 Pro and Claude 4.5 using Google credentials",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|