@vybestack/llxprt-code 0.4.6 → 0.4.7-nightly.251031.4e232f89

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 (95) hide show
  1. package/README.md +1 -0
  2. package/dist/package.json +5 -5
  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/auth/oauth-manager.d.ts +5 -0
  16. package/dist/src/auth/oauth-manager.js +19 -0
  17. package/dist/src/auth/oauth-manager.js.map +1 -1
  18. package/dist/src/commands/extensions.js +1 -1
  19. package/dist/src/commands/extensions.js.map +1 -1
  20. package/dist/src/config/config.js +25 -12
  21. package/dist/src/config/config.js.map +1 -1
  22. package/dist/src/config/config.loadMemory.test.js +105 -0
  23. package/dist/src/config/config.loadMemory.test.js.map +1 -0
  24. package/dist/src/config/settings.env.test.d.ts +6 -0
  25. package/dist/src/config/settings.env.test.js +38 -0
  26. package/dist/src/config/settings.env.test.js.map +1 -0
  27. package/dist/src/config/settings.js +2 -2
  28. package/dist/src/config/settings.js.map +1 -1
  29. package/dist/src/gemini.js +2 -2
  30. package/dist/src/gemini.js.map +1 -1
  31. package/dist/src/generated/git-commit.d.ts +1 -1
  32. package/dist/src/generated/git-commit.js +1 -1
  33. package/dist/src/providers/aliases/cerebras-code.config +7 -0
  34. package/dist/src/providers/aliases/chutes-ai.config +7 -0
  35. package/dist/src/providers/aliases/fireworks.config +7 -0
  36. package/dist/src/providers/aliases/llama-cpp.config +7 -0
  37. package/dist/src/providers/aliases/lm-studio.config +7 -0
  38. package/dist/src/providers/aliases/openrouter.config +7 -0
  39. package/dist/src/providers/aliases/synthetic.config +7 -0
  40. package/dist/src/providers/aliases/xai.config +7 -0
  41. package/dist/src/providers/providerAliases.d.ts +25 -0
  42. package/dist/src/providers/providerAliases.js +96 -0
  43. package/dist/src/providers/providerAliases.js.map +1 -0
  44. package/dist/src/providers/providerManagerInstance.d.ts +1 -0
  45. package/dist/src/providers/providerManagerInstance.js +133 -39
  46. package/dist/src/providers/providerManagerInstance.js.map +1 -1
  47. package/dist/src/ui/App.js +2 -2
  48. package/dist/src/ui/App.js.map +1 -1
  49. package/dist/src/ui/App.quittingMessages.test.d.ts +1 -0
  50. package/dist/src/ui/App.quittingMessages.test.js +14 -0
  51. package/dist/src/ui/App.quittingMessages.test.js.map +1 -0
  52. package/dist/src/ui/commands/authCommand.js +8 -3
  53. package/dist/src/ui/commands/authCommand.js.map +1 -1
  54. package/dist/src/ui/commands/docsCommand.js +1 -1
  55. package/dist/src/ui/commands/docsCommand.js.map +1 -1
  56. package/dist/src/ui/commands/providerCommand.js +120 -3
  57. package/dist/src/ui/commands/providerCommand.js.map +1 -1
  58. package/dist/src/ui/commands/providerCommand.test.d.ts +6 -0
  59. package/dist/src/ui/commands/providerCommand.test.js +98 -0
  60. package/dist/src/ui/commands/providerCommand.test.js.map +1 -0
  61. package/dist/src/ui/commands/toolsCommand.js +2 -2
  62. package/dist/src/ui/commands/toolsCommand.js.map +1 -1
  63. package/dist/src/ui/components/AuthDialog.js +53 -13
  64. package/dist/src/ui/components/AuthDialog.js.map +1 -1
  65. package/dist/src/ui/components/AuthDialog.test.js +67 -1
  66. package/dist/src/ui/components/AuthDialog.test.js.map +1 -1
  67. package/dist/src/ui/components/InputPrompt.js +77 -8
  68. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  69. package/dist/src/ui/components/InputPrompt.paste.spec.d.ts +6 -0
  70. package/dist/src/ui/components/{InputPrompt.paste.test.js → InputPrompt.paste.spec.js} +89 -76
  71. package/dist/src/ui/components/InputPrompt.paste.spec.js.map +1 -0
  72. package/dist/src/ui/components/SettingsDialog.js +1 -1
  73. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  74. package/dist/src/ui/components/WorkspaceMigrationDialog.js +1 -1
  75. package/dist/src/ui/components/WorkspaceMigrationDialog.js.map +1 -1
  76. package/dist/src/ui/components/shared/text-buffer.js +4 -1
  77. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  78. package/dist/src/ui/contexts/KeypressContext.js +69 -61
  79. package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
  80. package/dist/src/ui/contexts/KeypressContext.test.js +56 -0
  81. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
  82. package/dist/src/ui/hooks/useGeminiStream.js +13 -5
  83. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  84. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js +1 -1
  85. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js.map +1 -1
  86. package/dist/src/ui/utils/MarkdownDisplay.test.js +16 -0
  87. package/dist/src/ui/utils/MarkdownDisplay.test.js.map +1 -1
  88. package/dist/src/ui/utils/TableRenderer.js +213 -40
  89. package/dist/src/ui/utils/TableRenderer.js.map +1 -1
  90. package/dist/src/utils/sandbox.js +1 -1
  91. package/dist/src/utils/sandbox.js.map +1 -1
  92. package/dist/tsconfig.tsbuildinfo +1 -1
  93. package/package.json +5 -5
  94. package/dist/src/ui/components/InputPrompt.paste.test.js.map +0 -1
  95. /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-nightly.251031.4e232f89",
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-nightly.251031.4e232f89"
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-nightly.251031.4e232f89",
46
46
  "chalk": "^5.3.0",
47
47
  "command-exists": "^1.2.9",
48
48
  "diff": "^7.0.0",
@@ -59,7 +59,7 @@
59
59
  "mime-types": "^3.0.1",
60
60
  "open": "^10.1.2",
61
61
  "openai": "^5.10.1",
62
- "react": "^19.1.0",
62
+ "react": "^19.2.0",
63
63
  "read-package-up": "^11.0.0",
64
64
  "shell-quote": "^1.8.3",
65
65
  "string-width": "^7.1.0",
@@ -89,7 +89,7 @@
89
89
  "jsdom": "^26.1.0",
90
90
  "lz-string": "^1.5.0",
91
91
  "pretty-format": "^30.0.2",
92
- "react-dom": "^19.1.0",
92
+ "react-dom": "^19.2.0",
93
93
  "typescript": "^5.3.3",
94
94
  "vitest": "^3.1.1"
95
95
  },
@@ -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":"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"}
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>;