@vybestack/llxprt-code-core 0.2.2 → 0.2.4-nightly.250911.a02d82b8

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 (35) hide show
  1. package/dist/src/core/client.d.ts +1 -0
  2. package/dist/src/core/client.js +19 -5
  3. package/dist/src/core/client.js.map +1 -1
  4. package/dist/src/core/geminiChat.js +20 -12
  5. package/dist/src/core/geminiChat.js.map +1 -1
  6. package/dist/src/core/logger.d.ts +2 -1
  7. package/dist/src/core/logger.js +20 -3
  8. package/dist/src/core/logger.js.map +1 -1
  9. package/dist/src/debug/DebugLogger.d.ts +1 -0
  10. package/dist/src/debug/DebugLogger.js +4 -0
  11. package/dist/src/debug/DebugLogger.js.map +1 -1
  12. package/dist/src/providers/anthropic/AnthropicProvider.d.ts +5 -0
  13. package/dist/src/providers/anthropic/AnthropicProvider.js +21 -2
  14. package/dist/src/providers/anthropic/AnthropicProvider.js.map +1 -1
  15. package/dist/src/providers/openai/OpenAIProvider.d.ts +10 -0
  16. package/dist/src/providers/openai/OpenAIProvider.js +278 -86
  17. package/dist/src/providers/openai/OpenAIProvider.js.map +1 -1
  18. package/dist/src/services/todo-reminder-service.js +2 -1
  19. package/dist/src/services/todo-reminder-service.js.map +1 -1
  20. package/dist/src/settings/SettingsService.js.map +1 -1
  21. package/dist/src/tools/ToolFormatter.d.ts +13 -0
  22. package/dist/src/tools/ToolFormatter.js +99 -88
  23. package/dist/src/tools/ToolFormatter.js.map +1 -1
  24. package/dist/src/tools/todo-pause.js +2 -2
  25. package/dist/src/tools/todo-pause.js.map +1 -1
  26. package/dist/src/tools/todo-schemas.d.ts +31 -31
  27. package/dist/src/tools/todo-schemas.js +8 -3
  28. package/dist/src/tools/todo-schemas.js.map +1 -1
  29. package/dist/src/tools/todo-write.js +2 -2
  30. package/dist/src/tools/todo-write.js.map +1 -1
  31. package/dist/src/tools/tool-registry.d.ts +9 -1
  32. package/dist/src/tools/tool-registry.js +87 -24
  33. package/dist/src/tools/tool-registry.js.map +1 -1
  34. package/dist/src/types/modelParams.d.ts +4 -0
  35. package/package.json +1 -1
@@ -23,9 +23,11 @@ import * as https from 'https';
23
23
  import * as net from 'net';
24
24
  import { BaseProvider } from '../BaseProvider.js';
25
25
  import { DebugLogger } from '../../debug/index.js';
26
+ import { getSettingsService } from '../../settings/settingsServiceInstance.js';
26
27
  import { ToolFormatter } from '../../tools/ToolFormatter.js';
27
28
  import { processToolParameters } from '../../tools/doubleEscapeUtils.js';
28
29
  import { getCoreSystemPromptAsync } from '../../core/prompts.js';
