opencode-gemini-cli-oauth 1.1.19 → 1.1.21

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/dist/index.d.ts CHANGED
@@ -15,4 +15,6 @@
15
15
  */
16
16
  import loadPlugin from './plugin.js';
17
17
  export default loadPlugin;
18
+ export declare const load: typeof loadPlugin;
19
+ export declare const geminiCliOAuth: typeof loadPlugin;
18
20
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH,OAAO,UAAU,MAAM,aAAa,CAAC;AAGrC,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH,OAAO,UAAU,MAAM,aAAa,CAAC;AAGrC,eAAe,UAAU,CAAC;AAG1B,eAAO,MAAM,IAAI,mBAAa,CAAC;AAC/B,eAAO,MAAM,cAAc,mBAAa,CAAC"}
package/dist/index.js CHANGED
@@ -16,4 +16,7 @@
16
16
  import loadPlugin from './plugin.js';
17
17
  // ONLY export the default loader
18
18
  export default loadPlugin;
19
+ // Named exports for compatibility
20
+ export const load = loadPlugin;
21
+ export const geminiCliOAuth = loadPlugin;
19
22
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH,OAAO,UAAU,MAAM,aAAa,CAAC;AAErC,iCAAiC;AACjC,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH,OAAO,UAAU,MAAM,aAAa,CAAC;AAErC,iCAAiC;AACjC,eAAe,UAAU,CAAC;AAE1B,kCAAkC;AAClC,MAAM,CAAC,MAAM,IAAI,GAAG,UAAU,CAAC;AAC/B,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC"}
package/dist/plugin.d.ts CHANGED
@@ -4,18 +4,11 @@
4
4
  * SPDX-License-Identifier: MIT
5
5
  */
6
6
  import type { PluginContext } from './types.js';
7
- /**
8
- * OpenCode Plugin for Gemini CLI OAuth Authentication
9
- * Refactored based on Architectural Analysis (Factory Function Pattern)
10
- */
11
7
  export default function loadPlugin(context: PluginContext): Promise<{
12
8
  auth: {
13
9
  provider: string;
14
10
  loader: (getAuth: any, provider: string) => Promise<{
15
11
  apiKey: string;
16
- client: {
17
- name: string;
18
- };
19
12
  fetch: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
20
13
  }>;
21
14
  methods: {
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD;;;GAGG;AACH,wBAA8B,UAAU,CAAC,OAAO,EAAE,aAAa;;;0BAoDjC,GAAG,YAAY,MAAM;;;;;2BA1CV,WAAW,GAAG,GAAG,SAAS,WAAW,KAAG,OAAO,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;GA8EjG"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,wBAA8B,UAAU,CAAC,OAAO,EAAE,aAAa;;;0BAqDjC,GAAG,YAAY,MAAM;;2BA5CV,WAAW,GAAG,GAAG,SAAS,WAAW,KAAG,OAAO,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;GA8EjG"}
package/dist/plugin.js CHANGED
@@ -4,32 +4,27 @@
4
4
  * SPDX-License-Identifier: MIT
5
5
  */
6
6
  import { oauth } from './auth/oauth.js';
7
- /**
8
- * OpenCode Plugin for Gemini CLI OAuth Authentication
9
- * Refactored based on Architectural Analysis (Factory Function Pattern)
10
- */
11
7
  export default async function loadPlugin(context) {
12
- console.log('🚀 Loading Gemini CLI OAuth plugin (v1.1.19) - Realistic Dummy Key...');
13
- // 1. Capture original fetcher (Middleware pattern)
14
- // Fallback to global fetch if context.client.fetch is not available
8
+ console.log('🚀 [GeminiPlugin] Loading Gemini CLI OAuth plugin (v1.1.21)...');
9
+ // 1. Capture original fetcher
15
10
  const nextFetch = (context.client && context.client.fetch)
16
11
  ? context.client.fetch.bind(context.client)
17
12
  : globalThis.fetch.bind(globalThis);
18
13
  // 2. Define the interceptor
19
14
  const interceptedFetch = async (input, init) => {
20
- // Logging for debug
21
15
  const urlStr = typeof input === 'string' ? input : input instanceof URL ? input.href : input.url;
22
- console.log(`📡 [Gemini OAuth] Intercepting request to: ${urlStr}`);
16
+ console.log(`📡 [GeminiPlugin] Intercepting request to: ${urlStr}`);
23
17
  try {
24
18
  // 3. Auth Check & Token Retrieval
25
19
  const token = await oauth.getAccessToken();
26
- // 4. Clone init to avoid mutation side-effects
20
+ console.log('🔑 [GeminiPlugin] Token retrieved successfully');
21
+ // 4. Clone init
27
22
  const newInit = { ...init };
28
23
  const headers = new Headers(newInit.headers);
29
- // 5. Inject Header (Always inject, trusting that this fetcher is only used for this provider)
24
+ // 5. Inject Header
30
25
  headers.set('Authorization', `Bearer ${token}`);
31
26
  newInit.headers = headers;
32
- // Remove API key query param if present
27
+ // Remove API key query param
33
28
  let targetInput = input;
34
29
  if (typeof input === 'string' && input.includes('key=')) {
35
30
  const urlObj = new URL(input);
@@ -41,11 +36,13 @@ export default async function loadPlugin(context) {
41
36
  urlObj.searchParams.delete('key');
42
37
  targetInput = urlObj;
43
38
  }
44
- return nextFetch(targetInput, newInit);
39
+ console.log(`📤 [GeminiPlugin] Forwarding request with Auth header`);
40
+ const response = await nextFetch(targetInput, newInit);
41
+ console.log(`✅ [GeminiPlugin] Response status: ${response.status}`);
42
+ return response;
45
43
  }
46
44
  catch (error) {
47
- console.error('❌ [Gemini OAuth] Token error:', error);
48
- // Fallback: try request without auth injection
45
+ console.error(`❌ [GeminiPlugin] Token error or fetch failed: ${error}`);
49
46
  return nextFetch(input, init);
50
47
  }
51
48
  };
@@ -53,12 +50,10 @@ export default async function loadPlugin(context) {
53
50
  auth: {
54
51
  provider: 'gemini-cli-oauth',
55
52
  loader: async (getAuth, provider) => {
56
- console.log(`🔌 Initializing auth strategy for ${provider} (v1.1.19)`);
57
- // Return a structure that mimics a fully initialized client
58
- // Using a realistic-looking dummy key to bypass potential regex validation
53
+ console.log(`🔌 [GeminiPlugin] Initializing auth strategy for ${provider} (v1.1.21)`);
54
+ // Return minimal structure required
59
55
  return {
60
56
  apiKey: 'AIzaSyDummyTokenForGeminiCliOAuthBypassValidation',
61
- client: { name: 'gemini-cli-oauth-client' },
62
57
  fetch: interceptedFetch
63
58
  };
64
59
  },
@@ -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-gemini-cli-oauth",
3
- "version": "1.1.19",
3
+ "version": "1.1.21",
4
4
  "description": "OpenCode plugin for Gemini CLI OAuth authentication - use Google account quota without API keys",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",