@aituber-onair/chat 0.43.0 → 0.45.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 (87) hide show
  1. package/README.ja.md +40 -9
  2. package/README.md +40 -9
  3. package/dist/cjs/constants/claude.d.ts +1 -0
  4. package/dist/cjs/constants/claude.d.ts.map +1 -1
  5. package/dist/cjs/constants/claude.js +3 -1
  6. package/dist/cjs/constants/claude.js.map +1 -1
  7. package/dist/cjs/constants/xai.d.ts +9 -0
  8. package/dist/cjs/constants/xai.d.ts.map +1 -1
  9. package/dist/cjs/constants/xai.js +27 -2
  10. package/dist/cjs/constants/xai.js.map +1 -1
  11. package/dist/cjs/services/ChatServiceFactory.d.ts +9 -0
  12. package/dist/cjs/services/ChatServiceFactory.d.ts.map +1 -1
  13. package/dist/cjs/services/ChatServiceFactory.js +63 -0
  14. package/dist/cjs/services/ChatServiceFactory.js.map +1 -1
  15. package/dist/cjs/services/providers/claude/ClaudeChatServiceProvider.d.ts.map +1 -1
  16. package/dist/cjs/services/providers/claude/ClaudeChatServiceProvider.js +1 -0
  17. package/dist/cjs/services/providers/claude/ClaudeChatServiceProvider.js.map +1 -1
  18. package/dist/cjs/services/providers/openai/OpenAIChatService.d.ts +5 -1
  19. package/dist/cjs/services/providers/openai/OpenAIChatService.d.ts.map +1 -1
  20. package/dist/cjs/services/providers/openai/OpenAIChatService.js +3 -1
  21. package/dist/cjs/services/providers/openai/OpenAIChatService.js.map +1 -1
  22. package/dist/cjs/services/providers/openai/OpenAIChatServiceProvider.d.ts.map +1 -1
  23. package/dist/cjs/services/providers/openai/OpenAIChatServiceProvider.js +17 -1
  24. package/dist/cjs/services/providers/openai/OpenAIChatServiceProvider.js.map +1 -1
  25. package/dist/cjs/services/providers/openai/openaiRequestBuilder.d.ts +4 -1
  26. package/dist/cjs/services/providers/openai/openaiRequestBuilder.d.ts.map +1 -1
  27. package/dist/cjs/services/providers/openai/openaiRequestBuilder.js +21 -1
  28. package/dist/cjs/services/providers/openai/openaiRequestBuilder.js.map +1 -1
  29. package/dist/cjs/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.d.ts.map +1 -1
  30. package/dist/cjs/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.js +18 -1
  31. package/dist/cjs/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.js.map +1 -1
  32. package/dist/cjs/services/providers/xai/XAIChatService.d.ts.map +1 -1
  33. package/dist/cjs/services/providers/xai/XAIChatService.js +1 -1
  34. package/dist/cjs/services/providers/xai/XAIChatService.js.map +1 -1
  35. package/dist/cjs/services/providers/xai/XAIChatServiceProvider.d.ts.map +1 -1
  36. package/dist/cjs/services/providers/xai/XAIChatServiceProvider.js +2 -1
  37. package/dist/cjs/services/providers/xai/XAIChatServiceProvider.js.map +1 -1
  38. package/dist/cjs/types/capabilities.d.ts +15 -0
  39. package/dist/cjs/types/capabilities.d.ts.map +1 -0
  40. package/dist/cjs/types/capabilities.js +3 -0
  41. package/dist/cjs/types/capabilities.js.map +1 -0
  42. package/dist/cjs/types/index.d.ts +1 -0
  43. package/dist/cjs/types/index.d.ts.map +1 -1
  44. package/dist/esm/constants/claude.d.ts +1 -0
  45. package/dist/esm/constants/claude.d.ts.map +1 -1
  46. package/dist/esm/constants/claude.js +2 -0
  47. package/dist/esm/constants/claude.js.map +1 -1
  48. package/dist/esm/constants/xai.d.ts +9 -0
  49. package/dist/esm/constants/xai.d.ts.map +1 -1
  50. package/dist/esm/constants/xai.js +24 -1
  51. package/dist/esm/constants/xai.js.map +1 -1
  52. package/dist/esm/services/ChatServiceFactory.d.ts +9 -0
  53. package/dist/esm/services/ChatServiceFactory.d.ts.map +1 -1
  54. package/dist/esm/services/ChatServiceFactory.js +63 -0
  55. package/dist/esm/services/ChatServiceFactory.js.map +1 -1
  56. package/dist/esm/services/providers/claude/ClaudeChatServiceProvider.d.ts.map +1 -1
  57. package/dist/esm/services/providers/claude/ClaudeChatServiceProvider.js +2 -1
  58. package/dist/esm/services/providers/claude/ClaudeChatServiceProvider.js.map +1 -1
  59. package/dist/esm/services/providers/openai/OpenAIChatService.d.ts +5 -1
  60. package/dist/esm/services/providers/openai/OpenAIChatService.d.ts.map +1 -1
  61. package/dist/esm/services/providers/openai/OpenAIChatService.js +3 -1
  62. package/dist/esm/services/providers/openai/OpenAIChatService.js.map +1 -1
  63. package/dist/esm/services/providers/openai/OpenAIChatServiceProvider.d.ts.map +1 -1
  64. package/dist/esm/services/providers/openai/OpenAIChatServiceProvider.js +17 -1
  65. package/dist/esm/services/providers/openai/OpenAIChatServiceProvider.js.map +1 -1
  66. package/dist/esm/services/providers/openai/openaiRequestBuilder.d.ts +4 -1
  67. package/dist/esm/services/providers/openai/openaiRequestBuilder.d.ts.map +1 -1
  68. package/dist/esm/services/providers/openai/openaiRequestBuilder.js +21 -1
  69. package/dist/esm/services/providers/openai/openaiRequestBuilder.js.map +1 -1
  70. package/dist/esm/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.d.ts.map +1 -1
  71. package/dist/esm/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.js +18 -1
  72. package/dist/esm/services/providers/openaiCompatible/OpenAICompatibleChatServiceProvider.js.map +1 -1
  73. package/dist/esm/services/providers/xai/XAIChatService.d.ts.map +1 -1
  74. package/dist/esm/services/providers/xai/XAIChatService.js +2 -2
  75. package/dist/esm/services/providers/xai/XAIChatService.js.map +1 -1
  76. package/dist/esm/services/providers/xai/XAIChatServiceProvider.d.ts.map +1 -1
  77. package/dist/esm/services/providers/xai/XAIChatServiceProvider.js +3 -2
  78. package/dist/esm/services/providers/xai/XAIChatServiceProvider.js.map +1 -1
  79. package/dist/esm/types/capabilities.d.ts +15 -0
  80. package/dist/esm/types/capabilities.d.ts.map +1 -0
  81. package/dist/esm/types/capabilities.js +2 -0
  82. package/dist/esm/types/capabilities.js.map +1 -0
  83. package/dist/esm/types/index.d.ts +1 -0
  84. package/dist/esm/types/index.d.ts.map +1 -1
  85. package/dist/umd/aituber-onair-chat.js +129 -9
  86. package/dist/umd/aituber-onair-chat.min.js +7 -7
  87. package/package.json +1 -1
package/README.ja.md CHANGED
@@ -566,7 +566,7 @@ CI/ローカルで再現性を高める場合は
566
566
  ```typescript
567
567
  const claudeService = ChatServiceFactory.createChatService('claude', {
568
568
  apiKey: process.env.ANTHROPIC_API_KEY,
569
- model: 'claude-opus-4-8'
569
+ model: 'claude-sonnet-5'
570
570
  });
571
571
  ```
572
572
 