30
+ import { retryWithBackoff } from '../../utils/retry.js';
29
31
  export class OpenAIProvider extends BaseProvider {
30
32
  name = 'openai';
31
33
  logger;
@@ -288,16 +290,16 @@ export class OpenAIProvider extends BaseProvider {
288
290
  */
289
291
  async *generateChatCompletion(contents, tools) {
290
292
  // Debug log what we receive
291
- this.logger.debug(() => `[OpenAIProvider] generateChatCompletion received tools:`, {
292
- hasTools: !!tools,
293
- toolsLength: tools?.length,
294
- toolsType: typeof tools,
295
- isArray: Array.isArray(tools),
296
- firstToolName: tools?.[0]?.functionDeclarations?.[0]?.name,
297
- toolsStructure: tools
298
- ? JSON.stringify(tools).substring(0, 200)
299
- : 'undefined',
300
- });
293
+ if (this.logger.enabled) {
294
+ this.logger.debug(() => `[OpenAIProvider] generateChatCompletion received tools:`, {
295
+ hasTools: !!tools,
296
+ toolsLength: tools?.length,
297
+ toolsType: typeof tools,
298
+ isArray: Array.isArray(tools),
299
+ firstToolName: tools?.[0]?.functionDeclarations?.[0]?.name,
300
+ toolsStructure: tools ? 'available' : 'undefined',
301
+ });
302
+ }
301
303
  // Pass tools directly in Gemini format - they'll be converted in generateChatCompletionImpl
302
304
  const generator = this.generateChatCompletionImpl(contents, tools, undefined, undefined, undefined);
303
305
  for await (const item of generator) {
@@ -376,31 +378,54 @@ export class OpenAIProvider extends BaseProvider {
376
378
  const model = modelName || this.getModel() || this.getDefaultModel();
377
379
  // Convert IContent to OpenAI messages format
378
380
  const messages = this.convertToOpenAIMessages(contents);
379
- // Debug log what we're about to convert
380
- this.logger.debug(() => `[OpenAIProvider] Before convertGeminiToOpenAI:`, {
381
- inputTools: tools ? JSON.stringify(tools).substring(0, 500) : 'undefined',
382
- hasTools: !!tools,
383
- toolsLength: tools?.length,
384
- firstToolStructure: tools?.[0]
385
- ? JSON.stringify(tools[0]).substring(0, 300)
386
- : 'undefined',
387
- });
388
- // Convert Gemini format tools directly to OpenAI format using the new method
389
- const formattedTools = this.toolFormatter.convertGeminiToOpenAI(tools);
390
- // Debug log the conversion result
391
- this.logger.debug(() => `[OpenAIProvider] After convertGeminiToOpenAI:`, {
392
- inputHadTools: !!tools,
393
- outputHasTools: !!formattedTools,
394
- outputToolsLength: formattedTools?.length,
395
- outputFirstTool: formattedTools?.[0],
396
- outputToolNames: formattedTools?.map((t) => t.function.name),
397
- firstToolParameters: formattedTools?.[0]
398
- ? JSON.stringify(formattedTools[0].function.parameters)
399
- : 'undefined',
381
+ // Detect the tool format to use (once at the start of the method)
382
+ const detectedFormat = this.detectToolFormat();
383
+ // Log the detected format for debugging
384
+ this.logger.debug(() => `[OpenAIProvider] Using tool format '${detectedFormat}' for model '${model}'`, {
385
+ model,
386
+ detectedFormat,
387
+ provider: this.name,
400
388
  });
389
+ // Convert Gemini format tools to the detected format
390
+ let formattedTools = this.toolFormatter.convertGeminiToFormat(tools, detectedFormat);
391
+ // CRITICAL FIX: Ensure we never pass an empty tools array
392
+ // The OpenAI API errors when tools=[] but a tool call is attempted
393
+ if (Array.isArray(formattedTools) && formattedTools.length === 0) {
394
+ this.logger.warn(() => `[OpenAIProvider] CRITICAL: Formatted tools is empty array! Setting to undefined to prevent API errors.`, {
395
+ model,
396
+ inputTools: tools,
397
+ inputToolsLength: tools?.length,
398
+ inputFirstGroup: tools?.[0],
399
+ stackTrace: new Error().stack,
400
+ });
401
+ formattedTools = undefined;
402
+ }
403
+ // Debug log the conversion result - enhanced logging for intermittent issues
404
+ if (this.logger.enabled && formattedTools) {
405
+ this.logger.debug(() => `[OpenAIProvider] Tool conversion summary:`, {
406
+ detectedFormat,
407
+ inputHadTools: !!tools,
408
+ inputToolsLength: tools?.length,
409
+ inputFirstGroup: tools?.[0],
410
+ inputFunctionDeclarationsLength: tools?.[0]?.functionDeclarations?.length,
411
+ outputHasTools: !!formattedTools,
412
+ outputToolsLength: formattedTools?.length,
413
+ outputToolNames: formattedTools?.map((t) => t.function.name),
414
+ });
415
+ }
401
416
  // Get streaming setting from ephemeral settings (default: enabled)
402
417
  const streamingSetting = this.providerConfig?.getEphemeralSettings?.()?.['streaming'];
403
- const streamingEnabled = streamingSetting !== 'disabled';
418
+ let streamingEnabled = streamingSetting !== 'disabled';
419
+ // WORKAROUND: Disable streaming for Cerebras/Qwen when tools are present
420
+ // Their API has a bug where mixing text + tool calls in streaming fails
421
+ if (streamingEnabled &&
422
+ formattedTools &&
423
+ formattedTools.length > 0 &&
424
+ (model.toLowerCase().includes('qwen') ||
425
+ this.getBaseURL()?.includes('cerebras'))) {
426
+ this.logger.warn(() => `[OpenAIProvider] Disabling streaming for ${model} with tools due to known API bug with mixed text/tool responses`);
427
+ streamingEnabled = false;
428
+ }
404
429
  // Get the system prompt
405
430
  const userMemory = this.globalConfig?.getUserMemory
406
431
  ? this.globalConfig.getUserMemory()
@@ -412,19 +437,26 @@ export class OpenAIProvider extends BaseProvider {
412
437
  ...messages,
413
438
  ];
414
439
  // Build request - only include tools if they exist and are not empty
440
+ // IMPORTANT: Create a deep copy of tools to prevent mutation issues
415
441
  const requestBody = {
416
442
  model,
417
443
  messages: messagesWithSystem,
418
444
  ...(formattedTools && formattedTools.length > 0
419
- ? { tools: formattedTools }
445
+ ? {
446
+ // Deep clone the tools array to prevent any mutation issues
447
+ tools: JSON.parse(JSON.stringify(formattedTools)),
448
+ // Add tool_choice for Qwen/Cerebras to ensure proper tool calling
449
+ tool_choice: 'auto',
450
+ }
420
451
  : {}),
421
452
  max_tokens: maxTokens,
422
453
  stream: streamingEnabled,
423
454
  };
424
- // Debug log the full request for Cerebras/Qwen
425
- if (model.toLowerCase().includes('qwen') ||
426
- this.getBaseURL()?.includes('cerebras')) {
427
- this.logger.debug(() => `Full request to ${this.getBaseURL()} for model ${model}:`, {
455
+ // Debug log request summary for Cerebras/Qwen
456
+ if (this.logger.enabled &&
457
+ (model.toLowerCase().includes('qwen') ||
458
+ this.getBaseURL()?.includes('cerebras'))) {
459
+ this.logger.debug(() => `Request to ${this.getBaseURL()} for model ${model}:`, {
428
460
  baseURL: this.getBaseURL(),
429
461
  model,
430
462
  streamingEnabled,
@@ -432,49 +464,64 @@ export class OpenAIProvider extends BaseProvider {
432
464
  toolCount: formattedTools?.length || 0,
433
465
  messageCount: messages.length,
434
466
  toolsInRequest: 'tools' in requestBody ? requestBody.tools?.length : 'not included',
435
- requestBody: {
436
- ...requestBody,
437
- messages: messages.slice(-2), // Only log last 2 messages for brevity
438
- tools: requestBody.tools?.slice(0, 2), // Only log first 2 tools for brevity if they exist
439
- },
440
467
  });
441
468
  }
442
469
  // Get OpenAI client
443
470
  const client = await this.getClient();
444
- // Wrap the API call with retry logic
445
- const makeApiCall = async () => {
446
- const response = await client.chat.completions.create(requestBody, {
447
- signal: abortSignal,
471
+ // Get retry settings from ephemeral settings
472
+ const ephemeralSettings = this.providerConfig?.getEphemeralSettings?.() || {};
473
+ const maxRetries = ephemeralSettings['retries'] ?? 6; // Default for OpenAI
474
+ const initialDelayMs = ephemeralSettings['retrywait'] ?? 4000; // Default for OpenAI
475
+ // Log the exact tools being sent for debugging
476
+ if (this.logger.enabled && 'tools' in requestBody) {
477
+ this.logger.debug(() => `[OpenAIProvider] Exact tools being sent to API:`, {
478
+ toolCount: requestBody.tools?.length,
479
+ toolNames: requestBody.tools?.map((t) => 'function' in t ? t.function?.name : undefined),
480
+ firstTool: requestBody.tools?.[0],
448
481
  });
449
- return response;
450
- };
451
- let retryCount = 0;
452
- const maxRetries = 5;
482
+ }
483
+ // Wrap the API call with retry logic using centralized retry utility
453
484
  let response;
454
- while (retryCount <= maxRetries) {
455
- try {
456
- response = await makeApiCall();
457
- break; // Success, exit retry loop
458
- }
459
- catch (error) {
460
- if (retryCount === maxRetries) {
461
- throw error; // Max retries reached, re-throw error
462
- }
463
- retryCount++;
464
- this.logger.debug(() => `API call failed (attempt ${retryCount}), retrying...`, error);
465
- // Exponential backoff: 4s, 8s, 16s, 32s, 64s
466
- const delay = 4000 * Math.pow(2, retryCount - 1);
467
- await new Promise((resolve) => setTimeout(resolve, delay));
468
- }
485
+ try {
486
+ response = await retryWithBackoff(() => client.chat.completions.create(requestBody, { signal: abortSignal }), {
487
+ maxAttempts: maxRetries,
488
+ initialDelayMs,
489
+ maxDelayMs: 30000, // 30 seconds
490
+ shouldRetry: this.shouldRetryResponse.bind(this),
491
+ });
469
492
  }
470
- if (!response) {
471
- throw new Error('Failed to get response after retries');
493
+ catch (error) {
494
+ // Special handling for Cerebras/Qwen "Tool not present" errors
495
+ const errorMessage = String(error);
496
+ if (errorMessage.includes('Tool is not present in the tools list') &&
497
+ (model.toLowerCase().includes('qwen') ||
498
+ this.getBaseURL()?.includes('cerebras'))) {
499
+ this.logger.error('Cerebras/Qwen API error: Tool not found despite being in request. This is a known API issue.', {
500
+ error,
501
+ model,
502
+ toolsProvided: formattedTools?.length || 0,
503
+ toolNames: formattedTools?.map((t) => t.function.name),
504
+ streamingEnabled,
505
+ });
506
+ // Re-throw but with better context
507
+ const enhancedError = new Error(`Cerebras/Qwen API bug: Tool not found in list. We sent ${formattedTools?.length || 0} tools. Known API issue.`);
508
+ enhancedError.originalError =
509
+ error;
510
+ throw enhancedError;
511
+ }
512
+ // Re-throw other errors as-is
513
+ throw error;
472
514
  }
473
515
  // Check if response is streaming or not
474
516
  if (streamingEnabled) {
475
517
  // Process streaming response
476
518
  let _accumulatedText = '';
477
519
  const accumulatedToolCalls = [];
520
+ // Buffer for accumulating text chunks for providers that need it
521
+ let textBuffer = '';
522
+ // Use the same detected format from earlier for consistency
523
+ // Buffer text for Qwen format providers to avoid stanza formatting
524
+ const shouldBufferText = detectedFormat === 'qwen';
478
525
  try {
479
526
  // Handle streaming response
480
527
  for await (const chunk of response) {
@@ -484,20 +531,79 @@ export class OpenAIProvider extends BaseProvider {
484
531
  const choice = chunk.choices?.[0];
485
532
  if (!choice)
486
533
  continue;
487
- // Handle text content - emit immediately without buffering
534
+ // Check for finish_reason to detect proper stream ending
535
+ if (choice.finish_reason) {
536
+ this.logger.debug(() => `[Streaming] Stream finished with reason: ${choice.finish_reason}`, {
537
+ model,
538
+ finishReason: choice.finish_reason,
539
+ hasAccumulatedText: _accumulatedText.length > 0,
540
+ hasAccumulatedTools: accumulatedToolCalls.length > 0,
541
+ hasBufferedText: textBuffer.length > 0,
542
+ });
543
+ // If finish_reason is 'length', the response was cut off
544
+ if (choice.finish_reason === 'length') {
545
+ this.logger.debug(() => `Response truncated due to length limit for model ${model}`);
546
+ }
547
+ // Flush any buffered text when stream finishes
548
+ if (textBuffer.length > 0) {
549
+ yield {
550
+ speaker: 'ai',
551
+ blocks: [
552
+ {
553
+ type: 'text',
554
+ text: textBuffer,
555
+ },
556
+ ],
557
+ };
558
+ textBuffer = '';
559
+ }
560
+ }
561
+ // Handle text content - buffer for Qwen format, emit immediately for others
488
562
  const deltaContent = choice.delta?.content;
489
563
  if (deltaContent) {
490
564
  _accumulatedText += deltaContent;
491
- // Emit text immediately without buffering
492
- yield {
493
- speaker: 'ai',
494
- blocks: [
495
- {
496
- type: 'text',
497
- text: deltaContent,
498
- },
499
- ],
500
- };
565
+ // Debug log for providers that need buffering
566
+ if (shouldBufferText) {
567
+ this.logger.debug(() => `[Streaming] Chunk content for ${detectedFormat} format:`, {
568
+ deltaContent,
569
+ length: deltaContent.length,
570
+ hasNewline: deltaContent.includes('\n'),
571
+ escaped: JSON.stringify(deltaContent),
572
+ bufferSize: textBuffer.length,
573
+ });
574
+ // Buffer text to avoid stanza formatting
575
+ textBuffer += deltaContent;
576
+ // Emit buffered text when we have a complete sentence or paragraph
577
+ // Look for natural break points
578
+ if (textBuffer.includes('\n') ||
579
+ textBuffer.endsWith('. ') ||
580
+ textBuffer.endsWith('! ') ||
581
+ textBuffer.endsWith('? ') ||
582
+ textBuffer.length > 100) {
583
+ yield {
584
+ speaker: 'ai',
585
+ blocks: [
586
+ {
587
+ type: 'text',
588
+ text: textBuffer,
589
+ },
590
+ ],
591
+ };
592
+ textBuffer = '';
593
+ }
594
+ }
595
+ else {
596
+ // For other providers, emit text immediately as before
597
+ yield {
598
+ speaker: 'ai',
599
+ blocks: [
600
+ {
601
+ type: 'text',
602
+ text: deltaContent,
603
+ },
604
+ ],
605
+ };
606
+ }
501
607
  }
502
608
  // Handle tool calls
503
609
  const deltaToolCalls = choice.delta?.tool_calls;
@@ -535,15 +641,43 @@ export class OpenAIProvider extends BaseProvider {
535
641
  throw error;
536
642
  }
537
643
  else {
644
+ // Special handling for Cerebras/Qwen "Tool not present" errors
645
+ const errorMessage = String(error);
646
+ if (errorMessage.includes('Tool is not present in the tools list') &&
647
+ (model.toLowerCase().includes('qwen') ||
648
+ this.getBaseURL()?.includes('cerebras'))) {
649
+ this.logger.error('Cerebras/Qwen API error: Tool not found despite being in request. This is a known API issue.', {
650
+ error,
651
+ model,
652
+ toolsProvided: formattedTools?.length || 0,
653
+ toolNames: formattedTools?.map((t) => t.function.name),
654
+ });
655
+ // Re-throw but with better context
656
+ const enhancedError = new Error(`Cerebras/Qwen API bug: Tool not found in list during streaming. We sent ${formattedTools?.length || 0} tools. Known API issue.`);
657
+ enhancedError.originalError = error;
658
+ throw enhancedError;
659
+ }
538
660
  this.logger.error('Error processing streaming response:', error);
539
661
  throw error;
540
662
  }
541
663
  }
542
- // No need to flush buffer since we're emitting immediately
664
+ // Flush any remaining buffered text
665
+ if (textBuffer.length > 0) {
666
+ yield {
667
+ speaker: 'ai',
668
+ blocks: [
669
+ {
670
+ type: 'text',
671
+ text: textBuffer,
672
+ },
673
+ ],
674
+ };
675
+ textBuffer = '';
676
+ }
543
677
  // Emit accumulated tool calls as IContent if any
544
678
  if (accumulatedToolCalls.length > 0) {
545
679
  const blocks = [];
546
- const detectedFormat = this.detectToolFormat();
680
+ // Use the same detected format from earlier for consistency
547
681
  for (const tc of accumulatedToolCalls) {
548
682
  if (!tc)
549
683
  continue;
@@ -571,6 +705,22 @@ export class OpenAIProvider extends BaseProvider {
571
705
  if (!choice) {
572
706
  throw new Error('No choices in completion response');
573
707
  }
708
+ // Log finish reason for debugging Qwen issues
709
+ if (choice.finish_reason) {
710
+ this.logger.debug(() => `[Non-streaming] Response finish_reason: ${choice.finish_reason}`, {
711
+ model,
712
+ finishReason: choice.finish_reason,
713
+ hasContent: !!choice.message?.content,
714
+ hasToolCalls: !!(choice.message?.tool_calls && choice.message.tool_calls.length > 0),
715
+ contentLength: choice.message?.content?.length || 0,
716
+ toolCallCount: choice.message?.tool_calls?.length || 0,
717
+ detectedFormat,
718
+ });
719
+ // Warn if the response was truncated
720
+ if (choice.finish_reason === 'length') {
721
+ this.logger.warn(() => `Response truncated due to max_tokens limit for model ${model}. Consider increasing max_tokens.`);
722
+ }
723
+ }
574
724
  const blocks = [];
575
725
  // Handle text content
576
726
  if (choice.message?.content) {
@@ -581,7 +731,7 @@ export class OpenAIProvider extends BaseProvider {
581
731
  }
582
732
  // Handle tool calls
583
733
  if (choice.message?.tool_calls && choice.message.tool_calls.length > 0) {
584
- const detectedFormat = this.detectToolFormat();
734
+ // Use the same detected format from earlier for consistency
585
735
  for (const toolCall of choice.message.tool_calls) {
586
736
  if (toolCall.type === 'function') {
587
737
  // Process tool parameters with double-escape handling
@@ -604,29 +754,71 @@ export class OpenAIProvider extends BaseProvider {
604
754
  }
605
755
  }
606
756
  }
757
+ /**
758
+ * Get the tool format for this provider
759
+ * @returns The tool format to use
760
+ */
761
+ getToolFormat() {
762
+ const format = this.detectToolFormat();
763
+ this.logger.debug(() => `getToolFormat() called, returning: ${format}`, {
764
+ provider: this.name,
765
+ model: this.getModel(),
766
+ format,
767
+ });
768
+ return format;
769
+ }
770
+ /**
771
+ * Set tool format override for this provider
772
+ * @param format The format to use, or null to clear override
773
+ */
774
+ setToolFormatOverride(format) {
775
+ const settingsService = getSettingsService();
776
+ if (format === null) {
777
+ settingsService.setProviderSetting(this.name, 'toolFormat', 'auto');
778
+ this.logger.debug(() => `Tool format override cleared for ${this.name}`);
779
+ }
780
+ else {
781
+ settingsService.setProviderSetting(this.name, 'toolFormat', format);
782
+ this.logger.debug(() => `Tool format override set to '${format}' for ${this.name}`);
783
+ }
784
+ // Clear cached client to ensure new format takes effect
785
+ this._cachedClient = undefined;
786
+ this._cachedClientKey = undefined;
787
+ }
607
788
  /**
608
789
  * Detects the tool call format based on the model being used
609
790
  * @returns The detected tool format ('openai' or 'qwen')
610
791
  */
611
792
  detectToolFormat() {
612
793
  try {
613
- // Try to get format from SettingsService if available
614
- const settings = this.providerConfig?.getEphemeralSettings?.();
615
- if (settings && settings['tool-format']) {
616
- return settings['tool-format'];
794
+ // Check for toolFormat override in provider settings
795
+ const settingsService = getSettingsService();
796
+ const currentSettings = settingsService['settings'];
797
+ const providerSettings = currentSettings?.providers?.[this.name];
798
+ const toolFormatOverride = providerSettings?.toolFormat;
799
+ // If explicitly set to a specific format (not 'auto'), use it
800
+ if (toolFormatOverride && toolFormatOverride !== 'auto') {
801
+ this.logger.debug(() => `Using tool format override '${toolFormatOverride}' for ${this.name}`);
802
+ return toolFormatOverride;
617
803
  }
618
804
  }
619
805
  catch (error) {
620
806
  this.logger.debug(() => `Failed to detect tool format from SettingsService: ${error}`);
621
807
  }
622
- // Fallback detection without SettingsService - always look up current model
808
+ // Auto-detect based on model name if set to 'auto' or not set
623
809
  const modelName = (this.getModel() || this.getDefaultModel()).toLowerCase();
810
+ // Check for GLM-4.5 models (glm-4.5, glm-4-5)
624
811
  if (modelName.includes('glm-4.5') || modelName.includes('glm-4-5')) {
812
+ this.logger.debug(() => `Auto-detected 'qwen' format for GLM-4.5 model: ${modelName}`);
625
813
  return 'qwen';
626
814
  }
815
+ // Check for qwen models
627
816
  if (modelName.includes('qwen')) {
817
+ this.logger.debug(() => `Auto-detected 'qwen' format for Qwen model: ${modelName}`);
628
818
  return 'qwen';
629
819
  }
820
+ // Default to 'openai' format
821
+ this.logger.debug(() => `Using default 'openai' format for model: ${modelName}`);
630
822
  return 'openai';
631
823
  }
632
824
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"OpenAIProvider.js","sourceRoot":"","sources":["../../../../src/providers/openai/OpenAIProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpenAIProvider.js","sourceRoot":"","sources":["../../../../src/providers/openai/OpenAIProvider.ts"],"names":[],"mappings":"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"}
@@ -61,7 +61,8 @@ export class TodoReminderService {
61
61
  * Format message as system reminder
62
62
  */
63
63
  formatSystemReminder(message) {
64
- return `<system-reminder>\n${message}\n</system-reminder>`;
64
+ // Return plain text instead of XML tags to avoid breaking OpenAI API
65
+ return `\n\n---\nSystem Note: ${message}\n---`;
65
66
  }
66
67
  /**
67
68
  * Generate proactive todo suggestion for complex tasks
@@ -1 +1 @@
1
- {"version":3,"file":"todo-reminder-service.js","sourceRoot":"","sources":["../../../src/services/todo-reminder-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"todo-reminder-service.js","sourceRoot":"","sources":["../../../src/services/todo-reminder-service.ts"],"names":[],"mappings":"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"}