@aituber-onair/chat 0.37.0 → 0.39.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 (89) hide show
  1. package/README.ja.md +47 -1
  2. package/README.md +46 -1
  3. package/dist/cjs/constants/openai.d.ts +2 -1
  4. package/dist/cjs/constants/openai.d.ts.map +1 -1
  5. package/dist/cjs/constants/openai.js +3 -4
  6. package/dist/cjs/constants/openai.js.map +1 -1
  7. package/dist/cjs/constants/openrouter.d.ts +1 -0
  8. package/dist/cjs/constants/openrouter.d.ts.map +1 -1
  9. package/dist/cjs/constants/openrouter.js +2 -1
  10. package/dist/cjs/constants/openrouter.js.map +1 -1
  11. package/dist/cjs/services/providers/gemini/GeminiChatService.d.ts +5 -0
  12. package/dist/cjs/services/providers/gemini/GeminiChatService.d.ts.map +1 -1
  13. package/dist/cjs/services/providers/gemini/GeminiChatService.js +22 -6
  14. package/dist/cjs/services/providers/gemini/GeminiChatService.js.map +1 -1
  15. package/dist/cjs/services/providers/openai/OpenAIChatServiceProvider.d.ts +6 -0
  16. package/dist/cjs/services/providers/openai/OpenAIChatServiceProvider.d.ts.map +1 -1
  17. package/dist/cjs/services/providers/openai/OpenAIChatServiceProvider.js +17 -7
  18. package/dist/cjs/services/providers/openai/OpenAIChatServiceProvider.js.map +1 -1
  19. package/dist/cjs/services/providers/openai/responsesParser.d.ts +7 -2
  20. package/dist/cjs/services/providers/openai/responsesParser.d.ts.map +1 -1
  21. package/dist/cjs/services/providers/openai/responsesParser.js +9 -7
  22. package/dist/cjs/services/providers/openai/responsesParser.js.map +1 -1
  23. package/dist/cjs/services/providers/openrouter/OpenRouterChatService.d.ts.map +1 -1
  24. package/dist/cjs/services/providers/openrouter/OpenRouterChatService.js +7 -5
  25. package/dist/cjs/services/providers/openrouter/OpenRouterChatService.js.map +1 -1
  26. package/dist/cjs/services/providers/openrouter/OpenRouterChatServiceProvider.d.ts.map +1 -1
  27. package/dist/cjs/services/providers/openrouter/OpenRouterChatServiceProvider.js +1 -0
  28. package/dist/cjs/services/providers/openrouter/OpenRouterChatServiceProvider.js.map +1 -1
  29. package/dist/cjs/utils/index.d.ts +1 -0
  30. package/dist/cjs/utils/index.d.ts.map +1 -1
  31. package/dist/cjs/utils/index.js +1 -0
  32. package/dist/cjs/utils/index.js.map +1 -1
  33. package/dist/cjs/utils/mcpSchemaFetcher.d.ts +20 -0
  34. package/dist/cjs/utils/mcpSchemaFetcher.d.ts.map +1 -1
  35. package/dist/cjs/utils/mcpSchemaFetcher.js +60 -44
  36. package/dist/cjs/utils/mcpSchemaFetcher.js.map +1 -1
  37. package/dist/cjs/utils/openaiCompatibleSse.d.ts +3 -2
  38. package/dist/cjs/utils/openaiCompatibleSse.d.ts.map +1 -1
  39. package/dist/cjs/utils/openaiCompatibleSse.js +4 -3
  40. package/dist/cjs/utils/openaiCompatibleSse.js.map +1 -1
  41. package/dist/cjs/utils/safeJsonParse.d.ts +4 -0
  42. package/dist/cjs/utils/safeJsonParse.d.ts.map +1 -0
  43. package/dist/cjs/utils/safeJsonParse.js +21 -0
  44. package/dist/cjs/utils/safeJsonParse.js.map +1 -0
  45. package/dist/esm/constants/openai.d.ts +2 -1
  46. package/dist/esm/constants/openai.d.ts.map +1 -1
  47. package/dist/esm/constants/openai.js +3 -4
  48. package/dist/esm/constants/openai.js.map +1 -1
  49. package/dist/esm/constants/openrouter.d.ts +1 -0
  50. package/dist/esm/constants/openrouter.d.ts.map +1 -1
  51. package/dist/esm/constants/openrouter.js +1 -0
  52. package/dist/esm/constants/openrouter.js.map +1 -1
  53. package/dist/esm/services/providers/gemini/GeminiChatService.d.ts +5 -0
  54. package/dist/esm/services/providers/gemini/GeminiChatService.d.ts.map +1 -1
  55. package/dist/esm/services/providers/gemini/GeminiChatService.js +22 -6
  56. package/dist/esm/services/providers/gemini/GeminiChatService.js.map +1 -1
  57. package/dist/esm/services/providers/openai/OpenAIChatServiceProvider.d.ts +6 -0
  58. package/dist/esm/services/providers/openai/OpenAIChatServiceProvider.d.ts.map +1 -1
  59. package/dist/esm/services/providers/openai/OpenAIChatServiceProvider.js +17 -7
  60. package/dist/esm/services/providers/openai/OpenAIChatServiceProvider.js.map +1 -1
  61. package/dist/esm/services/providers/openai/responsesParser.d.ts +7 -2
  62. package/dist/esm/services/providers/openai/responsesParser.d.ts.map +1 -1
  63. package/dist/esm/services/providers/openai/responsesParser.js +9 -7
  64. package/dist/esm/services/providers/openai/responsesParser.js.map +1 -1
  65. package/dist/esm/services/providers/openrouter/OpenRouterChatService.d.ts.map +1 -1
  66. package/dist/esm/services/providers/openrouter/OpenRouterChatService.js +7 -5
  67. package/dist/esm/services/providers/openrouter/OpenRouterChatService.js.map +1 -1
  68. package/dist/esm/services/providers/openrouter/OpenRouterChatServiceProvider.d.ts.map +1 -1
  69. package/dist/esm/services/providers/openrouter/OpenRouterChatServiceProvider.js +2 -1
  70. package/dist/esm/services/providers/openrouter/OpenRouterChatServiceProvider.js.map +1 -1
  71. package/dist/esm/utils/index.d.ts +1 -0
  72. package/dist/esm/utils/index.d.ts.map +1 -1
  73. package/dist/esm/utils/index.js +1 -0
  74. package/dist/esm/utils/index.js.map +1 -1
  75. package/dist/esm/utils/mcpSchemaFetcher.d.ts +20 -0
  76. package/dist/esm/utils/mcpSchemaFetcher.d.ts.map +1 -1
  77. package/dist/esm/utils/mcpSchemaFetcher.js +60 -44
  78. package/dist/esm/utils/mcpSchemaFetcher.js.map +1 -1
  79. package/dist/esm/utils/openaiCompatibleSse.d.ts +3 -2
  80. package/dist/esm/utils/openaiCompatibleSse.d.ts.map +1 -1
  81. package/dist/esm/utils/openaiCompatibleSse.js +4 -3
  82. package/dist/esm/utils/openaiCompatibleSse.js.map +1 -1
  83. package/dist/esm/utils/safeJsonParse.d.ts +4 -0
  84. package/dist/esm/utils/safeJsonParse.d.ts.map +1 -0
  85. package/dist/esm/utils/safeJsonParse.js +16 -0
  86. package/dist/esm/utils/safeJsonParse.js.map +1 -0
  87. package/dist/umd/aituber-onair-chat.js +145 -72
  88. package/dist/umd/aituber-onair-chat.min.js +10 -10
  89. package/package.json +1 -1
