centaurus-cli 2.0.1 → 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.
Files changed (108) hide show
  1. package/CONFIG_GUIDE.md +100 -106
  2. package/README.md +68 -63
  3. package/dist/cli-adapter.d.ts +9 -3
  4. package/dist/cli-adapter.d.ts.map +1 -1
  5. package/dist/cli-adapter.js +175 -164
  6. package/dist/cli-adapter.js.map +1 -1
  7. package/dist/commands/CommandParser.d.ts +1 -1
  8. package/dist/commands/CommandParser.d.ts.map +1 -1
  9. package/dist/commands/CommandParser.js +3 -18
  10. package/dist/commands/CommandParser.js.map +1 -1
  11. package/dist/commands/view-duplication-logs.d.ts +5 -0
  12. package/dist/commands/view-duplication-logs.d.ts.map +1 -0
  13. package/dist/commands/view-duplication-logs.js +14 -0
  14. package/dist/commands/view-duplication-logs.js.map +1 -0
  15. package/dist/config/ConfigManager.d.ts +10 -7
  16. package/dist/config/ConfigManager.d.ts.map +1 -1
  17. package/dist/config/ConfigManager.js +43 -142
  18. package/dist/config/ConfigManager.js.map +1 -1
  19. package/dist/config/defaultConfig.d.ts +0 -4
  20. package/dist/config/defaultConfig.d.ts.map +1 -1
  21. package/dist/config/defaultConfig.js +1 -6
  22. package/dist/config/defaultConfig.js.map +1 -1
  23. package/dist/config/manager.d.ts +15 -13
  24. package/dist/config/manager.d.ts.map +1 -1
  25. package/dist/config/manager.js +52 -41
  26. package/dist/config/manager.js.map +1 -1
  27. package/dist/config/models.d.ts +31 -0
  28. package/dist/config/models.d.ts.map +1 -0
  29. package/dist/config/models.js +49 -0
  30. package/dist/config/models.js.map +1 -0
  31. package/dist/config/types.d.ts +0 -3
  32. package/dist/config/types.d.ts.map +1 -1
  33. package/dist/config/types.js +0 -1
  34. package/dist/config/types.js.map +1 -1
  35. package/dist/index.js +48 -8
  36. package/dist/index.js.map +1 -1
  37. package/dist/prompts/system-prompt.d.ts +1 -1
  38. package/dist/prompts/system-prompt.d.ts.map +1 -1
  39. package/dist/prompts/system-prompt.js +0 -1
  40. package/dist/prompts/system-prompt.js.map +1 -1
  41. package/dist/services/ai-service-client.d.ts +87 -0
  42. package/dist/services/ai-service-client.d.ts.map +1 -0
  43. package/dist/services/ai-service-client.js +268 -0
  44. package/dist/services/ai-service-client.js.map +1 -0
  45. package/dist/services/api-client.d.ts +5 -0
  46. package/dist/services/api-client.d.ts.map +1 -1
  47. package/dist/services/api-client.js +72 -59
  48. package/dist/services/api-client.js.map +1 -1
  49. package/dist/services/auth-handler.js +2 -2
  50. package/dist/services/auth-handler.js.map +1 -1
  51. package/dist/tools/ToolRegistry.d.ts +14 -3
  52. package/dist/tools/ToolRegistry.d.ts.map +1 -1
  53. package/dist/tools/ToolRegistry.js +46 -34
  54. package/dist/tools/ToolRegistry.js.map +1 -1
  55. package/dist/tools/command.d.ts.map +1 -1
  56. package/dist/tools/command.js +17 -3
  57. package/dist/tools/command.js.map +1 -1
  58. package/dist/tools/file-ops.js +3 -3
  59. package/dist/tools/file-ops.js.map +1 -1
  60. package/dist/tools/web-search.d.ts.map +1 -1
  61. package/dist/tools/web-search.js +6 -2
  62. package/dist/tools/web-search.js.map +1 -1
  63. package/dist/types/index.d.ts +1 -0
  64. package/dist/types/index.d.ts.map +1 -1
  65. package/dist/ui/components/App.d.ts +3 -2
  66. package/dist/ui/components/App.d.ts.map +1 -1
  67. package/dist/ui/components/App.js +107 -16
  68. package/dist/ui/components/App.js.map +1 -1
  69. package/dist/ui/components/CodeBlock.d.ts.map +1 -1
  70. package/dist/ui/components/CodeBlock.js +15 -3
  71. package/dist/ui/components/CodeBlock.js.map +1 -1
  72. package/dist/ui/components/ConfirmPrompt.d.ts.map +1 -1
  73. package/dist/ui/components/ConfirmPrompt.js +32 -20
  74. package/dist/ui/components/ConfirmPrompt.js.map +1 -1
  75. package/dist/ui/components/DiffViewer.d.ts.map +1 -1
  76. package/dist/ui/components/DiffViewer.js +16 -2
  77. package/dist/ui/components/DiffViewer.js.map +1 -1
  78. package/dist/ui/components/InputBox.d.ts.map +1 -1
  79. package/dist/ui/components/InputBox.js +26 -9
  80. package/dist/ui/components/InputBox.js.map +1 -1
  81. package/dist/ui/components/LoadingIndicator.d.ts.map +1 -1
  82. package/dist/ui/components/LoadingIndicator.js +6 -2
  83. package/dist/ui/components/LoadingIndicator.js.map +1 -1
  84. package/dist/ui/components/MarkdownRenderer.d.ts.map +1 -1
  85. package/dist/ui/components/MarkdownRenderer.js +8 -12
  86. package/dist/ui/components/MarkdownRenderer.js.map +1 -1
  87. package/dist/ui/components/StreamingMessageDisplay.d.ts +6 -7
  88. package/dist/ui/components/StreamingMessageDisplay.d.ts.map +1 -1
  89. package/dist/ui/components/StreamingMessageDisplay.js +69 -12
  90. package/dist/ui/components/StreamingMessageDisplay.js.map +1 -1
  91. package/dist/ui/components/ToolExecutionMessage.d.ts.map +1 -1
  92. package/dist/ui/components/ToolExecutionMessage.js +44 -16
  93. package/dist/ui/components/ToolExecutionMessage.js.map +1 -1
  94. package/dist/ui/components/WelcomeBanner.d.ts.map +1 -1
  95. package/dist/ui/components/WelcomeBanner.js.map +1 -1
  96. package/dist/ui/utils/duplication-detector.d.ts +32 -0
  97. package/dist/ui/utils/duplication-detector.d.ts.map +1 -0
  98. package/dist/ui/utils/duplication-detector.js +227 -0
  99. package/dist/ui/utils/duplication-detector.js.map +1 -0
  100. package/dist/ui/utils/duplication-logger.d.ts +21 -0
  101. package/dist/ui/utils/duplication-logger.d.ts.map +1 -0
  102. package/dist/ui/utils/duplication-logger.js +85 -0
  103. package/dist/ui/utils/duplication-logger.js.map +1 -0
  104. package/dist/ui/utils/terminal-scanner.d.ts +19 -0
  105. package/dist/ui/utils/terminal-scanner.d.ts.map +1 -0
  106. package/dist/ui/utils/terminal-scanner.js +217 -0
  107. package/dist/ui/utils/terminal-scanner.js.map +1 -0
  108. package/package.json +2 -5