@@ -675,17 +675,17 @@ const zaiService = ChatServiceFactory.createChatService('zai', {
675
675
  ```typescript
676
676
  const xaiService = ChatServiceFactory.createChatService('xai', {
677
677
  apiKey: process.env.XAI_API_KEY,
678
- model: 'grok-4.3',
679
- reasoning_effort: 'none', // 任意(Grok 4.3): none, low, medium, high
680
- visionModel: 'grok-4.3', // 任意: xAI の全モデルがビジョン対応
678
+ model: 'grok-4.5',
679
+ reasoning_effort: 'low', // 任意(Grok 4.5): low, medium, high
680
+ visionModel: 'grok-4.3', // 任意: ビジョン対応の xAI モデルを指定
681
681
  });
682
682
  ```
683
683
 
684
684
  注意:
685
685
  - xAIはOpenAI互換のChat Completionsを利用します。
686
- - 対応モデル: `grok-4.3`, `grok-4.20-0309-reasoning`, `grok-4.20-0309-non-reasoning`, `grok-4-1-fast-reasoning`, `grok-4-1-fast-non-reasoning`
687
- - `reasoning_effort` は xAI が `none`, `low`, `medium`, `high` に対応している `grok-4.3` の場合のみ送信されます。高速なチャット応答向けにデフォルトは `none` です。
688
- - すべての対応 xAI モデルでビジョンとツール・関数呼び出しを利用できます。
686
+ - 対応モデル: `grok-4.5`, `grok-4.3`, `grok-4.20-0309-reasoning`, `grok-4.20-0309-non-reasoning`, `grok-4-1-fast-reasoning`, `grok-4-1-fast-non-reasoning`
687
+ - `reasoning_effort` は対応モデルにのみ送信されます。`grok-4.5` は `low`, `medium`, `high` に対応し、チャット用途向けにデフォルトは `low` です。`grok-4.3` `none`, `low`, `medium`, `high` に対応し、デフォルトは `none` です。
688
+ - 対応 xAI モデルではビジョンとツール・関数呼び出しを利用できます。Grok 4.5 も React basic サンプルで画像チャットを直接検証できるようにビジョン対応として有効化しています。
689
689
 
690
690
  #### Kimi(Moonshot)
691
691
 
@@ -1092,6 +1092,37 @@ console.log(modelLevel); // 'unknown'
1092
1092
  - `unsupported`: リクエスト送信前に非対応と分かっている
1093
1093
  - `unknown`: 事前判定できないが、実際には成功する可能性がある
1094
1094
 
1095
+ ### プロバイダー機能の事前判定
1096
+
1097
+ UI やエージェント実行環境は、チャットサービスを作成する前にプロバイダーの
1098
+ 機能を確認できます。
1099
+
1100
+ ```typescript
1101
+ const capabilities = ChatServiceFactory.getProviderCapabilities(
1102
+ 'openai',
1103
+ 'gpt-5.4-mini',
1104
+ );
1105
+
1106
+ if (capabilities?.jsonMode) {
1107
+ // JSON mode のトグル表示や responseFormat の指定が安全にできます。
1108
+ }
1109
+
1110
+ if (!capabilities?.mcp) {
1111
+ // このプロバイダーでは MCP server 設定を無効化できます。
1112
+ }
1113
+ ```
1114
+
1115
+ `getProviderCapabilities(provider, model?)` は `models`, `defaultModel`,
1116
+ `vision`, `tools`, `mcp`, `jsonMode`, `responseLength`, 対応する
1117
+ `reasoningEffort` などの機械可読な metadata を返します。プロバイダー選択 UI
1118
+ やダッシュボードを作る場合は `getAllProviderCapabilities()` も利用できます。
1119
+
1120
+ capability object は実行前の判断に使う静的 metadata です。API key、endpoint、
1121
+ base URL、MCP server 定義、その他のユーザー設定は含みません。これにより、UI
1122
+ では非対応の設定を実行前に非表示/無効化でき、エージェント側では tools、MCP、
1123
+ vision、JSON mode、reasoning 設定を使うべきかを provider 固有ロジックの
1124
+ ベタ書きなしで判断できます。
1125
+
1095
1126
  ## 利用可能なプロバイダー
1096
1127
 
1097
1128
  現在、以下のAIプロバイダーが組み込まれています:
@@ -1099,10 +1130,10 @@ console.log(modelLevel); // 'unknown'
1099
1130
  - **OpenAI**: GPT-5.5、GPT-5.4 Pro、GPT-5.4、GPT-5.4 Mini、GPT-5.4 Nano、GPT-5.1、GPT-5(Nano/Mini/Standard)、GPT-4.1(miniとnanoを含む), GPT-4, GPT-4o-mini, O3-mini, o1, o1-miniのモデルをサポート
1100
1131
  - **OpenAI-Compatible**: OpenAI互換 endpoint 経由で任意のローカル/セルフホスト model ID を利用できます。vision 対応可否は endpoint ごとに差があるため、原則 `unknown` 扱いです
1101
1132
  - **Gemini**: Gemini 3.5 Flash、Gemini 3.1 Flash-Lite、Gemini 3.1 Pro Preview、Gemini 3 Flash Preview、Gemini 2.5 Pro、Gemini 2.5 Flash、Gemini 2.5 Flash Lite、Gemma 4 31B IT、Gemma 4 26B A4B IT などの推奨モデルをサポート。Gemini 3.5 Flash はチャット用途向けに minimal thinking を自動適用します。Gemini 3.1 Flash-Lite Preview、Gemini 3 Pro Preview、Gemini 2.5 Flash Lite Preview などの lifecycle 上 deprecated なモデルは明示指定用に export を残しています
1102
- - **Claude**: Claude Opus 4.8, Claude Opus 4.7, Claude Opus 4.6, Claude Opus 4.5, Claude Sonnet 4.6, Claude Sonnet 4.5, Claude Haiku 4.5 に加え、まだ利用可能だが非推奨の Claude 4 Opus, Claude 4 Sonnet, Claude 3 Haiku をサポート
1133
+ - **Claude**: Claude Sonnet 5, Claude Opus 4.8, Claude Opus 4.7, Claude Opus 4.6, Claude Opus 4.5, Claude Sonnet 4.6, Claude Sonnet 4.5, Claude Haiku 4.5 に加え、まだ利用可能だが非推奨の Claude 4 Opus, Claude 4 Sonnet, Claude 3 Haiku をサポート
1103
1134
  - **OpenRouter**: OpenRouterのキュレーション済みモデル一覧(OpenAI/Claude/Gemini/Z.ai/Kimi)をサポート。モデルIDはOpenRouter節を参照してください
1104
1135
  - **Z.ai**: GLM-5.2/GLM-5/GLM-5-Turbo(テキスト)、GLM-4.7/4.6(テキスト)、GLM-4.6V系(ビジョン)をサポート
1105
- - **xAI**: Grok 4.3、Grok 4.20 の Reasoning/Non-Reasoning、Grok 4-1 Fast の Reasoning/Non-Reasoning をサポートし、全モデルでビジョン対応
1136
+ - **xAI**: Grok 4.5 をチャット用途向けに `reasoning_effort: 'low'` デフォルトでサポート。加えて Grok 4.3、Grok 4.20 の Reasoning/Non-Reasoning、Grok 4-1 Fast の Reasoning/Non-Reasoning をサポートし、全モデルでビジョン対応
1106
1137
  - **Kimi**: Kimi K2.7 Code(`kimi-k2.7-code`)、Kimi K2.7 Code HighSpeed(`kimi-k2.7-code-highspeed`)、Kimi K2.6(`kimi-k2.6`、デフォルト)、Kimi K2.5(`kimi-k2.5`、いずれもビジョン対応)をサポート
1107
1138
  - **DeepSeek**: DeepSeek V4 Flash(`deepseek-v4-flash`)と DeepSeek V4 Pro(`deepseek-v4-pro`)をOpenAI互換Chat Completions経由でサポート。legacy alias の`deepseek-chat`と`deepseek-reasoner`はDeepSeek側で非推奨です
1108
1139
  - **Mistral**: `mistral-small-latest`, `mistral-medium-3-5`, `mistral-large-latest`, `mistral-large-2512`, `mistral-small-2603`, `mistral-medium-2508`などの現行generalist modelをサポートし、streamingとvisionにも対応。adjustable `reasoning_effort`は対応モデルにだけ送信します
package/README.md CHANGED
@@ -579,7 +579,7 @@ For CI/local deterministic runs, pair it with `examples/mock-openai-server`.
579
579
  ```typescript
580
580
  const claudeService = ChatServiceFactory.createChatService('claude', {
581
581
  apiKey: process.env.ANTHROPIC_API_KEY,
582
- model: 'claude-opus-4-8'
582
+ model: 'claude-sonnet-5'
583
583
  });
584
584
  ```
585
585
 
@@ -687,17 +687,17 @@ Notes:
687
687
  ```typescript
688
688
  const xaiService = ChatServiceFactory.createChatService('xai', {
689
689
  apiKey: process.env.XAI_API_KEY,
690
- model: 'grok-4.3',
691
- reasoning_effort: 'none', // Optional for Grok 4.3: none, low, medium, high
692
- visionModel: 'grok-4.3', // Optional: all xAI models support vision
690
+ model: 'grok-4.5',
691
+ reasoning_effort: 'low', // Optional for Grok 4.5: low, medium, high
692
+ visionModel: 'grok-4.3', // Optional: use a vision-capable xAI model
693
693
  });
694
694
  ```
695
695
 
696
696
  Notes:
697
697
  - xAI uses OpenAI-compatible Chat Completions.
698
- - Supported models: `grok-4.3`, `grok-4.20-0309-reasoning`, `grok-4.20-0309-non-reasoning`, `grok-4-1-fast-reasoning`, `grok-4-1-fast-non-reasoning`
699
- - `reasoning_effort` is sent only for `grok-4.3`, where xAI supports `none`, `low`, `medium`, and `high`. The default is `none` for fast chat responses.
700
- - All supported xAI models support vision and tool/function calling.
698
+ - Supported models: `grok-4.5`, `grok-4.3`, `grok-4.20-0309-reasoning`, `grok-4.20-0309-non-reasoning`, `grok-4-1-fast-reasoning`, `grok-4-1-fast-non-reasoning`
699
+ - `reasoning_effort` is sent only for models that support it. `grok-4.5` supports `low`, `medium`, and `high` and defaults to `low` for chat-style responses. `grok-4.3` supports `none`, `low`, `medium`, and `high` and defaults to `none`.
700
+ - Supported xAI models can be used with vision and tool/function calling. Grok 4.5 vision support is enabled so image chat can be validated directly in the React basic sample.
701
701
 
702
702
  #### Kimi (Moonshot)
703
703
 
@@ -1107,6 +1107,37 @@ Semantics:
1107
1107
  - `unsupported`: Known to reject vision before sending the request
1108
1108
  - `unknown`: Cannot be pre-validated, but vision requests may still succeed
1109
1109
 
1110
+ ### Provider Capability Discovery
1111
+
1112
+ UI and agent runtimes can inspect provider features before creating a chat
1113
+ service:
1114
+
1115
+ ```typescript
1116
+ const capabilities = ChatServiceFactory.getProviderCapabilities(
1117
+ 'openai',
1118
+ 'gpt-5.4-mini',
1119
+ );
1120
+
1121
+ if (capabilities?.jsonMode) {
1122
+ // Show a JSON mode toggle or pass responseFormat safely.
1123
+ }
1124
+
1125
+ if (!capabilities?.mcp) {
1126
+ // Disable MCP server settings for this provider.
1127
+ }
1128
+ ```
1129
+
1130
+ `getProviderCapabilities(provider, model?)` returns machine-readable metadata
1131
+ such as `models`, `defaultModel`, `vision`, `tools`, `mcp`, `jsonMode`,
1132
+ `responseLength`, and supported `reasoningEffort` values. Use
1133
+ `getAllProviderCapabilities()` to populate provider pickers or dashboards.
1134
+
1135
+ The capability object is static planning metadata. It does not include API keys,
1136
+ endpoints, base URLs, MCP server definitions, or other user configuration. This
1137
+ helps UI surfaces hide unsupported controls before execution, and lets agents
1138
+ choose whether to use tools, MCP, vision, JSON mode, or reasoning settings
1139
+ without hard-coding provider-specific rules.
1140
+
1110
1141
  ## Available Providers
1111
1142
 
1112
1143
  Currently, the following AI providers are built-in:
@@ -1114,10 +1145,10 @@ Currently, the following AI providers are built-in:
1114
1145
  - **OpenAI**: Supports models like GPT-5.5, GPT-5.4 Pro, GPT-5.4, GPT-5.4 Mini, GPT-5.4 Nano, GPT-5.1, GPT-5 (Nano/Mini/Standard), GPT-4.1 (including mini and nano), GPT-4, GPT-4o-mini, O3-mini, o1, o1-mini
1115
1146
  - **OpenAI-Compatible**: Supports arbitrary local/self-hosted model IDs via OpenAI-compatible endpoints. Vision capability is treated as `unknown` unless your app knows the endpoint-specific model catalog.
1116
1147
  - **Gemini**: Supports recommended models like Gemini 3.5 Flash, Gemini 3.1 Flash-Lite, Gemini 3.1 Pro Preview, Gemini 3 Flash Preview, Gemini 2.5 Pro, Gemini 2.5 Flash, Gemini 2.5 Flash Lite, Gemma 4 31B IT, and Gemma 4 26B A4B IT. Gemini 3.5 Flash automatically uses minimal thinking for chat-style responses. Deprecated lifecycle models such as Gemini 3.1 Flash-Lite Preview, Gemini 3 Pro Preview, and Gemini 2.5 Flash Lite Preview remain exported for explicit use.
1117
- - **Claude**: Supports current Claude API model IDs including Claude Opus 4.8, Claude Opus 4.7, Claude Opus 4.6, Claude Opus 4.5, Claude Sonnet 4.6, Claude Sonnet 4.5, Claude Haiku 4.5, plus deprecated-but-still-available Claude 4 Opus, Claude 4 Sonnet, and Claude 3 Haiku
1148
+ - **Claude**: Supports current Claude API model IDs including Claude Sonnet 5, Claude Opus 4.8, Claude Opus 4.7, Claude Opus 4.6, Claude Opus 4.5, Claude Sonnet 4.6, Claude Sonnet 4.5, Claude Haiku 4.5, plus deprecated-but-still-available Claude 4 Opus, Claude 4 Sonnet, and Claude 3 Haiku
1118
1149
  - **OpenRouter**: Supports a curated OpenRouter model list (OpenAI/Claude/Gemini/Z.ai/Kimi). See the OpenRouter section for model IDs.
1119
1150
  - **Z.ai**: Supports GLM-5.2/GLM-5/GLM-5-Turbo (text), GLM-4.7/4.6 (text), and GLM-4.6V family (vision)
1120
- - **xAI**: Supports Grok 4.3, Grok 4.20 Reasoning/Non-Reasoning, and Grok 4-1 Fast Reasoning/Non-Reasoning, all with vision support
1151
+ - **xAI**: Supports Grok 4.5 with `reasoning_effort: 'low'` by default for chat-style responses, plus Grok 4.3, Grok 4.20 Reasoning/Non-Reasoning, and Grok 4-1 Fast Reasoning/Non-Reasoning, all with vision support.
1121
1152
  - **Kimi**: Supports Kimi K2.7 Code (`kimi-k2.7-code`), Kimi K2.7 Code HighSpeed (`kimi-k2.7-code-highspeed`), Kimi K2.6 (`kimi-k2.6`, default), and Kimi K2.5 (`kimi-k2.5`) with vision support
1122
1153
  - **DeepSeek**: Supports DeepSeek V4 Flash (`deepseek-v4-flash`) and DeepSeek V4 Pro (`deepseek-v4-pro`) via OpenAI-compatible Chat Completions. Legacy aliases `deepseek-chat` and `deepseek-reasoner` are deprecated by DeepSeek.
1123
1154
  - **Mistral**: Supports current Mistral generalist models including `mistral-small-latest`, `mistral-medium-3-5`, `mistral-large-latest`, `mistral-large-2512`, `mistral-small-2603`, and `mistral-medium-2508`, with streaming and vision support. Adjustable `reasoning_effort` is only sent for supported models.
@@ -12,5 +12,6 @@ export declare const MODEL_CLAUDE_4_6_SONNET = "claude-sonnet-4-6";
12
12
  export declare const MODEL_CLAUDE_4_6_OPUS = "claude-opus-4-6";
13
13
  export declare const MODEL_CLAUDE_4_7_OPUS = "claude-opus-4-7";
14
14
  export declare const MODEL_CLAUDE_4_8_OPUS = "claude-opus-4-8";
15
+ export declare const MODEL_CLAUDE_5_SONNET = "claude-sonnet-5";
15
16
  export declare const CLAUDE_VISION_SUPPORTED_MODELS: string[];
16
17
  //# sourceMappingURL=claude.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../../src/constants/claude.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,0CAA0C,CAAC;AAG3E,eAAO,MAAM,oBAAoB,4BAA4B,CAAC;AAC9D,eAAO,MAAM,sBAAsB,8BAA8B,CAAC;AAClE,eAAO,MAAM,uBAAuB,+BAA+B,CAAC;AACpE,eAAO,MAAM,uBAAuB,+BAA+B,CAAC;AACpE,eAAO,MAAM,qBAAqB,6BAA6B,CAAC;AAChE,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAC5D,eAAO,MAAM,uBAAuB,+BAA+B,CAAC;AACpE,eAAO,MAAM,sBAAsB,8BAA8B,CAAC;AAClE,eAAO,MAAM,qBAAqB,6BAA6B,CAAC;AAChE,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAC3D,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AACvD,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AACvD,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AAEvD,eAAO,MAAM,8BAA8B,UAW1C,CAAC"}
1
+ {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../../src/constants/claude.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,0CAA0C,CAAC;AAG3E,eAAO,MAAM,oBAAoB,4BAA4B,CAAC;AAC9D,eAAO,MAAM,sBAAsB,8BAA8B,CAAC;AAClE,eAAO,MAAM,uBAAuB,+BAA+B,CAAC;AACpE,eAAO,MAAM,uBAAuB,+BAA+B,CAAC;AACpE,eAAO,MAAM,qBAAqB,6BAA6B,CAAC;AAChE,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAC5D,eAAO,MAAM,uBAAuB,+BAA+B,CAAC;AACpE,eAAO,MAAM,sBAAsB,8BAA8B,CAAC;AAClE,eAAO,MAAM,qBAAqB,6BAA6B,CAAC;AAChE,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAC3D,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AACvD,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AACvD,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AACvD,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AAEvD,eAAO,MAAM,8BAA8B,UAY1C,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CLAUDE_VISION_SUPPORTED_MODELS = exports.MODEL_CLAUDE_4_8_OPUS = exports.MODEL_CLAUDE_4_7_OPUS = exports.MODEL_CLAUDE_4_6_OPUS = exports.MODEL_CLAUDE_4_6_SONNET = exports.MODEL_CLAUDE_4_5_OPUS = exports.MODEL_CLAUDE_4_5_HAIKU = exports.MODEL_CLAUDE_4_5_SONNET = exports.MODEL_CLAUDE_4_OPUS = exports.MODEL_CLAUDE_4_SONNET = exports.MODEL_CLAUDE_3_7_SONNET = exports.MODEL_CLAUDE_3_5_SONNET = exports.MODEL_CLAUDE_3_5_HAIKU = exports.MODEL_CLAUDE_3_HAIKU = exports.ENDPOINT_CLAUDE_API = void 0;
3
+ exports.CLAUDE_VISION_SUPPORTED_MODELS = exports.MODEL_CLAUDE_5_SONNET = exports.MODEL_CLAUDE_4_8_OPUS = exports.MODEL_CLAUDE_4_7_OPUS = exports.MODEL_CLAUDE_4_6_OPUS = exports.MODEL_CLAUDE_4_6_SONNET = exports.MODEL_CLAUDE_4_5_OPUS = exports.MODEL_CLAUDE_4_5_HAIKU = exports.MODEL_CLAUDE_4_5_SONNET = exports.MODEL_CLAUDE_4_OPUS = exports.MODEL_CLAUDE_4_SONNET = exports.MODEL_CLAUDE_3_7_SONNET = exports.MODEL_CLAUDE_3_5_SONNET = exports.MODEL_CLAUDE_3_5_HAIKU = exports.MODEL_CLAUDE_3_HAIKU = exports.ENDPOINT_CLAUDE_API = void 0;
4
4
  exports.ENDPOINT_CLAUDE_API = 'https://api.anthropic.com/v1/messages';
5
5
  // claude model
6
6
  exports.MODEL_CLAUDE_3_HAIKU = 'claude-3-haiku-20240307';
@@ -16,6 +16,7 @@ exports.MODEL_CLAUDE_4_6_SONNET = 'claude-sonnet-4-6';
16
16
  exports.MODEL_CLAUDE_4_6_OPUS = 'claude-opus-4-6';
17
17
  exports.MODEL_CLAUDE_4_7_OPUS = 'claude-opus-4-7';
18
18
  exports.MODEL_CLAUDE_4_8_OPUS = 'claude-opus-4-8';
19
+ exports.MODEL_CLAUDE_5_SONNET = 'claude-sonnet-5';
19
20
  exports.CLAUDE_VISION_SUPPORTED_MODELS = [
20
21
  exports.MODEL_CLAUDE_3_HAIKU,
21
22
  exports.MODEL_CLAUDE_4_SONNET,
@@ -27,5 +28,6 @@ exports.CLAUDE_VISION_SUPPORTED_MODELS = [
27
28
  exports.MODEL_CLAUDE_4_6_OPUS,
28
29
  exports.MODEL_CLAUDE_4_7_OPUS,
29
30
  exports.MODEL_CLAUDE_4_8_OPUS,
31
+ exports.MODEL_CLAUDE_5_SONNET,
30
32
  ];
31
33
  //# sourceMappingURL=claude.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../src/constants/claude.ts"],"names":[],"mappings":";;;AAAa,QAAA,mBAAmB,GAAG,uCAAuC,CAAC;AAE3E,eAAe;AACF,QAAA,oBAAoB,GAAG,yBAAyB,CAAC;AACjD,QAAA,sBAAsB,GAAG,2BAA2B,CAAC;AACrD,QAAA,uBAAuB,GAAG,4BAA4B,CAAC;AACvD,QAAA,uBAAuB,GAAG,4BAA4B,CAAC;AACvD,QAAA,qBAAqB,GAAG,0BAA0B,CAAC;AACnD,QAAA,mBAAmB,GAAG,wBAAwB,CAAC;AAC/C,QAAA,uBAAuB,GAAG,4BAA4B,CAAC;AACvD,QAAA,sBAAsB,GAAG,2BAA2B,CAAC;AACrD,QAAA,qBAAqB,GAAG,0BAA0B,CAAC;AACnD,QAAA,uBAAuB,GAAG,mBAAmB,CAAC;AAC9C,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAC1C,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAC1C,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAE1C,QAAA,8BAA8B,GAAG;IAC5C,4BAAoB;IACpB,6BAAqB;IACrB,2BAAmB;IACnB,+BAAuB;IACvB,8BAAsB;IACtB,6BAAqB;IACrB,+BAAuB;IACvB,6BAAqB;IACrB,6BAAqB;IACrB,6BAAqB;CACtB,CAAC"}
1
+ {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../src/constants/claude.ts"],"names":[],"mappings":";;;AAAa,QAAA,mBAAmB,GAAG,uCAAuC,CAAC;AAE3E,eAAe;AACF,QAAA,oBAAoB,GAAG,yBAAyB,CAAC;AACjD,QAAA,sBAAsB,GAAG,2BAA2B,CAAC;AACrD,QAAA,uBAAuB,GAAG,4BAA4B,CAAC;AACvD,QAAA,uBAAuB,GAAG,4BAA4B,CAAC;AACvD,QAAA,qBAAqB,GAAG,0BAA0B,CAAC;AACnD,QAAA,mBAAmB,GAAG,wBAAwB,CAAC;AAC/C,QAAA,uBAAuB,GAAG,4BAA4B,CAAC;AACvD,QAAA,sBAAsB,GAAG,2BAA2B,CAAC;AACrD,QAAA,qBAAqB,GAAG,0BAA0B,CAAC;AACnD,QAAA,uBAAuB,GAAG,mBAAmB,CAAC;AAC9C,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAC1C,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAC1C,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAC1C,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAE1C,QAAA,8BAA8B,GAAG;IAC5C,4BAAoB;IACpB,6BAAqB;IACrB,2BAAmB;IACnB,+BAAuB;IACvB,8BAAsB;IACtB,6BAAqB;IACrB,+BAAuB;IACvB,6BAAqB;IACrB,6BAAqB;IACrB,6BAAqB;IACrB,6BAAqB;CACtB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export declare const ENDPOINT_XAI_CHAT_COMPLETIONS_API = "https://api.x.ai/v1/chat/completions";
2
+ export declare const MODEL_GROK_4_5 = "grok-4.5";
2
3
  export declare const MODEL_GROK_4_3 = "grok-4.3";
3
4
  export declare const MODEL_GROK_4_20_REASONING = "grok-4.20-0309-reasoning";
4
5
  export declare const MODEL_GROK_4_20_NON_REASONING = "grok-4.20-0309-non-reasoning";
@@ -14,8 +15,16 @@ export declare function isXaiVisionModel(model: string): boolean;
14
15
  * Check if a model supports the xAI reasoning_effort parameter
15
16
  */
16
17
  export declare function isXaiReasoningEffortModel(model: string): boolean;
18
+ /**
19
+ * Check if a model supports disabling reasoning with reasoning_effort none
20
+ */
21
+ export declare function isXaiReasoningEffortNoneModel(model: string): boolean;
17
22
  /**
18
23
  * Get default reasoning effort for xAI models
19
24
  */
20
25
  export declare function getDefaultXaiReasoningEffort(model: string): XaiReasoningEffort | undefined;
26
+ /**
27
+ * Normalize xAI reasoning_effort for each model's documented support
28
+ */
29
+ export declare function normalizeXaiReasoningEffort(model: string, reasoningEffort?: XaiReasoningEffort): XaiReasoningEffort | undefined;
21
30
  //# sourceMappingURL=xai.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"xai.d.ts","sourceRoot":"","sources":["../../../src/constants/xai.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iCAAiC,yCACN,CAAC;AAGzC,eAAO,MAAM,cAAc,aAAa,CAAC;AACzC,eAAO,MAAM,yBAAyB,6BAA6B,CAAC;AACpE,eAAO,MAAM,6BAA6B,iCAAiC,CAAC;AAC5E,eAAO,MAAM,6BAA6B,4BAA4B,CAAC;AACvE,eAAO,MAAM,iCAAiC,gCAAgC,CAAC;AAE/E,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAGpE,eAAO,MAAM,2BAA2B,UAMvC,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEhE;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,MAAM,GACZ,kBAAkB,GAAG,SAAS,CAEhC"}
1
+ {"version":3,"file":"xai.d.ts","sourceRoot":"","sources":["../../../src/constants/xai.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iCAAiC,yCACN,CAAC;AAGzC,eAAO,MAAM,cAAc,aAAa,CAAC;AACzC,eAAO,MAAM,cAAc,aAAa,CAAC;AACzC,eAAO,MAAM,yBAAyB,6BAA6B,CAAC;AACpE,eAAO,MAAM,6BAA6B,iCAAiC,CAAC;AAC5E,eAAO,MAAM,6BAA6B,4BAA4B,CAAC;AACvE,eAAO,MAAM,iCAAiC,gCAAgC,CAAC;AAE/E,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAGpE,eAAO,MAAM,2BAA2B,UAOvC,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEhE;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEpE;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,MAAM,GACZ,kBAAkB,GAAG,SAAS,CAMhC;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,EACb,eAAe,CAAC,EAAE,kBAAkB,GACnC,kBAAkB,GAAG,SAAS,CAUhC"}
@@ -1,11 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.XAI_VISION_SUPPORTED_MODELS = exports.MODEL_GROK_4_1_FAST_NON_REASONING = exports.MODEL_GROK_4_1_FAST_REASONING = exports.MODEL_GROK_4_20_NON_REASONING = exports.MODEL_GROK_4_20_REASONING = exports.MODEL_GROK_4_3 = exports.ENDPOINT_XAI_CHAT_COMPLETIONS_API = void 0;
3
+ exports.XAI_VISION_SUPPORTED_MODELS = exports.MODEL_GROK_4_1_FAST_NON_REASONING = exports.MODEL_GROK_4_1_FAST_REASONING = exports.MODEL_GROK_4_20_NON_REASONING = exports.MODEL_GROK_4_20_REASONING = exports.MODEL_GROK_4_3 = exports.MODEL_GROK_4_5 = exports.ENDPOINT_XAI_CHAT_COMPLETIONS_API = void 0;
4
4
  exports.isXaiVisionModel = isXaiVisionModel;
5
5
  exports.isXaiReasoningEffortModel = isXaiReasoningEffortModel;
6
+ exports.isXaiReasoningEffortNoneModel = isXaiReasoningEffortNoneModel;
6
7
  exports.getDefaultXaiReasoningEffort = getDefaultXaiReasoningEffort;
8
+ exports.normalizeXaiReasoningEffort = normalizeXaiReasoningEffort;
7
9
  exports.ENDPOINT_XAI_CHAT_COMPLETIONS_API = 'https://api.x.ai/v1/chat/completions';
8
10
  // xAI Grok models
11
+ exports.MODEL_GROK_4_5 = 'grok-4.5';
9
12
  exports.MODEL_GROK_4_3 = 'grok-4.3';
10
13
  exports.MODEL_GROK_4_20_REASONING = 'grok-4.20-0309-reasoning';
11
14
  exports.MODEL_GROK_4_20_NON_REASONING = 'grok-4.20-0309-non-reasoning';
@@ -13,6 +16,7 @@ exports.MODEL_GROK_4_1_FAST_REASONING = 'grok-4-1-fast-reasoning';
13
16
  exports.MODEL_GROK_4_1_FAST_NON_REASONING = 'grok-4-1-fast-non-reasoning';
14
17
  // Vision support for models
15
18
  exports.XAI_VISION_SUPPORTED_MODELS = [
19
+ exports.MODEL_GROK_4_5,
16
20
  exports.MODEL_GROK_4_3,
17
21
  exports.MODEL_GROK_4_20_REASONING,
18
22
  exports.MODEL_GROK_4_20_NON_REASONING,
@@ -29,12 +33,33 @@ function isXaiVisionModel(model) {
29
33
  * Check if a model supports the xAI reasoning_effort parameter
30
34
  */
31
35
  function isXaiReasoningEffortModel(model) {
36
+ return model === exports.MODEL_GROK_4_5 || model === exports.MODEL_GROK_4_3;
37
+ }
38
+ /**
39
+ * Check if a model supports disabling reasoning with reasoning_effort none
40
+ */
41
+ function isXaiReasoningEffortNoneModel(model) {
32
42
  return model === exports.MODEL_GROK_4_3;
33
43
  }
34
44
  /**
35
45
  * Get default reasoning effort for xAI models
36
46
  */
37
47
  function getDefaultXaiReasoningEffort(model) {
38
- return isXaiReasoningEffortModel(model) ? 'none' : undefined;
48
+ if (model === exports.MODEL_GROK_4_5) {
49
+ return 'low';
50
+ }
51
+ return isXaiReasoningEffortNoneModel(model) ? 'none' : undefined;
52
+ }
53
+ /**
54
+ * Normalize xAI reasoning_effort for each model's documented support
55
+ */
56
+ function normalizeXaiReasoningEffort(model, reasoningEffort) {
57
+ if (!isXaiReasoningEffortModel(model)) {
58
+ return undefined;
59
+ }
60
+ if (reasoningEffort === 'none' && !isXaiReasoningEffortNoneModel(model)) {
61
+ return 'low';
62
+ }
63
+ return reasoningEffort ?? getDefaultXaiReasoningEffort(model);
39
64
  }
40
65
  //# sourceMappingURL=xai.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"xai.js","sourceRoot":"","sources":["../../../src/constants/xai.ts"],"names":[],"mappings":";;;AAwBA,4CAEC;AAKD,8DAEC;AAKD,oEAIC;AA1CY,QAAA,iCAAiC,GAC5C,sCAAsC,CAAC;AAEzC,kBAAkB;AACL,QAAA,cAAc,GAAG,UAAU,CAAC;AAC5B,QAAA,yBAAyB,GAAG,0BAA0B,CAAC;AACvD,QAAA,6BAA6B,GAAG,8BAA8B,CAAC;AAC/D,QAAA,6BAA6B,GAAG,yBAAyB,CAAC;AAC1D,QAAA,iCAAiC,GAAG,6BAA6B,CAAC;AAI/E,4BAA4B;AACf,QAAA,2BAA2B,GAAG;IACzC,sBAAc;IACd,iCAAyB;IACzB,qCAA6B;IAC7B,qCAA6B;IAC7B,yCAAiC;CAClC,CAAC;AAEF;;GAEG;AACH,SAAgB,gBAAgB,CAAC,KAAa;IAC5C,OAAO,mCAA2B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACrD,CAAC;AAED;;GAEG;AACH,SAAgB,yBAAyB,CAAC,KAAa;IACrD,OAAO,KAAK,KAAK,sBAAc,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,SAAgB,4BAA4B,CAC1C,KAAa;IAEb,OAAO,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/D,CAAC"}
1
+ {"version":3,"file":"xai.js","sourceRoot":"","sources":["../../../src/constants/xai.ts"],"names":[],"mappings":";;;AA0BA,4CAEC;AAKD,8DAEC;AAKD,sEAEC;AAKD,oEAQC;AAKD,kEAaC;AAzEY,QAAA,iCAAiC,GAC5C,sCAAsC,CAAC;AAEzC,kBAAkB;AACL,QAAA,cAAc,GAAG,UAAU,CAAC;AAC5B,QAAA,cAAc,GAAG,UAAU,CAAC;AAC5B,QAAA,yBAAyB,GAAG,0BAA0B,CAAC;AACvD,QAAA,6BAA6B,GAAG,8BAA8B,CAAC;AAC/D,QAAA,6BAA6B,GAAG,yBAAyB,CAAC;AAC1D,QAAA,iCAAiC,GAAG,6BAA6B,CAAC;AAI/E,4BAA4B;AACf,QAAA,2BAA2B,GAAG;IACzC,sBAAc;IACd,sBAAc;IACd,iCAAyB;IACzB,qCAA6B;IAC7B,qCAA6B;IAC7B,yCAAiC;CAClC,CAAC;AAEF;;GAEG;AACH,SAAgB,gBAAgB,CAAC,KAAa;IAC5C,OAAO,mCAA2B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACrD,CAAC;AAED;;GAEG;AACH,SAAgB,yBAAyB,CAAC,KAAa;IACrD,OAAO,KAAK,KAAK,sBAAc,IAAI,KAAK,KAAK,sBAAc,CAAC;AAC9D,CAAC;AAED;;GAEG;AACH,SAAgB,6BAA6B,CAAC,KAAa;IACzD,OAAO,KAAK,KAAK,sBAAc,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,SAAgB,4BAA4B,CAC1C,KAAa;IAEb,IAAI,KAAK,KAAK,sBAAc,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,6BAA6B,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACnE,CAAC;AAED;;GAEG;AACH,SAAgB,2BAA2B,CACzC,KAAa,EACb,eAAoC;IAEpC,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,EAAE,CAAC;QACtC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,eAAe,KAAK,MAAM,IAAI,CAAC,6BAA6B,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,eAAe,IAAI,4BAA4B,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { ChatService } from './ChatService';
2
2
  import { ChatServiceOptionsByProvider, ChatProviderName, ChatServiceProvider, VisionSupportLevel } from './providers/ChatServiceProvider';
3
+ import type { ChatProviderCapabilities } from '../types/capabilities';
3
4
  /**
4
5
  * Chat service factory
5
6
  * Manages and creates various AI providers
@@ -35,6 +36,14 @@ export declare class ChatServiceFactory {
35
36
  * @returns Array of supported models, empty array if provider doesn't exist
36
37
  */
37
38
  static getSupportedModels(providerName: string): string[];
39
+ /**
40
+ * Get machine-readable provider capabilities for UI and agent planning.
41
+ */
42
+ static getProviderCapabilities(providerName: string, model?: string): ChatProviderCapabilities | undefined;
43
+ /**
44
+ * Get machine-readable capabilities for all registered providers.
45
+ */
46
+ static getAllProviderCapabilities(): ChatProviderCapabilities[];
38
47
  /**
39
48
  * Get provider-level vision support status.
40
49
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ChatServiceFactory.d.ts","sourceRoot":"","sources":["../../../src/services/ChatServiceFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAEL,4BAA4B,EAC5B,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,iCAAiC,CAAC;AAGzC;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,kCAAkC;IAClC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAoD;IAE5E;;;OAGG;IACH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAAG,IAAI;IAIjE;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,CAAC,SAAS,SAAS,gBAAgB,EACzD,YAAY,EAAE,SAAS,EACvB,OAAO,EAAE,4BAA4B,CAAC,SAAS,CAAC,GAC/C,WAAW;IAYd;;;OAGG;IACH,MAAM,CAAC,YAAY,IAAI,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAI5D;;;OAGG;IACH,MAAM,CAAC,qBAAqB,IAAI,MAAM,EAAE;IAIxC;;;;OAIG;IACH,MAAM,CAAC,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE;IAKzD;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,kBAAkB;IAKtE;;OAEG;IACH,MAAM,CAAC,6BAA6B,CAClC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,GACZ,kBAAkB;CAkBtB"}
1
+ {"version":3,"file":"ChatServiceFactory.d.ts","sourceRoot":"","sources":["../../../src/services/ChatServiceFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAEL,4BAA4B,EAC5B,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAkCtE;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,kCAAkC;IAClC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAoD;IAE5E;;;OAGG;IACH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAAG,IAAI;IAIjE;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,CAAC,SAAS,SAAS,gBAAgB,EACzD,YAAY,EAAE,SAAS,EACvB,OAAO,EAAE,4BAA4B,CAAC,SAAS,CAAC,GAC/C,WAAW;IAYd;;;OAGG;IACH,MAAM,CAAC,YAAY,IAAI,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAI5D;;;OAGG;IACH,MAAM,CAAC,qBAAqB,IAAI,MAAM,EAAE;IAIxC;;;;OAIG;IACH,MAAM,CAAC,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE;IAKzD;;OAEG;IACH,MAAM,CAAC,uBAAuB,CAC5B,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,MAAM,GACb,wBAAwB,GAAG,SAAS;IA4BvC;;OAEG;IACH,MAAM,CAAC,0BAA0B,IAAI,wBAAwB,EAAE;IAS/D;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,kBAAkB;IAKtE;;OAEG;IACH,MAAM,CAAC,6BAA6B,CAClC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,GACZ,kBAAkB;CAkBtB"}
@@ -2,6 +2,34 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ChatServiceFactory = void 0;
4
4
  const providers_1 = require("./providers");
5
+ const TOOL_SUPPORTED_PROVIDERS = new Set([
6
+ 'openai',
7
+ 'openai-compatible',
8
+ 'openrouter',
9
+ 'gemini',
10
+ 'claude',
11
+ 'zai',
12
+ 'xai',
13
+ 'kimi',
14
+ 'deepseek',
15
+ 'mistral',
16
+ 'sakana',
17
+ 'plamo',
18
+ ]);
19
+ const MCP_SUPPORTED_PROVIDERS = new Set(['openai', 'gemini', 'claude']);
20
+ const JSON_MODE_SUPPORTED_PROVIDERS = new Set([
21
+ 'openai',
22
+ 'openai-compatible',
23
+ 'zai',
24
+ 'kimi',
25
+ ]);
26
+ const REASONING_EFFORT_BY_PROVIDER = {
27
+ openai: ['none', 'minimal', 'low', 'medium', 'high', 'xhigh'],
28
+ openrouter: ['none', 'minimal', 'low', 'medium', 'high'],
29
+ mistral: ['low', 'medium', 'high'],
30
+ plamo: ['none', 'medium'],
31
+ xai: ['none', 'low', 'medium', 'high'],
32
+ };
5
33
  /**
6
34
  * Chat service factory
7
35
  * Manages and creates various AI providers
@@ -44,6 +72,41 @@ class ChatServiceFactory {
44
72
  const provider = this.providers.get(providerName);
45
73
  return provider ? provider.getSupportedModels() : [];
46
74
  }
75
+ /**
76
+ * Get machine-readable provider capabilities for UI and agent planning.
77
+ */
78
+ static getProviderCapabilities(providerName, model) {
79
+ const provider = this.providers.get(providerName);
80
+ if (!provider) {
81
+ return undefined;
82
+ }
83
+ const vision = model
84
+ ? this.getVisionSupportLevelForModel(providerName, model)
85
+ : provider.getVisionSupportLevel();
86
+ return {
87
+ provider: providerName,
88
+ models: provider.getSupportedModels(),
89
+ defaultModel: typeof provider.getDefaultModel === 'function'
90
+ ? provider.getDefaultModel()
91
+ : undefined,
92
+ text: true,
93
+ streaming: true,
94
+ vision,
95
+ tools: TOOL_SUPPORTED_PROVIDERS.has(providerName),
96
+ mcp: MCP_SUPPORTED_PROVIDERS.has(providerName),
97
+ jsonMode: JSON_MODE_SUPPORTED_PROVIDERS.has(providerName),
98
+ responseLength: true,
99
+ reasoningEffort: REASONING_EFFORT_BY_PROVIDER[providerName] ?? [],
100
+ };
101
+ }
102
+ /**
103
+ * Get machine-readable capabilities for all registered providers.
104
+ */
105
+ static getAllProviderCapabilities() {
106
+ return this.getAvailableProviders()
107
+ .map((providerName) => this.getProviderCapabilities(providerName))
108
+ .filter((capabilities) => capabilities !== undefined);
109
+ }
47
110
  /**
48
111
  * Get provider-level vision support status.
49
112
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ChatServiceFactory.js","sourceRoot":"","sources":["../../../src/services/ChatServiceFactory.ts"],"names":[],"mappings":";;;AAQA,2CAA6D;AAE7D;;;GAGG;AACH,MAAa,kBAAkB;IAI7B;;;OAGG;IACH,MAAM,CAAC,gBAAgB,CAAC,QAAkC;QACxD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,eAAe,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAYD,MAAM,CAAC,iBAAiB,CACtB,YAAoB,EACpB,OAA2B;QAE3B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAClD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,0BAA0B,YAAY,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,OAAO,QAAQ,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,YAAY;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,qBAAqB;QAC1B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,kBAAkB,CAAC,YAAoB;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAClD,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAAC,YAAoB;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAClD,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,6BAA6B,CAClC,YAAoB,EACpB,KAAa;QAEb,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAClD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,IAAI,QAAQ,CAAC,6BAA6B,EAAE,CAAC;YAC3C,OAAO,QAAQ,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,QAAQ,CAAC,sBAAsB,EAAE,CAAC;YACpC,OAAO,QAAQ,CAAC,sBAAsB,CAAC,KAAK,CAAC;gBAC3C,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,aAAa,CAAC;QACpB,CAAC;QAED,OAAO,QAAQ,CAAC,qBAAqB,EAAE,CAAC;IAC1C,CAAC;;AA1FH,gDA2FC;AA1FC,kCAAkC;AACnB,4BAAS,GAA0C,IAAI,GAAG,EAAE,CAAC;AA2F9E,0CAA8B,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAClD,kBAAkB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAC9C,CAAC"}
1
+ {"version":3,"file":"ChatServiceFactory.js","sourceRoot":"","sources":["../../../src/services/ChatServiceFactory.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ClaudeChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/claude/ClaudeChatServiceProvider.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAGhC;;GAEG;AACH,qBAAa,yBACX,YAAW,mBAAmB,CAAC,wBAAwB,CAAC;IAExD;;;;OAIG;IACH,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,WAAW;IAqBjE;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAe9B;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,cAAc,IAAI,OAAO;IAIzB,qBAAqB,IAAI,kBAAkB;IAI3C;;;;OAIG;IACH,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI9C,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,kBAAkB;CAGjE"}
1
+ {"version":3,"file":"ClaudeChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/claude/ClaudeChatServiceProvider.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAGhC;;GAEG;AACH,qBAAa,yBACX,YAAW,mBAAmB,CAAC,wBAAwB,CAAC;IAExD;;;;OAIG;IACH,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,WAAW;IAqBjE;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAgB9B;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,cAAc,IAAI,OAAO;IAIzB,qBAAqB,IAAI,kBAAkB;IAI3C;;;;OAIG;IACH,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI9C,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,kBAAkB;CAGjE"}
@@ -47,6 +47,7 @@ class ClaudeChatServiceProvider {
47
47
  constants_1.MODEL_CLAUDE_4_6_OPUS,
48
48
  constants_1.MODEL_CLAUDE_4_7_OPUS,
49
49
  constants_1.MODEL_CLAUDE_4_8_OPUS,
50
+ constants_1.MODEL_CLAUDE_5_SONNET,
50
51
  constants_1.MODEL_CLAUDE_3_HAIKU,
51
52
  ];
52
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ClaudeChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/claude/ClaudeChatServiceProvider.ts"],"names":[],"mappings":";;;AAAA,kDAY4B;AAE5B,2DAAwD;AAOxD,0CAAoD;AAEpD;;GAEG;AACH,MAAa,yBAAyB;IAGpC;;;;OAIG;IACH,iBAAiB,CAAC,OAAiC;QACjD,gFAAgF;QAChF,MAAM,WAAW,GAAG,IAAA,0BAAkB,EAAC;YACrC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE;YACpC,kBAAkB,EAAE,IAAI,CAAC,eAAe,EAAE;YAC1C,sBAAsB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC;YACrE,QAAQ,EAAE,UAAU;SACrB,CAAC,CAAC;QAEH,OAAO,IAAI,qCAAiB,CAC1B,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,EACvC,WAAW,EACX,OAAO,CAAC,KAAK,IAAI,EAAE,EACnB,OAAO,CAAC,UAAU,IAAI,EAAE,EACxB,OAAO,CAAC,cAAc,CACvB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,kBAAkB;QAChB,OAAO;YACL,iCAAqB;YACrB,+BAAmB;YACnB,mCAAuB;YACvB,kCAAsB;YACtB,iCAAqB;YACrB,mCAAuB;YACvB,iCAAqB;YACrB,iCAAqB;YACrB,iCAAqB;YACrB,gCAAoB;SACrB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,kCAAsB,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,qBAAqB,EAAE,KAAK,aAAa,CAAC;IACxD,CAAC;IAED,qBAAqB;QACnB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,sBAAsB,CAAC,KAAa;QAClC,OAAO,0CAA8B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,CAAC;IAED,6BAA6B,CAAC,KAAa;QACzC,OAAO,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;IAC1E,CAAC;CACF;AAxFD,8DAwFC"}
1
+ {"version":3,"file":"ClaudeChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/claude/ClaudeChatServiceProvider.ts"],"names":[],"mappings":";;;AAAA,kDAa4B;AAE5B,2DAAwD;AAOxD,0CAAoD;AAEpD;;GAEG;AACH,MAAa,yBAAyB;IAGpC;;;;OAIG;IACH,iBAAiB,CAAC,OAAiC;QACjD,gFAAgF;QAChF,MAAM,WAAW,GAAG,IAAA,0BAAkB,EAAC;YACrC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE;YACpC,kBAAkB,EAAE,IAAI,CAAC,eAAe,EAAE;YAC1C,sBAAsB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC;YACrE,QAAQ,EAAE,UAAU;SACrB,CAAC,CAAC;QAEH,OAAO,IAAI,qCAAiB,CAC1B,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,EACvC,WAAW,EACX,OAAO,CAAC,KAAK,IAAI,EAAE,EACnB,OAAO,CAAC,UAAU,IAAI,EAAE,EACxB,OAAO,CAAC,cAAc,CACvB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,kBAAkB;QAChB,OAAO;YACL,iCAAqB;YACrB,+BAAmB;YACnB,mCAAuB;YACvB,kCAAsB;YACtB,iCAAqB;YACrB,mCAAuB;YACvB,iCAAqB;YACrB,iCAAqB;YACrB,iCAAqB;YACrB,iCAAqB;YACrB,gCAAoB;SACrB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,kCAAsB,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,qBAAqB,EAAE,KAAK,aAAa,CAAC;IACxD,CAAC;IAED,qBAAqB;QACnB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,sBAAsB,CAAC,KAAa;QAClC,OAAO,0CAA8B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,CAAC;IAED,6BAA6B,CAAC,KAAa;QACzC,OAAO,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;IAC1E,CAAC;CACF;AAzFD,8DAyFC"}
@@ -2,6 +2,8 @@ import { ChatService } from '../../ChatService';
2
2
  import type { OpenAIReasoningEffort } from '../../../constants';
3
3
  import type { ChatResponseLength } from '../../../constants/chat';
4
4
  import type { MCPServerConfig, Message, MessageWithVision, ToolChatCompletion, ToolDefinition } from '../../../types';
5
+ import type { BaseChatServiceOptions } from '../ChatServiceProvider';
6
+ type OpenAIResponseFormat = NonNullable<BaseChatServiceOptions['responseFormat']>;
5
7
  /**
6
8
  * OpenAI implementation of ChatService
7
9
  */
@@ -18,13 +20,14 @@ export declare class OpenAIChatService implements ChatService {
18
20
  private verbosity?;
19
21
  private reasoning_effort?;
20
22
  private enableReasoningSummary?;
23
+ private responseFormat?;
21
24
  /**
22
25
  * Constructor
23
26
  * @param apiKey OpenAI API key
24
27
  * @param model Name of the model to use
25
28
  * @param visionModel Name of the vision model
26
29
  */
27
- constructor(apiKey: string, model?: string, visionModel?: string, tools?: ToolDefinition[], endpoint?: string, mcpServers?: MCPServerConfig[], responseLength?: ChatResponseLength, verbosity?: 'low' | 'medium' | 'high', reasoning_effort?: OpenAIReasoningEffort, enableReasoningSummary?: boolean, provider?: string, validateVisionModel?: boolean);
30
+ constructor(apiKey: string, model?: string, visionModel?: string, tools?: ToolDefinition[], endpoint?: string, mcpServers?: MCPServerConfig[], responseLength?: ChatResponseLength, verbosity?: 'low' | 'medium' | 'high', reasoning_effort?: OpenAIReasoningEffort, enableReasoningSummary?: boolean, provider?: string, validateVisionModel?: boolean, responseFormat?: OpenAIResponseFormat);
28
31
  /**
29
32
  * Get the current model name
30
33
  * @returns Model name
@@ -77,4 +80,5 @@ export declare class OpenAIChatService implements ChatService {
77
80
  private parseStream;
78
81
  private parseOneShot;
79
82
  }
83
+ export {};
80
84
  //# sourceMappingURL=OpenAIChatService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OpenAIChatService.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOhD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,OAAO,EACP,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACf,MAAM,gBAAgB,CAAC;AAexB;;GAEG;AACH,qBAAa,iBAAkB,YAAW,WAAW;IACnD,oBAAoB;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,cAAc,CAAC,CAAqB;IAC5C,OAAO,CAAC,SAAS,CAAC,CAA4B;IAC9C,OAAO,CAAC,gBAAgB,CAAC,CAAwB;IACjD,OAAO,CAAC,sBAAsB,CAAC,CAAU;IAEzC;;;;;OAKG;gBAED,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,MAA0B,EACjC,WAAW,GAAE,MAA0B,EACvC,KAAK,CAAC,EAAE,cAAc,EAAE,EACxB,QAAQ,GAAE,MAA6C,EACvD,UAAU,GAAE,eAAe,EAAO,EAClC,cAAc,CAAC,EAAE,kBAAkB,EACnC,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,EACrC,gBAAgB,CAAC,EAAE,qBAAqB,EACxC,sBAAsB,GAAE,OAAe,EACvC,QAAQ,GAAE,MAAiB,EAC3B,mBAAmB,GAAE,OAAc;IAyBrC;;;OAGG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;OAGG;IACH,cAAc,IAAI,MAAM;IAIxB;;;;;OAKG;IACG,WAAW,CACf,QAAQ,EAAE,OAAO,EAAE,EACnB,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACzC,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAClD,OAAO,CAAC,IAAI,CAAC;IA6BhB;;;;;;OAMG;IACG,iBAAiB,CACrB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACzC,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAClD,OAAO,CAAC,IAAI,CAAC;IAuChB;;;;;;;OAOG;IACG,QAAQ,CACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,UAAO,EACb,iBAAiB,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAe,EACpD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAK9B;;;;;;;OAOG;IACG,cAAc,CAClB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,MAAM,GAAE,OAAe,EACvB,iBAAiB,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAe,EACpD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAU9B;;OAEG;YACW,aAAa;YAkBb,UAAU;YAgCV,YAAY;YAIZ,WAAW;IASzB,OAAO,CAAC,YAAY;CAGrB"}
1
+ {"version":3,"file":"OpenAIChatService.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOhD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,OAAO,EACP,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAerE,KAAK,oBAAoB,GAAG,WAAW,CACrC,sBAAsB,CAAC,gBAAgB,CAAC,CACzC,CAAC;AAEF;;GAEG;AACH,qBAAa,iBAAkB,YAAW,WAAW;IACnD,oBAAoB;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,cAAc,CAAC,CAAqB;IAC5C,OAAO,CAAC,SAAS,CAAC,CAA4B;IAC9C,OAAO,CAAC,gBAAgB,CAAC,CAAwB;IACjD,OAAO,CAAC,sBAAsB,CAAC,CAAU;IACzC,OAAO,CAAC,cAAc,CAAC,CAAuB;IAE9C;;;;;OAKG;gBAED,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,MAA0B,EACjC,WAAW,GAAE,MAA0B,EACvC,KAAK,CAAC,EAAE,cAAc,EAAE,EACxB,QAAQ,GAAE,MAA6C,EACvD,UAAU,GAAE,eAAe,EAAO,EAClC,cAAc,CAAC,EAAE,kBAAkB,EACnC,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,EACrC,gBAAgB,CAAC,EAAE,qBAAqB,EACxC,sBAAsB,GAAE,OAAe,EACvC,QAAQ,GAAE,MAAiB,EAC3B,mBAAmB,GAAE,OAAc,EACnC,cAAc,CAAC,EAAE,oBAAoB;IA0BvC;;;OAGG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;OAGG;IACH,cAAc,IAAI,MAAM;IAIxB;;;;;OAKG;IACG,WAAW,CACf,QAAQ,EAAE,OAAO,EAAE,EACnB,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACzC,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAClD,OAAO,CAAC,IAAI,CAAC;IA6BhB;;;;;;OAMG;IACG,iBAAiB,CACrB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACzC,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAClD,OAAO,CAAC,IAAI,CAAC;IAuChB;;;;;;;OAOG;IACG,QAAQ,CACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,UAAO,EACb,iBAAiB,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAe,EACpD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAK9B;;;;;;;OAOG;IACG,cAAc,CAClB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,MAAM,GAAE,OAAe,EACvB,iBAAiB,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAe,EACpD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAU9B;;OAEG;YACW,aAAa;YAkBb,UAAU;YAiCV,YAAY;YAIZ,WAAW;IASzB,OAAO,CAAC,YAAY;CAGrB"}
@@ -17,7 +17,7 @@ class OpenAIChatService {
17
17
  * @param model Name of the model to use
18
18
  * @param visionModel Name of the vision model
19
19
  */
20
- constructor(apiKey, model = constants_1.MODEL_GPT_4O_MINI, visionModel = constants_1.MODEL_GPT_4O_MINI, tools, endpoint = constants_1.ENDPOINT_OPENAI_CHAT_COMPLETIONS_API, mcpServers = [], responseLength, verbosity, reasoning_effort, enableReasoningSummary = false, provider = 'openai', validateVisionModel = true) {
20
+ constructor(apiKey, model = constants_1.MODEL_GPT_4O_MINI, visionModel = constants_1.MODEL_GPT_4O_MINI, tools, endpoint = constants_1.ENDPOINT_OPENAI_CHAT_COMPLETIONS_API, mcpServers = [], responseLength, verbosity, reasoning_effort, enableReasoningSummary = false, provider = 'openai', validateVisionModel = true, responseFormat) {
21
21
  this.provider = provider;
22
22
  this.apiKey = apiKey;
23
23
  this.model = model;
@@ -29,6 +29,7 @@ class OpenAIChatService {
29
29
  this.verbosity = verbosity;
30
30
  this.reasoning_effort = reasoning_effort;
31
31
  this.enableReasoningSummary = enableReasoningSummary;
32
+ this.responseFormat = responseFormat;
32
33
  // Official OpenAI validates vision model names strictly.
33
34
  // Compatible providers can skip this to support arbitrary local IDs.
34
35
  if (validateVisionModel && !constants_1.VISION_SUPPORTED_MODELS.includes(visionModel)) {
@@ -168,6 +169,7 @@ class OpenAIChatService {
168
169
  verbosity: this.verbosity,
169
170
  reasoning_effort: this.reasoning_effort,
170
171
  enableReasoningSummary: this.enableReasoningSummary,
172
+ responseFormat: this.responseFormat,
171
173
  maxTokens,
172
174
  });
173
175
  const headers = {};
@@ -1 +1 @@
1
- {"version":3,"file":"OpenAIChatService.js","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpenAIChatService.js","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatService.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"OpenAIChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatServiceProvider.ts"],"names":[],"mappings":"AA+BA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAIhC;;GAEG;AACH,qBAAa,yBACX,YAAW,mBAAmB,CAAC,wBAAwB,CAAC;IAExD;;;;OAIG;IACH,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,WAAW;IAwDjE;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAsB9B;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,cAAc,IAAI,OAAO;IAIzB,qBAAqB,IAAI,kBAAkB;IAI3C;;;;OAIG;IACH,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI9C,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,kBAAkB;IAIhE;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAoC3B;;;;;;;;OAQG;IACH,OAAO,CAAC,wBAAwB;CA+BjC"}
1
+ {"version":3,"file":"OpenAIChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatServiceProvider.ts"],"names":[],"mappings":"AA+BA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAIhC;;GAEG;AACH,qBAAa,yBACX,YAAW,mBAAmB,CAAC,wBAAwB,CAAC;IAExD;;;;OAIG;IACH,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,WAAW;IA8DjE;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAsB9B;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,cAAc,IAAI,OAAO;IAIzB,qBAAqB,IAAI,kBAAkB;IAI3C;;;;OAIG;IACH,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI9C,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,kBAAkB;IAIhE;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAoC3B;;;;;;;;OAQG;IACH,OAAO,CAAC,wBAAwB;CA+BjC"}
@@ -50,7 +50,23 @@ class OpenAIChatServiceProvider {
50
50
  (shouldUseResponsesAPI
51
51
  ? constants_1.ENDPOINT_OPENAI_RESPONSES_API
52
52
  : constants_1.ENDPOINT_OPENAI_CHAT_COMPLETIONS_API);
53
- return new OpenAIChatService_1.OpenAIChatService(optimizedOptions.apiKey, modelName, visionModel, tools, endpoint, mcpServers, optimizedOptions.responseLength, optimizedOptions.verbosity, optimizedOptions.reasoning_effort, optimizedOptions.enableReasoningSummary, this.getProviderName());
53
+ const serviceArgs = [
54
+ optimizedOptions.apiKey,
55
+ modelName,
56
+ visionModel,
57
+ tools,
58
+ endpoint,
59
+ mcpServers,
60
+ optimizedOptions.responseLength,
61
+ optimizedOptions.verbosity,
62
+ optimizedOptions.reasoning_effort,
63
+ optimizedOptions.enableReasoningSummary,
64
+ this.getProviderName(),
65
+ ];
66
+ if (optimizedOptions.responseFormat !== undefined) {
67
+ serviceArgs.push(true, optimizedOptions.responseFormat);
68
+ }
69
+ return new OpenAIChatService_1.OpenAIChatService(...serviceArgs);
54
70
  }
55
71
  /**
56
72
  * Get the provider name