@vybestack/llxprt-code-core 0.1.18-nightly.250811.b0db22c6 → 0.1.18-nightly.250812.12fa8ad2

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 (485) hide show
  1. package/README.md +49 -2
  2. package/dist/index.d.ts +3 -0
  3. package/dist/index.js +2 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/auth/anthropic-device-flow.d.ts +53 -0
  6. package/dist/src/auth/anthropic-device-flow.js +208 -0
  7. package/dist/src/auth/anthropic-device-flow.js.map +1 -0
  8. package/dist/src/auth/token-store.js +11 -7
  9. package/dist/src/auth/token-store.js.map +1 -1
  10. package/dist/src/config/config.d.ts +7 -1
  11. package/dist/src/config/config.js +42 -4
  12. package/dist/src/config/config.js.map +1 -1
  13. package/dist/src/config/profileManager.d.ts +14 -4
  14. package/dist/src/config/profileManager.js +90 -11
  15. package/dist/src/config/profileManager.js.map +1 -1
  16. package/dist/src/core/contentGenerator.d.ts +2 -1
  17. package/dist/src/core/contentGenerator.js +1 -0
  18. package/dist/src/core/contentGenerator.js.map +1 -1
  19. package/dist/src/index.d.ts +6 -0
  20. package/dist/src/index.js +5 -0
  21. package/dist/src/index.js.map +1 -1
  22. package/dist/src/providers/BaseProvider.d.ts +51 -0
  23. package/dist/src/providers/BaseProvider.js +136 -1
  24. package/dist/src/providers/BaseProvider.js.map +1 -1
  25. package/dist/src/providers/IProvider.d.ts +1 -0
  26. package/dist/src/providers/LoggingProviderWrapper.d.ts +1 -0
  27. package/dist/src/providers/LoggingProviderWrapper.js +3 -0
  28. package/dist/src/providers/LoggingProviderWrapper.js.map +1 -1
  29. package/dist/src/providers/ProviderManager.d.ts +0 -1
  30. package/dist/src/providers/ProviderManager.js +23 -14
  31. package/dist/src/providers/ProviderManager.js.map +1 -1
  32. package/dist/src/providers/anthropic/AnthropicProvider.d.ts +20 -6
  33. package/dist/src/providers/anthropic/AnthropicProvider.js +172 -26
  34. package/dist/src/providers/anthropic/AnthropicProvider.js.map +1 -1
  35. package/dist/src/providers/gemini/GeminiProvider.d.ts +4 -0
  36. package/dist/src/providers/gemini/GeminiProvider.js +33 -1
  37. package/dist/src/providers/gemini/GeminiProvider.js.map +1 -1
  38. package/dist/src/providers/openai/OpenAIProvider.d.ts +32 -0
  39. package/dist/src/providers/openai/OpenAIProvider.js +200 -13
  40. package/dist/src/providers/openai/OpenAIProvider.js.map +1 -1
  41. package/dist/src/providers/openai/RESPONSES_API_MODELS.d.ts +1 -1
  42. package/dist/src/providers/openai/RESPONSES_API_MODELS.js +1 -0
  43. package/dist/src/providers/openai/RESPONSES_API_MODELS.js.map +1 -1
  44. package/dist/src/providers/openai/syntheticToolResponses.d.ts +52 -0
  45. package/dist/src/providers/openai/syntheticToolResponses.js +129 -0
  46. package/dist/src/providers/openai/syntheticToolResponses.js.map +1 -0
  47. package/dist/src/settings/SettingsService.d.ts +32 -0
  48. package/dist/src/settings/SettingsService.js +204 -0
  49. package/dist/src/settings/SettingsService.js.map +1 -0
  50. package/dist/src/settings/settingsServiceInstance.d.ts +12 -0
  51. package/dist/src/settings/settingsServiceInstance.js +24 -0
  52. package/dist/src/settings/settingsServiceInstance.js.map +1 -0
  53. package/dist/src/settings/types.d.ts +141 -0
  54. package/dist/src/settings/types.js +5 -0
  55. package/dist/src/settings/types.js.map +1 -0
  56. package/package.json +4 -2
  57. package/dist/src/auth/auth-integration.spec.d.ts +0 -6
  58. package/dist/src/auth/auth-integration.spec.js +0 -384
  59. package/dist/src/auth/auth-integration.spec.js.map +0 -1
  60. package/dist/src/auth/precedence.test.d.ts +0 -6
  61. package/dist/src/auth/precedence.test.js +0 -374
  62. package/dist/src/auth/precedence.test.js.map +0 -1
  63. package/dist/src/auth/qwen-device-flow.spec.d.ts +0 -6
  64. package/dist/src/auth/qwen-device-flow.spec.js +0 -793
  65. package/dist/src/auth/qwen-device-flow.spec.js.map +0 -1
  66. package/dist/src/auth/token-store.spec.d.ts +0 -6
  67. package/dist/src/auth/token-store.spec.js +0 -405
  68. package/dist/src/auth/token-store.spec.js.map +0 -1
  69. package/dist/src/code_assist/converter.test.d.ts +0 -6
  70. package/dist/src/code_assist/converter.test.js +0 -279
  71. package/dist/src/code_assist/converter.test.js.map +0 -1
  72. package/dist/src/code_assist/oauth2.test.d.ts +0 -6
  73. package/dist/src/code_assist/oauth2.test.js +0 -370
  74. package/dist/src/code_assist/oauth2.test.js.map +0 -1
  75. package/dist/src/code_assist/server.test.d.ts +0 -6
  76. package/dist/src/code_assist/server.test.js +0 -134
  77. package/dist/src/code_assist/server.test.js.map +0 -1
  78. package/dist/src/code_assist/setup.test.d.ts +0 -6
  79. package/dist/src/code_assist/setup.test.js +0 -65
  80. package/dist/src/code_assist/setup.test.js.map +0 -1
  81. package/dist/src/config/config.alwaysAllow.test.d.ts +0 -6
  82. package/dist/src/config/config.alwaysAllow.test.js +0 -84
  83. package/dist/src/config/config.alwaysAllow.test.js.map +0 -1
  84. package/dist/src/config/config.ephemeral.test.d.ts +0 -6
  85. package/dist/src/config/config.ephemeral.test.js +0 -152
  86. package/dist/src/config/config.ephemeral.test.js.map +0 -1
  87. package/dist/src/config/config.test.d.ts +0 -6
  88. package/dist/src/config/config.test.js +0 -369
  89. package/dist/src/config/config.test.js.map +0 -1
  90. package/dist/src/config/endpoints.test.d.ts +0 -6
  91. package/dist/src/config/endpoints.test.js +0 -196
  92. package/dist/src/config/endpoints.test.js.map +0 -1
  93. package/dist/src/config/flashFallback.test.d.ts +0 -6
  94. package/dist/src/config/flashFallback.test.js +0 -91
  95. package/dist/src/config/flashFallback.test.js.map +0 -1
  96. package/dist/src/core/client.test.d.ts +0 -6
  97. package/dist/src/core/client.test.js +0 -1323
  98. package/dist/src/core/client.test.js.map +0 -1
  99. package/dist/src/core/contentGenerator.test.d.ts +0 -6
  100. package/dist/src/core/contentGenerator.test.js +0 -103
  101. package/dist/src/core/contentGenerator.test.js.map +0 -1
  102. package/dist/src/core/coreToolScheduler.test.d.ts +0 -6
  103. package/dist/src/core/coreToolScheduler.test.js +0 -637
  104. package/dist/src/core/coreToolScheduler.test.js.map +0 -1
  105. package/dist/src/core/geminiChat.test.d.ts +0 -6
  106. package/dist/src/core/geminiChat.test.js +0 -425
  107. package/dist/src/core/geminiChat.test.js.map +0 -1
  108. package/dist/src/core/googleGenAIWrapper.test.d.ts +0 -6
  109. package/dist/src/core/googleGenAIWrapper.test.js +0 -104
  110. package/dist/src/core/googleGenAIWrapper.test.js.map +0 -1
  111. package/dist/src/core/logger.test.d.ts +0 -6
  112. package/dist/src/core/logger.test.js +0 -467
  113. package/dist/src/core/logger.test.js.map +0 -1
  114. package/dist/src/core/nonInteractiveToolExecutor.test.d.ts +0 -6
  115. package/dist/src/core/nonInteractiveToolExecutor.test.js +0 -165
  116. package/dist/src/core/nonInteractiveToolExecutor.test.js.map +0 -1
  117. package/dist/src/core/prompts-async.test.d.ts +0 -6
  118. package/dist/src/core/prompts-async.test.js +0 -115
  119. package/dist/src/core/prompts-async.test.js.map +0 -1
  120. package/dist/src/core/prompts.test.d.ts +0 -6
  121. package/dist/src/core/prompts.test.js +0 -68
  122. package/dist/src/core/prompts.test.js.map +0 -1
  123. package/dist/src/core/subagent.test.d.ts +0 -6
  124. package/dist/src/core/subagent.test.js +0 -510
  125. package/dist/src/core/subagent.test.js.map +0 -1
  126. package/dist/src/core/tokenLimits.test.d.ts +0 -6
  127. package/dist/src/core/tokenLimits.test.js +0 -66
  128. package/dist/src/core/tokenLimits.test.js.map +0 -1
  129. package/dist/src/core/turn.test.d.ts +0 -6
  130. package/dist/src/core/turn.test.js +0 -366
  131. package/dist/src/core/turn.test.js.map +0 -1
  132. package/dist/src/hooks/tool-render-suppression-hook.test.d.ts +0 -6
  133. package/dist/src/hooks/tool-render-suppression-hook.test.js +0 -59
  134. package/dist/src/hooks/tool-render-suppression-hook.test.js.map +0 -1
  135. package/dist/src/ide/ide-installer.test.d.ts +0 -6
  136. package/dist/src/ide/ide-installer.test.js +0 -55
  137. package/dist/src/ide/ide-installer.test.js.map +0 -1
  138. package/dist/src/ide/ideContext.test.d.ts +0 -6
  139. package/dist/src/ide/ideContext.test.js +0 -265
  140. package/dist/src/ide/ideContext.test.js.map +0 -1
  141. package/dist/src/index.test.d.ts +0 -6
  142. package/dist/src/index.test.js +0 -12
  143. package/dist/src/index.test.js.map +0 -1
  144. package/dist/src/integration-tests/oauth-integration.spec.d.ts +0 -6
  145. package/dist/src/integration-tests/oauth-integration.spec.js +0 -518
  146. package/dist/src/integration-tests/oauth-integration.spec.js.map +0 -1
  147. package/dist/src/integration-tests/oauth-simple-test.spec.d.ts +0 -1
  148. package/dist/src/integration-tests/oauth-simple-test.spec.js +0 -88
  149. package/dist/src/integration-tests/oauth-simple-test.spec.js.map +0 -1
  150. package/dist/src/integration-tests/todo-system.test.d.ts +0 -6
  151. package/dist/src/integration-tests/todo-system.test.js +0 -46
  152. package/dist/src/integration-tests/todo-system.test.js.map +0 -1
  153. package/dist/src/mcp/google-auth-provider.test.d.ts +0 -6
  154. package/dist/src/mcp/google-auth-provider.test.js +0 -54
  155. package/dist/src/mcp/google-auth-provider.test.js.map +0 -1
  156. package/dist/src/mcp/oauth-provider.test.d.ts +0 -6
  157. package/dist/src/mcp/oauth-provider.test.js +0 -602
  158. package/dist/src/mcp/oauth-provider.test.js.map +0 -1
  159. package/dist/src/mcp/oauth-token-storage.test.d.ts +0 -6
  160. package/dist/src/mcp/oauth-token-storage.test.js +0 -205
  161. package/dist/src/mcp/oauth-token-storage.test.js.map +0 -1
  162. package/dist/src/mcp/oauth-utils.test.d.ts +0 -6
  163. package/dist/src/mcp/oauth-utils.test.js +0 -144
  164. package/dist/src/mcp/oauth-utils.test.js.map +0 -1
  165. package/dist/src/parsers/TextToolCallParser.multibyte.test.d.ts +0 -1
  166. package/dist/src/parsers/TextToolCallParser.multibyte.test.js +0 -42
  167. package/dist/src/parsers/TextToolCallParser.multibyte.test.js.map +0 -1
  168. package/dist/src/parsers/TextToolCallParser.test.d.ts +0 -1
  169. package/dist/src/parsers/TextToolCallParser.test.js +0 -225
  170. package/dist/src/parsers/TextToolCallParser.test.js.map +0 -1
  171. package/dist/src/prompt-config/TemplateEngine.test.d.ts +0 -1
  172. package/dist/src/prompt-config/TemplateEngine.test.js +0 -494
  173. package/dist/src/prompt-config/TemplateEngine.test.js.map +0 -1
  174. package/dist/src/prompt-config/prompt-cache.test.d.ts +0 -6
  175. package/dist/src/prompt-config/prompt-cache.test.js +0 -437
  176. package/dist/src/prompt-config/prompt-cache.test.js.map +0 -1
  177. package/dist/src/prompt-config/prompt-installer.test.d.ts +0 -7
  178. package/dist/src/prompt-config/prompt-installer.test.js +0 -503
  179. package/dist/src/prompt-config/prompt-installer.test.js.map +0 -1
  180. package/dist/src/prompt-config/prompt-loader.test.d.ts +0 -5
  181. package/dist/src/prompt-config/prompt-loader.test.js +0 -413
  182. package/dist/src/prompt-config/prompt-loader.test.js.map +0 -1
  183. package/dist/src/prompt-config/prompt-resolver.test.d.ts +0 -1
  184. package/dist/src/prompt-config/prompt-resolver.test.js +0 -529
  185. package/dist/src/prompt-config/prompt-resolver.test.js.map +0 -1
  186. package/dist/src/prompt-config/prompt-service.test.d.ts +0 -1
  187. package/dist/src/prompt-config/prompt-service.test.js +0 -811
  188. package/dist/src/prompt-config/prompt-service.test.js.map +0 -1
  189. package/dist/src/providers/BaseProvider.test.d.ts +0 -6
  190. package/dist/src/providers/BaseProvider.test.js +0 -472
  191. package/dist/src/providers/BaseProvider.test.js.map +0 -1
  192. package/dist/src/providers/ProviderManager.gemini-switch.test.d.ts +0 -6
  193. package/dist/src/providers/ProviderManager.gemini-switch.test.js +0 -57
  194. package/dist/src/providers/ProviderManager.gemini-switch.test.js.map +0 -1
  195. package/dist/src/providers/ProviderManager.test.d.ts +0 -6
  196. package/dist/src/providers/ProviderManager.test.js +0 -284
  197. package/dist/src/providers/ProviderManager.test.js.map +0 -1
  198. package/dist/src/providers/adapters/GeminiCompatibleWrapper.test.d.ts +0 -6
  199. package/dist/src/providers/adapters/GeminiCompatibleWrapper.test.js +0 -273
  200. package/dist/src/providers/adapters/GeminiCompatibleWrapper.test.js.map +0 -1
  201. package/dist/src/providers/anthropic/AnthropicProvider.modelParams.test.d.ts +0 -1
  202. package/dist/src/providers/anthropic/AnthropicProvider.modelParams.test.js +0 -48
  203. package/dist/src/providers/anthropic/AnthropicProvider.modelParams.test.js.map +0 -1
  204. package/dist/src/providers/anthropic/AnthropicProvider.test.d.ts +0 -1
  205. package/dist/src/providers/anthropic/AnthropicProvider.test.js +0 -487
  206. package/dist/src/providers/anthropic/AnthropicProvider.test.js.map +0 -1
  207. package/dist/src/providers/gemini/GeminiProvider.integration.test.d.ts +0 -6
  208. package/dist/src/providers/gemini/GeminiProvider.integration.test.js +0 -126
  209. package/dist/src/providers/gemini/GeminiProvider.integration.test.js.map +0 -1
  210. package/dist/src/providers/gemini/GeminiProvider.test.d.ts +0 -6
  211. package/dist/src/providers/gemini/GeminiProvider.test.js +0 -136
  212. package/dist/src/providers/gemini/GeminiProvider.test.js.map +0 -1
  213. package/dist/src/providers/integration/multi-provider.integration.test.d.ts +0 -6
  214. package/dist/src/providers/integration/multi-provider.integration.test.js +0 -308
  215. package/dist/src/providers/integration/multi-provider.integration.test.js.map +0 -1
  216. package/dist/src/providers/openai/ConversationCache.accumTokens.test.d.ts +0 -1
  217. package/dist/src/providers/openai/ConversationCache.accumTokens.test.js +0 -97
  218. package/dist/src/providers/openai/ConversationCache.accumTokens.test.js.map +0 -1
  219. package/dist/src/providers/openai/ConversationCache.test.d.ts +0 -1
  220. package/dist/src/providers/openai/ConversationCache.test.js +0 -113
  221. package/dist/src/providers/openai/ConversationCache.test.js.map +0 -1
  222. package/dist/src/providers/openai/OpenAIProvider.callResponses.stateless.test.d.ts +0 -1
  223. package/dist/src/providers/openai/OpenAIProvider.callResponses.stateless.test.js +0 -189
  224. package/dist/src/providers/openai/OpenAIProvider.callResponses.stateless.test.js.map +0 -1
  225. package/dist/src/providers/openai/OpenAIProvider.integration.test.d.ts +0 -6
  226. package/dist/src/providers/openai/OpenAIProvider.integration.test.js +0 -125
  227. package/dist/src/providers/openai/OpenAIProvider.integration.test.js.map +0 -1
  228. package/dist/src/providers/openai/OpenAIProvider.responses.test.d.ts +0 -1
  229. package/dist/src/providers/openai/OpenAIProvider.responses.test.js +0 -350
  230. package/dist/src/providers/openai/OpenAIProvider.responses.test.js.map +0 -1
  231. package/dist/src/providers/openai/OpenAIProvider.responsesIntegration.test.d.ts +0 -1
  232. package/dist/src/providers/openai/OpenAIProvider.responsesIntegration.test.js +0 -213
  233. package/dist/src/providers/openai/OpenAIProvider.responsesIntegration.test.js.map +0 -1
  234. package/dist/src/providers/openai/OpenAIProvider.shouldUseResponses.test.d.ts +0 -1
  235. package/dist/src/providers/openai/OpenAIProvider.shouldUseResponses.test.js +0 -59
  236. package/dist/src/providers/openai/OpenAIProvider.shouldUseResponses.test.js.map +0 -1
  237. package/dist/src/providers/openai/OpenAIProvider.stateful.integration.test.d.ts +0 -6
  238. package/dist/src/providers/openai/OpenAIProvider.stateful.integration.test.js +0 -105
  239. package/dist/src/providers/openai/OpenAIProvider.stateful.integration.test.js.map +0 -1
  240. package/dist/src/providers/openai/OpenAIProvider.switch.test.d.ts +0 -1
  241. package/dist/src/providers/openai/OpenAIProvider.switch.test.js +0 -256
  242. package/dist/src/providers/openai/OpenAIProvider.switch.test.js.map +0 -1
  243. package/dist/src/providers/openai/OpenAIProvider.test.d.ts +0 -16
  244. package/dist/src/providers/openai/OpenAIProvider.test.js +0 -621
  245. package/dist/src/providers/openai/OpenAIProvider.test.js.map +0 -1
  246. package/dist/src/providers/openai/ResponsesContextTrim.integration.test.d.ts +0 -1
  247. package/dist/src/providers/openai/ResponsesContextTrim.integration.test.js +0 -210
  248. package/dist/src/providers/openai/ResponsesContextTrim.integration.test.js.map +0 -1
  249. package/dist/src/providers/openai/__tests__/formatArrayResponse.test.d.ts +0 -1
  250. package/dist/src/providers/openai/__tests__/formatArrayResponse.test.js +0 -65
  251. package/dist/src/providers/openai/__tests__/formatArrayResponse.test.js.map +0 -1
  252. package/dist/src/providers/openai/buildResponsesRequest.stripToolCalls.test.d.ts +0 -1
  253. package/dist/src/providers/openai/buildResponsesRequest.stripToolCalls.test.js +0 -129
  254. package/dist/src/providers/openai/buildResponsesRequest.stripToolCalls.test.js.map +0 -1
  255. package/dist/src/providers/openai/buildResponsesRequest.test.d.ts +0 -1
  256. package/dist/src/providers/openai/buildResponsesRequest.test.js +0 -406
  257. package/dist/src/providers/openai/buildResponsesRequest.test.js.map +0 -1
  258. package/dist/src/providers/openai/buildResponsesRequest.undefined.test.d.ts +0 -1
  259. package/dist/src/providers/openai/buildResponsesRequest.undefined.test.js +0 -50
  260. package/dist/src/providers/openai/buildResponsesRequest.undefined.test.js.map +0 -1
  261. package/dist/src/providers/openai/estimateRemoteTokens.test.d.ts +0 -1
  262. package/dist/src/providers/openai/estimateRemoteTokens.test.js +0 -125
  263. package/dist/src/providers/openai/estimateRemoteTokens.test.js.map +0 -1
  264. package/dist/src/providers/openai/openai-oauth.spec.d.ts +0 -16
  265. package/dist/src/providers/openai/openai-oauth.spec.js +0 -544
  266. package/dist/src/providers/openai/openai-oauth.spec.js.map +0 -1
  267. package/dist/src/providers/openai/parseResponsesStream.responsesToolCalls.test.d.ts +0 -1
  268. package/dist/src/providers/openai/parseResponsesStream.responsesToolCalls.test.js +0 -192
  269. package/dist/src/providers/openai/parseResponsesStream.responsesToolCalls.test.js.map +0 -1
  270. package/dist/src/providers/openai/parseResponsesStream.test.d.ts +0 -1
  271. package/dist/src/providers/openai/parseResponsesStream.test.js +0 -151
  272. package/dist/src/providers/openai/parseResponsesStream.test.js.map +0 -1
  273. package/dist/src/services/fileDiscoveryService.test.d.ts +0 -6
  274. package/dist/src/services/fileDiscoveryService.test.js +0 -143
  275. package/dist/src/services/fileDiscoveryService.test.js.map +0 -1
  276. package/dist/src/services/gitService.test.d.ts +0 -6
  277. package/dist/src/services/gitService.test.js +0 -209
  278. package/dist/src/services/gitService.test.js.map +0 -1
  279. package/dist/src/services/loopDetectionService.test.d.ts +0 -6
  280. package/dist/src/services/loopDetectionService.test.js +0 -484
  281. package/dist/src/services/loopDetectionService.test.js.map +0 -1
  282. package/dist/src/services/shellExecutionService.multibyte.test.d.ts +0 -6
  283. package/dist/src/services/shellExecutionService.multibyte.test.js +0 -72
  284. package/dist/src/services/shellExecutionService.multibyte.test.js.map +0 -1
  285. package/dist/src/services/shellExecutionService.test.d.ts +0 -6
  286. package/dist/src/services/shellExecutionService.test.js +0 -272
  287. package/dist/src/services/shellExecutionService.test.js.map +0 -1
  288. package/dist/src/services/shellExecutionService.windows.multibyte.test.d.ts +0 -6
  289. package/dist/src/services/shellExecutionService.windows.multibyte.test.js +0 -98
  290. package/dist/src/services/shellExecutionService.windows.multibyte.test.js.map +0 -1
  291. package/dist/src/services/shellExecutionService.windows.test.d.ts +0 -6
  292. package/dist/src/services/shellExecutionService.windows.test.js +0 -79
  293. package/dist/src/services/shellExecutionService.windows.test.js.map +0 -1
  294. package/dist/src/services/tool-call-tracker-service.test.d.ts +0 -6
  295. package/dist/src/services/tool-call-tracker-service.test.js +0 -99
  296. package/dist/src/services/tool-call-tracker-service.test.js.map +0 -1
  297. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.d.ts +0 -6
  298. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +0 -187
  299. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +0 -1
  300. package/dist/src/telemetry/loggers.test.d.ts +0 -6
  301. package/dist/src/telemetry/loggers.test.js +0 -573
  302. package/dist/src/telemetry/loggers.test.js.map +0 -1
  303. package/dist/src/telemetry/metrics.test.d.ts +0 -6
  304. package/dist/src/telemetry/metrics.test.js +0 -212
  305. package/dist/src/telemetry/metrics.test.js.map +0 -1
  306. package/dist/src/telemetry/telemetry.test.d.ts +0 -6
  307. package/dist/src/telemetry/telemetry.test.js +0 -54
  308. package/dist/src/telemetry/telemetry.test.js.map +0 -1
  309. package/dist/src/telemetry/uiTelemetry.test.d.ts +0 -6
  310. package/dist/src/telemetry/uiTelemetry.test.js +0 -518
  311. package/dist/src/telemetry/uiTelemetry.test.js.map +0 -1
  312. package/dist/src/tools/ToolFormatter.test.d.ts +0 -16
  313. package/dist/src/tools/ToolFormatter.test.js +0 -349
  314. package/dist/src/tools/ToolFormatter.test.js.map +0 -1
  315. package/dist/src/tools/ToolFormatter.toResponsesTool.test.d.ts +0 -1
  316. package/dist/src/tools/ToolFormatter.toResponsesTool.test.js +0 -241
  317. package/dist/src/tools/ToolFormatter.toResponsesTool.test.js.map +0 -1
  318. package/dist/src/tools/diffOptions.test.d.ts +0 -6
  319. package/dist/src/tools/diffOptions.test.js +0 -119
  320. package/dist/src/tools/diffOptions.test.js.map +0 -1
  321. package/dist/src/tools/edit.test.d.ts +0 -6
  322. package/dist/src/tools/edit.test.js +0 -689
  323. package/dist/src/tools/edit.test.js.map +0 -1
  324. package/dist/src/tools/glob.test.d.ts +0 -6
  325. package/dist/src/tools/glob.test.js +0 -332
  326. package/dist/src/tools/glob.test.js.map +0 -1
  327. package/dist/src/tools/grep.test.d.ts +0 -6
  328. package/dist/src/tools/grep.test.js +0 -272
  329. package/dist/src/tools/grep.test.js.map +0 -1
  330. package/dist/src/tools/ls.test.d.ts +0 -6
  331. package/dist/src/tools/ls.test.js +0 -357
  332. package/dist/src/tools/ls.test.js.map +0 -1
  333. package/dist/src/tools/mcp-client.test.d.ts +0 -6
  334. package/dist/src/tools/mcp-client.test.js +0 -617
  335. package/dist/src/tools/mcp-client.test.js.map +0 -1
  336. package/dist/src/tools/mcp-tool.test.d.ts +0 -6
  337. package/dist/src/tools/mcp-tool.test.js +0 -501
  338. package/dist/src/tools/mcp-tool.test.js.map +0 -1
  339. package/dist/src/tools/memoryTool.test.d.ts +0 -6
  340. package/dist/src/tools/memoryTool.test.js +0 -266
  341. package/dist/src/tools/memoryTool.test.js.map +0 -1
  342. package/dist/src/tools/modifiable-tool.test.d.ts +0 -6
  343. package/dist/src/tools/modifiable-tool.test.js +0 -193
  344. package/dist/src/tools/modifiable-tool.test.js.map +0 -1
  345. package/dist/src/tools/read-file.test.d.ts +0 -6
  346. package/dist/src/tools/read-file.test.js +0 -319
  347. package/dist/src/tools/read-file.test.js.map +0 -1
  348. package/dist/src/tools/read-many-files.test.d.ts +0 -6
  349. package/dist/src/tools/read-many-files.test.js +0 -644
  350. package/dist/src/tools/read-many-files.test.js.map +0 -1
  351. package/dist/src/tools/shell.multibyte.test.d.ts +0 -6
  352. package/dist/src/tools/shell.multibyte.test.js +0 -75
  353. package/dist/src/tools/shell.multibyte.test.js.map +0 -1
  354. package/dist/src/tools/shell.test.d.ts +0 -6
  355. package/dist/src/tools/shell.test.js +0 -367
  356. package/dist/src/tools/shell.test.js.map +0 -1
  357. package/dist/src/tools/todo-pause.spec.d.ts +0 -6
  358. package/dist/src/tools/todo-pause.spec.js +0 -287
  359. package/dist/src/tools/todo-pause.spec.js.map +0 -1
  360. package/dist/src/tools/todo-read.test.d.ts +0 -6
  361. package/dist/src/tools/todo-read.test.js +0 -162
  362. package/dist/src/tools/todo-read.test.js.map +0 -1
  363. package/dist/src/tools/todo-schemas.test.d.ts +0 -6
  364. package/dist/src/tools/todo-schemas.test.js +0 -341
  365. package/dist/src/tools/todo-schemas.test.js.map +0 -1
  366. package/dist/src/tools/todo-store.test.d.ts +0 -6
  367. package/dist/src/tools/todo-store.test.js +0 -169
  368. package/dist/src/tools/todo-store.test.js.map +0 -1
  369. package/dist/src/tools/todo-write.test.d.ts +0 -6
  370. package/dist/src/tools/todo-write.test.js +0 -226
  371. package/dist/src/tools/todo-write.test.js.map +0 -1
  372. package/dist/src/tools/tool-registry.test.d.ts +0 -6
  373. package/dist/src/tools/tool-registry.test.js +0 -468
  374. package/dist/src/tools/tool-registry.test.js.map +0 -1
  375. package/dist/src/tools/tools.test.d.ts +0 -6
  376. package/dist/src/tools/tools.test.js +0 -117
  377. package/dist/src/tools/tools.test.js.map +0 -1
  378. package/dist/src/tools/web-fetch.integration.test.d.ts +0 -6
  379. package/dist/src/tools/web-fetch.integration.test.js +0 -532
  380. package/dist/src/tools/web-fetch.integration.test.js.map +0 -1
  381. package/dist/src/tools/web-search.test.d.ts +0 -6
  382. package/dist/src/tools/web-search.test.js +0 -230
  383. package/dist/src/tools/web-search.test.js.map +0 -1
  384. package/dist/src/tools/write-file.test.d.ts +0 -6
  385. package/dist/src/tools/write-file.test.js +0 -465
  386. package/dist/src/tools/write-file.test.js.map +0 -1
  387. package/dist/src/utils/bfsFileSearch.test.d.ts +0 -6
  388. package/dist/src/utils/bfsFileSearch.test.js +0 -191
  389. package/dist/src/utils/bfsFileSearch.test.js.map +0 -1
  390. package/dist/src/utils/editCorrector.test.d.ts +0 -6
  391. package/dist/src/utils/editCorrector.test.js +0 -564
  392. package/dist/src/utils/editCorrector.test.js.map +0 -1
  393. package/dist/src/utils/editor.test.d.ts +0 -6
  394. package/dist/src/utils/editor.test.js +0 -445
  395. package/dist/src/utils/editor.test.js.map +0 -1
  396. package/dist/src/utils/environmentContext.test.d.ts +0 -6
  397. package/dist/src/utils/environmentContext.test.js +0 -139
  398. package/dist/src/utils/environmentContext.test.js.map +0 -1
  399. package/dist/src/utils/errorReporting.test.d.ts +0 -6
  400. package/dist/src/utils/errorReporting.test.js +0 -130
  401. package/dist/src/utils/errorReporting.test.js.map +0 -1
  402. package/dist/src/utils/fileUtils.test.d.ts +0 -6
  403. package/dist/src/utils/fileUtils.test.js +0 -363
  404. package/dist/src/utils/fileUtils.test.js.map +0 -1
  405. package/dist/src/utils/filesearch/crawlCache.test.d.ts +0 -6
  406. package/dist/src/utils/filesearch/crawlCache.test.js +0 -103
  407. package/dist/src/utils/filesearch/crawlCache.test.js.map +0 -1
  408. package/dist/src/utils/filesearch/fileSearch.test.d.ts +0 -6
  409. package/dist/src/utils/filesearch/fileSearch.test.js +0 -654
  410. package/dist/src/utils/filesearch/fileSearch.test.js.map +0 -1
  411. package/dist/src/utils/filesearch/ignore.test.d.ts +0 -6
  412. package/dist/src/utils/filesearch/ignore.test.js +0 -57
  413. package/dist/src/utils/filesearch/ignore.test.js.map +0 -1
  414. package/dist/src/utils/filesearch/result-cache.test.d.ts +0 -6
  415. package/dist/src/utils/filesearch/result-cache.test.js +0 -47
  416. package/dist/src/utils/filesearch/result-cache.test.js.map +0 -1
  417. package/dist/src/utils/flashFallback.integration.test.d.ts +0 -6
  418. package/dist/src/utils/flashFallback.integration.test.js +0 -120
  419. package/dist/src/utils/flashFallback.integration.test.js.map +0 -1
  420. package/dist/src/utils/generateContentResponseUtilities.test.d.ts +0 -6
  421. package/dist/src/utils/generateContentResponseUtilities.test.js +0 -273
  422. package/dist/src/utils/generateContentResponseUtilities.test.js.map +0 -1
  423. package/dist/src/utils/getFolderStructure.test.d.ts +0 -6
  424. package/dist/src/utils/getFolderStructure.test.js +0 -282
  425. package/dist/src/utils/getFolderStructure.test.js.map +0 -1
  426. package/dist/src/utils/gitIgnoreParser.test.d.ts +0 -6
  427. package/dist/src/utils/gitIgnoreParser.test.js +0 -154
  428. package/dist/src/utils/gitIgnoreParser.test.js.map +0 -1
  429. package/dist/src/utils/memoryDiscovery.test.d.ts +0 -6
  430. package/dist/src/utils/memoryDiscovery.test.js +0 -181
  431. package/dist/src/utils/memoryDiscovery.test.js.map +0 -1
  432. package/dist/src/utils/memoryImportProcessor.test.d.ts +0 -6
  433. package/dist/src/utils/memoryImportProcessor.test.js +0 -715
  434. package/dist/src/utils/memoryImportProcessor.test.js.map +0 -1
  435. package/dist/src/utils/nextSpeakerChecker.test.d.ts +0 -6
  436. package/dist/src/utils/nextSpeakerChecker.test.js +0 -172
  437. package/dist/src/utils/nextSpeakerChecker.test.js.map +0 -1
  438. package/dist/src/utils/partUtils.test.d.ts +0 -6
  439. package/dist/src/utils/partUtils.test.js +0 -130
  440. package/dist/src/utils/partUtils.test.js.map +0 -1
  441. package/dist/src/utils/paths.test.d.ts +0 -6
  442. package/dist/src/utils/paths.test.js +0 -153
  443. package/dist/src/utils/paths.test.js.map +0 -1
  444. package/dist/src/utils/retry.test.d.ts +0 -6
  445. package/dist/src/utils/retry.test.js +0 -322
  446. package/dist/src/utils/retry.test.js.map +0 -1
  447. package/dist/src/utils/safeJsonStringify.test.d.ts +0 -6
  448. package/dist/src/utils/safeJsonStringify.test.js +0 -61
  449. package/dist/src/utils/safeJsonStringify.test.js.map +0 -1
  450. package/dist/src/utils/sanitization.test.d.ts +0 -6
  451. package/dist/src/utils/sanitization.test.js +0 -81
  452. package/dist/src/utils/sanitization.test.js.map +0 -1
  453. package/dist/src/utils/schemaValidator.test.d.ts +0 -6
  454. package/dist/src/utils/schemaValidator.test.js +0 -146
  455. package/dist/src/utils/schemaValidator.test.js.map +0 -1
  456. package/dist/src/utils/secure-browser-launcher.test.d.ts +0 -6
  457. package/dist/src/utils/secure-browser-launcher.test.js +0 -149
  458. package/dist/src/utils/secure-browser-launcher.test.js.map +0 -1
  459. package/dist/src/utils/shell-utils.shellReplacement.test.d.ts +0 -6
  460. package/dist/src/utils/shell-utils.shellReplacement.test.js +0 -149
  461. package/dist/src/utils/shell-utils.shellReplacement.test.js.map +0 -1
  462. package/dist/src/utils/shell-utils.test.d.ts +0 -6
  463. package/dist/src/utils/shell-utils.test.js +0 -200
  464. package/dist/src/utils/shell-utils.test.js.map +0 -1
  465. package/dist/src/utils/summarizer.test.d.ts +0 -6
  466. package/dist/src/utils/summarizer.test.js +0 -131
  467. package/dist/src/utils/summarizer.test.js.map +0 -1
  468. package/dist/src/utils/systemEncoding.test.d.ts +0 -6
  469. package/dist/src/utils/systemEncoding.test.js +0 -368
  470. package/dist/src/utils/systemEncoding.test.js.map +0 -1
  471. package/dist/src/utils/toolOutputLimiter.test.d.ts +0 -6
  472. package/dist/src/utils/toolOutputLimiter.test.js +0 -164
  473. package/dist/src/utils/toolOutputLimiter.test.js.map +0 -1
  474. package/dist/src/utils/unicodeUtils.test.d.ts +0 -6
  475. package/dist/src/utils/unicodeUtils.test.js +0 -120
  476. package/dist/src/utils/unicodeUtils.test.js.map +0 -1
  477. package/dist/src/utils/user_account.test.d.ts +0 -6
  478. package/dist/src/utils/user_account.test.js +0 -153
  479. package/dist/src/utils/user_account.test.js.map +0 -1
  480. package/dist/src/utils/user_id.test.d.ts +0 -6
  481. package/dist/src/utils/user_id.test.js +0 -21
  482. package/dist/src/utils/user_id.test.js.map +0 -1
  483. package/dist/src/utils/workspaceContext.test.d.ts +0 -6
  484. package/dist/src/utils/workspaceContext.test.js +0 -209
  485. package/dist/src/utils/workspaceContext.test.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"GeminiProvider.js","sourceRoot":"","sources":["../../../../src/providers/gemini/GeminiProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GeminiProvider.js","sourceRoot":"","sources":["../../../../src/providers/gemini/GeminiProvider.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,10 @@ export declare class OpenAIProvider extends BaseProvider {
38
38
  * Determines if this provider supports OAuth authentication
39
39
  */
40
40
  protected supportsOAuth(): boolean;
41
+ /**
42
+ * Helper method to determine if we're using Qwen (via OAuth or direct endpoint)
43
+ */
44
+ private isUsingQwen;
41
45
  /**
42
46
  * Update the OpenAI client with resolved authentication if needed
43
47
  */
@@ -51,6 +55,7 @@ export declare class OpenAIProvider extends BaseProvider {
51
55
  generateChatCompletion(messages: IMessage[], tools?: ITool[], _toolFormat?: string): AsyncIterableIterator<IMessage>;
52
56
  setModel(modelId: string): void;
53
57
  getCurrentModel(): string;
58
+ getDefaultModel(): string;
54
59
  setApiKey(apiKey: string): void;
55
60
  setBaseUrl(baseUrl?: string): void;
56
61
  setConfig(config: IProviderConfig): void;
@@ -98,9 +103,36 @@ export declare class OpenAIProvider extends BaseProvider {
98
103
  * @returns Current parameters or undefined if not set
99
104
  */
100
105
  getModelParams(): Record<string, unknown> | undefined;
106
+ /**
107
+ * Initialize provider configuration from SettingsService
108
+ */
109
+ private initializeFromSettings;
101
110
  /**
102
111
  * Check if the provider is authenticated using any available method
103
112
  * Uses the base provider's isAuthenticated implementation
104
113
  */
105
114
  isAuthenticated(): Promise<boolean>;
115
+ /**
116
+ * Detect the appropriate tool format for the current model/configuration
117
+ * @returns The detected tool format
118
+ */
119
+ detectToolFormat(): ToolFormat;
120
+ /**
121
+ * Get appropriate tool_choice value based on detected tool format
122
+ * @param tools Array of tools (if any)
123
+ * @returns Appropriate tool_choice value for the current format
124
+ */
125
+ private getToolChoiceForFormat;
126
+ /**
127
+ * Format tools for API based on detected tool format
128
+ * @param tools Array of tools to format
129
+ * @returns Formatted tools for API consumption
130
+ */
131
+ formatToolsForAPI(tools: ITool[]): unknown;
132
+ /**
133
+ * Parse tool response from API (placeholder for future response parsing)
134
+ * @param response The raw API response
135
+ * @returns Parsed tool response
136
+ */
137
+ parseToolResponse(response: unknown): unknown;
106
138
  }
@@ -25,6 +25,7 @@ import { parseResponsesStream, parseErrorResponse, } from './parseResponsesStrea
25
25
  import { buildResponsesRequest } from './buildResponsesRequest.js';
26
26
  import { BaseProvider } from '../BaseProvider.js';
27
27
  import { isQwenEndpoint, generateOAuthEndpointMismatchError, } from '../../config/endpoints.js';
28
+ import { getSettingsService } from '../../settings/settingsServiceInstance.js';
28
29
  export class OpenAIProvider extends BaseProvider {
29
30
  openai;
30
31
  currentModel = 'gpt-4.1';
@@ -62,6 +63,17 @@ export class OpenAIProvider extends BaseProvider {
62
63
  this.providerConfig = config;
63
64
  this.toolFormatter = new ToolFormatter();
64
65
  this.conversationCache = new ConversationCache();
66
+ // Initialize from SettingsService
67
+ this.initializeFromSettings().catch((error) => {
68
+ if (process.env.DEBUG) {
69
+ console.warn('Failed to initialize OpenAI provider from SettingsService:', error);
70
+ }
71
+ });
72
+ // Set appropriate default model based on the provider
73
+ if (shouldEnableQwenOAuth || isQwenEndpoint(baseURL || '')) {
74
+ // Default to Qwen model when using Qwen endpoints
75
+ this.currentModel = 'qwen3-coder-plus';
76
+ }
65
77
  const clientOptions = {
66
78
  apiKey: apiKey || 'placeholder', // OpenAI client requires a string, use placeholder if OAuth will be used
67
79
  // Allow browser environment if explicitly configured
@@ -86,6 +98,14 @@ export class OpenAIProvider extends BaseProvider {
86
98
  'https://api.openai.com/v1';
87
99
  return isQwenEndpoint(baseURL);
88
100
  }
101
+ /**
102
+ * Helper method to determine if we're using Qwen (via OAuth or direct endpoint)
103
+ */
104
+ isUsingQwen() {
105
+ // Check if we're using qwen format based on tool format detection
106
+ const toolFormat = this.detectToolFormat();
107
+ return toolFormat === 'qwen';
108
+ }
89
109
  /**
90
110
  * Update the OpenAI client with resolved authentication if needed
91
111
  */
@@ -170,7 +190,8 @@ export class OpenAIProvider extends BaseProvider {
170
190
  this.baseURL?.includes('deepseek')) {
171
191
  return 'deepseek';
172
192
  }
173
- if (this.currentModel.includes('qwen') || this.baseURL?.includes('qwen')) {
193
+ // Check for Qwen - including OAuth authenticated Qwen
194
+ if (this.isUsingQwen()) {
174
195
  return 'qwen';
175
196
  }
176
197
  // Default to OpenAI format
@@ -232,10 +253,13 @@ export class OpenAIProvider extends BaseProvider {
232
253
  const formattedTools = tools
233
254
  ? this.toolFormatter.toResponsesTool(tools)
234
255
  : undefined;
256
+ // Patch messages to include synthetic responses for cancelled tools
257
+ const { SyntheticToolResponseHandler } = await import('./syntheticToolResponses.js');
258
+ const patchedMessages = SyntheticToolResponseHandler.patchMessageHistory(messages);
235
259
  // Build the request
236
260
  const request = buildResponsesRequest({
237
261
  model: this.currentModel,
238
- messages,
262
+ messages: patchedMessages,
239
263
  tools: formattedTools,
240
264
  stream: options?.stream ?? true,
241
265
  conversationId: options?.conversationId,
@@ -493,10 +517,8 @@ export class OpenAIProvider extends BaseProvider {
493
517
  : null;
494
518
  // Get current tool format (with override support)
495
519
  const currentToolFormat = this.getToolFormat();
496
- // Format tools using ToolFormatter
497
- const formattedTools = tools
498
- ? this.toolFormatter.toProviderFormat(tools, currentToolFormat)
499
- : undefined;
520
+ // Format tools using formatToolsForAPI method
521
+ const formattedTools = tools ? this.formatToolsForAPI(tools) : undefined;
500
522
  // Get stream_options from ephemeral settings (not model params)
501
523
  const streamOptions = this.providerConfig?.getEphemeralSettings?.()?.['stream-options'];
502
524
  // Default stream_options to { include_usage: true } unless explicitly set
@@ -515,7 +537,7 @@ export class OpenAIProvider extends BaseProvider {
515
537
  ? { stream_options: finalStreamOptions }
516
538
  : {}),
517
539
  tools: formattedTools,
518
- tool_choice: tools && tools.length > 0 ? 'auto' : undefined,
540
+ tool_choice: this.getToolChoiceForFormat(tools),
519
541
  ...this.modelParams,
520
542
  });
521
543
  let fullContent = '';
@@ -528,7 +550,7 @@ export class OpenAIProvider extends BaseProvider {
528
550
  const delta = chunk.choices[0]?.delta;
529
551
  if (delta?.content) {
530
552
  // Enhanced debug logging to understand streaming behavior
531
- if (process.env.DEBUG && this.currentModel.includes('qwen')) {
553
+ if (process.env.DEBUG && this.isUsingQwen()) {
532
554
  console.log(`[OpenAIProvider/${this.currentModel}] Chunk:`, {
533
555
  content: delta.content,
534
556
  contentLength: delta.content.length,
@@ -538,7 +560,7 @@ export class OpenAIProvider extends BaseProvider {
538
560
  }
539
561
  // For text-based models, don't yield content chunks yet
540
562
  if (!parser) {
541
- if (this.currentModel.includes('qwen')) {
563
+ if (this.isUsingQwen()) {
542
564
  const isWhitespaceOnly = delta.content.trim() === '';
543
565
  if (isWhitespaceOnly) {
544
566
  // Buffer whitespace-only chunk
@@ -585,7 +607,7 @@ export class OpenAIProvider extends BaseProvider {
585
607
  }
586
608
  }
587
609
  // Flush any remaining pending whitespace for Qwen
588
- if (pendingWhitespace && this.currentModel.includes('qwen') && !parser) {
610
+ if (pendingWhitespace && this.isUsingQwen() && !parser) {
589
611
  if (process.env.DEBUG) {
590
612
  console.log(`[OpenAIProvider/${this.currentModel}] Flushing trailing pending whitespace (len=${pendingWhitespace.length}) at stream end`);
591
613
  }
@@ -629,7 +651,7 @@ export class OpenAIProvider extends BaseProvider {
629
651
  else {
630
652
  // Standard OpenAI tool call handling
631
653
  if (accumulatedToolCalls.length > 0) {
632
- if (process.env.DEBUG && this.currentModel.includes('qwen')) {
654
+ if (process.env.DEBUG && this.isUsingQwen()) {
633
655
  console.log(`[OpenAIProvider/${this.currentModel}] Final message with tool calls:`, {
634
656
  contentLength: fullContent.length,
635
657
  content: fullContent.substring(0, 200) +
@@ -639,7 +661,7 @@ export class OpenAIProvider extends BaseProvider {
639
661
  });
640
662
  }
641
663
  // For Qwen models, don't duplicate content if we've already streamed it
642
- const shouldOmitContent = hasStreamedContent && this.currentModel.includes('qwen');
664
+ const shouldOmitContent = hasStreamedContent && this.isUsingQwen();
643
665
  if (shouldOmitContent) {
644
666
  // Only yield tool calls with empty content to avoid duplication
645
667
  yield {
@@ -670,14 +692,49 @@ export class OpenAIProvider extends BaseProvider {
670
692
  }
671
693
  }
672
694
  setModel(modelId) {
695
+ // Update SettingsService as the source of truth
696
+ this.setModelInSettings(modelId).catch((error) => {
697
+ if (process.env.DEBUG) {
698
+ console.warn('Failed to persist model to SettingsService:', error);
699
+ }
700
+ });
701
+ // Keep local cache for performance
673
702
  this.currentModel = modelId;
674
703
  }
675
704
  getCurrentModel() {
676
- return this.currentModel;
705
+ // Try to get from SettingsService first (source of truth)
706
+ try {
707
+ const settingsService = getSettingsService();
708
+ const providerSettings = settingsService.getProviderSettings(this.name);
709
+ if (providerSettings.model) {
710
+ return providerSettings.model;
711
+ }
712
+ }
713
+ catch (error) {
714
+ if (process.env.DEBUG) {
715
+ console.warn('Failed to get model from SettingsService:', error);
716
+ }
717
+ }
718
+ // Fall back to cached value or default
719
+ return this.currentModel || this.getDefaultModel();
720
+ }
721
+ getDefaultModel() {
722
+ // Return the default model for this provider
723
+ // This can be overridden based on configuration or endpoint
724
+ if (this.isUsingQwen()) {
725
+ return 'qwen3-coder-plus';
726
+ }
727
+ return 'gpt-4.1';
677
728
  }
678
729
  setApiKey(apiKey) {
679
730
  // Call base provider implementation
680
731
  super.setApiKey?.(apiKey);
732
+ // Persist to SettingsService if available
733
+ this.setApiKeyInSettings(apiKey).catch((error) => {
734
+ if (process.env.DEBUG) {
735
+ console.warn('Failed to persist API key to SettingsService:', error);
736
+ }
737
+ });
681
738
  // Create a new OpenAI client with the updated API key
682
739
  const clientOptions = {
683
740
  apiKey,
@@ -693,6 +750,12 @@ export class OpenAIProvider extends BaseProvider {
693
750
  setBaseUrl(baseUrl) {
694
751
  // If no baseUrl is provided, clear to default (undefined)
695
752
  this.baseURL = baseUrl && baseUrl.trim() !== '' ? baseUrl : undefined;
753
+ // Persist to SettingsService if available
754
+ this.setBaseUrlInSettings(this.baseURL).catch((error) => {
755
+ if (process.env.DEBUG) {
756
+ console.warn('Failed to persist base URL to SettingsService:', error);
757
+ }
758
+ });
696
759
  // Update OAuth configuration based on endpoint validation
697
760
  // Enable OAuth for Qwen endpoints if we have an OAuth manager
698
761
  const shouldEnableQwenOAuth = !!this.baseProviderConfig.oauthManager &&
@@ -772,6 +835,12 @@ export class OpenAIProvider extends BaseProvider {
772
835
  else {
773
836
  this.modelParams = { ...this.modelParams, ...params };
774
837
  }
838
+ // Persist to SettingsService if available
839
+ this.setModelParamsInSettings(this.modelParams).catch((error) => {
840
+ if (process.env.DEBUG) {
841
+ console.warn('Failed to persist model params to SettingsService:', error);
842
+ }
843
+ });
775
844
  }
776
845
  /**
777
846
  * Get current model parameters
@@ -780,6 +849,37 @@ export class OpenAIProvider extends BaseProvider {
780
849
  getModelParams() {
781
850
  return this.modelParams;
782
851
  }
852
+ /**
853
+ * Initialize provider configuration from SettingsService
854
+ */
855
+ async initializeFromSettings() {
856
+ try {
857
+ const _settingsService = getSettingsService();
858
+ // Load saved model if available
859
+ const savedModel = await this.getModelFromSettings();
860
+ if (savedModel) {
861
+ this.currentModel = savedModel;
862
+ }
863
+ // Load saved base URL if available
864
+ const savedBaseUrl = await this.getBaseUrlFromSettings();
865
+ if (savedBaseUrl !== undefined) {
866
+ this.baseURL = savedBaseUrl;
867
+ }
868
+ // Load saved model parameters if available
869
+ const savedParams = await this.getModelParamsFromSettings();
870
+ if (savedParams) {
871
+ this.modelParams = savedParams;
872
+ }
873
+ if (process.env.DEBUG) {
874
+ console.log(`[OpenAI] Initialized from SettingsService - model: ${this.currentModel}, baseURL: ${this.baseURL}, params:`, this.modelParams);
875
+ }
876
+ }
877
+ catch (error) {
878
+ if (process.env.DEBUG) {
879
+ console.error('Failed to initialize OpenAI provider from SettingsService:', error);
880
+ }
881
+ }
882
+ }
783
883
  /**
784
884
  * Check if the provider is authenticated using any available method
785
885
  * Uses the base provider's isAuthenticated implementation
@@ -787,5 +887,92 @@ export class OpenAIProvider extends BaseProvider {
787
887
  async isAuthenticated() {
788
888
  return super.isAuthenticated();
789
889
  }
890
+ /**
891
+ * Detect the appropriate tool format for the current model/configuration
892
+ * @returns The detected tool format
893
+ */
894
+ detectToolFormat() {
895
+ try {
896
+ const settingsService = getSettingsService();
897
+ // First check SettingsService for toolFormat override in provider settings
898
+ // Note: This is synchronous access to cached settings, not async
899
+ const currentSettings = settingsService['settings'];
900
+ const providerSettings = currentSettings?.providers?.[this.name];
901
+ const toolFormatOverride = providerSettings?.toolFormat;
902
+ // If explicitly set to a specific format (not 'auto'), use it
903
+ if (toolFormatOverride && toolFormatOverride !== 'auto') {
904
+ return toolFormatOverride;
905
+ }
906
+ // Auto-detect based on model name if set to 'auto' or not set
907
+ const modelName = this.currentModel.toLowerCase();
908
+ // Check for GLM-4.5 models (glm-4.5, glm-4-5)
909
+ if (modelName.includes('glm-4.5') || modelName.includes('glm-4-5')) {
910
+ return 'qwen';
911
+ }
912
+ // Check for qwen models
913
+ if (modelName.includes('qwen')) {
914
+ return 'qwen';
915
+ }
916
+ // Default to 'openai' format
917
+ return 'openai';
918
+ }
919
+ catch (error) {
920
+ if (process.env.DEBUG) {
921
+ console.warn('Failed to detect tool format from SettingsService:', error);
922
+ }
923
+ // Fallback detection without SettingsService
924
+ const modelName = this.currentModel.toLowerCase();
925
+ if (modelName.includes('glm-4.5') || modelName.includes('glm-4-5')) {
926
+ return 'qwen';
927
+ }
928
+ if (modelName.includes('qwen')) {
929
+ return 'qwen';
930
+ }
931
+ return 'openai';
932
+ }
933
+ }
934
+ /**
935
+ * Get appropriate tool_choice value based on detected tool format
936
+ * @param tools Array of tools (if any)
937
+ * @returns Appropriate tool_choice value for the current format
938
+ */
939
+ getToolChoiceForFormat(tools) {
940
+ if (!tools || tools.length === 0) {
941
+ return undefined;
942
+ }
943
+ // For all formats, use 'auto' (standard behavior)
944
+ // Future enhancement: different formats may need different tool_choice values
945
+ return 'auto';
946
+ }
947
+ /**
948
+ * Format tools for API based on detected tool format
949
+ * @param tools Array of tools to format
950
+ * @returns Formatted tools for API consumption
951
+ */
952
+ formatToolsForAPI(tools) {
953
+ // For now, always use OpenAI format through OpenRouter
954
+ // TODO: Investigate if OpenRouter needs special handling for GLM/Qwen
955
+ // const detectedFormat = this.detectToolFormat();
956
+ // if (detectedFormat === 'qwen') {
957
+ // // Convert OpenAI format to Qwen format: {name, description, parameters} without type/function wrapper
958
+ // return tools.map((tool) => ({
959
+ // name: tool.function.name,
960
+ // description: tool.function.description,
961
+ // parameters: tool.function.parameters,
962
+ // }));
963
+ // }
964
+ // For all formats, use the existing ToolFormatter
965
+ return this.toolFormatter.toProviderFormat(tools, 'openai');
966
+ }
967
+ /**
968
+ * Parse tool response from API (placeholder for future response parsing)
969
+ * @param response The raw API response
970
+ * @returns Parsed tool response
971
+ */
972
+ parseToolResponse(response) {
973
+ // TODO: Implement response parsing based on detected format
974
+ // For now, return the response as-is
975
+ return response;
976
+ }
790
977
  }
791
978
  //# sourceMappingURL=OpenAIProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OpenAIProvider.js","sourceRoot":"","sources":["../../../../src/providers/openai/OpenAIProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpenAIProvider.js","sourceRoot":"","sources":["../../../../src/providers/openai/OpenAIProvider.ts"],"names":[],"mappings":"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"}