@@ -5,22 +5,24 @@ import { dirname } from 'path';
5
5
  const __filename = fileURLToPath(import.meta.url);
6
6
  const __dirname = dirname(__filename);
7
7
  import { ConfigManager } from './config/manager.js';
8
- import { ProviderFactory } from './ai/provider-factory.js';
9
8
  import { ToolRegistry } from './tools/registry.js';
10
9
  import { readFileTool, writeFileTool, editFileTool, listDirectoryTool } from './tools/file-ops.js';
11
10
  import { executeCommandTool, grepSearchTool } from './tools/command.js';
12
11
  import { webSearchTool, fetchUrlTool } from './tools/web-search.js';
13
12
  import { apiClient } from './services/api-client.js';
14
13
  import { conversationManager } from './services/conversation-manager.js';
14
+ import { aiServiceClient } from './services/ai-service-client.js';
15
+ import { SUPPORTED_MODELS, getModelDisplayName, isValidModel, getInvalidModelError } from './config/models.js';
16
+ import { authenticateWithGoogle } from './services/auth-handler.js';
15
17
  export class CentaurusCLI {
16
18
  configManager;
17
19
  toolRegistry;
18
20
  conversationHistory = [];
19
21
  systemPrompt;
20
- aiProvider = null;
21
22
  cwd;
22
23
  planMode = false;
23
24
  onResponseCallback;
25
+ onResponseStreamCallback;
24
26
  onShowPickerCallback;
25
27
  onToolExecutionUpdate;
26
28
  onToolApprovalRequest;
@@ -37,6 +39,9 @@ export class CentaurusCLI {
37
39
  setOnResponseCallback(callback) {
38
40
  this.onResponseCallback = callback;
39
41
  }
42
+ setOnResponseStreamCallback(callback) {
43
+ this.onResponseStreamCallback = callback;
44
+ }
40
45
  setOnShowPickerCallback(callback) {
41
46
  this.onShowPickerCallback = callback;
42
47
  }
@@ -59,34 +64,21 @@ export class CentaurusCLI {
59
64
  return this.planMode;
60
65
  }
61
66
  async handlePickerSelection(selection, pickerType) {
62
- let responseMessage = '';
63
- if (pickerType === 'model') {
67
+ try {
68
+ // Validate and set model (ConfigManager will validate)
64
69
  this.configManager.set('model', selection);
65
- responseMessage = `Model changed to: ${selection}`;
66
- // Reinitialize AI provider with new model
67
- const cfg = this.configManager.load();
68
- if (this.configManager.isComplete()) {
69
- this.aiProvider = ProviderFactory.createProvider(cfg);
70
+ const responseMessage = `Model changed to: ${selection}`;
71
+ // Send response back to UI
72
+ if (this.onResponseCallback) {
73
+ this.onResponseCallback(responseMessage);
70
74
  }
71
75
  }
72
- else if (pickerType === 'provider') {
73
- this.configManager.set('provider', selection);
74
- responseMessage = `Provider changed to: ${selection}\n\nNote: Make sure you have configured the API key for this provider.`;
75
- // Reinitialize AI provider with new provider
76
- const cfg = this.configManager.load();
77
- if (this.configManager.isComplete()) {
78
- try {
79
- this.aiProvider = ProviderFactory.createProvider(cfg);
80
- }
81
- catch (error) {
82
- responseMessage += `\n\nError: ${error.message}`;
83
- }
76
+ catch (error) {
77
+ // Send error message to UI
78
+ if (this.onResponseCallback) {
79
+ this.onResponseCallback(`āŒ ${error.message}`);
84
80
  }
85
81
  }
86
- // Send response back to UI
87
- if (this.onResponseCallback) {
88
- this.onResponseCallback(responseMessage);
89
- }
90
82
  }
91
83
  async initialize() {
92
84
  // Register tools
@@ -104,10 +96,42 @@ export class CentaurusCLI {
104
96
  if (apiClient.isAuthenticated()) {
105
97
  this.configManager.enableBackendSync();
106
98
  }
107
- // Initialize AI provider if config is complete
108
- if (this.configManager.isComplete()) {
109
- this.aiProvider = ProviderFactory.createProvider(config);
99
+ // Note: No need to initialize AI provider - using backend proxy via aiServiceClient
100
+ }
101
+ /**
102
+ * Get migration message if configuration was migrated
103
+ * Returns null if no migration occurred
104
+ */
105
+ getMigrationMessage() {
106
+ if (this.configManager.wasMigrationPerformed()) {
107
+ // Reset flag so message only shows once
108
+ this.configManager.resetMigrationFlag();
109
+ return `
110
+ ╔════════════════════════════════════════════════════════════════════════════╗
111
+ ā•‘ CONFIGURATION UPDATE NOTICE ā•‘
112
+ ā•šā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•ā•
113
+
114
+ Your Centaurus CLI configuration has been automatically updated to the new format.
115
+
116
+ šŸ“‹ What Changed:
117
+ • API keys are now managed centrally by the backend service
118
+ • Local API key storage has been removed from your configuration
119
+ • All AI requests now go through the backend for improved security
120
+
121
+ šŸ” Authentication Required:
122
+ • You must be signed in to use AI features
123
+ • Your authentication is already active for this session
124
+
125
+ āœ… Your Preferences Preserved:
126
+ • Model selection: ${this.configManager.get('model') || 'gemini-2.0-flash-exp'}
127
+ • Other settings remain unchanged
128
+
129
+ ā„¹ļø This is a one-time migration. Your configuration is now up to date.
130
+
131
+ Press Enter to continue...
132
+ `;
110
133
  }
134
+ return null;
111
135
  }
112
136
  /**
113
137
  * Check if user is authenticated
@@ -125,7 +149,8 @@ export class CentaurusCLI {
125
149
  try {
126
150
  const config = this.configManager.load();
127
151
  const title = `Conversation ${new Date().toLocaleString()}`;
128
- await conversationManager.startNewConversation(title, config.model || 'gemini-2.0-flash-exp', config.provider || 'google', this.cwd);
152
+ await conversationManager.startNewConversation(title, config.model || 'gemini-2.0-flash-exp', 'google', // Always use Google provider now
153
+ this.cwd);
129
154
  this.conversationStarted = true;
130
155
  }
131
156
  catch (error) {
@@ -164,13 +189,9 @@ export class CentaurusCLI {
164
189
  await this.handleSlashCommand(message);
165
190
  return;
166
191
  }
167
- // Ensure AI provider is initialized
168
- if (!this.aiProvider) {
169
- const config = this.configManager.load();
170
- if (!this.configManager.isComplete()) {
171
- throw new Error('Configuration incomplete. Please set up your API key.');
172
- }
173
- this.aiProvider = ProviderFactory.createProvider(config);
192
+ // Check authentication
193
+ if (!apiClient.isAuthenticated()) {
194
+ throw new Error('Authentication required. Please sign in to use AI features.');
174
195
  }
175
196
  // Add user message to history
176
197
  this.conversationHistory.push({
@@ -202,6 +223,9 @@ export class CentaurusCLI {
202
223
  }
203
224
  },
204
225
  };
226
+ // Get selected model from config
227
+ const config = this.configManager.load();
228
+ const selectedModel = config.model || 'gemini-2.0-flash-exp';
205
229
  let finalAssistantMessage = '';
206
230
  const MAX_TURNS = 10; // Prevent infinite loops
207
231
  let turnCount = 0;
@@ -210,15 +234,26 @@ export class CentaurusCLI {
210
234
  turnCount++;
211
235
  let assistantMessage = '';
212
236
  let toolCalls = [];
213
- // Stream AI response
214
- for await (const chunk of this.aiProvider.stream({ messages, tools })) {
215
- if (chunk.text) {
216
- assistantMessage += chunk.text;
237
+ // Stream AI response from backend
238
+ for await (const chunk of aiServiceClient.streamChat(selectedModel, messages, tools)) {
239
+ // Handle error chunks
240
+ if (chunk.type === 'error') {
241
+ throw new Error(chunk.message);
217
242
  }
218
- if (chunk.toolCalls) {
219
- toolCalls.push(...chunk.toolCalls);
243
+ // Handle text chunks
244
+ if (chunk.type === 'text') {
245
+ assistantMessage += chunk.content;
246
+ // Send chunk to UI in real-time
247
+ if (this.onResponseStreamCallback) {
248
+ this.onResponseStreamCallback(chunk.content);
249
+ }
220
250
  }
221
- if (chunk.done) {
251
+ // Handle tool call chunks
252
+ if (chunk.type === 'tool_call') {
253
+ toolCalls.push(chunk.toolCall);
254
+ }
255
+ // Handle done chunk
256
+ if (chunk.type === 'done') {
222
257
  break;
223
258
  }
224
259
  }
@@ -286,18 +321,22 @@ export class CentaurusCLI {
286
321
  });
287
322
  }
288
323
  }
289
- // For Gemini, we need to properly format function responses
290
324
  // Add assistant message with tool calls to conversation history
291
325
  this.conversationHistory.push({
292
326
  role: 'assistant',
293
327
  content: assistantMessage || '',
294
328
  });
295
- // Add tool results to conversation history as user messages
296
- const toolResultsText = toolResults.map(tr => `Tool "${tr.name}" returned:\n${tr.content}`).join('\n\n');
297
- this.conversationHistory.push({
298
- role: 'user',
299
- content: toolResultsText,
300
- });
329
+ // Add tool results to conversation history as tool messages
330
+ for (const toolResult of toolResults) {
331
+ this.conversationHistory.push({
332
+ role: 'tool',
333
+ content: JSON.stringify({
334
+ tool_call_id: toolResult.tool_call_id,
335
+ name: toolResult.name,
336
+ result: toolResult.content,
337
+ }),
338
+ });
339
+ }
301
340
  // Rebuild messages array with updated history
302
341
  messages = [
303
342
  { role: 'system', content: systemContent },
@@ -361,15 +400,61 @@ export class CentaurusCLI {
361
400
  `/help - Show this help message\n` +
362
401
  `/clear - Clear conversation history\n` +
363
402
  `/config - View current configuration\n` +
364
- `/config set <key> <value> - Set configuration value\n` +
365
- `/model - List available models or set model\n` +
366
- `/provider - List providers or switch provider\n` +
403
+ `/model - Select from available Google models\n` +
367
404
  `/plan - Toggle plan mode for complex implementations\n` +
405
+ `/sign-in - Sign in with Google (if not already signed in)\n` +
368
406
  `/logout - Sign out, clear session, and exit CLI\n` +
369
- `/exit - Exit the application\n\n` +
370
- `Examples:\n` +
371
- `/config set googleApiKey YOUR_API_KEY\n` +
372
- `/config set openrouterApiKey YOUR_API_KEY`;
407
+ `/exit - Exit the application`;
408
+ break;
409
+ case 'sign-in':
410
+ // Check if already authenticated
411
+ if (apiClient.isAuthenticated()) {
412
+ try {
413
+ // Verify session is valid
414
+ const user = await apiClient.getCurrentUser();
415
+ responseMessage = `āœ… You are already signed in as ${user.fullName} (${user.email})`;
416
+ }
417
+ catch (error) {
418
+ // Session is invalid, proceed with sign-in
419
+ responseMessage = 'šŸ” Starting authentication process...\n';
420
+ // Send initial response
421
+ if (this.onResponseCallback) {
422
+ this.onResponseCallback(responseMessage);
423
+ }
424
+ // Attempt authentication
425
+ const result = await authenticateWithGoogle();
426
+ if (result.success) {
427
+ // Enable backend sync after successful authentication
428
+ this.configManager.enableBackendSync();
429
+ this.conversationStarted = false; // Reset conversation to start fresh
430
+ responseMessage = `āœ… Successfully signed in as ${result.user?.fullName || 'User'}!\n\n` +
431
+ `Cloud sync is now enabled. Your conversations and settings will be saved.`;
432
+ }
433
+ else {
434
+ responseMessage = `āŒ Authentication failed: ${result.error || 'Unknown error'}`;
435
+ }
436
+ }
437
+ }
438
+ else {
439
+ // Not authenticated, proceed with sign-in
440
+ responseMessage = 'šŸ” Starting authentication process...\n';
441
+ // Send initial response
442
+ if (this.onResponseCallback) {
443
+ this.onResponseCallback(responseMessage);
444
+ }
445
+ // Attempt authentication
446
+ const result = await authenticateWithGoogle();
447
+ if (result.success) {
448
+ // Enable backend sync after successful authentication
449
+ this.configManager.enableBackendSync();
450
+ this.conversationStarted = false; // Reset conversation to start fresh
451
+ responseMessage = `āœ… Successfully signed in as ${result.user?.fullName || 'User'}!\n\n` +
452
+ `Cloud sync is now enabled. Your conversations and settings will be saved.`;
453
+ }
454
+ else {
455
+ responseMessage = `āŒ Authentication failed: ${result.error || 'Unknown error'}`;
456
+ }
457
+ }
373
458
  break;
374
459
  case 'logout':
375
460
  try {
@@ -401,104 +486,63 @@ export class CentaurusCLI {
401
486
  }
402
487
  case 'plan':
403
488
  this.planMode = !this.planMode;
404
- responseMessage = `Plan mode ${this.planMode ? 'ENABLED' : 'DISABLED'}.\n\n` +
405
- (this.planMode
406
- ? 'In plan mode, I will create detailed implementation plans before executing tasks.'
407
- : 'Plan mode is now off. I will execute tasks directly.');
408
489
  // Notify UI of plan mode change
409
490
  if (this.onPlanModeChange) {
410
491
  this.onPlanModeChange(this.planMode);
411
492
  }
412
- break;
493
+ // Don't send any response message - the status bar shows the mode
494
+ return;
413
495
  case 'clear':
414
496
  this.conversationHistory = [];
415
497
  this.conversationStarted = false;
416
- responseMessage = 'Conversation history cleared.';
417
- break;
498
+ // Don't send any response message - the UI will handle clearing
499
+ return;
418
500
  case 'config':
419
501
  if (args.length >= 2 && args[0].toLowerCase() === 'set') {
420
502
  // Set config value: /config set <key> <value>
421
503
  const configKey = args[1];
422
504
  const configValue = args.slice(2).join(' ');
423
505
  if (!configValue) {
424
- responseMessage = `Error: No value provided.\nUsage: /config set <key> <value>`;
506
+ responseMessage = `āŒ Error: No value provided.\nUsage: /config set <key> <value>`;
425
507
  }
426
- else if (configKey === 'googleApiKey' || configKey === 'openrouterApiKey' || configKey === 'model' || configKey === 'provider') {
427
- this.configManager.set(configKey, configValue);
428
- // Show appropriate message for API keys
429
- let displayValue = configValue;
430
- if (configKey.includes('ApiKey')) {
431
- const keys = configValue.split(',').map(k => k.trim()).filter(k => k.length > 0);
432
- if (keys.length > 1) {
433
- displayValue = `${keys.length} keys (rotation enabled)`;
434
- }
435
- else {
436
- displayValue = '***' + configValue.slice(-4);
437
- }
508
+ else if (configKey === 'model') {
509
+ // Validate model
510
+ if (!isValidModel(configValue)) {
511
+ responseMessage = `āŒ ${getInvalidModelError(configValue)}`;
512
+ break;
438
513
  }
439
- responseMessage = `Configuration updated: ${configKey} = ${displayValue}\n\n`;
440
- // Reinitialize provider if API key was set
441
- if (configKey.includes('ApiKey') && this.configManager.isComplete()) {
442
- try {
443
- this.aiProvider = ProviderFactory.createProvider(this.configManager.load());
444
- responseMessage += 'AI provider initialized successfully!';
445
- }
446
- catch (error) {
447
- responseMessage += `Warning: ${error.message}`;
448
- }
514
+ try {
515
+ this.configManager.set('model', configValue);
516
+ responseMessage = `āœ… Configuration updated: ${configKey} = ${configValue}`;
517
+ }
518
+ catch (error) {
519
+ responseMessage = `āŒ Failed to update configuration: ${error.message}`;
449
520
  }
450
521
  }
451
522
  else {
452
- responseMessage = `Error: Unknown config key: ${configKey}\nValid keys: googleApiKey, openrouterApiKey, model, provider`;
523
+ responseMessage = `āŒ Error: Unknown config key: ${configKey}\nValid keys: model`;
453
524
  }
454
525
  }
455
526
  else {
456
527
  // View config
457
528
  const config = this.configManager.load();
458
- const apiKey = config.provider === 'google' ? config.googleApiKey : config.openrouterApiKey;
459
- const providerName = config.provider === 'google' ? 'Google' : 'OpenRouter';
460
- const requiredKeyName = config.provider === 'google' ? 'googleApiKey' : 'openrouterApiKey';
461
- // Parse keys to show count
462
- const keys = config.provider === 'google'
463
- ? this.configManager.getGoogleApiKeys()
464
- : this.configManager.getOpenRouterApiKeys();
465
- const keyDisplay = keys.length > 0
466
- ? `${keys.length} key(s) configured ${keys.length > 1 ? '(rotation enabled)' : ''}`
467
- : 'āŒ Not set';
468
529
  responseMessage = `Current Configuration:\n\n` +
469
- `Provider: ${config.provider || 'Not set'}\n` +
470
- `Model: ${config.model || 'Not set'}\n` +
471
- `API Keys (${providerName}): ${keyDisplay}\n\n`;
472
- // Show helpful message if API key is not set
473
- if (!apiKey) {
474
- responseMessage += `āš ļø API Key Required!\n\n` +
475
- `To use ${providerName}, set your API key:\n` +
476
- `/config set ${requiredKeyName} YOUR_API_KEY\n\n`;
477
- if (config.provider === 'google') {
478
- responseMessage += `Get your Google AI Studio API key at:\nhttps://makersuite.google.com/app/apikey`;
479
- }
480
- else {
481
- responseMessage += `Get your OpenRouter API key at:\nhttps://openrouter.ai/keys`;
482
- }
483
- }
530
+ `Model: ${config.model || 'gemini-2.0-flash-exp (default)'}\n` +
531
+ `Authentication: ${apiClient.isAuthenticated() ? 'āœ… Signed in' : 'āŒ Not signed in'}`;
484
532
  }
485
533
  break;
486
534
  case 'model':
487
535
  if (args.length === 0) {
488
536
  // Show picker for model selection
489
537
  if (this.onShowPickerCallback) {
490
- const currentModel = this.configManager.load().model;
538
+ const currentModel = this.configManager.load().model || 'gemini-2.0-flash-exp';
491
539
  this.onShowPickerCallback({
492
540
  message: 'Select Model',
493
541
  type: 'model',
494
- choices: [
495
- { label: `gemini-2.5-flash${currentModel === 'gemini-2.5-flash' ? ' [CURRENT]' : ''}`, value: 'gemini-2.5-flash' },
496
- { label: `gemini-2.5-pro${currentModel === 'gemini-2.5-pro' ? ' [CURRENT]' : ''}`, value: 'gemini-2.5-pro' },
497
- { label: `gemini-2.0-flash-exp${currentModel === 'gemini-2.0-flash-exp' ? ' [CURRENT]' : ''}`, value: 'gemini-2.0-flash-exp' },
498
- { label: `gemini-2.0-flash-thinking-exp${currentModel === 'gemini-2.0-flash-thinking-exp' ? ' [CURRENT]' : ''}`, value: 'gemini-2.0-flash-thinking-exp' },
499
- { label: `gemini-1.5-pro${currentModel === 'gemini-1.5-pro' ? ' [CURRENT]' : ''}`, value: 'gemini-1.5-pro' },
500
- { label: `gemini-1.5-flash${currentModel === 'gemini-1.5-flash' ? ' [CURRENT]' : ''}`, value: 'gemini-1.5-flash' },
501
- ]
542
+ choices: SUPPORTED_MODELS.map(model => ({
543
+ label: `${getModelDisplayName(model)}${currentModel === model ? ' [CURRENT]' : ''}`,
544
+ value: model
545
+ }))
502
546
  });
503
547
  return; // Don't send a text response, picker will handle it
504
548
  }
@@ -506,50 +550,17 @@ export class CentaurusCLI {
506
550
  else {
507
551
  // Direct set via command argument
508
552
  const newModel = args.join(' ');
509
- this.configManager.set('model', newModel);
510
- responseMessage = `Model changed to: ${newModel}`;
511
- // Reinitialize AI provider with new model
512
- const cfg = this.configManager.load();
513
- if (this.configManager.isComplete()) {
514
- this.aiProvider = ProviderFactory.createProvider(cfg);
515
- }
516
- }
517
- break;
518
- case 'provider':
519
- if (args.length === 0) {
520
- // Show picker for provider selection
521
- if (this.onShowPickerCallback) {
522
- const currentProvider = this.configManager.load().provider;
523
- this.onShowPickerCallback({
524
- message: 'Select Provider',
525
- type: 'provider',
526
- choices: [
527
- { label: `google (Google Gemini)${currentProvider === 'google' ? ' [CURRENT]' : ''}`, value: 'google' },
528
- { label: `openrouter (OpenRouter)${currentProvider === 'openrouter' ? ' [CURRENT]' : ''}`, value: 'openrouter' },
529
- ]
530
- });
531
- return; // Don't send a text response, picker will handle it
553
+ // Validate model
554
+ if (!isValidModel(newModel)) {
555
+ responseMessage = `āŒ ${getInvalidModelError(newModel)}`;
556
+ break;
532
557
  }
533
- }
534
- else {
535
- // Direct set via command argument
536
- const newProvider = args[0].toLowerCase();
537
- if (newProvider !== 'google' && newProvider !== 'openrouter') {
538
- responseMessage = `Invalid provider: ${newProvider}\nAvailable: google, openrouter`;
558
+ try {
559
+ this.configManager.set('model', newModel);
560
+ responseMessage = `āœ… Model changed to: ${newModel}`;
539
561
  }
540
- else {
541
- this.configManager.set('provider', newProvider);
542
- responseMessage = `Provider changed to: ${newProvider}\n\nNote: Make sure you have configured the API key for this provider.`;
543
- // Reinitialize AI provider with new provider
544
- const cfg = this.configManager.load();
545
- if (this.configManager.isComplete()) {
546
- try {
547
- this.aiProvider = ProviderFactory.createProvider(cfg);
548
- }
549
- catch (error) {
550
- responseMessage += `\n\nError: ${error.message}`;
551
- }
552
- }
562
+ catch (error) {
563
+ responseMessage = `āŒ Failed to set model: ${error.message}`;
553
564
  }
554
565
  }
555
566
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"cli-adapter.js","sourceRoot":"","sources":["../src/cli-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-adapter.js","sourceRoot":"","sources":["../src/cli-adapter.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ export interface Command {
11
11
  export interface CommandResult {
12
12
  success: boolean;
13
13
  message?: string;
14
- action?: 'exit' | 'clear' | 'show-help' | 'show-config' | 'show-model-picker' | 'show-provider-picker' | 'toggle-plan-mode';
14
+ action?: 'exit' | 'clear' | 'show-help' | 'show-config' | 'show-model-picker' | 'toggle-plan-mode';
15
15
  data?: any;
16
16
  }
17
17
  export declare class CommandParser {
@@ -1 +1 @@
1
- {"version":3,"file":"CommandParser.d.ts","sourceRoot":"","sources":["../../src/commands/CommandParser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,WAAW,GAAG,aAAa,GAAG,mBAAmB,GAAG,sBAAsB,GAAG,kBAAkB,CAAC;IAC5H,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAmC;;IAMnD,OAAO,CAAC,uBAAuB;IAiL/B,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAU1B,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IA+BzD,OAAO,IAAI,MAAM;IA8BjB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAGlC;AAED,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"CommandParser.d.ts","sourceRoot":"","sources":["../../src/commands/CommandParser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,WAAW,GAAG,aAAa,GAAG,mBAAmB,GAAG,kBAAkB,CAAC;IACnG,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAmC;;IAMnD,OAAO,CAAC,uBAAuB;IAgK/B,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAU1B,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IA+BzD,OAAO,IAAI,MAAM;IAgCjB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAGlC;AAED,eAAe,aAAa,CAAC"}
@@ -38,23 +38,6 @@ export class CommandParser {
38
38
  };
39
39
  }
40
40
  });
41
- this.register({
42
- name: 'provider',
43
- description: 'Select AI provider',
44
- aliases: ['p'],
45
- execute: async (args) => {
46
- if (args.length > 0) {
47
- return {
48
- success: true,
49
- data: { provider: args[0] }
50
- };
51
- }
52
- return {
53
- success: true,
54
- action: 'show-provider-picker'
55
- };
56
- }
57
- });
58
41
  this.register({
59
42
  name: 'config',
60
43
  description: 'View or edit configuration',
@@ -226,8 +209,10 @@ export class CommandParser {
226
209
  help += ' **?** - Show this help\n';
227
210
  help += '\nšŸ’” **Examples:**\n';
228
211
  help += ' `/model gemini-2.0-flash-exp` - Switch to a specific model\n';
229
- help += ' `/config set autoAccept true` - Enable auto-accept mode\n';
212
+ help += ' `/config set model gemini-2.5-flash` - Set preferred model\n';
230
213
  help += ' `/session save my-work` - Save current session\n';
214
+ help += '\nšŸ“ **Note:**\n';
215
+ help += ' All AI requests are handled through the backend using Google Gemini models.\n';
231
216
  return help;
232
217
  }
233
218
  isCommand(input) {