@expiren/opencode-antigravity-auth 1.6.17 → 1.6.18

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.
Files changed (54) hide show
  1. package/dist/index.js +583 -59
  2. package/dist/index.js.map +4 -4
  3. package/dist/src/constants.d.ts +13 -0
  4. package/dist/src/constants.d.ts.map +1 -1
  5. package/dist/src/constants.js +19 -1
  6. package/dist/src/constants.js.map +1 -1
  7. package/dist/src/plugin/auth-doctor.d.ts +30 -0
  8. package/dist/src/plugin/auth-doctor.d.ts.map +1 -0
  9. package/dist/src/plugin/auth-doctor.js +144 -0
  10. package/dist/src/plugin/auth-doctor.js.map +1 -0
  11. package/dist/src/plugin/auth-drift.d.ts +13 -0
  12. package/dist/src/plugin/auth-drift.d.ts.map +1 -0
  13. package/dist/src/plugin/auth-drift.js +70 -0
  14. package/dist/src/plugin/auth-drift.js.map +1 -0
  15. package/dist/src/plugin/cli.d.ts +11 -2
  16. package/dist/src/plugin/cli.d.ts.map +1 -1
  17. package/dist/src/plugin/cli.js +31 -3
  18. package/dist/src/plugin/cli.js.map +1 -1
  19. package/dist/src/plugin/config/models.d.ts +2 -32
  20. package/dist/src/plugin/config/models.d.ts.map +1 -1
  21. package/dist/src/plugin/config/models.js +1 -113
  22. package/dist/src/plugin/config/models.js.map +1 -1
  23. package/dist/src/plugin/config/schema.js +2 -2
  24. package/dist/src/plugin/config/schema.js.map +1 -1
  25. package/dist/src/plugin/model-registry.d.ts +46 -0
  26. package/dist/src/plugin/model-registry.d.ts.map +1 -0
  27. package/dist/src/plugin/model-registry.js +180 -0
  28. package/dist/src/plugin/model-registry.js.map +1 -0
  29. package/dist/src/plugin/quota.d.ts +1 -0
  30. package/dist/src/plugin/quota.d.ts.map +1 -1
  31. package/dist/src/plugin/quota.js +8 -5
  32. package/dist/src/plugin/quota.js.map +1 -1
  33. package/dist/src/plugin/request.d.ts.map +1 -1
  34. package/dist/src/plugin/request.js +8 -5
  35. package/dist/src/plugin/request.js.map +1 -1
  36. package/dist/src/plugin/transform/model-resolver.d.ts.map +1 -1
  37. package/dist/src/plugin/transform/model-resolver.js +4 -26
  38. package/dist/src/plugin/transform/model-resolver.js.map +1 -1
  39. package/dist/src/plugin/ui/auth-menu.d.ts +25 -1
  40. package/dist/src/plugin/ui/auth-menu.d.ts.map +1 -1
  41. package/dist/src/plugin/ui/auth-menu.js +64 -13
  42. package/dist/src/plugin/ui/auth-menu.js.map +1 -1
  43. package/dist/src/plugin/ui/quota-status.d.ts +67 -0
  44. package/dist/src/plugin/ui/quota-status.d.ts.map +1 -0
  45. package/dist/src/plugin/ui/quota-status.js +194 -0
  46. package/dist/src/plugin/ui/quota-status.js.map +1 -0
  47. package/dist/src/plugin/version.d.ts +8 -1
  48. package/dist/src/plugin/version.d.ts.map +1 -1
  49. package/dist/src/plugin/version.js +8 -1
  50. package/dist/src/plugin/version.js.map +1 -1
  51. package/dist/src/plugin.d.ts.map +1 -1
  52. package/dist/src/plugin.js +66 -5
  53. package/dist/src/plugin.js.map +1 -1
  54. package/package.json +1 -1
@@ -64,6 +64,19 @@ export declare const ANTIGRAVITY_HEADERS: {
64
64
  readonly "X-Goog-Api-Client": "google-cloud-sdk vscode_cloudshelleditor/0.1";
65
65
  readonly "Client-Metadata": "{\"ideType\":\"ANTIGRAVITY\",\"platform\":\"WINDOWS\",\"pluginType\":\"GEMINI\"}" | "{\"ideType\":\"ANTIGRAVITY\",\"platform\":\"MACOS\",\"pluginType\":\"GEMINI\"}";
66
66
  };