package/README.ja.md CHANGED
@@ -449,12 +449,56 @@ const compatibleService = ChatServiceFactory.createChatService(
449
449
 
450
450
  `reasoning_effort` の選択肢はモデルによって異なります。
451
451
  - `gpt-5.4-pro`: `'medium' | 'high' | 'xhigh'`(Responses API 専用)
452
- - `gpt-5.5`: `'none' | 'low' | 'medium' | 'high' | 'xhigh'`(このパッケージでは高速なチャット応答を優先してデフォルトは `'none'`)
452
+ - `gpt-5.5`: `'none' | 'low' | 'medium' | 'high' | 'xhigh'`
453
453
  - `gpt-5.4`: `'none' | 'low' | 'medium' | 'high' | 'xhigh'`
454
454
  - `gpt-5.4-mini` / `gpt-5.4-nano`: `'none' | 'low' | 'medium' | 'high' | 'xhigh'`
455
455
  - `gpt-5.1`: `'none' | 'low' | 'medium' | 'high'`
456
456
  - `gpt-5` / `gpt-5-mini` / `gpt-5-nano`: `'minimal' | 'low' | 'medium' | 'high'`
457
457
 
458
+ このパッケージでのデフォルト値と正規化:
459
+ - `'none'` に対応するモデル(`gpt-5.1`, `gpt-5.4`, `gpt-5.4-mini`,
460
+ `gpt-5.4-nano`, `gpt-5.5`)は、高速なチャット応答を優先してデフォルトが
461
+ `'none'` になります。OpenAI 公式のデフォルトが `'medium'` のモデルも
462
+ ありますが、このパッケージでは意図的に低遅延を優先しています。
463
+ - それ以外の GPT-5 系モデルのデフォルトは `'medium'` です。
464
+ - モデルが対応していない値はリセットされず、最も近い対応値に丸められます
465
+ (例: `gpt-5.4-nano` の `'minimal'` は `'none'` に、`gpt-5-nano` の
466
+ `'none'` は `'minimal'` に、`gpt-5.1` の `'xhigh'` は `'high'` に
467
+ 解決されます)。
468
+
469
+ ##### GPT-5 プリセットと低遅延チャット(AITuber 向け)
470
+
471
+ モデルごとに `reasoning_effort` と `verbosity` を調整する代わりに、
472
+ `gpt5Preset` を指定できます。
473
+
474
+ - `casual` – 最速の応答(`reasoning_effort: 'minimal'`,
475
+ `verbosity: 'low'`)。`'minimal'` 非対応モデルでは、そのモデルで使える
476
+ 最小の effort に解決されます(GPT-5.1 / 5.4 / 5.5 系では `'none'`、
477
+ `gpt-5.4-pro` では `'medium'`)。
478
+ - `balanced` – `reasoning_effort: 'medium'`, `verbosity: 'medium'`。
479
+ - `expert` – `reasoning_effort: 'high'`, `verbosity: 'high'`。
480
+
481
+ 深い推論よりも最初の応答までの速さが重要なリアルタイムのキャラクター
482
+ チャット(AITuber 向け)には、次の設定を推奨します。
483
+
484
+ ```typescript
485
+ const aituberChatService = ChatServiceFactory.createChatService('openai', {
486
+ apiKey: process.env.OPENAI_API_KEY,
487
+ model: 'gpt-5.4-nano',
488
+ gpt5Preset: 'casual', // このモデルでは reasoning_effort 'none' に解決
489
+ responseLength: 'veryShort', // 少し長めの応答なら 'short'
490
+ });
491
+ ```
492
+
493
+ 注意点:
494
+ - 低い reasoning effort は、速度と引き換えに複雑な質問への回答品質が
495
+ 低下する可能性があります。ツール/関数呼び出しや MCP を多用する場合は
496
+ `balanced` 以上を推奨します。
497
+ - 一部の GPT-5.4 系モデルでは、Chat Completions API で function tools と
498
+ `reasoning_effort` の併用がサポートされていません。ツールと reasoning
499
+ 設定を併用する場合は `gpt5EndpointPreference: 'responses'` を指定して
500
+ ください。
501
+
458
502
  **GPT-5ファミリーの概要**
459
503
 
460
504
  - `gpt-5.5` – 複雑なプロフェッショナル用途向けの OpenAI 最新フロンティアモデル。テキスト/画像入力に対応し、Chat Completions API と Responses API の両方で利用できます。
@@ -560,8 +604,10 @@ const openRouterService = ChatServiceFactory.createChatService('openrouter', {
560
604
  - 応答の長さを制御するには、プロンプト内で指示してください(例:「40文字以内で返答してください」)
561
605
  - 無料階層にはレート制限があります(20リクエスト/分)
562
606
  - 無料モデル判定はモデルID末尾の `:free` で行います(動的取得した `:free` も同様にレート制限対象)
607
+ - `openrouter/fusion` は複数モデルのパネルとジャッジモデルを実行します。単一モデルの固定単価ではなく、内部で使われた各モデル呼び出しと web search/fetch 利用分の合算で課金されます。
563
608
  - サポート対象モデル(キュレーション済み):
564
609
  - `openrouter/auto`
610
+ - `openrouter/fusion`
565
611
  - `openai/gpt-oss-20b:free`
566
612
  - `~openai/gpt-latest`, `~openai/gpt-mini-latest`, `openai/gpt-5.5-pro`, `openai/gpt-5.5`
567
613
  - `openai/gpt-5.1-chat`, `openai/gpt-5.1-codex`, `openai/gpt-5-mini`, `openai/gpt-5-nano`
package/README.md CHANGED
@@ -467,12 +467,55 @@ Notes:
467
467
 
468
468
  `reasoning_effort` options differ per model:
469
469
  - `gpt-5.4-pro`: `'medium' | 'high' | 'xhigh'` (Responses API only)
470
- - `gpt-5.5`: `'none' | 'low' | 'medium' | 'high' | 'xhigh'` (defaults to `'none'` in this package for fast chat responses)
470
+ - `gpt-5.5`: `'none' | 'low' | 'medium' | 'high' | 'xhigh'`
471
471
  - `gpt-5.4`: `'none' | 'low' | 'medium' | 'high' | 'xhigh'`
472
472
  - `gpt-5.4-mini` / `gpt-5.4-nano`: `'none' | 'low' | 'medium' | 'high' | 'xhigh'`
473
473
  - `gpt-5.1`: `'none' | 'low' | 'medium' | 'high'`
474
474
  - `gpt-5` / `gpt-5-mini` / `gpt-5-nano`: `'minimal' | 'low' | 'medium' | 'high'`
475
475
 
476
+ Defaults and normalization in this package:
477
+ - Models that support `'none'` (`gpt-5.1`, `gpt-5.4`, `gpt-5.4-mini`,
478
+ `gpt-5.4-nano`, `gpt-5.5`) default to `'none'` for fast chat responses.
479
+ Note that OpenAI's own default for some of these models is `'medium'`;
480
+ this package intentionally prioritizes low latency.
481
+ - Other GPT-5 models default to `'medium'`.
482
+ - Values a model does not support are rounded to the nearest supported
483
+ level instead of being reset (e.g. `'minimal'` on `gpt-5.4-nano`
484
+ resolves to `'none'`, `'none'` on `gpt-5-nano` resolves to `'minimal'`,
485
+ and `'xhigh'` on `gpt-5.1` resolves to `'high'`).
486
+
487
+ ##### GPT-5 Presets and Low-Latency Chat (AITuber-style)
488
+
489
+ Instead of tuning `reasoning_effort` and `verbosity` per model, you can set
490
+ `gpt5Preset`:
491
+
492
+ - `casual` – fastest responses (`reasoning_effort: 'minimal'`,
493
+ `verbosity: 'low'`). On models without `'minimal'` this resolves to the
494
+ lowest supported effort (`'none'` on the GPT-5.1/5.4/5.5 family,
495
+ `'medium'` on `gpt-5.4-pro`).
496
+ - `balanced` – `reasoning_effort: 'medium'`, `verbosity: 'medium'`.
497
+ - `expert` – `reasoning_effort: 'high'`, `verbosity: 'high'`.
498
+
499
+ Recommended settings for real-time character chat (AITuber-style), where
500
+ time-to-first-token matters more than deep reasoning:
501
+
502
+ ```typescript
503
+ const aituberChatService = ChatServiceFactory.createChatService('openai', {
504
+ apiKey: process.env.OPENAI_API_KEY,
505
+ model: 'gpt-5.4-nano',
506
+ gpt5Preset: 'casual', // resolves to reasoning_effort 'none' on this model
507
+ responseLength: 'veryShort', // or 'short' for slightly longer replies
508
+ });
509
+ ```
510
+
511
+ Caveats:
512
+ - Low reasoning effort trades answer quality on complex questions for
513
+ speed. For tool/function calling or MCP-heavy flows, prefer `balanced`
514
+ or higher.
515
+ - OpenAI does not support function tools combined with `reasoning_effort`
516
+ on the Chat Completions API for some GPT-5.4 models. When you use tools
517
+ with reasoning settings, set `gpt5EndpointPreference: 'responses'`.
518
+
476
519
  **Meet the GPT-5 family**
477
520
 
478
521
  - `gpt-5.5` – OpenAI's newest frontier model for complex professional work, with text and image input support and both Chat Completions and Responses API support.
@@ -575,8 +618,10 @@ const openRouterService = ChatServiceFactory.createChatService('openrouter', {
575
618
  - To control response length, include instructions in your prompt (e.g., "Please respond in 40 characters or less")
576
619
  - Free tier has rate limits (20 requests/minute)
577
620
  - Free tier detection is based on the model ID suffix `:free` (dynamic `:free` IDs are also rate-limited)
621
+ - `openrouter/fusion` runs a multi-model panel plus a judge model; OpenRouter bills the sum of the underlying model calls and any enabled web search/fetch usage, not a single fixed model rate.
578
622
  - Supported models (curated list):
579
623
  - `openrouter/auto`
624
+ - `openrouter/fusion`
580
625
  - `openai/gpt-oss-20b:free`
581
626
  - `~openai/gpt-latest`, `~openai/gpt-mini-latest`, `openai/gpt-5.5-pro`, `openai/gpt-5.5`
582
627
  - `openai/gpt-5.1-chat`, `openai/gpt-5.1-codex`, `openai/gpt-5-mini`, `openai/gpt-5-nano`
@@ -51,7 +51,8 @@ export declare function allowsReasoningMinimal(model: string): boolean;
51
51
  export declare function allowsReasoningLow(model: string): boolean;
52
52
  /**
53
53
  * Get default reasoning effort by GPT-5 model family
54
- * - GPT-5.1 / GPT-5.4 / GPT-5.5: none
54
+ * - Models that support reasoning_effort 'none'
55
+ * (GPT-5.1 / GPT-5.4 / GPT-5.5 family, except Pro): none
55
56
  * - GPT-5.4 Pro and earlier GPT-5 variants: medium
56
57
  */
57
58
  export declare function getDefaultReasoningEffortForGPT5Model(model: string): 'none' | 'medium';
@@ -1 +1 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../src/constants/openai.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oCAAoC,+CACH,CAAC;AAC/C,eAAO,MAAM,6BAA6B,wCACH,CAAC;AAGxC,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAC7C,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAC7C,eAAO,MAAM,WAAW,UAAU,CAAC;AACnC,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AACjD,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AACjD,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAI/C,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AACjD,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AAEjD,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAC/C,eAAO,MAAM,YAAY,WAAW,CAAC;AACrC,eAAO,MAAM,aAAa,YAAY,CAAC;AAEvC,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,QAAQ,OAAO,CAAC;AAG7B,eAAO,MAAM,uBAAuB,UAiBnC,CAAC;AAGF,eAAO,MAAM,YAAY,UAUxB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAC7B,MAAM,GACN,SAAS,GACT,KAAK,GACL,QAAQ,GACR,MAAM,GACN,OAAO,CAAC;AAEZ;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAQ3D;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAQ1D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAM7D;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED;;;;GAIG;AACH,wBAAgB,qCAAqC,CACnD,KAAK,EAAE,MAAM,GACZ,MAAM,GAAG,QAAQ,CASnB"}
1
+ {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../src/constants/openai.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oCAAoC,+CACH,CAAC;AAC/C,eAAO,MAAM,6BAA6B,wCACH,CAAC;AAGxC,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAC7C,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAC7C,eAAO,MAAM,WAAW,UAAU,CAAC;AACnC,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AACjD,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AACjD,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAI/C,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AACjD,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AAEjD,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAC/C,eAAO,MAAM,YAAY,WAAW,CAAC;AACrC,eAAO,MAAM,aAAa,YAAY,CAAC;AAEvC,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,QAAQ,OAAO,CAAC;AAG7B,eAAO,MAAM,uBAAuB,UAiBnC,CAAC;AAGF,eAAO,MAAM,YAAY,UAUxB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAC7B,MAAM,GACN,SAAS,GACT,KAAK,GACL,QAAQ,GACR,MAAM,GACN,OAAO,CAAC;AAEZ;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAQ3D;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAQ1D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAM7D;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED;;;;;GAKG;AACH,wBAAgB,qCAAqC,CACnD,KAAK,EAAE,MAAM,GACZ,MAAM,GAAG,QAAQ,CAKnB"}
@@ -114,13 +114,12 @@ function allowsReasoningLow(model) {
114
114
  }
115
115
  /**
116
116
  * Get default reasoning effort by GPT-5 model family
117
- * - GPT-5.1 / GPT-5.4 / GPT-5.5: none
117
+ * - Models that support reasoning_effort 'none'
118
+ * (GPT-5.1 / GPT-5.4 / GPT-5.5 family, except Pro): none
118
119
  * - GPT-5.4 Pro and earlier GPT-5 variants: medium
119
120
  */
120
121
  function getDefaultReasoningEffortForGPT5Model(model) {
121
- if (model === exports.MODEL_GPT_5_1 ||
122
- model === exports.MODEL_GPT_5_4 ||
123
- model === exports.MODEL_GPT_5_5) {
122
+ if (allowsReasoningNone(model)) {
124
123
  return 'none';
125
124
  }
126
125
  return 'medium';
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../src/constants/openai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../src/constants/openai.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  export declare const ENDPOINT_OPENROUTER_API = "https://openrouter.ai/api/v1/chat/completions";
2
2
  export declare const MODEL_OPENROUTER_AUTO = "openrouter/auto";
3
+ export declare const MODEL_OPENROUTER_FUSION = "openrouter/fusion";
3
4
  export declare const MODEL_GPT_OSS_20B_FREE = "openai/gpt-oss-20b:free";
4
5
  export declare const MODEL_MOONSHOTAI_KIMI_K2_5 = "moonshotai/kimi-k2.5";
5
6
  export declare const MODEL_MOONSHOTAI_KIMI_LATEST = "~moonshotai/kimi-latest";
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter.d.ts","sourceRoot":"","sources":["../../../src/constants/openrouter.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,kDACa,CAAC;AAGlD,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AACvD,eAAO,MAAM,sBAAsB,4BAA4B,CAAC;AAChE,eAAO,MAAM,0BAA0B,yBAAyB,CAAC;AACjE,eAAO,MAAM,4BAA4B,4BAA4B,CAAC;AACtE,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAC5D,eAAO,MAAM,4BAA4B,4BAA4B,CAAC;AACtE,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAC7D,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AACrD,eAAO,MAAM,yBAAyB,wBAAwB,CAAC;AAC/D,eAAO,MAAM,0BAA0B,yBAAyB,CAAC;AACjE,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAC3D,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAC3D,eAAO,MAAM,mBAAmB,kBAAkB,CAAC;AACnD,eAAO,MAAM,yBAAyB,wBAAwB,CAAC;AAC/D,eAAO,MAAM,yBAAyB,wBAAwB,CAAC;AAC/D,eAAO,MAAM,oCAAoC,oCACd,CAAC;AACpC,eAAO,MAAM,mCAAmC,mCACd,CAAC;AACnC,eAAO,MAAM,6BAA6B,4BAA4B,CAAC;AACvE,eAAO,MAAM,+BAA+B,8BAA8B,CAAC;AAC3E,eAAO,MAAM,iCAAiC,gCAAgC,CAAC;AAC/E,eAAO,MAAM,iCAAiC,gCAAgC,CAAC;AAC/E,eAAO,MAAM,gCAAgC,+BAA+B,CAAC;AAC7E,eAAO,MAAM,8BAA8B,8BAA8B,CAAC;AAC1E,eAAO,MAAM,gCAAgC,gCAAgC,CAAC;AAC9E,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AACnE,eAAO,MAAM,6BAA6B,4BAA4B,CAAC;AACvE,eAAO,MAAM,kDAAkD,iDACf,CAAC;AACjD,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAC5D,eAAO,MAAM,qBAAqB,qBAAqB,CAAC;AACxD,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAGlE,eAAO,MAAM,sBAAsB,UAGlC,CAAC;AAGF,eAAO,MAAM,kCAAkC,UAyB9C,CAAC;AAGF,eAAO,MAAM,qCAAqC,KAAK,CAAC;AACxD,eAAO,MAAM,uCAAuC,KAAK,CAAC;AAC1D,eAAO,MAAM,wCAAwC,OAAO,CAAC;AAC7D,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAI9D"}
1
+ {"version":3,"file":"openrouter.d.ts","sourceRoot":"","sources":["../../../src/constants/openrouter.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,kDACa,CAAC;AAGlD,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AACvD,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAC3D,eAAO,MAAM,sBAAsB,4BAA4B,CAAC;AAChE,eAAO,MAAM,0BAA0B,yBAAyB,CAAC;AACjE,eAAO,MAAM,4BAA4B,4BAA4B,CAAC;AACtE,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAC5D,eAAO,MAAM,4BAA4B,4BAA4B,CAAC;AACtE,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAC7D,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AACrD,eAAO,MAAM,yBAAyB,wBAAwB,CAAC;AAC/D,eAAO,MAAM,0BAA0B,yBAAyB,CAAC;AACjE,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAC3D,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAC3D,eAAO,MAAM,mBAAmB,kBAAkB,CAAC;AACnD,eAAO,MAAM,yBAAyB,wBAAwB,CAAC;AAC/D,eAAO,MAAM,yBAAyB,wBAAwB,CAAC;AAC/D,eAAO,MAAM,oCAAoC,oCACd,CAAC;AACpC,eAAO,MAAM,mCAAmC,mCACd,CAAC;AACnC,eAAO,MAAM,6BAA6B,4BAA4B,CAAC;AACvE,eAAO,MAAM,+BAA+B,8BAA8B,CAAC;AAC3E,eAAO,MAAM,iCAAiC,gCAAgC,CAAC;AAC/E,eAAO,MAAM,iCAAiC,gCAAgC,CAAC;AAC/E,eAAO,MAAM,gCAAgC,+BAA+B,CAAC;AAC7E,eAAO,MAAM,8BAA8B,8BAA8B,CAAC;AAC1E,eAAO,MAAM,gCAAgC,gCAAgC,CAAC;AAC9E,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AACnE,eAAO,MAAM,6BAA6B,4BAA4B,CAAC;AACvE,eAAO,MAAM,kDAAkD,iDACf,CAAC;AACjD,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAC5D,eAAO,MAAM,qBAAqB,qBAAqB,CAAC;AACxD,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAGlE,eAAO,MAAM,sBAAsB,UAGlC,CAAC;AAGF,eAAO,MAAM,kCAAkC,UAyB9C,CAAC;AAGF,eAAO,MAAM,qCAAqC,KAAK,CAAC;AACxD,eAAO,MAAM,uCAAuC,KAAK,CAAC;AAC1D,eAAO,MAAM,wCAAwC,OAAO,CAAC;AAC7D,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAI9D"}
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OPENROUTER_CREDITS_THRESHOLD = exports.OPENROUTER_FREE_DAILY_LIMIT_HIGH_CREDITS = exports.OPENROUTER_FREE_DAILY_LIMIT_LOW_CREDITS = exports.OPENROUTER_FREE_RATE_LIMIT_PER_MINUTE = exports.OPENROUTER_VISION_SUPPORTED_MODELS = exports.OPENROUTER_FREE_MODELS = exports.MODEL_ZAI_GLM_4_5_AIR_FREE = exports.MODEL_ZAI_GLM_4_5_AIR = exports.MODEL_ZAI_GLM_4_7_FLASH = exports.MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE_PREVIEW_09_2025 = exports.MODEL_GOOGLE_GEMINI_2_5_FLASH = exports.MODEL_GOOGLE_GEMINI_2_5_PRO = exports.MODEL_GOOGLE_GEMINI_FLASH_LATEST = exports.MODEL_GOOGLE_GEMINI_PRO_LATEST = exports.MODEL_ANTHROPIC_CLAUDE_4_5_HAIKU = exports.MODEL_ANTHROPIC_CLAUDE_3_5_SONNET = exports.MODEL_ANTHROPIC_CLAUDE_3_7_SONNET = exports.MODEL_ANTHROPIC_CLAUDE_SONNET_4 = exports.MODEL_ANTHROPIC_CLAUDE_OPUS_4 = exports.MODEL_ANTHROPIC_CLAUDE_HAIKU_LATEST = exports.MODEL_ANTHROPIC_CLAUDE_SONNET_LATEST = exports.MODEL_OPENAI_GPT_4_1_NANO = exports.MODEL_OPENAI_GPT_4_1_MINI = exports.MODEL_OPENAI_GPT_4O = exports.MODEL_OPENAI_GPT_5_NANO = exports.MODEL_OPENAI_GPT_5_MINI = exports.MODEL_OPENAI_GPT_5_1_CODEX = exports.MODEL_OPENAI_GPT_5_1_CHAT = exports.MODEL_OPENAI_GPT_5_5 = exports.MODEL_OPENAI_GPT_5_5_PRO = exports.MODEL_OPENAI_GPT_MINI_LATEST = exports.MODEL_OPENAI_GPT_LATEST = exports.MODEL_MOONSHOTAI_KIMI_LATEST = exports.MODEL_MOONSHOTAI_KIMI_K2_5 = exports.MODEL_GPT_OSS_20B_FREE = exports.MODEL_OPENROUTER_AUTO = exports.ENDPOINT_OPENROUTER_API = void 0;
3
+ exports.OPENROUTER_CREDITS_THRESHOLD = exports.OPENROUTER_FREE_DAILY_LIMIT_HIGH_CREDITS = exports.OPENROUTER_FREE_DAILY_LIMIT_LOW_CREDITS = exports.OPENROUTER_FREE_RATE_LIMIT_PER_MINUTE = exports.OPENROUTER_VISION_SUPPORTED_MODELS = exports.OPENROUTER_FREE_MODELS = exports.MODEL_ZAI_GLM_4_5_AIR_FREE = exports.MODEL_ZAI_GLM_4_5_AIR = exports.MODEL_ZAI_GLM_4_7_FLASH = exports.MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE_PREVIEW_09_2025 = exports.MODEL_GOOGLE_GEMINI_2_5_FLASH = exports.MODEL_GOOGLE_GEMINI_2_5_PRO = exports.MODEL_GOOGLE_GEMINI_FLASH_LATEST = exports.MODEL_GOOGLE_GEMINI_PRO_LATEST = exports.MODEL_ANTHROPIC_CLAUDE_4_5_HAIKU = exports.MODEL_ANTHROPIC_CLAUDE_3_5_SONNET = exports.MODEL_ANTHROPIC_CLAUDE_3_7_SONNET = exports.MODEL_ANTHROPIC_CLAUDE_SONNET_4 = exports.MODEL_ANTHROPIC_CLAUDE_OPUS_4 = exports.MODEL_ANTHROPIC_CLAUDE_HAIKU_LATEST = exports.MODEL_ANTHROPIC_CLAUDE_SONNET_LATEST = exports.MODEL_OPENAI_GPT_4_1_NANO = exports.MODEL_OPENAI_GPT_4_1_MINI = exports.MODEL_OPENAI_GPT_4O = exports.MODEL_OPENAI_GPT_5_NANO = exports.MODEL_OPENAI_GPT_5_MINI = exports.MODEL_OPENAI_GPT_5_1_CODEX = exports.MODEL_OPENAI_GPT_5_1_CHAT = exports.MODEL_OPENAI_GPT_5_5 = exports.MODEL_OPENAI_GPT_5_5_PRO = exports.MODEL_OPENAI_GPT_MINI_LATEST = exports.MODEL_OPENAI_GPT_LATEST = exports.MODEL_MOONSHOTAI_KIMI_LATEST = exports.MODEL_MOONSHOTAI_KIMI_K2_5 = exports.MODEL_GPT_OSS_20B_FREE = exports.MODEL_OPENROUTER_FUSION = exports.MODEL_OPENROUTER_AUTO = exports.ENDPOINT_OPENROUTER_API = void 0;
4
4
  exports.isOpenRouterFreeModel = isOpenRouterFreeModel;
5
5
  exports.isOpenRouterVisionModel = isOpenRouterVisionModel;
6
6
  exports.ENDPOINT_OPENROUTER_API = 'https://openrouter.ai/api/v1/chat/completions';
7
7
  // OpenRouter models
8
8
  exports.MODEL_OPENROUTER_AUTO = 'openrouter/auto';
9
+ exports.MODEL_OPENROUTER_FUSION = 'openrouter/fusion';
9
10
  exports.MODEL_GPT_OSS_20B_FREE = 'openai/gpt-oss-20b:free';
10
11
  exports.MODEL_MOONSHOTAI_KIMI_K2_5 = 'moonshotai/kimi-k2.5';
11
12
  exports.MODEL_MOONSHOTAI_KIMI_LATEST = '~moonshotai/kimi-latest';
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter.js","sourceRoot":"","sources":["../../../src/constants/openrouter.ts"],"names":[],"mappings":";;;AAmFA,sDAEC;AAOD,0DAIC;AAhGY,QAAA,uBAAuB,GAClC,+CAA+C,CAAC;AAElD,oBAAoB;AACP,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAC1C,QAAA,sBAAsB,GAAG,yBAAyB,CAAC;AACnD,QAAA,0BAA0B,GAAG,sBAAsB,CAAC;AACpD,QAAA,4BAA4B,GAAG,yBAAyB,CAAC;AACzD,QAAA,uBAAuB,GAAG,oBAAoB,CAAC;AAC/C,QAAA,4BAA4B,GAAG,yBAAyB,CAAC;AACzD,QAAA,wBAAwB,GAAG,oBAAoB,CAAC;AAChD,QAAA,oBAAoB,GAAG,gBAAgB,CAAC;AACxC,QAAA,yBAAyB,GAAG,qBAAqB,CAAC;AAClD,QAAA,0BAA0B,GAAG,sBAAsB,CAAC;AACpD,QAAA,uBAAuB,GAAG,mBAAmB,CAAC;AAC9C,QAAA,uBAAuB,GAAG,mBAAmB,CAAC;AAC9C,QAAA,mBAAmB,GAAG,eAAe,CAAC;AACtC,QAAA,yBAAyB,GAAG,qBAAqB,CAAC;AAClD,QAAA,yBAAyB,GAAG,qBAAqB,CAAC;AAClD,QAAA,oCAAoC,GAC/C,iCAAiC,CAAC;AACvB,QAAA,mCAAmC,GAC9C,gCAAgC,CAAC;AACtB,QAAA,6BAA6B,GAAG,yBAAyB,CAAC;AAC1D,QAAA,+BAA+B,GAAG,2BAA2B,CAAC;AAC9D,QAAA,iCAAiC,GAAG,6BAA6B,CAAC;AAClE,QAAA,iCAAiC,GAAG,6BAA6B,CAAC;AAClE,QAAA,gCAAgC,GAAG,4BAA4B,CAAC;AAChE,QAAA,8BAA8B,GAAG,2BAA2B,CAAC;AAC7D,QAAA,gCAAgC,GAAG,6BAA6B,CAAC;AACjE,QAAA,2BAA2B,GAAG,uBAAuB,CAAC;AACtD,QAAA,6BAA6B,GAAG,yBAAyB,CAAC;AAC1D,QAAA,kDAAkD,GAC7D,8CAA8C,CAAC;AACpC,QAAA,uBAAuB,GAAG,oBAAoB,CAAC;AAC/C,QAAA,qBAAqB,GAAG,kBAAkB,CAAC;AAC3C,QAAA,0BAA0B,GAAG,uBAAuB,CAAC;AAElE,mBAAmB;AACN,QAAA,sBAAsB,GAAG;IACpC,8BAAsB;IACtB,kCAA0B;CAC3B,CAAC;AAEF,wCAAwC;AAC3B,QAAA,kCAAkC,GAAG;IAChD,oCAA4B;IAC5B,+BAAuB;IACvB,oCAA4B;IAC5B,gCAAwB;IACxB,4BAAoB;IACpB,iCAAyB;IACzB,kCAA0B;IAC1B,+BAAuB;IACvB,+BAAuB;IACvB,2BAAmB;IACnB,iCAAyB;IACzB,iCAAyB;IACzB,4CAAoC;IACpC,2CAAmC;IACnC,qCAA6B;IAC7B,uCAA+B;IAC/B,yCAAiC;IACjC,wCAAgC;IAChC,sCAA8B;IAC9B,wCAAgC;IAChC,mCAA2B;IAC3B,qCAA6B;IAC7B,0DAAkD;IAClD,kCAA0B;CAC3B,CAAC;AAEF,4BAA4B;AACf,QAAA,qCAAqC,GAAG,EAAE,CAAC;AAC3C,QAAA,uCAAuC,GAAG,EAAE,CAAC;AAC7C,QAAA,wCAAwC,GAAG,IAAI,CAAC;AAChD,QAAA,4BAA4B,GAAG,EAAE,CAAC;AAE/C;;;;GAIG;AACH,SAAgB,qBAAqB,CAAC,KAAa;IACjD,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AACxC,CAAC;AAED;;;;GAIG;AACH,SAAgB,uBAAuB,CAAC,KAAa;IACnD,OAAO,0CAAkC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAC7D,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAC5B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"openrouter.js","sourceRoot":"","sources":["../../../src/constants/openrouter.ts"],"names":[],"mappings":";;;AAoFA,sDAEC;AAOD,0DAIC;AAjGY,QAAA,uBAAuB,GAClC,+CAA+C,CAAC;AAElD,oBAAoB;AACP,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAC1C,QAAA,uBAAuB,GAAG,mBAAmB,CAAC;AAC9C,QAAA,sBAAsB,GAAG,yBAAyB,CAAC;AACnD,QAAA,0BAA0B,GAAG,sBAAsB,CAAC;AACpD,QAAA,4BAA4B,GAAG,yBAAyB,CAAC;AACzD,QAAA,uBAAuB,GAAG,oBAAoB,CAAC;AAC/C,QAAA,4BAA4B,GAAG,yBAAyB,CAAC;AACzD,QAAA,wBAAwB,GAAG,oBAAoB,CAAC;AAChD,QAAA,oBAAoB,GAAG,gBAAgB,CAAC;AACxC,QAAA,yBAAyB,GAAG,qBAAqB,CAAC;AAClD,QAAA,0BAA0B,GAAG,sBAAsB,CAAC;AACpD,QAAA,uBAAuB,GAAG,mBAAmB,CAAC;AAC9C,QAAA,uBAAuB,GAAG,mBAAmB,CAAC;AAC9C,QAAA,mBAAmB,GAAG,eAAe,CAAC;AACtC,QAAA,yBAAyB,GAAG,qBAAqB,CAAC;AAClD,QAAA,yBAAyB,GAAG,qBAAqB,CAAC;AAClD,QAAA,oCAAoC,GAC/C,iCAAiC,CAAC;AACvB,QAAA,mCAAmC,GAC9C,gCAAgC,CAAC;AACtB,QAAA,6BAA6B,GAAG,yBAAyB,CAAC;AAC1D,QAAA,+BAA+B,GAAG,2BAA2B,CAAC;AAC9D,QAAA,iCAAiC,GAAG,6BAA6B,CAAC;AAClE,QAAA,iCAAiC,GAAG,6BAA6B,CAAC;AAClE,QAAA,gCAAgC,GAAG,4BAA4B,CAAC;AAChE,QAAA,8BAA8B,GAAG,2BAA2B,CAAC;AAC7D,QAAA,gCAAgC,GAAG,6BAA6B,CAAC;AACjE,QAAA,2BAA2B,GAAG,uBAAuB,CAAC;AACtD,QAAA,6BAA6B,GAAG,yBAAyB,CAAC;AAC1D,QAAA,kDAAkD,GAC7D,8CAA8C,CAAC;AACpC,QAAA,uBAAuB,GAAG,oBAAoB,CAAC;AAC/C,QAAA,qBAAqB,GAAG,kBAAkB,CAAC;AAC3C,QAAA,0BAA0B,GAAG,uBAAuB,CAAC;AAElE,mBAAmB;AACN,QAAA,sBAAsB,GAAG;IACpC,8BAAsB;IACtB,kCAA0B;CAC3B,CAAC;AAEF,wCAAwC;AAC3B,QAAA,kCAAkC,GAAG;IAChD,oCAA4B;IAC5B,+BAAuB;IACvB,oCAA4B;IAC5B,gCAAwB;IACxB,4BAAoB;IACpB,iCAAyB;IACzB,kCAA0B;IAC1B,+BAAuB;IACvB,+BAAuB;IACvB,2BAAmB;IACnB,iCAAyB;IACzB,iCAAyB;IACzB,4CAAoC;IACpC,2CAAmC;IACnC,qCAA6B;IAC7B,uCAA+B;IAC/B,yCAAiC;IACjC,wCAAgC;IAChC,sCAA8B;IAC9B,wCAAgC;IAChC,mCAA2B;IAC3B,qCAA6B;IAC7B,0DAAkD;IAClD,kCAA0B;CAC3B,CAAC;AAEF,4BAA4B;AACf,QAAA,qCAAqC,GAAG,EAAE,CAAC;AAC3C,QAAA,uCAAuC,GAAG,EAAE,CAAC;AAC7C,QAAA,wCAAwC,GAAG,IAAI,CAAC;AAChD,QAAA,4BAA4B,GAAG,EAAE,CAAC;AAE/C;;;;GAIG;AACH,SAAgB,qBAAqB,CAAC,KAAa;IACjD,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AACxC,CAAC;AAED;;;;GAIG;AACH,SAAgB,uBAAuB,CAAC,KAAa;IACnD,OAAO,0CAAkC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAC7D,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAC5B,CAAC;AACJ,CAAC"}
@@ -14,6 +14,7 @@ export declare class GeminiChatService implements ChatService {
14
14
  private mcpServers;
15
15
  private mcpToolSchemas;
16
16
  private mcpSchemasInitialized;
17
+ private mcpSchemaInitializationError?;
17
18
  private responseLength?;
18
19
  /** id(OpenAI) → name(Gemini) mapping */
19
20
  private callIdMap;
@@ -63,6 +64,10 @@ export declare class GeminiChatService implements ChatService {
63
64
  * @returns True if MCP servers are configured
64
65
  */
65
66
  hasMCPServers(): boolean;
67
+ /**
68
+ * Get the last MCP schema initialization error, if schema fallback was used.
69
+ */
70
+ getMCPSchemaInitializationError(): unknown | undefined;
66
71
  /**
67
72
  * Initialize MCP tool schemas by fetching from servers
68
73
  * @private
@@ -1 +1 @@
1
- {"version":3,"file":"GeminiChatService.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/gemini/GeminiChatService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,OAAO,EACP,iBAAiB,EAEjB,kBAAkB,EAClB,cAAc,EACd,eAAe,EAChB,MAAM,gBAAgB,CAAC;AAOxB,OAAO,EACL,kBAAkB,EAEnB,MAAM,yBAAyB,CAAC;AAcjC;;GAEG;AACH,qBAAa,iBAAkB,YAAW,WAAW;IACnD,oBAAoB;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAY;IAErC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,qBAAqB,CAAkB;IAC/C,OAAO,CAAC,cAAc,CAAC,CAAqB;IAE5C,wCAAwC;IACxC,OAAO,CAAC,SAAS,CAA6B;IAE9C,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,oBAAoB;IAa5B;;OAEG;IACH,OAAO,CAAC,eAAe;IAoBvB;;;;;;;OAOG;gBAED,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,MAAoC,EAC3C,WAAW,GAAE,MAAoC,EACjD,KAAK,GAAE,cAAc,EAAO,EAC5B,UAAU,GAAE,eAAe,EAAO,EAClC,cAAc,CAAC,EAAE,kBAAkB;IAiBrC;;;OAGG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;OAGG;IACH,cAAc,IAAI,MAAM;IAIxB;;;OAGG;IACH,aAAa,IAAI,eAAe,EAAE;IAIlC;;;OAGG;IACH,YAAY,CAAC,YAAY,EAAE,eAAe,GAAG,IAAI;IAMjD;;;OAGG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAQzC;;;OAGG;IACH,aAAa,IAAI,OAAO;IAIxB;;;OAGG;YACW,oBAAoB;IA0BlC;;;;;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;IAwBV,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;YAkCF,UAAU;YAwGV,WAAW;IAkFzB,OAAO,CAAC,YAAY;IAwCd,QAAQ,CACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,GAAE,OAAc,EACtB,iBAAiB,GAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAe,EACjD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAUxB,cAAc,CAClB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,MAAM,GAAE,OAAe,EACvB,iBAAiB,GAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAe,EACjD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAe9B,OAAO,CAAC,OAAO;CAShB"}
1
+ {"version":3,"file":"GeminiChatService.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/gemini/GeminiChatService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,OAAO,EACP,iBAAiB,EAEjB,kBAAkB,EAClB,cAAc,EACd,eAAe,EAChB,MAAM,gBAAgB,CAAC;AAOxB,OAAO,EACL,kBAAkB,EAEnB,MAAM,yBAAyB,CAAC;AAcjC;;GAEG;AACH,qBAAa,iBAAkB,YAAW,WAAW;IACnD,oBAAoB;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAY;IAErC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,qBAAqB,CAAkB;IAC/C,OAAO,CAAC,4BAA4B,CAAC,CAAU;IAC/C,OAAO,CAAC,cAAc,CAAC,CAAqB;IAE5C,wCAAwC;IACxC,OAAO,CAAC,SAAS,CAA6B;IAE9C,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,oBAAoB;IAa5B;;OAEG;IACH,OAAO,CAAC,eAAe;IAoBvB;;;;;;;OAOG;gBAED,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,MAAoC,EAC3C,WAAW,GAAE,MAAoC,EACjD,KAAK,GAAE,cAAc,EAAO,EAC5B,UAAU,GAAE,eAAe,EAAO,EAClC,cAAc,CAAC,EAAE,kBAAkB;IAiBrC;;;OAGG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;OAGG;IACH,cAAc,IAAI,MAAM;IAIxB;;;OAGG;IACH,aAAa,IAAI,eAAe,EAAE;IAIlC;;;OAGG;IACH,YAAY,CAAC,YAAY,EAAE,eAAe,GAAG,IAAI;IAOjD;;;OAGG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IASzC;;;OAGG;IACH,aAAa,IAAI,OAAO;IAIxB;;OAEG;IACH,+BAA+B,IAAI,OAAO,GAAG,SAAS;IAItD;;;OAGG;YACW,oBAAoB;IA0BlC;;;;;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;IAwBV,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;YAkCF,UAAU;YA+GV,WAAW;IAkFzB,OAAO,CAAC,YAAY;IAwCd,QAAQ,CACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,GAAE,OAAc,EACtB,iBAAiB,GAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAe,EACjD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAUxB,cAAc,CAClB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,MAAM,GAAE,OAAe,EACvB,iBAAiB,GAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAe,EACjD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAe9B,OAAO,CAAC,OAAO;CAShB"}
@@ -106,6 +106,7 @@ class GeminiChatService {
106
106
  this.mcpServers.push(serverConfig);
107
107
  // Reset initialization flag to re-fetch schemas
108
108
  this.mcpSchemasInitialized = false;
109
+ this.mcpSchemaInitializationError = undefined;
109
110
  }
110
111
  /**
111
112
  * Remove MCP server by name
@@ -115,6 +116,7 @@ class GeminiChatService {
115
116
  this.mcpServers = this.mcpServers.filter((server) => server.name !== serverName);
116
117
  // Reset initialization flag to re-fetch schemas
117
118
  this.mcpSchemasInitialized = false;
119
+ this.mcpSchemaInitializationError = undefined;
118
120
  }
119
121
  /**
120
122
  * Check if MCP servers are configured
@@ -123,6 +125,12 @@ class GeminiChatService {
123
125
  hasMCPServers() {
124
126
  return this.mcpServers.length > 0;
125
127
  }
128
+ /**
129
+ * Get the last MCP schema initialization error, if schema fallback was used.
130
+ */
131
+ getMCPSchemaInitializationError() {
132
+ return this.mcpSchemaInitializationError;
133
+ }
126
134
  /**
127
135
  * Initialize MCP tool schemas by fetching from servers
128
136
  * @private
@@ -134,15 +142,15 @@ class GeminiChatService {
134
142
  try {
135
143
  // Add timeout to prevent hanging
136
144
  const timeoutPromise = new Promise((_, reject) => setTimeout(() => reject(new Error('MCP schema fetch timeout')), 5000));
137
- const schemasPromise = mcpSchemaFetcher_1.MCPSchemaFetcher.fetchAllToolSchemas(this.mcpServers);
138
- this.mcpToolSchemas = await Promise.race([
139
- schemasPromise,
140
- timeoutPromise,
141
- ]);
145
+ const schemasPromise = mcpSchemaFetcher_1.MCPSchemaFetcher.fetchAllToolSchemasWithStatus(this.mcpServers);
146
+ const result = await Promise.race([schemasPromise, timeoutPromise]);
147
+ this.mcpToolSchemas = result.schemas;
142
148
  this.mcpSchemasInitialized = true;
149
+ this.mcpSchemaInitializationError = result.failures[0]?.error;
143
150
  }
144
151
  catch (error) {
145
152
  console.warn('Failed to initialize MCP schemas, using fallback:', error);
153
+ this.mcpSchemaInitializationError = error;
146
154
  this.mcpToolSchemas = (0, geminiToolAdapter_1.createFallbackMCPToolSchemas)(this.mcpServers);
147
155
  this.mcpSchemasInitialized = true;
148
156
  }
@@ -259,7 +267,15 @@ class GeminiChatService {
259
267
  const looksLikeVersionMismatch = /Unknown name|Cannot find field|404/.test(e?.message || '') ||
260
268
  e?.status === 404;
261
269
  if (!requiresV1beta && looksLikeVersionMismatch) {
262
- return await fetchOnce('v1beta', this.adaptKeysForApi(body));
270
+ try {
271
+ return await fetchOnce('v1beta', this.adaptKeysForApi(body));
272
+ }
273
+ catch (fallbackError) {
274
+ if (fallbackError instanceof Error) {
275
+ fallbackError.cause = e;
276
+ }
277
+ throw fallbackError;
278
+ }
263
279
  }
264
280
  throw e; // otherwise, throw to upper layer
265
281
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GeminiChatService.js","sourceRoot":"","sources":["../../../../../src/services/providers/gemini/GeminiChatService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GeminiChatService.js","sourceRoot":"","sources":["../../../../../src/services/providers/gemini/GeminiChatService.ts"],"names":[],"mappings":"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"}
@@ -46,6 +46,12 @@ export declare class OpenAIChatServiceProvider implements ChatServiceProvider<Op
46
46
  private optimizeGPT5Options;
47
47
  /**
48
48
  * Normalize reasoning effort to a model-supported value
49
+ *
50
+ * Unsupported values are rounded to the nearest supported level instead of
51
+ * resetting to the model default, so a low-latency request stays low
52
+ * (e.g. 'minimal' on GPT-5.4 resolves to 'none', not 'medium') and a
53
+ * high-effort request stays high (e.g. 'xhigh' on GPT-5.1 resolves to
54
+ * 'high', not 'none').
49
55
  */
50
56
  private normalizeReasoningEffort;
51
57
  }
@@ -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;;OAEG;IACH,OAAO,CAAC,wBAAwB;CA0BjC"}
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"}
@@ -144,22 +144,32 @@ class OpenAIChatServiceProvider {
144
144
  }
145
145
  /**
146
146
  * Normalize reasoning effort to a model-supported value
147
+ *
148
+ * Unsupported values are rounded to the nearest supported level instead of
149
+ * resetting to the model default, so a low-latency request stays low
150
+ * (e.g. 'minimal' on GPT-5.4 resolves to 'none', not 'medium') and a
151
+ * high-effort request stays high (e.g. 'xhigh' on GPT-5.1 resolves to
152
+ * 'high', not 'none').
147
153
  */
148
154
  normalizeReasoningEffort(modelName, effort) {
149
155
  if (!effort) {
150
156
  return undefined;
151
157
  }
152
- if (effort === 'none' && !(0, constants_1.allowsReasoningNone)(modelName)) {
153
- return (0, constants_1.getDefaultReasoningEffortForGPT5Model)(modelName);
154
- }
155
- if (effort === 'minimal' && !(0, constants_1.allowsReasoningMinimal)(modelName)) {
156
- return (0, constants_1.getDefaultReasoningEffortForGPT5Model)(modelName);
158
+ if ((effort === 'none' && !(0, constants_1.allowsReasoningNone)(modelName)) ||
159
+ (effort === 'minimal' && !(0, constants_1.allowsReasoningMinimal)(modelName))) {
160
+ if (effort === 'minimal' && (0, constants_1.allowsReasoningNone)(modelName)) {
161
+ return 'none';
162
+ }
163
+ if (effort === 'none' && (0, constants_1.allowsReasoningMinimal)(modelName)) {
164
+ return 'minimal';
165
+ }
166
+ return (0, constants_1.allowsReasoningLow)(modelName) ? 'low' : 'medium';
157
167
  }
158
168
  if (effort === 'low' && !(0, constants_1.allowsReasoningLow)(modelName)) {
159
- return (0, constants_1.getDefaultReasoningEffortForGPT5Model)(modelName);
169
+ return 'medium';
160
170
  }
161
171
  if (effort === 'xhigh' && !(0, constants_1.allowsReasoningXHigh)(modelName)) {
162
- return (0, constants_1.getDefaultReasoningEffortForGPT5Model)(modelName);
172
+ return 'high';
163
173
  }
164
174
  return effort;
165
175
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OpenAIChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatServiceProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpenAIChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/openai/OpenAIChatServiceProvider.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,15 @@
1
1
  import { ToolChatCompletion } from '../../../types';
2
+ import type { JsonParseErrorHandler } from '../../../utils/safeJsonParse';
3
+ type ResponsesParseOptions = {
4
+ onJsonError?: JsonParseErrorHandler;
5
+ };
2
6
  /**
3
7
  * Parse streaming Responses API output (SSE format).
4
8
  */
5
- export declare function parseOpenAIResponsesStream(res: Response, onPartial: (t: string) => void): Promise<ToolChatCompletion>;
9
+ export declare function parseOpenAIResponsesStream(res: Response, onPartial: (t: string) => void, options?: ResponsesParseOptions): Promise<ToolChatCompletion>;
6
10
  /**
7
11
  * Parse non-streaming Responses API output.
8
12
  */
9
- export declare function parseOpenAIResponsesOneShot(data: any): ToolChatCompletion;
13
+ export declare function parseOpenAIResponsesOneShot(data: any, options?: ResponsesParseOptions): ToolChatCompletion;
14
+ export {};
10
15
  //# sourceMappingURL=responsesParser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"responsesParser.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openai/responsesParser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AASnE;;GAEG;AACH,wBAAsB,0BAA0B,CAC9C,GAAG,EAAE,QAAQ,EACb,SAAS,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,GAC7B,OAAO,CAAC,kBAAkB,CAAC,CA8E7B;AAsFD;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,GAAG,GAAG,kBAAkB,CAgCzE"}
1
+ {"version":3,"file":"responsesParser.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openai/responsesParser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAU1E,KAAK,qBAAqB,GAAG;IAC3B,WAAW,CAAC,EAAE,qBAAqB,CAAC;CACrC,CAAC;AAEF;;GAEG;AACH,wBAAsB,0BAA0B,CAC9C,GAAG,EAAE,QAAQ,EACb,SAAS,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,EAC9B,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,kBAAkB,CAAC,CAgF7B;AA0FD;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,GAAG,EACT,OAAO,GAAE,qBAA0B,GAClC,kBAAkB,CAmCpB"}
@@ -2,11 +2,12 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.parseOpenAIResponsesStream = parseOpenAIResponsesStream;
4
4
  exports.parseOpenAIResponsesOneShot = parseOpenAIResponsesOneShot;
5
+ const safeJsonParse_1 = require("../../../utils/safeJsonParse");
5
6
  const streamTextAccumulator_1 = require("../../../utils/streamTextAccumulator");
6
7
  /**
7
8
  * Parse streaming Responses API output (SSE format).
8
9
  */
9
- async function parseOpenAIResponsesStream(res, onPartial) {
10
+ async function parseOpenAIResponsesStream(res, onPartial, options = {}) {
10
11
  const reader = res.body.getReader();
11
12
  const dec = new TextDecoder();
12
13
  const textBlocks = [];
@@ -36,7 +37,7 @@ async function parseOpenAIResponsesStream(res, onPartial) {
36
37
  else if (line === '' && eventType && eventData) {
37
38
  try {
38
39
  const json = JSON.parse(eventData);
39
- handleResponsesSSEEvent(eventType, json, onPartial, textBlocks, toolCallsMap, (metadata) => {
40
+ handleResponsesSSEEvent(eventType, json, onPartial, textBlocks, toolCallsMap, options, (metadata) => {
40
41
  if (metadata.responseStatus !== undefined) {
41
42
  responseStatus = metadata.responseStatus;
42
43
  }
@@ -48,7 +49,8 @@ async function parseOpenAIResponsesStream(res, onPartial) {
48
49
  }
49
50
  });
50
51
  }
51
- catch {
52
+ catch (error) {
53
+ options.onJsonError?.(eventData, error);
52
54
  console.warn('Failed to parse SSE data:', eventData);
53
55
  }
54
56
  eventType = '';
@@ -71,7 +73,7 @@ async function parseOpenAIResponsesStream(res, onPartial) {
71
73
  usage,
72
74
  };
73
75
  }
74
- function handleResponsesSSEEvent(eventType, data, onPartial, textBlocks, toolCallsMap, onMetadata) {
76
+ function handleResponsesSSEEvent(eventType, data, onPartial, textBlocks, toolCallsMap, options, onMetadata) {
75
77
  switch (eventType) {
76
78
  case 'response.output_item.added':
77
79
  if (data.item?.type === 'message' && Array.isArray(data.item.content)) {
@@ -86,7 +88,7 @@ function handleResponsesSSEEvent(eventType, data, onPartial, textBlocks, toolCal
86
88
  toolCallsMap.set(data.item.id, {
87
89
  id: data.item.id,
88
90
  name: data.item.name,
89
- input: data.item.arguments ? JSON.parse(data.item.arguments) : {},
91
+ input: (0, safeJsonParse_1.safeParseToolCallInput)(data.item.arguments, options.onJsonError),
90
92
  });
91
93
  }
92
94
  break;
@@ -133,7 +135,7 @@ function extractResponsesMetadata(data, fallbackStatus) {
133
135
  /**
134
136
  * Parse non-streaming Responses API output.
135
137
  */
136
- function parseOpenAIResponsesOneShot(data) {
138
+ function parseOpenAIResponsesOneShot(data, options = {}) {
137
139
  const blocks = [];
138
140
  if (data.output && Array.isArray(data.output)) {
139
141
  data.output.forEach((outputItem) => {
@@ -149,7 +151,7 @@ function parseOpenAIResponsesOneShot(data) {
149
151
  type: 'tool_use',
150
152
  id: outputItem.id,
151
153
  name: outputItem.name,
152
- input: outputItem.arguments ? JSON.parse(outputItem.arguments) : {},
154
+ input: (0, safeJsonParse_1.safeParseToolCallInput)(outputItem.arguments, options.onJsonError),
153
155
  });
154
156
  }
155
157
  });