@vybestack/llxprt-code 0.4.6 → 0.4.7

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 (59) hide show
  1. package/README.md +1 -0
  2. package/dist/package.json +3 -3
  3. package/dist/src/auth/anthropic-oauth-provider.d.ts +1 -0
  4. package/dist/src/auth/anthropic-oauth-provider.js +53 -45
  5. package/dist/src/auth/anthropic-oauth-provider.js.map +1 -1
  6. package/dist/src/auth/anthropic-oauth-provider.local-flow.spec.d.ts +1 -0
  7. package/dist/src/auth/anthropic-oauth-provider.local-flow.spec.js +89 -0
  8. package/dist/src/auth/anthropic-oauth-provider.local-flow.spec.js.map +1 -0
  9. package/dist/src/auth/local-oauth-callback.d.ts +14 -0
  10. package/dist/src/auth/local-oauth-callback.js +413 -0
  11. package/dist/src/auth/local-oauth-callback.js.map +1 -0
  12. package/dist/src/auth/local-oauth-callback.spec.d.ts +1 -0
  13. package/dist/src/auth/local-oauth-callback.spec.js +50 -0
  14. package/dist/src/auth/local-oauth-callback.spec.js.map +1 -0
  15. package/dist/src/config/config.js +16 -10
  16. package/dist/src/config/config.js.map +1 -1
  17. package/dist/src/config/config.loadMemory.test.js +105 -0
  18. package/dist/src/config/config.loadMemory.test.js.map +1 -0
  19. package/dist/src/generated/git-commit.d.ts +1 -1
  20. package/dist/src/generated/git-commit.js +1 -1
  21. package/dist/src/providers/aliases/cerebras-code.config +7 -0
  22. package/dist/src/providers/aliases/chutes-ai.config +7 -0
  23. package/dist/src/providers/aliases/fireworks.config +7 -0
  24. package/dist/src/providers/aliases/llama-cpp.config +7 -0
  25. package/dist/src/providers/aliases/lm-studio.config +7 -0
  26. package/dist/src/providers/aliases/openrouter.config +7 -0
  27. package/dist/src/providers/aliases/synthetic.config +7 -0
  28. package/dist/src/providers/aliases/xai.config +7 -0
  29. package/dist/src/providers/providerAliases.d.ts +25 -0
  30. package/dist/src/providers/providerAliases.js +96 -0
  31. package/dist/src/providers/providerAliases.js.map +1 -0
  32. package/dist/src/providers/providerManagerInstance.d.ts +1 -0
  33. package/dist/src/providers/providerManagerInstance.js +133 -39
  34. package/dist/src/providers/providerManagerInstance.js.map +1 -1
  35. package/dist/src/ui/App.js +2 -2
  36. package/dist/src/ui/App.js.map +1 -1
  37. package/dist/src/ui/App.quittingMessages.test.d.ts +1 -0
  38. package/dist/src/ui/App.quittingMessages.test.js +14 -0
  39. package/dist/src/ui/App.quittingMessages.test.js.map +1 -0
  40. package/dist/src/ui/commands/providerCommand.js +120 -3
  41. package/dist/src/ui/commands/providerCommand.js.map +1 -1
  42. package/dist/src/ui/commands/providerCommand.test.d.ts +6 -0
  43. package/dist/src/ui/commands/providerCommand.test.js +98 -0
  44. package/dist/src/ui/commands/providerCommand.test.js.map +1 -0
  45. package/dist/src/ui/components/InputPrompt.js +60 -3
  46. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  47. package/dist/src/ui/components/InputPrompt.paste.spec.d.ts +6 -0
  48. package/dist/src/ui/components/{InputPrompt.paste.test.js → InputPrompt.paste.spec.js} +89 -76
  49. package/dist/src/ui/components/InputPrompt.paste.spec.js.map +1 -0
  50. package/dist/src/ui/contexts/KeypressContext.js +69 -61
  51. package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
  52. package/dist/src/ui/contexts/KeypressContext.test.js +56 -0
  53. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
  54. package/dist/src/ui/hooks/useGeminiStream.js +13 -5
  55. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  56. package/dist/tsconfig.tsbuildinfo +1 -1
  57. package/package.json +3 -3
  58. package/dist/src/ui/components/InputPrompt.paste.test.js.map +0 -1
  59. /package/dist/src/{ui/components/InputPrompt.paste.test.d.ts → config/config.loadMemory.test.d.ts} +0 -0