67
+ export declare const GEMINI_CLI_VERSION = "1.0.0";
68
+ /**
69
+ * Default model used in Gemini CLI User-Agent when no model is specified.
70
+ */
71
+ export declare const GEMINI_CLI_DEFAULT_MODEL = "gemini-2.5-pro";
72
+ /**
73
+ * Build Gemini CLI User-Agent string matching the official google-gemini/gemini-cli format.
74
+ * Format: `GeminiCLI/{version}/{model} ({platform}; {arch})`
75
+ *
76
+ * @see https://github.com/google-gemini/gemini-cli
77
+ */
78
+ export declare function buildGeminiCliUserAgent(model?: string): string;
79
+ /** @deprecated Use buildGeminiCliUserAgent() for runtime access. */
67
80
  export declare const GEMINI_CLI_HEADERS: {
68
81
  readonly "User-Agent": "google-api-nodejs-client/9.15.1";
69
82
  readonly "X-Goog-Api-Client": "gl-node/22.17.0";
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,qBAAqB,8EAA8E,CAAC;AAEjH;;GAEG;AACH,eAAO,MAAM,yBAAyB,wCAAwC,CAAC;AAE/E;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAAS,MAAM,EAM/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB,0CAA0C,CAAC;AAEhF;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,sDAAsD,CAAC;AAC9F,eAAO,MAAM,6BAA6B,yDAAyD,CAAC;AACpG,eAAO,MAAM,yBAAyB,wCAAwC,CAAC;AAE/E;;;GAGG;AACH,eAAO,MAAM,8BAA8B,+JAIjC,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,0BAA0B,+JAI7B,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,oBAAoB,sDAA6B,CAAC;AAE/D;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,wCAA4B,CAAC;AAE7D;;GAEG;AACH,eAAO,MAAM,8BAA8B,sBAAsB,CAAC;AAElE,eAAO,MAAM,4BAA4B,WAAW,CAAC;AAIrD,wBAAgB,qBAAqB,IAAI,MAAM,CAA+B;AAE9E;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAI3D;AAED,kEAAkE;AAClE,eAAO,MAAM,mBAAmB,WAA+B,CAAC;AAEhE,wBAAgB,qBAAqB,IAAI,SAAS,GAAG;IAAE,iBAAiB,EAAE,MAAM,CAAA;CAAE,CAMjF;AAED,kEAAkE;AAClE,eAAO,MAAM,mBAAmB;;;;CAItB,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAC;AAcX,MAAM,MAAM,SAAS,GAAG;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAelF;AAED,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,YAAY,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,uBAAuB,WAAW,CAAC;AAMhD;;;;;;GAMG;AACH,eAAO,MAAM,8BAA8B,4zBAWiD,CAAC;AAE7F;;;GAGG;AACH,eAAO,MAAM,yBAAyB,kDAAwC,CAAC;AAE/E,eAAO,MAAM,6BAA6B,iBAAiB,CAAC;AAC5D,eAAO,MAAM,oCAAoC,mCAAmC,CAAC;AAErF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,sBAAsB,qCAAqC,CAAC;AAMzE;;;GAGG;AACH,eAAO,MAAM,YAAY,qBAAqB,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,2BAA2B,QAAQ,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,yBAAyB,qlBAYY,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,qBAAqB,8EAA8E,CAAC;AAEjH;;GAEG;AACH,eAAO,MAAM,yBAAyB,wCAAwC,CAAC;AAE/E;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAAS,MAAM,EAM/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB,0CAA0C,CAAC;AAEhF;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,sDAAsD,CAAC;AAC9F,eAAO,MAAM,6BAA6B,yDAAyD,CAAC;AACpG,eAAO,MAAM,yBAAyB,wCAAwC,CAAC;AAE/E;;;GAGG;AACH,eAAO,MAAM,8BAA8B,+JAIjC,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,0BAA0B,+JAI7B,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,oBAAoB,sDAA6B,CAAC;AAE/D;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,wCAA4B,CAAC;AAE7D;;GAEG;AACH,eAAO,MAAM,8BAA8B,sBAAsB,CAAC;AAElE,eAAO,MAAM,4BAA4B,WAAW,CAAC;AAIrD,wBAAgB,qBAAqB,IAAI,MAAM,CAA+B;AAE9E;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAI3D;AAED,kEAAkE;AAClE,eAAO,MAAM,mBAAmB,WAA+B,CAAC;AAEhE,wBAAgB,qBAAqB,IAAI,SAAS,GAAG;IAAE,iBAAiB,EAAE,MAAM,CAAA;CAAE,CAMjF;AAED,kEAAkE;AAClE,eAAO,MAAM,mBAAmB;;;;CAItB,CAAC;AAEX,eAAO,MAAM,kBAAkB,UAAU,CAAC;AAE1C;;GAEG;AACH,eAAO,MAAM,wBAAwB,mBAAmB,CAAC;AAEzD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAK9D;AAED,oEAAoE;AACpE,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAC;AAaX,MAAM,MAAM,SAAS,GAAG;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAclF;AAED,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,YAAY,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,uBAAuB,WAAW,CAAC;AAMhD;;;;;;GAMG;AACH,eAAO,MAAM,8BAA8B,4zBAWiD,CAAC;AAE7F;;;GAGG;AACH,eAAO,MAAM,yBAAyB,kDAAwC,CAAC;AAE/E,eAAO,MAAM,6BAA6B,iBAAiB,CAAC;AAC5D,eAAO,MAAM,oCAAoC,mCAAmC,CAAC;AAErF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,sBAAsB,qCAAqC,CAAC;AAMzE;;;GAGG;AACH,eAAO,MAAM,YAAY,qBAAqB,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,2BAA2B,QAAQ,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,yBAAyB,qlBAYY,CAAC"}
@@ -89,6 +89,24 @@ export const ANTIGRAVITY_HEADERS = {
89
89
  "X-Goog-Api-Client": "google-cloud-sdk vscode_cloudshelleditor/0.1",
90
90
  "Client-Metadata": `{"ideType":"ANTIGRAVITY","platform":"${process.platform === "win32" ? "WINDOWS" : "MACOS"}","pluginType":"GEMINI"}`,
91
91
  };
92
+ export const GEMINI_CLI_VERSION = "1.0.0";
93
+ /**
94
+ * Default model used in Gemini CLI User-Agent when no model is specified.
95
+ */
96
+ export const GEMINI_CLI_DEFAULT_MODEL = "gemini-2.5-pro";
97
+ /**
98
+ * Build Gemini CLI User-Agent string matching the official google-gemini/gemini-cli format.
99
+ * Format: `GeminiCLI/{version}/{model} ({platform}; {arch})`
100
+ *
101
+ * @see https://github.com/google-gemini/gemini-cli
102
+ */
103
+ export function buildGeminiCliUserAgent(model) {
104
+ const effectiveModel = model || GEMINI_CLI_DEFAULT_MODEL;
105
+ const platform = process.platform || "darwin";
106
+ const arch = process.arch || "arm64";
107
+ return `GeminiCLI/${GEMINI_CLI_VERSION}/${effectiveModel} (${platform}; ${arch})`;
108
+ }
109
+ /** @deprecated Use buildGeminiCliUserAgent() for runtime access. */
92
110
  export const GEMINI_CLI_HEADERS = {
93
111
  "User-Agent": "google-api-nodejs-client/9.15.1",
94
112
  "X-Goog-Api-Client": "gl-node/22.17.0",
@@ -106,7 +124,7 @@ function randomFrom(arr) {
106
124
  export function getRandomizedHeaders(style, model) {
107
125
  if (style === "gemini-cli") {
108
126
  return {
109
- "User-Agent": GEMINI_CLI_HEADERS["User-Agent"],
127
+ "User-Agent": buildGeminiCliUserAgent(model),
110
128
  "X-Goog-Api-Client": GEMINI_CLI_HEADERS["X-Goog-Api-Client"],
111
129
  "Client-Metadata": GEMINI_CLI_HEADERS["Client-Metadata"],
112
130
  };
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import type { AccountStorageV4 } from "./storage";
2
+ import type { AuthDetails } from "./types";
3
+ export type AuthDoctorStatus = "ok" | "warning" | "repairable" | "error";
4
+ export type AuthDoctorFindingCode = "auth-matches-storage" | "missing-opencode-auth" | "non-oauth-opencode-auth" | "refresh-token-not-in-storage" | "no-account-storage" | "no-enabled-accounts" | "active-index-out-of-range" | "active-account-disabled" | "verification-required";
5
+ export type AuthDoctorRepair = "restore-opencode-auth" | "clamp-active-index" | "select-enabled-account" | "verify-account";
6
+ export interface AuthDoctorFinding {
7
+ code: AuthDoctorFindingCode;
8
+ severity: "info" | "warning" | "error";
9
+ message: string;
10
+ repair?: AuthDoctorRepair;
11
+ accountEmail?: string;
12
+ }
13
+ export interface AuthDoctorReport {
14
+ status: AuthDoctorStatus;
15
+ summary: string;
16
+ findings: AuthDoctorFinding[];
17
+ runtime?: AuthDoctorRuntimeMetadata;
18
+ }
19
+ export interface AuthDoctorRuntimeMetadata {
20
+ antigravityVersion: string;
21
+ antigravityVersionSource: string;
22
+ }
23
+ export interface CreateAuthDoctorReportInput {
24
+ auth: AuthDetails | undefined | null;
25
+ storage: AccountStorageV4 | null | undefined;
26
+ runtime?: AuthDoctorRuntimeMetadata;
27
+ }
28
+ export declare function createAuthDoctorReport(input: CreateAuthDoctorReportInput): AuthDoctorReport;
29
+ export declare function formatAuthDoctorReport(report: AuthDoctorReport): string;
30
+ //# sourceMappingURL=auth-doctor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-doctor.d.ts","sourceRoot":"","sources":["../../../src/plugin/auth-doctor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAqB,gBAAgB,EAAE,MAAM,WAAW,CAAA;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAE1C,MAAM,MAAM,gBAAgB,GAAG,IAAI,GAAG,SAAS,GAAG,YAAY,GAAG,OAAO,CAAA;AAExE,MAAM,MAAM,qBAAqB,GAC7B,sBAAsB,GACtB,uBAAuB,GACvB,yBAAyB,GACzB,8BAA8B,GAC9B,oBAAoB,GACpB,qBAAqB,GACrB,2BAA2B,GAC3B,yBAAyB,GACzB,uBAAuB,CAAA;AAE3B,MAAM,MAAM,gBAAgB,GACxB,uBAAuB,GACvB,oBAAoB,GACpB,wBAAwB,GACxB,gBAAgB,CAAA;AAEpB,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,qBAAqB,CAAA;IAC3B,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAA;IACtC,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,gBAAgB,CAAA;IACzB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,gBAAgB,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,iBAAiB,EAAE,CAAA;IAC7B,OAAO,CAAC,EAAE,yBAAyB,CAAA;CACpC;AAED,MAAM,WAAW,yBAAyB;IACxC,kBAAkB,EAAE,MAAM,CAAA;IAC1B,wBAAwB,EAAE,MAAM,CAAA;CACjC;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI,CAAA;IACpC,OAAO,EAAE,gBAAgB,GAAG,IAAI,GAAG,SAAS,CAAA;IAC5C,OAAO,CAAC,EAAE,yBAAyB,CAAA;CACpC;AAgCD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,GAAG,gBAAgB,CAkG3F;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAqBvE"}
@@ -0,0 +1,144 @@
1
+ import { detectAuthStorageDrift } from "./auth-drift";
2
+ function isEnabled(account) {
3
+ return account.enabled !== false;
4
+ }
5
+ function statusFromFindings(findings) {
6
+ if (findings.some((finding) => finding.repair && finding.severity === "error")) {
7
+ return "repairable";
8
+ }
9
+ if (findings.some((finding) => finding.severity === "error")) {
10
+ return "error";
11
+ }
12
+ if (findings.some((finding) => finding.severity === "warning")) {
13
+ return "warning";
14
+ }
15
+ return "ok";
16
+ }
17
+ function summaryFromStatus(status) {
18
+ switch (status) {
19
+ case "ok":
20
+ return "OpenCode auth and Antigravity account storage are in sync.";
21
+ case "repairable":
22
+ return "Auth drift detected. One or more safe repairs are available.";
23
+ case "warning":
24
+ return "Auth is usable, but one or more accounts need attention.";
25
+ case "error":
26
+ return "Auth state is not usable and no safe automatic repair is available.";
27
+ }
28
+ }
29
+ export function createAuthDoctorReport(input) {
30
+ const findings = [];
31
+ const drift = detectAuthStorageDrift(input.auth, input.storage);
32
+ switch (drift.reason) {
33
+ case "auth-matches-storage":
34
+ findings.push({
35
+ code: "auth-matches-storage",
36
+ severity: "info",
37
+ message: "OpenCode OAuth refresh token exists in Antigravity account storage.",
38
+ accountEmail: drift.account?.email,
39
+ });
40
+ break;
41
+ case "missing-opencode-auth":
42
+ findings.push({
43
+ code: "missing-opencode-auth",
44
+ severity: "error",
45
+ message: "OpenCode auth.json has no Google OAuth entry, but Antigravity account storage has a restorable account.",
46
+ repair: "restore-opencode-auth",
47
+ accountEmail: drift.account?.email,
48
+ });
49
+ break;
50
+ case "non-oauth-opencode-auth":
51
+ findings.push({
52
+ code: "non-oauth-opencode-auth",
53
+ severity: "error",
54
+ message: "OpenCode Google auth is not OAuth, but Antigravity account storage has a restorable OAuth account.",
55
+ repair: "restore-opencode-auth",
56
+ accountEmail: drift.account?.email,
57
+ });
58
+ break;
59
+ case "refresh-token-not-in-storage":
60
+ findings.push({
61
+ code: "refresh-token-not-in-storage",
62
+ severity: "error",
63
+ message: "OpenCode Google OAuth refresh token does not match any stored Antigravity account.",
64
+ repair: "restore-opencode-auth",
65
+ accountEmail: drift.account?.email,
66
+ });
67
+ break;
68
+ case "no-account-storage":
69
+ findings.push({
70
+ code: "no-account-storage",
71
+ severity: "error",
72
+ message: "No Antigravity account storage was found.",
73
+ });
74
+ break;
75
+ case "no-enabled-accounts":
76
+ findings.push({
77
+ code: "no-enabled-accounts",
78
+ severity: "error",
79
+ message: "Antigravity account storage exists, but all accounts are disabled.",
80
+ });
81
+ break;
82
+ }
83
+ const storage = input.storage;
84
+ if (storage && storage.accounts.length > 0) {
85
+ if (!Number.isInteger(storage.activeIndex) || storage.activeIndex < 0 || storage.activeIndex >= storage.accounts.length) {
86
+ findings.push({
87
+ code: "active-index-out-of-range",
88
+ severity: "error",
89
+ message: `Active account index ${storage.activeIndex} is outside the stored account range.`,
90
+ repair: "clamp-active-index",
91
+ });
92
+ }
93
+ else {
94
+ const activeAccount = storage.accounts[storage.activeIndex];
95
+ if (activeAccount && !isEnabled(activeAccount) && storage.accounts.some(isEnabled)) {
96
+ findings.push({
97
+ code: "active-account-disabled",
98
+ severity: "error",
99
+ message: "The active account is disabled while another enabled account is available.",
100
+ repair: "select-enabled-account",
101
+ accountEmail: activeAccount.email,
102
+ });
103
+ }
104
+ }
105
+ for (const account of storage.accounts) {
106
+ if (account.verificationRequired) {
107
+ findings.push({
108
+ code: "verification-required",
109
+ severity: "warning",
110
+ message: account.verificationRequiredReason ?? "Account requires Google verification before it can be used.",
111
+ repair: "verify-account",
112
+ accountEmail: account.email,
113
+ });
114
+ }
115
+ }
116
+ }
117
+ const status = statusFromFindings(findings);
118
+ return {
119
+ status,
120
+ summary: summaryFromStatus(status),
121
+ findings,
122
+ runtime: input.runtime,
123
+ };
124
+ }
125
+ export function formatAuthDoctorReport(report) {
126
+ const lines = [
127
+ "Antigravity auth doctor",
128
+ `Status: ${report.status}`,
129
+ report.summary,
130
+ "",
131
+ ];
132
+ if (report.runtime) {
133
+ lines.push(`Antigravity version: ${report.runtime.antigravityVersion} (${report.runtime.antigravityVersionSource})`);
134
+ lines.push("");
135
+ }
136
+ for (const finding of report.findings) {
137
+ const repair = finding.repair ? ` | repair: ${finding.repair}` : "";
138
+ const account = finding.accountEmail ? ` | account: ${finding.accountEmail}` : "";
139
+ lines.push(`- [${finding.severity}] ${finding.code}${account}${repair}`);
140
+ lines.push(` ${finding.message}`);
141
+ }
142
+ return lines.join("\n");
143
+ }
144
+ //# sourceMappingURL=auth-doctor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-doctor.js","sourceRoot":"","sources":["../../../src/plugin/auth-doctor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import type { AccountMetadataV3, AccountStorageV4 } from "./storage";
2
+ import type { AuthDetails, OAuthAuthDetails } from "./types";
3
+ export type AuthStorageDriftStatus = "healthy" | "restorable" | "drifted" | "unavailable";
4
+ export type AuthStorageDriftReason = "auth-matches-storage" | "missing-opencode-auth" | "non-oauth-opencode-auth" | "refresh-token-not-in-storage" | "no-account-storage" | "no-enabled-accounts";
5
+ export interface AuthStorageDriftReport {
6
+ status: AuthStorageDriftStatus;
7
+ reason: AuthStorageDriftReason;
8
+ account?: AccountMetadataV3;
9
+ }
10
+ export declare function selectRestorableAccount(storage: AccountStorageV4 | null | undefined): AccountMetadataV3 | undefined;
11
+ export declare function buildAuthFromStoredAccount(account: AccountMetadataV3): OAuthAuthDetails;
12
+ export declare function detectAuthStorageDrift(auth: AuthDetails | undefined | null, storage: AccountStorageV4 | null | undefined): AuthStorageDriftReport;
13
+ //# sourceMappingURL=auth-drift.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-drift.d.ts","sourceRoot":"","sources":["../../../src/plugin/auth-drift.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE5D,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,YAAY,GAAG,SAAS,GAAG,aAAa,CAAA;AAEzF,MAAM,MAAM,sBAAsB,GAC9B,sBAAsB,GACtB,uBAAuB,GACvB,yBAAyB,GACzB,8BAA8B,GAC9B,oBAAoB,GACpB,qBAAqB,CAAA;AAEzB,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,sBAAsB,CAAA;IAC9B,MAAM,EAAE,sBAAsB,CAAA;IAC9B,OAAO,CAAC,EAAE,iBAAiB,CAAA;CAC5B;AAMD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,GAAG,SAAS,GAAG,iBAAiB,GAAG,SAAS,CAWnH;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,iBAAiB,GAAG,gBAAgB,CAWvF;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI,EACpC,OAAO,EAAE,gBAAgB,GAAG,IAAI,GAAG,SAAS,GAC3C,sBAAsB,CA+CxB"}
@@ -0,0 +1,70 @@
1
+ import { formatRefreshParts, isOAuthAuth, parseRefreshParts } from "./auth";
2
+ function isAccountEnabled(account) {
3
+ return account.enabled !== false;
4
+ }
5
+ export function selectRestorableAccount(storage) {
6
+ if (!storage || storage.accounts.length === 0) {
7
+ return undefined;
8
+ }
9
+ const activeAccount = storage.accounts[storage.activeIndex];
10
+ if (activeAccount && isAccountEnabled(activeAccount)) {
11
+ return activeAccount;
12
+ }
13
+ return storage.accounts.find(isAccountEnabled);
14
+ }
15
+ export function buildAuthFromStoredAccount(account) {
16
+ return {
17
+ type: "oauth",
18
+ refresh: formatRefreshParts({
19
+ refreshToken: account.refreshToken,
20
+ projectId: account.projectId,
21
+ managedProjectId: account.managedProjectId,
22
+ }),
23
+ access: "",
24
+ expires: 0,
25
+ };
26
+ }
27
+ export function detectAuthStorageDrift(auth, storage) {
28
+ if (!storage || storage.accounts.length === 0) {
29
+ return {
30
+ status: "unavailable",
31
+ reason: "no-account-storage",
32
+ };
33
+ }
34
+ const restorableAccount = selectRestorableAccount(storage);
35
+ if (!restorableAccount) {
36
+ return {
37
+ status: "unavailable",
38
+ reason: "no-enabled-accounts",
39
+ };
40
+ }
41
+ if (!auth) {
42
+ return {
43
+ status: "restorable",
44
+ reason: "missing-opencode-auth",
45
+ account: restorableAccount,
46
+ };
47
+ }
48
+ if (!isOAuthAuth(auth)) {
49
+ return {
50
+ status: "restorable",
51
+ reason: "non-oauth-opencode-auth",
52
+ account: restorableAccount,
53
+ };
54
+ }
55
+ const authRefreshToken = parseRefreshParts(auth.refresh).refreshToken;
56
+ const matchedAccount = storage.accounts.find((account) => account.refreshToken === authRefreshToken);
57
+ if (matchedAccount) {
58
+ return {
59
+ status: "healthy",
60
+ reason: "auth-matches-storage",
61
+ account: matchedAccount,
62
+ };
63
+ }
64
+ return {
65
+ status: "drifted",
66
+ reason: "refresh-token-not-in-storage",
67
+ account: restorableAccount,
68
+ };
69
+ }
70
+ //# sourceMappingURL=auth-drift.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-drift.js","sourceRoot":"","sources":["../../../src/plugin/auth-drift.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAA;AAoB3E,SAAS,gBAAgB,CAAC,OAA0B;IAClD,OAAO,OAAO,CAAC,OAAO,KAAK,KAAK,CAAA;AAClC,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAA4C;IAClF,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAC3D,IAAI,aAAa,IAAI,gBAAgB,CAAC,aAAa,CAAC,EAAE,CAAC;QACrD,OAAO,aAAa,CAAA;IACtB,CAAC;IAED,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;AAChD,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,OAA0B;IACnE,OAAO;QACL,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,kBAAkB,CAAC;YAC1B,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;SAC3C,CAAC;QACF,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC;KACX,CAAA;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,IAAoC,EACpC,OAA4C;IAE5C,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,OAAO;YACL,MAAM,EAAE,aAAa;YACrB,MAAM,EAAE,oBAAoB;SAC7B,CAAA;IACH,CAAC;IAED,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAA;IAC1D,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAO;YACL,MAAM,EAAE,aAAa;YACrB,MAAM,EAAE,qBAAqB;SAC9B,CAAA;IACH,CAAC;IAED,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO;YACL,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,uBAAuB;YAC/B,OAAO,EAAE,iBAAiB;SAC3B,CAAA;IACH,CAAC;IAED,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,OAAO;YACL,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,yBAAyB;YACjC,OAAO,EAAE,iBAAiB;SAC3B,CAAA;IACH,CAAC;IAED,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,YAAY,CAAA;IACrE,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,KAAK,gBAAgB,CAAC,CAAA;IACpG,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,sBAAsB;YAC9B,OAAO,EAAE,cAAc;SACxB,CAAA;IACH,CAAC;IAED,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,8BAA8B;QACtC,OAAO,EAAE,iBAAiB;KAC3B,CAAA;AACH,CAAC"}
@@ -1,7 +1,9 @@
1
- import { type AccountStatus } from "./ui/auth-menu";
1
+ import { type AccountStatus, type FingerprintHistoryEntry } from "./ui/auth-menu";
2
+ import type { CooldownReason } from "./accounts.ts";
3
+ import type { QuotaGroupSummary } from "./quota.ts";
2
4
  export declare function promptProjectId(): Promise<string>;
3
5
  export declare function promptAddAnotherAccount(currentCount: number): Promise<boolean>;
4
- export type LoginMode = "add" | "fresh" | "manage" | "check" | "verify" | "verify-all" | "cancel";
6
+ export type LoginMode = "add" | "fresh" | "manage" | "check" | "doctor" | "repair" | "current" | "restore-fingerprint" | "verify" | "verify-all" | "cancel";
5
7
  export interface ExistingAccountInfo {
6
8
  email?: string;
7
9
  index: number;
@@ -10,6 +12,11 @@ export interface ExistingAccountInfo {
10
12
  status?: AccountStatus;
11
13
  isCurrentAccount?: boolean;
12
14
  enabled?: boolean;
15
+ quotaSummary?: string;
16
+ cooldownMs?: number;
17
+ cooldownReason?: CooldownReason;
18
+ cachedQuota?: Partial<Record<string, QuotaGroupSummary>>;
19
+ fingerprintHistory?: FingerprintHistoryEntry[];
13
20
  }
14
21
  export interface LoginMenuResult {
15
22
  mode: LoginMode;
@@ -17,6 +24,8 @@ export interface LoginMenuResult {
17
24
  refreshAccountIndex?: number;
18
25
  toggleAccountIndex?: number;
19
26
  verifyAccountIndex?: number;
27
+ restoreFingerprintAccountIndex?: number;
28
+ restoreFingerprintHistoryIndex?: number;
20
29
  verifyAll?: boolean;
21
30
  deleteAll?: boolean;
22
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/plugin/cli.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,KAAK,aAAa,EACnB,MAAM,gBAAgB,CAAC;AAGxB,wBAAsB,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAQvD;AAED,wBAAsB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CASpF;AAED,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,YAAY,GAAG,QAAQ,CAAC;AAElG,MAAM,WAAW,mBAAmB;IAClC,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,WAAW,eAAe;IAC9B,IAAI,EAAE,SAAS,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAuCD,wBAAsB,eAAe,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAmEvG;AAED,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/plugin/cli.ts"],"names":[],"mappings":"AAEA,OAAO,EAML,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAC7B,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpD,wBAAsB,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAQvD;AAED,wBAAsB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CASpF;AAED,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,qBAAqB,GAAG,QAAQ,GAAG,YAAY,GAAG,QAAQ,CAAC;AAE5J,MAAM,WAAW,mBAAmB;IAClC,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;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACzD,kBAAkB,CAAC,EAAE,uBAAuB,EAAE,CAAC;CAChD;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,SAAS,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAyCD,wBAAsB,eAAe,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CA2FvG;AAED,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { createInterface } from "node:readline/promises";
2
2
  import { stdin as input, stdout as output } from "node:process";
3
- import { showAuthMenu, showAccountDetails, isTTY, } from "./ui/auth-menu";
3
+ import { showAuthMenu, showAccountDetails, showFingerprintHistory, isTTY, } from "./ui/auth-menu";
4
4
  import { updateOpencodeConfig } from "./config/updater";
5
5
  export async function promptProjectId() {
6
6
  const rl = createInterface({ input, output });
@@ -33,7 +33,7 @@ async function promptLoginModeFallback(existingAccounts) {
33
33
  }
34
34
  console.log("");
35
35
  while (true) {
36
- const answer = await rl.question("(a)dd new, (f)resh start, (c)heck quotas, (v)erify account, (va) verify all? [a/f/c/v/va]: ");
36
+ const answer = await rl.question("(a)dd new, (f)resh start, (c)heck quotas, auth (d)octor, (v)erify account, (va) verify all? [a/f/c/d/v/va]: ");
37
37
  const normalized = answer.trim().toLowerCase();
38
38
  if (normalized === "a" || normalized === "add") {
39
39
  return { mode: "add" };
@@ -44,13 +44,16 @@ async function promptLoginModeFallback(existingAccounts) {
44
44
  if (normalized === "c" || normalized === "check") {
45
45
  return { mode: "check" };
46
46
  }
47
+ if (normalized === "d" || normalized === "doctor" || normalized === "auth-doctor") {
48
+ return { mode: "doctor" };
49
+ }
47
50
  if (normalized === "v" || normalized === "verify") {
48
51
  return { mode: "verify" };
49
52
  }
50
53
  if (normalized === "va" || normalized === "verify-all" || normalized === "all") {
51
54
  return { mode: "verify-all", verifyAll: true };
52
55
  }
53
- console.log("Please enter 'a', 'f', 'c', 'v', or 'va'.");
56
+ console.log("Please enter 'a', 'f', 'c', 'd', 'v', or 'va'.");
54
57
  }
55
58
  }
56
59
  finally {
@@ -69,6 +72,11 @@ export async function promptLoginMode(existingAccounts) {
69
72
  status: acc.status,
70
73
  isCurrentAccount: acc.isCurrentAccount,
71
74
  enabled: acc.enabled,
75
+ quotaSummary: acc.quotaSummary,
76
+ cooldownMs: acc.cooldownMs,
77
+ cooldownReason: acc.cooldownReason,
78
+ cachedQuota: acc.cachedQuota,
79
+ fingerprintHistory: acc.fingerprintHistory,
72
80
  }));
73
81
  console.log("");
74
82
  while (true) {
@@ -78,6 +86,12 @@ export async function promptLoginMode(existingAccounts) {
78
86
  return { mode: "add" };
79
87
  case "check":
80
88
  return { mode: "check" };
89
+ case "doctor":
90
+ return { mode: "doctor" };
91
+ case "repair":
92
+ return { mode: "repair" };
93
+ case "current":
94
+ return { mode: "current" };
81
95
  case "verify":
82
96
  return { mode: "verify" };
83
97
  case "verify-all":
@@ -96,6 +110,20 @@ export async function promptLoginMode(existingAccounts) {
96
110
  if (accountAction === "verify") {
97
111
  return { mode: "verify", verifyAccountIndex: action.account.index };
98
112
  }
113
+ if (accountAction === "restore-fingerprint") {
114
+ const history = action.account.fingerprintHistory;
115
+ if (!history || history.length === 0)
116
+ continue;
117
+ const accountLabel = action.account.email || `Account ${action.account.index + 1}`;
118
+ const historyIndex = await showFingerprintHistory(history, accountLabel);
119
+ if (historyIndex === null)
120
+ continue;
121
+ return {
122
+ mode: "restore-fingerprint",
123
+ restoreFingerprintAccountIndex: action.account.index,
124
+ restoreFingerprintHistoryIndex: historyIndex,
125
+ };
126
+ }
99
127
  continue;
100
128
  }
101
129
  case "delete-all":
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/plugin/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/plugin/cli.ts"],"names":[],"mappings":"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"}
@@ -1,33 +1,3 @@
1
- import type { ProviderModel } from "../types";
2
- export type ModelThinkingLevel = "minimal" | "low" | "medium" | "high";
3
- export interface ModelThinkingConfig {
4
- thinkingBudget: number;
5
- }
6
- export interface ModelVariant {
7
- thinkingLevel?: ModelThinkingLevel;
8
- thinkingConfig?: ModelThinkingConfig;
9
- }
10
- export interface ModelLimit {
11
- context: number;
12
- output: number;
13
- }
14
- export type ModelModality = "text" | "image" | "pdf";
15
- export interface ModelModalities {
16
- input: ModelModality[];
17
- output: ModelModality[];
18
- }
19
- export interface OpencodeModelDefinition extends ProviderModel {
20
- id: string;
21
- name: string;
22
- release_date: string;
23
- attachment: boolean;
24
- reasoning: boolean;
25
- temperature: boolean;
26
- tool_call: boolean;
27
- limit: ModelLimit;
28
- modalities: ModelModalities;
29
- variants?: Record<string, ModelVariant>;
30
- }
31
- export type OpencodeModelDefinitions = Record<string, OpencodeModelDefinition>;
32
- export declare const OPENCODE_MODEL_DEFINITIONS: OpencodeModelDefinitions;
1
+ export { OPENCODE_MODEL_DEFINITIONS, getPublicModelDefinitions, } from "../model-registry";
2
+ export type { ModelLimit, ModelModalities, ModelModality, ModelThinkingConfig, ModelThinkingLevel, ModelVariant, OpencodeModelDefinition, OpencodeModelDefinitions, } from "../model-registry";
33
3
  //# sourceMappingURL=models.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../../src/plugin/config/models.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEvE,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAErD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,MAAM,EAAE,aAAa,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,uBAAwB,SAAQ,aAAa;IAC5D,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,UAAU,CAAC;IAClB,UAAU,EAAE,eAAe,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CACzC;AAED,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;AA+B/E,eAAO,MAAM,0BAA0B,EAAE,wBAiGxC,CAAC"}
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../../src/plugin/config/models.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,mBAAmB,CAAA;AAE1B,YAAY,EACV,UAAU,EACV,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,YAAY,EACZ,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,mBAAmB,CAAA"}