opencode-antigravity-auth 1.6.5-beta.0 → 2.1.0
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 +34 -694
- package/dist/index.d.ts +10 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/src/antigravity/oauth.d.ts +0 -28
- package/dist/src/antigravity/oauth.d.ts.map +1 -1
- package/dist/src/antigravity/oauth.js +25 -103
- package/dist/src/antigravity/oauth.js.map +1 -1
- package/dist/src/constants.d.ts +53 -32
- package/dist/src/constants.d.ts.map +1 -1
- package/dist/src/constants.js +64 -56
- package/dist/src/constants.js.map +1 -1
- package/dist/src/hooks/auto-update-checker/cache.js +1 -1
- package/dist/src/hooks/auto-update-checker/checker.d.ts +1 -1
- package/dist/src/hooks/auto-update-checker/checker.js +2 -2
- package/dist/src/hooks/auto-update-checker/index.d.ts +4 -4
- package/dist/src/hooks/auto-update-checker/index.js +6 -6
- package/dist/src/hooks/auto-update-checker/logging.js +1 -1
- package/dist/src/plugin/account-management.d.ts +67 -0
- package/dist/src/plugin/account-management.d.ts.map +1 -0
- package/dist/src/plugin/account-management.js +174 -0
- package/dist/src/plugin/account-management.js.map +1 -0
- package/dist/src/plugin/account-rpc.d.ts +70 -0
- package/dist/src/plugin/account-rpc.d.ts.map +1 -0
- package/dist/src/plugin/account-rpc.js +28 -0
- package/dist/src/plugin/account-rpc.js.map +1 -0
- package/dist/src/plugin/accounts.d.ts +32 -19
- package/dist/src/plugin/accounts.d.ts.map +1 -1
- package/dist/src/plugin/accounts.js +203 -34
- package/dist/src/plugin/accounts.js.map +1 -1
- package/dist/src/plugin/auth.d.ts +1 -1
- package/dist/src/plugin/cache/index.d.ts +1 -1
- package/dist/src/plugin/cache/index.js +1 -1
- package/dist/src/plugin/cache/signature-cache.d.ts +1 -1
- package/dist/src/plugin/cache/signature-cache.js +1 -1
- package/dist/src/plugin/cache.d.ts +7 -5
- package/dist/src/plugin/cache.d.ts.map +1 -1
- package/dist/src/plugin/cache.js +20 -3
- package/dist/src/plugin/cache.js.map +1 -1
- package/dist/src/plugin/cli.d.ts +4 -6
- package/dist/src/plugin/cli.d.ts.map +1 -1
- package/dist/src/plugin/cli.js +5 -11
- package/dist/src/plugin/cli.js.map +1 -1
- package/dist/src/plugin/config/index.d.ts +2 -2
- package/dist/src/plugin/config/index.js +2 -2
- package/dist/src/plugin/config/loader.d.ts +1 -1
- package/dist/src/plugin/config/loader.js +2 -2
- package/dist/src/plugin/config/models-v2.d.ts +54 -0
- package/dist/src/plugin/config/models-v2.d.ts.map +1 -0
- package/dist/src/plugin/config/models-v2.js +62 -0
- package/dist/src/plugin/config/models-v2.js.map +1 -0
- package/dist/src/plugin/config/models.d.ts +1 -1
- package/dist/src/plugin/config/updater.d.ts +16 -3
- package/dist/src/plugin/config/updater.d.ts.map +1 -1
- package/dist/src/plugin/config/updater.js +53 -10
- package/dist/src/plugin/config/updater.js.map +1 -1
- package/dist/src/plugin/core/streaming/index.d.ts +2 -2
- package/dist/src/plugin/core/streaming/index.js +2 -2
- package/dist/src/plugin/core/streaming/transformer.d.ts +1 -1
- package/dist/src/plugin/core/streaming/transformer.js +1 -1
- package/dist/src/plugin/debug.d.ts +1 -1
- package/dist/src/plugin/debug.js +2 -2
- package/dist/src/plugin/fingerprint.d.ts +8 -5
- package/dist/src/plugin/fingerprint.d.ts.map +1 -1
- package/dist/src/plugin/fingerprint.js +23 -41
- package/dist/src/plugin/fingerprint.js.map +1 -1
- package/dist/src/plugin/logger.d.ts +1 -1
- package/dist/src/plugin/logger.js +2 -2
- package/dist/src/plugin/project.d.ts +4 -4
- package/dist/src/plugin/project.d.ts.map +1 -1
- package/dist/src/plugin/project.js +95 -94
- package/dist/src/plugin/project.js.map +1 -1
- package/dist/src/plugin/quota.d.ts +35 -3
- package/dist/src/plugin/quota.d.ts.map +1 -1
- package/dist/src/plugin/quota.js +54 -25
- package/dist/src/plugin/quota.js.map +1 -1
- package/dist/src/plugin/recovery/index.d.ts +3 -3
- package/dist/src/plugin/recovery/index.js +3 -3
- package/dist/src/plugin/recovery/storage.d.ts +1 -1
- package/dist/src/plugin/recovery/storage.js +1 -1
- package/dist/src/plugin/recovery.d.ts +3 -3
- package/dist/src/plugin/recovery.js +3 -3
- package/dist/src/plugin/refresh-queue.d.ts +6 -3
- package/dist/src/plugin/refresh-queue.d.ts.map +1 -1
- package/dist/src/plugin/refresh-queue.js +23 -6
- package/dist/src/plugin/refresh-queue.js.map +1 -1
- package/dist/src/plugin/request-helpers.d.ts +1 -1
- package/dist/src/plugin/request-helpers.js +5 -5
- package/dist/src/plugin/request.d.ts +9 -6
- package/dist/src/plugin/request.d.ts.map +1 -1
- package/dist/src/plugin/request.js +23 -23
- package/dist/src/plugin/request.js.map +1 -1
- package/dist/src/plugin/search.js +7 -7
- package/dist/src/plugin/search.js.map +1 -1
- package/dist/src/plugin/server.js +1 -1
- package/dist/src/plugin/storage.d.ts +18 -5
- package/dist/src/plugin/storage.d.ts.map +1 -1
- package/dist/src/plugin/storage.js +117 -69
- package/dist/src/plugin/storage.js.map +1 -1
- package/dist/src/plugin/stores/signature-store.d.ts +1 -1
- package/dist/src/plugin/token.d.ts +2 -4
- package/dist/src/plugin/token.d.ts.map +1 -1
- package/dist/src/plugin/token.js +48 -8
- package/dist/src/plugin/token.js.map +1 -1
- package/dist/src/plugin/transform/claude.d.ts +1 -1
- package/dist/src/plugin/transform/claude.js +1 -1
- package/dist/src/plugin/transform/cross-model-sanitizer.js +2 -2
- package/dist/src/plugin/transform/gemini.d.ts +1 -1
- package/dist/src/plugin/transform/index.d.ts +9 -9
- package/dist/src/plugin/transform/index.js +4 -4
- package/dist/src/plugin/transform/model-resolver.d.ts +9 -1
- package/dist/src/plugin/transform/model-resolver.d.ts.map +1 -1
- package/dist/src/plugin/transform/model-resolver.js +34 -4
- package/dist/src/plugin/transform/model-resolver.js.map +1 -1
- package/dist/src/plugin/transform/types.d.ts +1 -1
- package/dist/src/plugin/types.d.ts +31 -2
- package/dist/src/plugin/types.d.ts.map +1 -1
- package/dist/src/plugin/ui/auth-menu.d.ts +1 -4
- package/dist/src/plugin/ui/auth-menu.d.ts.map +1 -1
- package/dist/src/plugin/ui/auth-menu.js +8 -16
- package/dist/src/plugin/ui/auth-menu.js.map +1 -1
- package/dist/src/plugin/ui/confirm.js +1 -1
- package/dist/src/plugin/ui/select.js +1 -1
- package/dist/src/plugin/version.d.ts +35 -6
- package/dist/src/plugin/version.d.ts.map +1 -1
- package/dist/src/plugin/version.js +138 -42
- package/dist/src/plugin/version.js.map +1 -1
- package/dist/src/plugin.d.ts +11 -8
- package/dist/src/plugin.d.ts.map +1 -1
- package/dist/src/plugin.js +170 -291
- package/dist/src/plugin.js.map +1 -1
- package/dist/src/tui.d.ts +64 -0
- package/dist/src/tui.d.ts.map +1 -0
- package/dist/src/tui.js +124 -0
- package/dist/src/tui.js.map +1 -0
- package/dist/src/v2.d.ts +4 -0
- package/dist/src/v2.d.ts.map +1 -0
- package/dist/src/v2.js +672 -0
- package/dist/src/v2.js.map +1 -0
- package/index.js +4 -0
- package/package.json +21 -7
- package/tui.js +1 -0
|
@@ -47,6 +47,26 @@ export const MODEL_ALIASES = {
|
|
|
47
47
|
// Note: gemini-2.5-flash-image (Nano Banana) is NOT supported by Antigravity - only Google AI API
|
|
48
48
|
// Reference: Antigravity-Manager/src-tauri/src/proxy/common/model_mapping.rs
|
|
49
49
|
};
|
|
50
|
+
/**
|
|
51
|
+
* Model IDs that Antigravity fetchAvailableModels advertises verbatim with a
|
|
52
|
+
* tier-like suffix. The suffix is part of the real model ID, so it must reach the
|
|
53
|
+
* API unchanged instead of being stripped as a legacy thinking-tier alias.
|
|
54
|
+
*/
|
|
55
|
+
const advertisedModelIds = new Set([
|
|
56
|
+
"claude-opus-5-5-high",
|
|
57
|
+
"claude-sonnet-5-5-high",
|
|
58
|
+
"gemini-4-argon-high",
|
|
59
|
+
"gemini-3.8-flash-high",
|
|
60
|
+
"gemini-3.8-flash-medium",
|
|
61
|
+
"gemini-3.8-flash-low",
|
|
62
|
+
"gpt-oss-120b-medium",
|
|
63
|
+
]);
|
|
64
|
+
export const ADVERTISED_TIER_SUFFIX_MODEL_IDS = advertisedModelIds;
|
|
65
|
+
/** Preserve backend IDs discovered from Google's account-specific catalog. */
|
|
66
|
+
export function registerAdvertisedModelIds(ids) {
|
|
67
|
+
for (const id of ids)
|
|
68
|
+
advertisedModelIds.add(id.toLowerCase());
|
|
69
|
+
}
|
|
50
70
|
const TIER_REGEX = /-(minimal|low|medium|high)$/;
|
|
51
71
|
const QUOTA_PREFIX_REGEX = /^antigravity-/i;
|
|
52
72
|
const GEMINI_3_PRO_REGEX = /^gemini-3(?:\.\d+)?-pro/i;
|
|
@@ -111,6 +131,13 @@ function isGemini3ProModel(model) {
|
|
|
111
131
|
function isGemini3FlashModel(model) {
|
|
112
132
|
return GEMINI_3_FLASH_REGEX.test(model);
|
|
113
133
|
}
|
|
134
|
+
/**
|
|
135
|
+
* True for advertised model IDs whose tier-like suffix must not be stripped.
|
|
136
|
+
* Accepts names with or without the "antigravity-" quota prefix.
|
|
137
|
+
*/
|
|
138
|
+
export function isAdvertisedTierSuffixModel(model) {
|
|
139
|
+
return ADVERTISED_TIER_SUFFIX_MODEL_IDS.has(model.replace(QUOTA_PREFIX_REGEX, "").toLowerCase());
|
|
140
|
+
}
|
|
114
141
|
/**
|
|
115
142
|
* Resolves a model name with optional tier suffix and quota prefix to its actual API model name
|
|
116
143
|
* and corresponding thinking configuration.
|
|
@@ -134,8 +161,10 @@ function isGemini3FlashModel(model) {
|
|
|
134
161
|
export function resolveModelWithTier(requestedModel, options = {}) {
|
|
135
162
|
const isAntigravity = QUOTA_PREFIX_REGEX.test(requestedModel);
|
|
136
163
|
const modelWithoutQuota = requestedModel.replace(QUOTA_PREFIX_REGEX, "");
|
|
164
|
+
const isAdvertisedTierId = isAdvertisedTierSuffixModel(modelWithoutQuota);
|
|
137
165
|
const tier = extractThinkingTierFromModel(modelWithoutQuota);
|
|
138
|
-
|
|
166
|
+
// Advertised IDs keep their suffix; it still selects the thinking level below.
|
|
167
|
+
const baseName = tier && !isAdvertisedTierId ? modelWithoutQuota.replace(TIER_REGEX, "") : modelWithoutQuota;
|
|
139
168
|
const isImageModel = IMAGE_GENERATION_MODELS.test(modelWithoutQuota);
|
|
140
169
|
const isClaudeModel = modelWithoutQuota.toLowerCase().includes("claude");
|
|
141
170
|
// All models default to Antigravity quota unless cli_first is enabled
|
|
@@ -152,7 +181,7 @@ export function resolveModelWithTier(requestedModel, options = {}) {
|
|
|
152
181
|
const isGemini3Pro = isGemini3ProModel(modelWithoutQuota);
|
|
153
182
|
const isGemini3Flash = isGemini3FlashModel(modelWithoutQuota);
|
|
154
183
|
let antigravityModel = modelWithoutQuota;
|
|
155
|
-
if (skipAlias) {
|
|
184
|
+
if (skipAlias && !isAdvertisedTierId) {
|
|
156
185
|
if (isGemini3Pro && !tier && !isImageModel) {
|
|
157
186
|
antigravityModel = `${modelWithoutQuota}-low`;
|
|
158
187
|
}
|
|
@@ -160,7 +189,7 @@ export function resolveModelWithTier(requestedModel, options = {}) {
|
|
|
160
189
|
antigravityModel = baseName;
|
|
161
190
|
}
|
|
162
191
|
}
|
|
163
|
-
const actualModel = skipAlias
|
|
192
|
+
const actualModel = skipAlias || isAdvertisedTierId
|
|
164
193
|
? antigravityModel
|
|
165
194
|
: MODEL_ALIASES[modelWithoutQuota] || MODEL_ALIASES[baseName] || baseName;
|
|
166
195
|
const resolvedModel = actualModel;
|
|
@@ -316,7 +345,8 @@ export function resolveModelWithVariant(requestedModel, variantConfig) {
|
|
|
316
345
|
if (isGemini3) {
|
|
317
346
|
const level = budgetToGemini3Level(budget);
|
|
318
347
|
const isAntigravityGemini3Pro = base.quotaPreference === "antigravity" &&
|
|
319
|
-
isGemini3ProModel(base.actualModel)
|
|
348
|
+
isGemini3ProModel(base.actualModel) &&
|
|
349
|
+
!isAdvertisedTierSuffixModel(base.actualModel);
|
|
320
350
|
let actualModel = base.actualModel;
|
|
321
351
|
if (isAntigravityGemini3Pro) {
|
|
322
352
|
const baseModel = base.actualModel.replace(/-(low|medium|high)$/, "");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-resolver.js","sourceRoot":"","sources":["../../../../src/plugin/transform/model-resolver.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"model-resolver.js","sourceRoot":"","sources":["../../../../src/plugin/transform/model-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { PluginInput } from "@opencode-ai/plugin";
|
|
2
|
-
import type { AntigravityTokenExchangeResult } from "../antigravity/oauth";
|
|
2
|
+
import type { AntigravityTokenExchangeResult } from "../antigravity/oauth.js";
|
|
3
3
|
export interface OAuthAuthDetails {
|
|
4
4
|
type: "oauth";
|
|
5
5
|
refresh: string;
|
|
@@ -30,10 +30,36 @@ export interface LoaderResult {
|
|
|
30
30
|
apiKey: string;
|
|
31
31
|
fetch(input: RequestInfo, init?: RequestInit): Promise<Response>;
|
|
32
32
|
}
|
|
33
|
-
|
|
33
|
+
type ClientMethod<T extends (...args: never[]) => unknown> = (...args: Parameters<T>) => Promise<unknown>;
|
|
34
|
+
/** The transport only needs this small, version-independent client surface. */
|
|
35
|
+
export interface PluginClient {
|
|
36
|
+
app: {
|
|
37
|
+
log: ClientMethod<PluginInput["client"]["app"]["log"]>;
|
|
38
|
+
};
|
|
39
|
+
auth: {
|
|
40
|
+
set: ClientMethod<PluginInput["client"]["auth"]["set"]>;
|
|
41
|
+
};
|
|
42
|
+
tui: {
|
|
43
|
+
showToast: ClientMethod<PluginInput["client"]["tui"]["showToast"]>;
|
|
44
|
+
};
|
|
45
|
+
session: {
|
|
46
|
+
prompt: ClientMethod<PluginInput["client"]["session"]["prompt"]>;
|
|
47
|
+
abort: ClientMethod<PluginInput["client"]["session"]["abort"]>;
|
|
48
|
+
messages: ClientMethod<PluginInput["client"]["session"]["messages"]>;
|
|
49
|
+
};
|
|
50
|
+
}
|
|
34
51
|
export interface PluginContext {
|
|
35
52
|
client: PluginClient;
|
|
36
53
|
directory: string;
|
|
54
|
+
/** V2 owns session recovery and plugin/config updates itself. */
|
|
55
|
+
runtimeVersion?: 1 | 2;
|
|
56
|
+
/** Scoped outbound transport supplied by the V2 host wrapper. */
|
|
57
|
+
fetch?: LoaderResult["fetch"];
|
|
58
|
+
/** V2's discovered per-account model eligibility; absent on legacy hosts. */
|
|
59
|
+
canUseAccount?: (account: {
|
|
60
|
+
id?: string;
|
|
61
|
+
refreshToken: string;
|
|
62
|
+
}, model: string) => boolean;
|
|
37
63
|
}
|
|
38
64
|
export type AuthPrompt = {
|
|
39
65
|
type: "text";
|
|
@@ -77,6 +103,8 @@ export interface PluginEventPayload {
|
|
|
77
103
|
};
|
|
78
104
|
}
|
|
79
105
|
export interface PluginResult {
|
|
106
|
+
dispose?: () => Promise<void>;
|
|
107
|
+
flush?: () => Promise<void>;
|
|
80
108
|
auth: {
|
|
81
109
|
provider: string;
|
|
82
110
|
loader: (getAuth: GetAuth, provider: Provider) => Promise<LoaderResult | Record<string, unknown>>;
|
|
@@ -94,4 +122,5 @@ export interface ProjectContextResult {
|
|
|
94
122
|
auth: OAuthAuthDetails;
|
|
95
123
|
effectiveProjectId: string;
|
|
96
124
|
}
|
|
125
|
+
export {};
|
|
97
126
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/plugin/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,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,iBAAiB;IAChC,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;CACb;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,iBAAiB,GAAG,mBAAmB,CAAC;AAErF,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,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/plugin/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,6 @@ export interface AccountInfo {
|
|
|
7
7
|
status?: AccountStatus;
|
|
8
8
|
isCurrentAccount?: boolean;
|
|
9
9
|
enabled?: boolean;
|
|
10
|
-
verificationRequiredType?: string;
|
|
11
10
|
}
|
|
12
11
|
export type AuthMenuAction = {
|
|
13
12
|
type: 'add';
|
|
@@ -22,8 +21,6 @@ export type AuthMenuAction = {
|
|
|
22
21
|
type: 'verify';
|
|
23
22
|
} | {
|
|
24
23
|
type: 'verify-all';
|
|
25
|
-
} | {
|
|
26
|
-
type: 'gemini-cli-login';
|
|
27
24
|
} | {
|
|
28
25
|
type: 'configure-models';
|
|
29
26
|
} | {
|
|
@@ -32,5 +29,5 @@ export type AuthMenuAction = {
|
|
|
32
29
|
export type AccountAction = 'back' | 'delete' | 'refresh' | 'toggle' | 'verify' | 'cancel';
|
|
33
30
|
export declare function showAuthMenu(accounts: AccountInfo[]): Promise<AuthMenuAction>;
|
|
34
31
|
export declare function showAccountDetails(account: AccountInfo): Promise<AccountAction>;
|
|
35
|
-
export { isTTY } from './ansi';
|
|
32
|
+
export { isTTY } from './ansi.js';
|
|
36
33
|
//# sourceMappingURL=auth-menu.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-menu.d.ts","sourceRoot":"","sources":["../../../../src/plugin/ui/auth-menu.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,cAAc,GAAG,SAAS,GAAG,uBAAuB,GAAG,SAAS,CAAC;AAExG,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"auth-menu.d.ts","sourceRoot":"","sources":["../../../../src/plugin/ui/auth-menu.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,cAAc,GAAG,SAAS,GAAG,uBAAuB,GAAG,SAAS,CAAC;AAExG,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,cAAc,GACtB;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,GACf;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,OAAO,EAAE,WAAW,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,kBAAkB,CAAA;CAAE,GAC5B;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEvB,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AA2B3F,wBAAsB,YAAY,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAkDnF;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAmCrF;AAED,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ANSI } from './ansi';
|
|
2
|
-
import { select } from './select';
|
|
3
|
-
import { confirm } from './confirm';
|
|
1
|
+
import { ANSI } from './ansi.js';
|
|
2
|
+
import { select } from './select.js';
|
|
3
|
+
import { confirm } from './confirm.js';
|
|
4
4
|
function formatRelativeTime(timestamp) {
|
|
5
5
|
if (!timestamp)
|
|
6
6
|
return 'never';
|
|
@@ -20,19 +20,12 @@ function formatDate(timestamp) {
|
|
|
20
20
|
return 'unknown';
|
|
21
21
|
return new Date(timestamp).toLocaleDateString();
|
|
22
22
|
}
|
|
23
|
-
function getStatusBadge(status
|
|
23
|
+
function getStatusBadge(status) {
|
|
24
24
|
switch (status) {
|
|
25
25
|
case 'active': return `${ANSI.green}[active]${ANSI.reset}`;
|
|
26
26
|
case 'rate-limited': return `${ANSI.yellow}[rate-limited]${ANSI.reset}`;
|
|
27
27
|
case 'expired': return `${ANSI.red}[expired]${ANSI.reset}`;
|
|
28
|
-
case 'verification-required': {
|
|
29
|
-
switch (verificationRequiredType) {
|
|
30
|
-
case 'gemini-cli': return `${ANSI.red}[needs Gemini CLI login]${ANSI.reset}`;
|
|
31
|
-
case 'api-enable': return `${ANSI.red}[needs API enable]${ANSI.reset}`;
|
|
32
|
-
case 'google-account': return `${ANSI.red}[needs Google verification]${ANSI.reset}`;
|
|
33
|
-
default: return `${ANSI.red}[needs verification]${ANSI.reset}`;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
28
|
+
case 'verification-required': return `${ANSI.red}[needs verification]${ANSI.reset}`;
|
|
36
29
|
default: return '';
|
|
37
30
|
}
|
|
38
31
|
}
|
|
@@ -43,12 +36,11 @@ export async function showAuthMenu(accounts) {
|
|
|
43
36
|
{ label: 'Check quotas', value: { type: 'check' }, color: 'cyan' },
|
|
44
37
|
{ label: 'Verify one account', value: { type: 'verify' }, color: 'cyan' },
|
|
45
38
|
{ label: 'Verify all accounts', value: { type: 'verify-all' }, color: 'cyan' },
|
|
46
|
-
{ label: 'Gemini CLI Login', value: { type: 'gemini-cli-login' }, color: 'cyan' },
|
|
47
39
|
{ label: 'Configure models in opencode.json', value: { type: 'configure-models' }, color: 'cyan' },
|
|
48
40
|
{ label: '', value: { type: 'cancel' }, separator: true },
|
|
49
41
|
{ label: 'Accounts', value: { type: 'cancel' }, kind: 'heading' },
|
|
50
42
|
...accounts.map(account => {
|
|
51
|
-
const statusBadge = getStatusBadge(account.status
|
|
43
|
+
const statusBadge = getStatusBadge(account.status);
|
|
52
44
|
const currentBadge = account.isCurrentAccount ? ` ${ANSI.cyan}[current]${ANSI.reset}` : '';
|
|
53
45
|
const disabledBadge = account.enabled === false ? ` ${ANSI.red}[disabled]${ANSI.reset}` : '';
|
|
54
46
|
const baseLabel = account.email || `Account ${account.index + 1}`;
|
|
@@ -82,7 +74,7 @@ export async function showAuthMenu(accounts) {
|
|
|
82
74
|
}
|
|
83
75
|
export async function showAccountDetails(account) {
|
|
84
76
|
const label = account.email || `Account ${account.index + 1}`;
|
|
85
|
-
const badge = getStatusBadge(account.status
|
|
77
|
+
const badge = getStatusBadge(account.status);
|
|
86
78
|
const disabledBadge = account.enabled === false ? ` ${ANSI.red}[disabled]${ANSI.reset}` : '';
|
|
87
79
|
const header = `${label}${badge ? ' ' + badge : ''}${disabledBadge}`;
|
|
88
80
|
const subtitleParts = [
|
|
@@ -114,5 +106,5 @@ export async function showAccountDetails(account) {
|
|
|
114
106
|
return result ?? 'cancel';
|
|
115
107
|
}
|
|
116
108
|
}
|
|
117
|
-
export { isTTY } from './ansi';
|
|
109
|
+
export { isTTY } from './ansi.js';
|
|
118
110
|
//# sourceMappingURL=auth-menu.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-menu.js","sourceRoot":"","sources":["../../../../src/plugin/ui/auth-menu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAiB,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"auth-menu.js","sourceRoot":"","sources":["../../../../src/plugin/ui/auth-menu.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,48 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Remote Antigravity version fetcher.
|
|
2
|
+
* Remote Antigravity Hub version fetcher.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* 1.
|
|
6
|
-
* 2.
|
|
7
|
-
*
|
|
4
|
+
* Resolution strategy:
|
|
5
|
+
* 1. Hub auto-updater manifest (electron-builder YAML, `version:` field)
|
|
6
|
+
* 2. Hardcoded fallback in constants.ts
|
|
7
|
+
*
|
|
8
|
+
* Manifest versions below ANTIGRAVITY_MINIMUM_VERSION are rejected because
|
|
9
|
+
* Cloud Code no longer serves newer models to those clients.
|
|
8
10
|
*
|
|
9
11
|
* Called once at plugin startup to ensure headers use the latest
|
|
10
12
|
* supported version, avoiding "version no longer supported" errors.
|
|
11
13
|
*
|
|
12
|
-
* @see https://github.com/
|
|
14
|
+
* @see https://github.com/router-for-me/CLIProxyAPI (internal/misc/antigravity_version.go)
|
|
15
|
+
*/
|
|
16
|
+
export declare const ANTIGRAVITY_HUB_MANIFEST_URL = "https://antigravity-hub-auto-updater-974169037036.us-central1.run.app/manifest/latest-arm64-mac.yml";
|
|
17
|
+
/**
|
|
18
|
+
* Returns true for plain `major.minor.patch` versions (no prefixes, suffixes, or pre-release tags).
|
|
19
|
+
*/
|
|
20
|
+
export declare function isStrictVersion(value: string): boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Compares two strict versions numerically. Returns a negative number, zero, or a positive number.
|
|
23
|
+
*/
|
|
24
|
+
export declare function compareVersions(a: string, b: string): number;
|
|
25
|
+
/**
|
|
26
|
+
* Returns true when the version is strict and at least the Cloud Code minimum.
|
|
27
|
+
*/
|
|
28
|
+
export declare function isSupportedAntigravityVersion(version: string): boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Extracts the top-level `version:` value from an electron-builder update manifest.
|
|
31
|
+
* Indented keys (for example inside `files:`) are ignored. Returns null when the
|
|
32
|
+
* value is missing or not a strict `major.minor.patch` version.
|
|
33
|
+
*/
|
|
34
|
+
export declare function parseHubManifestVersion(text: string): string | null;
|
|
35
|
+
/**
|
|
36
|
+
* Fetches the latest Hub version from the auto-updater manifest.
|
|
37
|
+
* Returns null on network errors, non-OK responses, or unparseable manifests.
|
|
13
38
|
*/
|
|
39
|
+
export declare function fetchHubManifestVersion(url?: string): Promise<string | null>;
|
|
14
40
|
/**
|
|
15
41
|
* Fetch the latest Antigravity version and update the global constant.
|
|
16
42
|
* Safe to call before logger is initialized (will silently skip logging).
|
|
17
43
|
*/
|
|
18
44
|
export declare function initAntigravityVersion(): Promise<void>;
|
|
45
|
+
export declare const ANTIGRAVITY_VERSION_REFRESH_INTERVAL_MS: number;
|
|
46
|
+
/** Coalesce startup checks and refresh long-lived hosts every few hours. */
|
|
47
|
+
export declare function refreshAntigravityVersion(): Promise<void>;
|
|
19
48
|
//# sourceMappingURL=version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../src/plugin/version.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../src/plugin/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AASH,eAAO,MAAM,4BAA4B,wGAC8D,CAAC;AAWxG;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAQ5D;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEtE;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgBnE;AAwCD;;;GAGG;AACH,wBAAsB,uBAAuB,CAAC,GAAG,SAA+B,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAgBxG;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAuB5D;AAED,eAAO,MAAM,uCAAuC,QAAqB,CAAC;AAI1E,4EAA4E;AAC5E,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC,CAQ/D"}
|
|
@@ -1,38 +1,129 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Remote Antigravity version fetcher.
|
|
2
|
+
* Remote Antigravity Hub version fetcher.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* 1.
|
|
6
|
-
* 2.
|
|
7
|
-
*
|
|
4
|
+
* Resolution strategy:
|
|
5
|
+
* 1. Hub auto-updater manifest (electron-builder YAML, `version:` field)
|
|
6
|
+
* 2. Hardcoded fallback in constants.ts
|
|
7
|
+
*
|
|
8
|
+
* Manifest versions below ANTIGRAVITY_MINIMUM_VERSION are rejected because
|
|
9
|
+
* Cloud Code no longer serves newer models to those clients.
|
|
8
10
|
*
|
|
9
11
|
* Called once at plugin startup to ensure headers use the latest
|
|
10
12
|
* supported version, avoiding "version no longer supported" errors.
|
|
11
13
|
*
|
|
12
|
-
* @see https://github.com/
|
|
14
|
+
* @see https://github.com/router-for-me/CLIProxyAPI (internal/misc/antigravity_version.go)
|
|
13
15
|
*/
|
|
14
|
-
import { getAntigravityVersion, setAntigravityVersion } from "../constants";
|
|
15
|
-
import { createLogger } from "./logger";
|
|
16
|
-
const
|
|
17
|
-
const
|
|
16
|
+
import { ANTIGRAVITY_MINIMUM_VERSION, getAntigravityVersion, setAntigravityVersion, } from "../constants.js";
|
|
17
|
+
import { createLogger } from "./logger.js";
|
|
18
|
+
export const ANTIGRAVITY_HUB_MANIFEST_URL = "https://antigravity-hub-auto-updater-974169037036.us-central1.run.app/manifest/latest-arm64-mac.yml";
|
|
19
|
+
const MANIFEST_HEADERS = {
|
|
20
|
+
"User-Agent": "electron-builder",
|
|
21
|
+
"Cache-Control": "no-cache",
|
|
22
|
+
};
|
|
18
23
|
const FETCH_TIMEOUT_MS = 5000;
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
+
const MAX_MANIFEST_BYTES = 4096;
|
|
25
|
+
const STRICT_VERSION_REGEX = /^\d{1,6}\.\d{1,6}\.\d{1,6}$/;
|
|
26
|
+
const VERSION_KEY = "version:";
|
|
27
|
+
/**
|
|
28
|
+
* Returns true for plain `major.minor.patch` versions (no prefixes, suffixes, or pre-release tags).
|
|
29
|
+
*/
|
|
30
|
+
export function isStrictVersion(value) {
|
|
31
|
+
return STRICT_VERSION_REGEX.test(value);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Compares two strict versions numerically. Returns a negative number, zero, or a positive number.
|
|
35
|
+
*/
|
|
36
|
+
export function compareVersions(a, b) {
|
|
37
|
+
const left = a.split(".").map(Number);
|
|
38
|
+
const right = b.split(".").map(Number);
|
|
39
|
+
for (let i = 0; i < 3; i += 1) {
|
|
40
|
+
const diff = (left[i] ?? 0) - (right[i] ?? 0);
|
|
41
|
+
if (diff !== 0)
|
|
42
|
+
return diff;
|
|
43
|
+
}
|
|
44
|
+
return 0;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Returns true when the version is strict and at least the Cloud Code minimum.
|
|
48
|
+
*/
|
|
49
|
+
export function isSupportedAntigravityVersion(version) {
|
|
50
|
+
return isStrictVersion(version) && compareVersions(version, ANTIGRAVITY_MINIMUM_VERSION) >= 0;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Extracts the top-level `version:` value from an electron-builder update manifest.
|
|
54
|
+
* Indented keys (for example inside `files:`) are ignored. Returns null when the
|
|
55
|
+
* value is missing or not a strict `major.minor.patch` version.
|
|
56
|
+
*/
|
|
57
|
+
export function parseHubManifestVersion(text) {
|
|
58
|
+
for (const line of text.split(/\r?\n/)) {
|
|
59
|
+
if (!line.startsWith(VERSION_KEY))
|
|
60
|
+
continue;
|
|
61
|
+
let value = line.slice(VERSION_KEY.length).trim();
|
|
62
|
+
const commentIndex = value.search(/\s#/);
|
|
63
|
+
if (commentIndex >= 0) {
|
|
64
|
+
value = value.slice(0, commentIndex).trim();
|
|
65
|
+
}
|
|
66
|
+
const quote = value[0];
|
|
67
|
+
if ((quote === "'" || quote === "\"") && value.length >= 2 && value.endsWith(quote)) {
|
|
68
|
+
value = value.slice(1, -1);
|
|
69
|
+
}
|
|
70
|
+
return isStrictVersion(value) ? value : null;
|
|
71
|
+
}
|
|
72
|
+
return null;
|
|
24
73
|
}
|
|
25
|
-
|
|
74
|
+
/**
|
|
75
|
+
* Reads at most maxBytes of the body. A truncated read drops its trailing partial line.
|
|
76
|
+
*/
|
|
77
|
+
async function readBoundedText(response, maxBytes) {
|
|
78
|
+
const body = response.body;
|
|
79
|
+
if (!body) {
|
|
80
|
+
return (await response.text()).slice(0, maxBytes);
|
|
81
|
+
}
|
|
82
|
+
const reader = body.getReader();
|
|
83
|
+
const decoder = new TextDecoder();
|
|
84
|
+
let text = "";
|
|
85
|
+
let received = 0;
|
|
86
|
+
let truncated = false;
|
|
87
|
+
try {
|
|
88
|
+
while (true) {
|
|
89
|
+
const { done, value } = await reader.read();
|
|
90
|
+
if (done)
|
|
91
|
+
break;
|
|
92
|
+
const remaining = maxBytes - received;
|
|
93
|
+
if (value.byteLength > remaining) {
|
|
94
|
+
text += decoder.decode(value.subarray(0, remaining));
|
|
95
|
+
truncated = true;
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
received += value.byteLength;
|
|
99
|
+
text += decoder.decode(value, { stream: true });
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
finally {
|
|
103
|
+
reader.cancel().catch(() => undefined);
|
|
104
|
+
}
|
|
105
|
+
if (!truncated) {
|
|
106
|
+
return text + decoder.decode();
|
|
107
|
+
}
|
|
108
|
+
const lastNewline = text.lastIndexOf("\n");
|
|
109
|
+
return lastNewline >= 0 ? text.slice(0, lastNewline + 1) : "";
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Fetches the latest Hub version from the auto-updater manifest.
|
|
113
|
+
* Returns null on network errors, non-OK responses, or unparseable manifests.
|
|
114
|
+
*/
|
|
115
|
+
export async function fetchHubManifestVersion(url = ANTIGRAVITY_HUB_MANIFEST_URL) {
|
|
26
116
|
const controller = new AbortController();
|
|
27
117
|
const timeout = setTimeout(() => controller.abort(), FETCH_TIMEOUT_MS);
|
|
28
118
|
try {
|
|
29
|
-
const response = await fetch(url, {
|
|
119
|
+
const response = await fetch(url, {
|
|
120
|
+
method: "GET",
|
|
121
|
+
headers: MANIFEST_HEADERS,
|
|
122
|
+
signal: controller.signal,
|
|
123
|
+
});
|
|
30
124
|
if (!response.ok)
|
|
31
125
|
return null;
|
|
32
|
-
|
|
33
|
-
if (maxChars)
|
|
34
|
-
text = text.slice(0, maxChars);
|
|
35
|
-
return parseVersion(text);
|
|
126
|
+
return parseHubManifestVersion(await readBoundedText(response, MAX_MANIFEST_BYTES));
|
|
36
127
|
}
|
|
37
128
|
catch {
|
|
38
129
|
return null;
|
|
@@ -48,33 +139,38 @@ async function tryFetchVersion(url, maxChars) {
|
|
|
48
139
|
export async function initAntigravityVersion() {
|
|
49
140
|
const log = createLogger("version");
|
|
50
141
|
const fallback = getAntigravityVersion();
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
source = "api";
|
|
142
|
+
const version = await fetchHubManifestVersion();
|
|
143
|
+
if (!version) {
|
|
144
|
+
setAntigravityVersion(fallback);
|
|
145
|
+
log.info("version-fetch-failed", { fallback });
|
|
146
|
+
return;
|
|
57
147
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
version
|
|
61
|
-
|
|
62
|
-
source = "changelog";
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
// 3. Fall back to hardcoded
|
|
66
|
-
source = "fallback";
|
|
67
|
-
setAntigravityVersion(fallback);
|
|
68
|
-
log.info("version-fetch-failed", { fallback });
|
|
69
|
-
return;
|
|
70
|
-
}
|
|
148
|
+
if (!isSupportedAntigravityVersion(version)) {
|
|
149
|
+
setAntigravityVersion(fallback);
|
|
150
|
+
log.warn("version-below-minimum", { version, minimum: ANTIGRAVITY_MINIMUM_VERSION, fallback });
|
|
151
|
+
return;
|
|
71
152
|
}
|
|
72
153
|
if (version !== fallback) {
|
|
73
|
-
log.info("version-updated", { version, source, previous: fallback });
|
|
154
|
+
log.info("version-updated", { version, source: "manifest", previous: fallback });
|
|
74
155
|
}
|
|
75
156
|
else {
|
|
76
|
-
log.debug("version-unchanged", { version, source });
|
|
157
|
+
log.debug("version-unchanged", { version, source: "manifest" });
|
|
77
158
|
}
|
|
78
159
|
setAntigravityVersion(version);
|
|
79
160
|
}
|
|
161
|
+
export const ANTIGRAVITY_VERSION_REFRESH_INTERVAL_MS = 3 * 60 * 60 * 1000;
|
|
162
|
+
let lastVersionCheck = 0;
|
|
163
|
+
let pendingVersionCheck;
|
|
164
|
+
/** Coalesce startup checks and refresh long-lived hosts every few hours. */
|
|
165
|
+
export async function refreshAntigravityVersion() {
|
|
166
|
+
if (pendingVersionCheck)
|
|
167
|
+
return pendingVersionCheck;
|
|
168
|
+
if (lastVersionCheck && Date.now() - lastVersionCheck < ANTIGRAVITY_VERSION_REFRESH_INTERVAL_MS)
|
|
169
|
+
return;
|
|
170
|
+
pendingVersionCheck = initAntigravityVersion().finally(() => {
|
|
171
|
+
lastVersionCheck = Date.now();
|
|
172
|
+
pendingVersionCheck = undefined;
|
|
173
|
+
});
|
|
174
|
+
return pendingVersionCheck;
|
|
175
|
+
}
|
|
80
176
|
//# sourceMappingURL=version.js.map
|