package/README.md CHANGED
@@ -22,6 +22,7 @@ LLxprt Code is a powerful fork of [Google's Gemini CLI](https://github.com/googl
22
22
  ## Key Features
23
23
 
24
24
  - **Multi-Provider Support**: Direct access to OpenAI (o3), Anthropic (Claude), Google Gemini, plus OpenRouter, Fireworks, and local models
25
+ - **Installable Provider Aliases**: Save `/provider` setups as reusable configs and load OpenAI-compatible endpoints instantly
25
26
  - **Enhanced Theme Support**: Beautiful themes applied consistently across the entire tool
26
27
  - **Full Gemini CLI Compatibility**: All original features work seamlessly, including Google authentication via `/auth`
27
28
  - **Local Model Support**: Run models locally with LM Studio, llama.cpp, or any OpenAI-compatible server
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vybestack/llxprt-code",
3
- "version": "0.4.6",
3
+ "version": "0.4.7",
4
4
  "description": "LLxprt Code",
5
5
  "repository": {
6
6
  "type": "git",
@@ -33,7 +33,7 @@
33
33
  "dist"
34
34
  ],
35
35
  "config": {
36
- "sandboxImageUri": "ghcr.io/vybestack/llxprt-code/sandbox:0.4.6"
36
+ "sandboxImageUri": "ghcr.io/vybestack/llxprt-code/sandbox:0.4.7"
37
37
  },
38
38
  "dependencies": {
39
39
  "@anthropic-ai/sdk": "^0.55.1",
@@ -42,7 +42,7 @@
42
42
  "@iarna/toml": "^2.2.5",
43
43
  "@modelcontextprotocol/sdk": "^1.15.1",
44
44
  "@types/update-notifier": "^6.0.8",
45
- "@vybestack/llxprt-code-core": "0.4.6",
45
+ "@vybestack/llxprt-code-core": "0.4.7",
46
46
  "chalk": "^5.3.0",
47
47
  "command-exists": "^1.2.9",
48
48
  "diff": "^7.0.0",
@@ -58,6 +58,7 @@ export declare class AnthropicOAuthProvider implements OAuthProvider {
58
58
  * @pseudocode lines 60-62: Save token after successful auth
59
59
  */
60
60
  completeAuth(authCode: string): Promise<void>;
61
+ private showAuthMessage;
61
62
  /**
62
63
  * @plan PLAN-20250823-AUTHFIXES.P08
63
64
  * @requirement REQ-001.1
@@ -4,6 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { AnthropicDeviceFlow, openBrowserSecurely, shouldLaunchBrowser, OAuthError, OAuthErrorFactory, GracefulErrorHandler, RetryHandler, DebugLogger, } from '@vybestack/llxprt-code-core';
7
+ import { startLocalOAuthCallback, } from './local-oauth-callback.js';
7
8
  var InitializationState;
8
9
  (function (InitializationState) {
9
10
  InitializationState["NotStarted"] = "not-started";
@@ -11,6 +12,8 @@ var InitializationState;
11
12
  InitializationState["Completed"] = "completed";
12
13
  InitializationState["Failed"] = "failed";
13
14
  })(InitializationState || (InitializationState = {}));
15
+ const CALLBACK_PORT_RANGE = [8765, 8795];
16
+ const CALLBACK_TIMEOUT_MS = 3 * 60 * 1000;
14
17
  export class AnthropicOAuthProvider {
15
18
  _tokenStore;
16
19
  name = 'anthropic';
@@ -125,78 +128,70 @@ export class AnthropicOAuthProvider {
125
128
  async initiateAuth() {
126
129
  return this.errorHandler.wrapMethod(async () => {
127
130
  await this.ensureInitialized();
128
- // Start device flow
129
131
  const deviceCodeResponse = await this.deviceFlow.initiateDeviceFlow();
130
- // Construct the authorization URL
131
- const authUrl = deviceCodeResponse.verification_uri_complete ||
132
- `${deviceCodeResponse.verification_uri}?user_code=${deviceCodeResponse.user_code}`;
133
- // Display user instructions
132
+ const interactive = shouldLaunchBrowser();
133
+ let localCallback = null;
134
+ if (interactive) {
135
+ try {
136
+ const state = this.deviceFlow.getState();
137
+ localCallback = await startLocalOAuthCallback({
138
+ state,
139
+ portRange: CALLBACK_PORT_RANGE,
140
+ timeoutMs: CALLBACK_TIMEOUT_MS,
141
+ });
142
+ }
143
+ catch (error) {
144
+ this.logger.debug(() => `Local OAuth callback unavailable: ${error instanceof Error ? error.message : String(error)}`);
145
+ }
146
+ }
134
147
  console.log('\nAnthropic Claude OAuth Authentication');
135
148
  console.log('─'.repeat(40));
136
- // Try to open browser if appropriate
137
- if (shouldLaunchBrowser()) {
149
+ let authUrl = deviceCodeResponse.verification_uri_complete ||
150
+ `${deviceCodeResponse.verification_uri}?user_code=${deviceCodeResponse.user_code}`;
151
+ if (localCallback) {
152
+ authUrl = this.deviceFlow.buildAuthorizationUrl(localCallback.redirectUri);
153
+ }
154
+ if (interactive) {
138
155
  console.log('Opening browser for authentication...');
139
- // Add OAuth URL to history so user can copy it from the UI
140
- if (this.addItem) {
141
- this.addItem({
142
- type: 'info',
143
- text: `Please visit the following URL to authorize with Anthropic Claude:\n${authUrl}`,
144
- }, Date.now());
145
- }
146
- else {
147
- console.log('Visit the following URL to authorize:');
148
- console.log(authUrl);
149
- }
156
+ this.showAuthMessage(authUrl);
150
157
  try {
151
158
  await openBrowserSecurely(authUrl);
152
159
  }
153
160
  catch (error) {
154
- // If browser fails to open, just show the URL - this is not critical
155
161
  console.log('Failed to open browser automatically.');
156
162
  this.logger.debug(() => `Browser launch error: ${error}`);
157
- // Add OAuth URL to history so user can copy it from the UI
158
- if (this.addItem) {
159
- this.addItem({
160
- type: 'info',
161
- text: `Please visit the following URL to authorize with Anthropic Claude:
162
- ${authUrl}`,
163
- }, Date.now());
164
- }
163
+ this.showAuthMessage(authUrl);
165
164
  }
166
165
  }
167
166
  else {
168
- // In non-interactive environments, just show the URL
169
- if (this.addItem) {
170
- this.addItem({
171
- type: 'info',
172
- text: `Please visit the following URL to authorize with Anthropic Claude:\n${authUrl}`,
173
- }, Date.now());
167
+ this.showAuthMessage(authUrl);
168
+ }
169
+ console.log('─'.repeat(40));
170
+ if (localCallback) {
171
+ try {
172
+ const { code, state } = await localCallback.waitForCallback();
173
+ await localCallback.shutdown();
174
+ await this.completeAuth(`${code}#${state}`);
175
+ return;
174
176
  }
175
- else {
176
- console.log('Visit the following URL to authorize:');
177
- console.log(authUrl);
177
+ catch (error) {
178
+ await localCallback.shutdown().catch(() => undefined);
179
+ this.logger.debug(() => `Local OAuth callback failed: ${error instanceof Error ? error.message : String(error)}`);
180
+ console.log('Falling back to manual authorization code entry. Please paste the code when prompted.');
178
181
  }
179
182
  }
180
- console.log('─'.repeat(40));
181
- // Store the provider name globally so the dialog knows which provider
182
183
  global.__oauth_provider =
183
184
  'anthropic';
184
- // Create a promise that will resolve when the code is entered
185
185
  this.pendingAuthPromise = new Promise((resolve, reject) => {
186
186
  this.authCodeResolver = resolve;
187
187
  this.authCodeRejecter = reject;
188
- // Set a timeout to prevent hanging forever
189
188
  setTimeout(() => {
190
189
  const timeoutError = OAuthErrorFactory.fromUnknown(this.name, new Error('OAuth authentication timed out after 5 minutes'), 'authentication timeout');
191
190
  reject(timeoutError);
192
- }, 5 * 60 * 1000); // 5 minute timeout
191
+ }, 5 * 60 * 1000);
193
192
  });
194
- // Signal that we need the OAuth code dialog
195
- // This needs to be caught by the UI to open the dialog
196
193
  global.__oauth_needs_code = true;
197
- // Wait for the code to be entered
198
194
  const authCode = await this.pendingAuthPromise;
199
- // Exchange the code for tokens
200
195
  await this.completeAuth(authCode);
201
196
  }, this.name, 'initiateAuth')();
202
197
  }
@@ -226,6 +221,19 @@ ${authUrl}`,
226
221
  console.log('Successfully authenticated with Anthropic Claude!');
227
222
  }, this.name, 'completeAuth')();
228
223
  }
224
+ showAuthMessage(authUrl) {
225
+ const message = `Please visit the following URL to authorize with Anthropic Claude:\n${authUrl}`;
226
+ if (this.addItem) {
227
+ this.addItem({
228
+ type: 'info',
229
+ text: message,
230
+ }, Date.now());
231
+ }
232
+ else {
233
+ console.log('Visit the following URL to authorize:');
234
+ console.log(authUrl);
235
+ }
236
+ }
229
237
  /**
230
238
  * @plan PLAN-20250823-AUTHFIXES.P08
231
239
  * @requirement REQ-001.1
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic-oauth-provider.js","sourceRoot":"","sources":["../../../src/auth/anthropic-oauth-provider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,EAEL,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EAEnB,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,WAAW,GACZ,MAAM,6BAA6B,CAAC;AAGrC,IAAK,mBAKJ;AALD,WAAK,mBAAmB;IACtB,iDAA0B,CAAA;IAC1B,iDAA0B,CAAA;IAC1B,8CAAuB,CAAA;IACvB,wCAAiB,CAAA;AACnB,CAAC,EALI,mBAAmB,KAAnB,mBAAmB,QAKvB;AAED,MAAM,OAAO,sBAAsB;IAyBvB;IAxBV,IAAI,GAAG,WAAW,CAAC;IACX,UAAU,CAAsB;IAChC,gBAAgB,CAA0B;IAC1C,gBAAgB,CAA0B;IAC1C,kBAAkB,CAAmB;IACrC,mBAAmB,GAAG,mBAAmB,CAAC,UAAU,CAAC;IACrD,qBAAqB,CAAiB;IACtC,mBAAmB,CAAS;IAC5B,YAAY,CAAuB;IACnC,YAAY,CAAe;IAC3B,MAAM,CAAc;IACpB,OAAO,CAGH;IAEZ;;;;;;OAMG;IACH,YACU,WAAwB,EAChC,OAGW;QAJH,gBAAW,GAAX,WAAW,CAAa;QAMhC,IAAI,CAAC,UAAU,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,IAAI,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,GAAG,IAAI,WAAW,CAAC,uBAAuB,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvB;;;;WAIG;QACH,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,CAAC,IAAI,CACV,gBAAgB,IAAI,CAAC,IAAI,8CAA8C;gBACrE,2DAA2D,CAC9D,CAAC;QACJ,CAAC;QAED,8DAA8D;IAChE,CAAC;IAED;;OAEG;IACH,UAAU,CACR,OAGW;QAEX,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;YAChC,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,IAAY;QACzB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;YAClC,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;QACpC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,iBAAiB,CAAC,WAAW,CACzC,IAAI,CAAC,IAAI,EACT,IAAI,KAAK,CAAC,gCAAgC,CAAC,EAC3C,YAAY,CACb,CAAC;YACF,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;YAClC,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;QACpC,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,iBAAiB;QAC7B,2CAA2C;QAC3C,IAAI,IAAI,CAAC,mBAAmB,KAAK,mBAAmB,CAAC,SAAS,EAAE,CAAC;YAC/D,OAAO;QACT,CAAC;QAED,oDAAoD;QACpD,IAAI,IAAI,CAAC,mBAAmB,KAAK,mBAAmB,CAAC,MAAM,EAAE,CAAC;YAC5D,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC,UAAU,CAAC;YAC1D,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;YACvC,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;QACvC,CAAC;QAED,uCAAuC;QACvC,IAAI,IAAI,CAAC,mBAAmB,KAAK,mBAAmB,CAAC,UAAU,EAAE,CAAC;YAChE,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC,UAAU,CAAC;YAC1D,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACtD,CAAC;QAED,iEAAiE;QACjE,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,qBAAqB,CAAC;gBACjC,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC,SAAS,CAAC;YAC3D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC,MAAM,CAAC;gBACtD,IAAI,CAAC,mBAAmB;oBACtB,KAAK,YAAY,UAAU;wBACzB,CAAC,CAAC,KAAK;wBACP,CAAC,CAAC,iBAAiB,CAAC,WAAW,CAC3B,IAAI,CAAC,IAAI,EACT,KAAK,EACL,mBAAmB,CACpB,CAAC;gBACR,MAAM,IAAI,CAAC,mBAAmB,CAAC;YACjC,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CACjC,KAAK,IAAI,EAAE;YACT,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC/B,oBAAoB;YACpB,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC;YAEtE,kCAAkC;YAClC,MAAM,OAAO,GACX,kBAAkB,CAAC,yBAAyB;gBAC5C,GAAG,kBAAkB,CAAC,gBAAgB,cAAc,kBAAkB,CAAC,SAAS,EAAE,CAAC;YAErF,4BAA4B;YAC5B,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAE5B,qCAAqC;YACrC,IAAI,mBAAmB,EAAE,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;gBAErD,2DAA2D;gBAC3D,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACjB,IAAI,CAAC,OAAO,CACV;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,uEAAuE,OAAO,EAAE;qBACvF,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;oBACrD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAC;gBACrC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,qEAAqE;oBACrE,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;oBACrD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;oBAE1D,2DAA2D;oBAC3D,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;wBACjB,IAAI,CAAC,OAAO,CACV;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE;EACtB,OAAO,EAAE;yBACM,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,qDAAqD;gBACrD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACjB,IAAI,CAAC,OAAO,CACV;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,uEAAuE,OAAO,EAAE;qBACvF,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;oBACrD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAE5B,sEAAsE;YACrE,MAAkD,CAAC,gBAAgB;gBAClE,WAAW,CAAC;YAEd,8DAA8D;YAC9D,IAAI,CAAC,kBAAkB,GAAG,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAChE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;gBAChC,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC;gBAE/B,2CAA2C;gBAC3C,UAAU,CACR,GAAG,EAAE;oBACH,MAAM,YAAY,GAAG,iBAAiB,CAAC,WAAW,CAChD,IAAI,CAAC,IAAI,EACT,IAAI,KAAK,CAAC,gDAAgD,CAAC,EAC3D,wBAAwB,CACzB,CAAC;oBACF,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvB,CAAC,EACD,CAAC,GAAG,EAAE,GAAG,IAAI,CACd,CAAC,CAAC,mBAAmB;YACxB,CAAC,CAAC,CAAC;YAEH,4CAA4C;YAC5C,uDAAuD;YAErD,MACD,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAE5B,kCAAkC;YAClC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC;YAE/C,+BAA+B;YAC/B,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC,EACD,IAAI,CAAC,IAAI,EACT,cAAc,CACf,EAAE,CAAC;IACN,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAAC,QAAgB;QACjC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,iBAAiB,CAAC,WAAW,CACjC,IAAI,CAAC,IAAI,EACT,IAAI,KAAK,CAAC,gCAAgC,CAAC,EAC3C,cAAc,CACf,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CACjC,KAAK,IAAI,EAAE;YACT,6CAA6C;YAC7C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;YAEnE,2CAA2C;YAC3C,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;gBACvD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,iBAAiB,CAAC,YAAY,CAClC,IAAI,CAAC,IAAI,EACT,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAC1C;wBACE,SAAS,EAAE,WAAW;wBACtB,QAAQ,EAAE,WAAW;qBACtB,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;QACnE,CAAC,EACD,IAAI,CAAC,IAAI,EACT,cAAc,CACf,EAAE,CAAC;IACN,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,CAAC,gBAAgB,CACvC,KAAK,IAAI,EAAE;YACT,mDAAmD;YACnD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YACjE,iEAAiE;YACjE,IAAI,UAAU,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC;gBACnD,OAAO,CAAC,+BAA+B;YACzC,CAAC;QACH,CAAC,EACD,SAAS,EAAE,sDAAsD;QACjE,IAAI,CAAC,IAAI,EACT,iBAAiB,CAClB,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,CAAC,gBAAgB,CACvC,KAAK,IAAI,EAAE;YACT,+EAA+E;YAC/E,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YAC5D,IAAI,KAAK,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxC,kDAAkD;gBAClD,OAAO,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;YACtC,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,EACD,IAAI,EAAE,uBAAuB;QAC7B,IAAI,CAAC,IAAI,EACT,UAAU,CACX,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe;QACnB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,oDAAoD;QACpD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAElE,mDAAmD;QACnD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,iDAAiD;QACjD,IAAI,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;YACtC,kEAAkE;YAClE,IACE,YAAY,CAAC,aAAa;gBAC1B,YAAY,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;gBAC5C,YAAY,CAAC,aAAa,CAAC,MAAM,GAAG,IAAI,EACxC,CAAC;gBACD,IAAI,CAAC;oBACH,gFAAgF;oBAChF,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;wBACxC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,YAAY,CAAC,aAAa,CAAC;wBACxD,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAC/B,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAC1D;qBACF,CAAC,CAAC;oBAEH,IAAI,CAAC;wBACH,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;oBAChE,CAAC;oBAAC,OAAO,SAAS,EAAE,CAAC;wBACnB,MAAM,iBAAiB,CAAC,YAAY,CAClC,IAAI,CAAC,IAAI,EACT,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAClD;4BACE,SAAS,EAAE,oBAAoB;yBAChC,CACF,CAAC;oBACJ,CAAC;oBAED,OAAO,cAAc,CAAC;gBACxB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,mEAAmE;oBACnE,MAAM,YAAY,GAChB,KAAK,YAAY,UAAU;wBACzB,CAAC,CAAC,KAAK;wBACP,CAAC,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE;4BAChD,aAAa,EACX,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;4BACxD,SAAS,EAAE,cAAc;yBAC1B,CAAC,CAAC;oBAET,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,GAAG,EAAE,CACH,yBAAyB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,EAAE,CACvE,CAAC;oBAEF,IAAI,CAAC;wBACH,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;oBAClD,CAAC;oBAAC,OAAO,WAAW,EAAE,CAAC;wBACrB,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,GAAG,EAAE,CAAC,mCAAmC,WAAW,EAAE,CACvD,CAAC;oBACJ,CAAC;oBAED,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,mEAAmE;gBACnE,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;gBAChD,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,kDAAkD;QAClD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM;QACV,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAE/B,4CAA4C;QAC5C,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,+DAA+D;YAC/D,IAAI,KAAK,GAAsB,IAAI,CAAC;YACpC,IAAI,CAAC;gBACH,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YACvD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,GAAG,EAAE,CAAC,2CAA2C,KAAK,EAAE,CACzD,CAAC;YACJ,CAAC;YAED,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,CAAC;oBACH,oDAAoD;oBACpD,IACE,aAAa,IAAI,IAAI,CAAC,UAAU;wBAChC,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,KAAK,UAAU,EACjD,CAAC;wBACD,MACE,IAAI,CAAC,UAGN,CAAC,WAAW,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;oBACpC,CAAC;yBAAM,CAAC;wBACN,8DAA8D;wBAC9D,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,GAAG,EAAE,CACH,oEAAoE,CACvE,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,kEAAkE;oBAClE,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,GAAG,EAAE,CACH,4DAA4D,KAAK,EAAE,CACtE,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,sEAAsE;YACtE,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAClD,CAAC;QAED,8CAA8C;QAC9C,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAChD,CAAC;IAED;;;;OAIG;IACK,cAAc,CAAC,KAAiB;QACtC,wCAAwC;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QAC9B,wCAAwC;QACxC,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,gDAAgD;QAChD,OAAO,KAAK,CAAC,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC;IACtC,CAAC;CACF"}
1
+ {"version":3,"file":"anthropic-oauth-provider.js","sourceRoot":"","sources":["../../../src/auth/anthropic-oauth-provider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
2
+ vi.mock('./local-oauth-callback.js', () => ({
3
+ startLocalOAuthCallback: vi.fn(),
4
+ }));
5
+ import * as coreModule from '@vybestack/llxprt-code-core';
6
+ import { AnthropicOAuthProvider } from './anthropic-oauth-provider.js';
7
+ import { startLocalOAuthCallback } from './local-oauth-callback.js';
8
+ const startLocalOAuthCallbackMock = vi.mocked(startLocalOAuthCallback);
9
+ const openBrowserArgs = [];
10
+ describe('AnthropicOAuthProvider local callback flow', () => {
11
+ let provider;
12
+ let tokenStore;
13
+ let deviceFlow;
14
+ let shouldLaunchBrowserSpy;
15
+ beforeEach(() => {
16
+ openBrowserArgs.length = 0;
17
+ startLocalOAuthCallbackMock.mockReset();
18
+ vi.spyOn(global.console, 'log').mockImplementation(() => { });
19
+ const saveToken = vi.fn(async (_provider, _token) => { });
20
+ tokenStore = {
21
+ saveToken,
22
+ getToken: vi.fn(async () => null),
23
+ removeToken: vi.fn(async () => undefined),
24
+ listProviders: vi.fn(async () => []),
25
+ };
26
+ provider = new AnthropicOAuthProvider(tokenStore);
27
+ deviceFlow = provider.deviceFlow;
28
+ deviceFlow.initiateDeviceFlow = vi.fn(async () => ({
29
+ verification_uri: 'https://console.anthropic.com/oauth/authorize',
30
+ verification_uri_complete: 'https://claude.ai/oauth/authorize?redirect_uri=https%3A%2F%2Fconsole.anthropic.com%2Foauth%2Fcode',
31
+ user_code: 'CODE123',
32
+ device_code: 'device-code',
33
+ expires_in: 1800,
34
+ interval: 5,
35
+ }));
36
+ deviceFlow.getState = vi
37
+ .fn()
38
+ .mockReturnValue('generated-state');
39
+ deviceFlow.buildAuthorizationUrl = vi
40
+ .fn()
41
+ .mockImplementation((redirectUri) => `https://claude.ai/oauth/authorize?redirect_uri=${encodeURIComponent(redirectUri)}&code=true`);
42
+ deviceFlow.exchangeCodeForToken = vi.fn(async () => ({
43
+ token_type: 'Bearer',
44
+ access_token: 'local-token',
45
+ expiry: Math.floor(Date.now() / 1000) + 3600,
46
+ scope: null,
47
+ }));
48
+ vi.spyOn(coreModule, 'openBrowserSecurely').mockImplementation(async (url) => {
49
+ openBrowserArgs.push(url);
50
+ });
51
+ shouldLaunchBrowserSpy = vi
52
+ .spyOn(coreModule, 'shouldLaunchBrowser')
53
+ .mockReturnValue(true);
54
+ });
55
+ afterEach(() => {
56
+ vi.restoreAllMocks();
57
+ delete global.__oauth_needs_code;
58
+ delete global.__oauth_provider;
59
+ });
60
+ it('uses local callback when browser launch is available', async () => {
61
+ const waitForCallback = vi
62
+ .fn()
63
+ .mockResolvedValue({ code: 'auth-code', state: 'generated-state' });
64
+ const shutdown = vi.fn().mockResolvedValue(undefined);
65
+ startLocalOAuthCallbackMock.mockResolvedValue({
66
+ redirectUri: 'http://localhost:8765/callback',
67
+ waitForCallback,
68
+ shutdown,
69
+ });
70
+ await provider.initiateAuth();
71
+ expect(startLocalOAuthCallbackMock).toHaveBeenCalledWith(expect.objectContaining({ state: 'generated-state' }));
72
+ expect(openBrowserArgs.some((url) => url.includes('localhost'))).toBe(true);
73
+ expect(tokenStore.saveToken).toHaveBeenCalledWith('anthropic', expect.objectContaining({ access_token: 'local-token' }));
74
+ expect(global.__oauth_needs_code).toBe(undefined);
75
+ expect(waitForCallback).toHaveBeenCalled();
76
+ expect(shutdown).toHaveBeenCalled();
77
+ });
78
+ it('falls back to manual entry when local callback fails', async () => {
79
+ startLocalOAuthCallbackMock.mockRejectedValue(new Error('callback unavailable'));
80
+ shouldLaunchBrowserSpy.mockReturnValue(true);
81
+ const manualPromise = provider.initiateAuth();
82
+ await new Promise((resolve) => setTimeout(resolve, 0));
83
+ provider.cancelAuth();
84
+ await manualPromise.catch(() => undefined);
85
+ expect(startLocalOAuthCallbackMock).toHaveBeenCalled();
86
+ expect(global.__oauth_needs_code).toBe(true);
87
+ });
88
+ });
89
+ //# sourceMappingURL=anthropic-oauth-provider.local-flow.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anthropic-oauth-provider.local-flow.spec.js","sourceRoot":"","sources":["../../../src/auth/anthropic-oauth-provider.local-flow.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ export interface LocalOAuthCallbackOptions {
2
+ readonly state: string;
3
+ readonly portRange: readonly [number, number];
4
+ readonly timeoutMs: number;
5
+ }
6
+ export interface LocalOAuthCallbackServer {
7
+ readonly redirectUri: string;
8
+ waitForCallback(): Promise<{
9
+ code: string;
10
+ state: string;
11
+ }>;
12
+ shutdown(): Promise<void>;
13
+ }
14
+ export declare const startLocalOAuthCallback: (options: LocalOAuthCallbackOptions) => Promise<LocalOAuthCallbackServer>;