@nanocollective/nanocoder 1.19.2 → 1.20.1

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 (1114) hide show
  1. package/README.md +16 -4
  2. package/assets/nanocoder-vscode.vsix +0 -0
  3. package/dist/{ai-sdk-client.d.ts → ai-sdk-client/ai-sdk-client.d.ts} +1 -24
  4. package/dist/ai-sdk-client/ai-sdk-client.d.ts.map +1 -0
  5. package/dist/ai-sdk-client/ai-sdk-client.js +122 -0
  6. package/dist/ai-sdk-client/ai-sdk-client.js.map +1 -0
  7. package/dist/ai-sdk-client/chat/chat-handler.d.ts +17 -0
  8. package/dist/ai-sdk-client/chat/chat-handler.d.ts.map +1 -0
  9. package/dist/ai-sdk-client/chat/chat-handler.js +235 -0
  10. package/dist/ai-sdk-client/chat/chat-handler.js.map +1 -0
  11. package/dist/ai-sdk-client/chat/streaming-handler.d.ts +27 -0
  12. package/dist/ai-sdk-client/chat/streaming-handler.d.ts.map +1 -0
  13. package/dist/ai-sdk-client/chat/streaming-handler.js +83 -0
  14. package/dist/ai-sdk-client/chat/streaming-handler.js.map +1 -0
  15. package/dist/ai-sdk-client/chat/tool-processor.d.ts +10 -0
  16. package/dist/ai-sdk-client/chat/tool-processor.d.ts.map +1 -0
  17. package/dist/ai-sdk-client/chat/tool-processor.js +53 -0
  18. package/dist/ai-sdk-client/chat/tool-processor.js.map +1 -0
  19. package/dist/ai-sdk-client/converters/message-converter.d.ts +18 -0
  20. package/dist/ai-sdk-client/converters/message-converter.d.ts.map +1 -0
  21. package/dist/ai-sdk-client/converters/message-converter.js +100 -0
  22. package/dist/ai-sdk-client/converters/message-converter.js.map +1 -0
  23. package/dist/ai-sdk-client/converters/tool-converter.d.ts +26 -0
  24. package/dist/ai-sdk-client/converters/tool-converter.d.ts.map +1 -0
  25. package/dist/ai-sdk-client/converters/tool-converter.js +32 -0
  26. package/dist/ai-sdk-client/converters/tool-converter.js.map +1 -0
  27. package/dist/ai-sdk-client/error-handling/error-extractor.d.ts +6 -0
  28. package/dist/ai-sdk-client/error-handling/error-extractor.d.ts.map +1 -0
  29. package/dist/ai-sdk-client/error-handling/error-extractor.js +15 -0
  30. package/dist/ai-sdk-client/error-handling/error-extractor.js.map +1 -0
  31. package/dist/ai-sdk-client/error-handling/error-parser.d.ts +6 -0
  32. package/dist/ai-sdk-client/error-handling/error-parser.d.ts.map +1 -0
  33. package/dist/ai-sdk-client/error-handling/error-parser.js +131 -0
  34. package/dist/ai-sdk-client/error-handling/error-parser.js.map +1 -0
  35. package/dist/ai-sdk-client/index.d.ts +5 -0
  36. package/dist/ai-sdk-client/index.d.ts.map +1 -0
  37. package/dist/ai-sdk-client/index.js +6 -0
  38. package/dist/ai-sdk-client/index.js.map +1 -0
  39. package/dist/ai-sdk-client/providers/provider-factory.d.ts +8 -0
  40. package/dist/ai-sdk-client/providers/provider-factory.d.ts.map +1 -0
  41. package/dist/ai-sdk-client/providers/provider-factory.js +31 -0
  42. package/dist/ai-sdk-client/providers/provider-factory.js.map +1 -0
  43. package/dist/ai-sdk-client/types.d.ts +10 -0
  44. package/dist/ai-sdk-client/types.d.ts.map +1 -0
  45. package/dist/ai-sdk-client/types.js +2 -0
  46. package/dist/ai-sdk-client/types.js.map +1 -0
  47. package/dist/app/App.d.ts +3 -0
  48. package/dist/app/App.d.ts.map +1 -0
  49. package/dist/app/App.js +432 -0
  50. package/dist/app/App.js.map +1 -0
  51. package/dist/app/components/app-container.d.ts +24 -0
  52. package/dist/app/components/app-container.d.ts.map +1 -0
  53. package/dist/app/components/app-container.js +16 -0
  54. package/dist/app/components/app-container.js.map +1 -0
  55. package/dist/app/components/chat-history.d.ts +23 -0
  56. package/dist/app/components/chat-history.d.ts.map +1 -0
  57. package/dist/app/components/chat-history.js +17 -0
  58. package/dist/app/components/chat-history.js.map +1 -0
  59. package/dist/app/components/chat-input.d.ts +30 -0
  60. package/dist/app/components/chat-input.d.ts.map +1 -0
  61. package/dist/app/components/chat-input.js +31 -0
  62. package/dist/app/components/chat-input.js.map +1 -0
  63. package/dist/app/components/modal-selectors.d.ts +37 -0
  64. package/dist/app/components/modal-selectors.d.ts.map +1 -0
  65. package/dist/app/components/modal-selectors.js +37 -0
  66. package/dist/app/components/modal-selectors.js.map +1 -0
  67. package/dist/app/helpers.d.ts +10 -0
  68. package/dist/app/helpers.d.ts.map +1 -0
  69. package/dist/app/helpers.js +38 -0
  70. package/dist/app/helpers.js.map +1 -0
  71. package/dist/app/index.d.ts +4 -0
  72. package/dist/app/index.d.ts.map +1 -0
  73. package/dist/app/index.js +4 -0
  74. package/dist/app/index.js.map +1 -0
  75. package/dist/app/types.d.ts +33 -0
  76. package/dist/app/types.d.ts.map +1 -0
  77. package/dist/app/types.js +2 -0
  78. package/dist/app/types.js.map +1 -0
  79. package/dist/app/utils/{appUtils.d.ts → app-util.d.ts} +5 -1
  80. package/dist/app/utils/app-util.d.ts.map +1 -0
  81. package/dist/app/utils/app-util.js +301 -0
  82. package/dist/app/utils/app-util.js.map +1 -0
  83. package/dist/app/utils/{conversationState.d.ts → conversation-state.d.ts} +2 -1
  84. package/dist/app/utils/conversation-state.d.ts.map +1 -0
  85. package/dist/app/utils/{conversationState.js → conversation-state.js} +5 -1
  86. package/dist/app/utils/conversation-state.js.map +1 -0
  87. package/dist/cli.js +2 -13
  88. package/dist/cli.js.map +1 -1
  89. package/dist/client-factory.d.ts.map +1 -1
  90. package/dist/client-factory.js +3 -2
  91. package/dist/client-factory.js.map +1 -1
  92. package/dist/commands/checkpoint.d.ts.map +1 -1
  93. package/dist/commands/checkpoint.js +2 -5
  94. package/dist/commands/checkpoint.js.map +1 -1
  95. package/dist/commands/clear.d.ts.map +1 -1
  96. package/dist/commands/clear.js +1 -1
  97. package/dist/commands/clear.js.map +1 -1
  98. package/dist/commands/custom-commands.d.ts.map +1 -1
  99. package/dist/commands/custom-commands.js +4 -4
  100. package/dist/commands/custom-commands.js.map +1 -1
  101. package/dist/commands/exit.d.ts.map +1 -1
  102. package/dist/commands/exit.js +1 -1
  103. package/dist/commands/exit.js.map +1 -1
  104. package/dist/commands/export.d.ts.map +1 -1
  105. package/dist/commands/export.js +3 -3
  106. package/dist/commands/export.js.map +1 -1
  107. package/dist/commands/help.d.ts.map +1 -1
  108. package/dist/commands/help.js +27 -10
  109. package/dist/commands/help.js.map +1 -1
  110. package/dist/commands/index.d.ts +11 -10
  111. package/dist/commands/index.d.ts.map +1 -1
  112. package/dist/commands/index.js +11 -10
  113. package/dist/commands/index.js.map +1 -1
  114. package/dist/commands/init.d.ts.map +1 -1
  115. package/dist/commands/init.js +5 -5
  116. package/dist/commands/init.js.map +1 -1
  117. package/dist/commands/lsp.d.ts.map +1 -1
  118. package/dist/commands/lsp.js +9 -9
  119. package/dist/commands/lsp.js.map +1 -1
  120. package/dist/commands/mcp.d.ts.map +1 -1
  121. package/dist/commands/mcp.js +5 -5
  122. package/dist/commands/mcp.js.map +1 -1
  123. package/dist/commands/model-database.d.ts.map +1 -1
  124. package/dist/commands/model-database.js +13 -12
  125. package/dist/commands/model-database.js.map +1 -1
  126. package/dist/commands/model.d.ts.map +1 -1
  127. package/dist/commands/model.js.map +1 -1
  128. package/dist/commands/provider.d.ts.map +1 -1
  129. package/dist/commands/provider.js.map +1 -1
  130. package/dist/commands/setup-config.d.ts.map +1 -1
  131. package/dist/commands/setup-config.js +2 -2
  132. package/dist/commands/setup-config.js.map +1 -1
  133. package/dist/commands/status.d.ts.map +1 -1
  134. package/dist/commands/status.js.map +1 -1
  135. package/dist/commands/theme.d.ts.map +1 -1
  136. package/dist/commands/theme.js.map +1 -1
  137. package/dist/commands/title-shape.d.ts +3 -0
  138. package/dist/commands/title-shape.d.ts.map +1 -0
  139. package/dist/commands/title-shape.js +54 -0
  140. package/dist/commands/title-shape.js.map +1 -0
  141. package/dist/commands/update.d.ts.map +1 -1
  142. package/dist/commands/update.js +2 -4
  143. package/dist/commands/update.js.map +1 -1
  144. package/dist/commands/usage.d.ts.map +1 -1
  145. package/dist/commands/usage.js +1 -1
  146. package/dist/commands/usage.js.map +1 -1
  147. package/dist/commands.d.ts +2 -2
  148. package/dist/commands.d.ts.map +1 -1
  149. package/dist/commands.js +10 -3
  150. package/dist/commands.js.map +1 -1
  151. package/dist/components/assistant-message.d.ts.map +1 -1
  152. package/dist/components/assistant-message.js +2 -2
  153. package/dist/components/assistant-message.js.map +1 -1
  154. package/dist/components/bash-progress.d.ts +12 -0
  155. package/dist/components/bash-progress.d.ts.map +1 -0
  156. package/dist/components/bash-progress.js +67 -0
  157. package/dist/components/bash-progress.js.map +1 -0
  158. package/dist/components/cancelling-indicator.js +1 -1
  159. package/dist/components/cancelling-indicator.js.map +1 -1
  160. package/dist/components/chat-queue.d.ts.map +1 -1
  161. package/dist/components/chat-queue.js.map +1 -1
  162. package/dist/components/checkpoint-display.d.ts.map +1 -1
  163. package/dist/components/checkpoint-display.js +3 -3
  164. package/dist/components/checkpoint-display.js.map +1 -1
  165. package/dist/components/checkpoint-selector.d.ts.map +1 -1
  166. package/dist/components/checkpoint-selector.js +7 -7
  167. package/dist/components/checkpoint-selector.js.map +1 -1
  168. package/dist/components/development-mode-indicator.d.ts +1 -1
  169. package/dist/components/development-mode-indicator.d.ts.map +1 -1
  170. package/dist/components/development-mode-indicator.js +1 -1
  171. package/dist/components/development-mode-indicator.js.map +1 -1
  172. package/dist/components/message-box.d.ts +14 -0
  173. package/dist/components/message-box.d.ts.map +1 -0
  174. package/dist/components/message-box.js +33 -0
  175. package/dist/components/message-box.js.map +1 -0
  176. package/dist/components/model-selector.d.ts.map +1 -1
  177. package/dist/components/model-selector.js +6 -6
  178. package/dist/components/model-selector.js.map +1 -1
  179. package/dist/components/provider-selector.d.ts.map +1 -1
  180. package/dist/components/provider-selector.js +5 -5
  181. package/dist/components/provider-selector.js.map +1 -1
  182. package/dist/components/security-disclaimer.d.ts.map +1 -1
  183. package/dist/components/security-disclaimer.js +4 -4
  184. package/dist/components/security-disclaimer.js.map +1 -1
  185. package/dist/components/status.d.ts +3 -0
  186. package/dist/components/status.d.ts.map +1 -1
  187. package/dist/components/status.js +18 -6
  188. package/dist/components/status.js.map +1 -1
  189. package/dist/components/theme-selector.d.ts.map +1 -1
  190. package/dist/components/theme-selector.js +14 -6
  191. package/dist/components/theme-selector.js.map +1 -1
  192. package/dist/components/title-shape-selector.d.ts +8 -0
  193. package/dist/components/title-shape-selector.d.ts.map +1 -0
  194. package/dist/components/title-shape-selector.js +108 -0
  195. package/dist/components/title-shape-selector.js.map +1 -0
  196. package/dist/components/tool-confirmation.d.ts.map +1 -1
  197. package/dist/components/tool-confirmation.js +9 -6
  198. package/dist/components/tool-confirmation.js.map +1 -1
  199. package/dist/components/tool-execution-indicator.d.ts.map +1 -1
  200. package/dist/components/tool-execution-indicator.js +1 -1
  201. package/dist/components/tool-execution-indicator.js.map +1 -1
  202. package/dist/components/tool-message.d.ts +1 -0
  203. package/dist/components/tool-message.d.ts.map +1 -1
  204. package/dist/components/tool-message.js +4 -4
  205. package/dist/components/tool-message.js.map +1 -1
  206. package/dist/components/ui/styled-title.d.ts +27 -0
  207. package/dist/components/ui/styled-title.d.ts.map +1 -0
  208. package/dist/components/ui/styled-title.js +182 -0
  209. package/dist/components/ui/styled-title.js.map +1 -0
  210. package/dist/components/ui/titled-box.d.ts +14 -3
  211. package/dist/components/ui/titled-box.d.ts.map +1 -1
  212. package/dist/components/ui/titled-box.js +20 -5
  213. package/dist/components/ui/titled-box.js.map +1 -1
  214. package/dist/components/usage/usage-display.d.ts.map +1 -1
  215. package/dist/components/usage/usage-display.js +3 -3
  216. package/dist/components/usage/usage-display.js.map +1 -1
  217. package/dist/components/user-input.d.ts.map +1 -1
  218. package/dist/components/user-input.js +35 -39
  219. package/dist/components/user-input.js.map +1 -1
  220. package/dist/components/user-message.d.ts.map +1 -1
  221. package/dist/components/user-message.js +14 -3
  222. package/dist/components/user-message.js.map +1 -1
  223. package/dist/components/vscode-extension-prompt.d.ts.map +1 -1
  224. package/dist/components/vscode-extension-prompt.js +7 -6
  225. package/dist/components/vscode-extension-prompt.js.map +1 -1
  226. package/dist/components/welcome-message.d.ts.map +1 -1
  227. package/dist/components/welcome-message.js +10 -10
  228. package/dist/components/welcome-message.js.map +1 -1
  229. package/dist/config/index.d.ts.map +1 -1
  230. package/dist/config/index.js +33 -19
  231. package/dist/config/index.js.map +1 -1
  232. package/dist/config/preferences.d.ts +4 -0
  233. package/dist/config/preferences.d.ts.map +1 -1
  234. package/dist/config/preferences.js +19 -1
  235. package/dist/config/preferences.js.map +1 -1
  236. package/dist/config/themes.d.ts.map +1 -1
  237. package/dist/config/themes.js +132 -32
  238. package/dist/config/themes.js.map +1 -1
  239. package/dist/constants.d.ts +85 -0
  240. package/dist/constants.d.ts.map +1 -0
  241. package/dist/constants.js +109 -0
  242. package/dist/constants.js.map +1 -0
  243. package/dist/custom-commands/loader.d.ts.map +1 -1
  244. package/dist/custom-commands/loader.js +3 -2
  245. package/dist/custom-commands/loader.js.map +1 -1
  246. package/dist/hooks/chat-handler/conversation/conversation-loop.d.ts +36 -0
  247. package/dist/hooks/chat-handler/conversation/conversation-loop.d.ts.map +1 -0
  248. package/dist/hooks/chat-handler/conversation/conversation-loop.js +312 -0
  249. package/dist/hooks/chat-handler/conversation/conversation-loop.js.map +1 -0
  250. package/dist/hooks/chat-handler/conversation/tool-executor.d.ts +12 -0
  251. package/dist/hooks/chat-handler/conversation/tool-executor.d.ts.map +1 -0
  252. package/dist/hooks/chat-handler/conversation/tool-executor.js +63 -0
  253. package/dist/hooks/chat-handler/conversation/tool-executor.js.map +1 -0
  254. package/dist/hooks/chat-handler/index.d.ts +9 -0
  255. package/dist/hooks/chat-handler/index.d.ts.map +1 -0
  256. package/dist/hooks/chat-handler/index.js +9 -0
  257. package/dist/hooks/chat-handler/index.js.map +1 -0
  258. package/dist/hooks/chat-handler/state/streaming-state.d.ts +6 -0
  259. package/dist/hooks/chat-handler/state/streaming-state.d.ts.map +1 -0
  260. package/dist/hooks/chat-handler/state/streaming-state.js +14 -0
  261. package/dist/hooks/chat-handler/state/streaming-state.js.map +1 -0
  262. package/dist/hooks/{useChatHandler.d.ts → chat-handler/types.d.ts} +8 -9
  263. package/dist/hooks/chat-handler/types.d.ts.map +1 -0
  264. package/dist/hooks/chat-handler/types.js +2 -0
  265. package/dist/hooks/chat-handler/types.js.map +1 -0
  266. package/dist/hooks/chat-handler/useChatHandler.d.ts +7 -0
  267. package/dist/hooks/chat-handler/useChatHandler.d.ts.map +1 -0
  268. package/dist/hooks/chat-handler/useChatHandler.js +141 -0
  269. package/dist/hooks/chat-handler/useChatHandler.js.map +1 -0
  270. package/dist/hooks/chat-handler/utils/context-checker.d.ts +15 -0
  271. package/dist/hooks/chat-handler/utils/context-checker.d.ts.map +1 -0
  272. package/dist/hooks/chat-handler/utils/context-checker.js +68 -0
  273. package/dist/hooks/chat-handler/utils/context-checker.js.map +1 -0
  274. package/dist/hooks/chat-handler/utils/message-helpers.d.ts +11 -0
  275. package/dist/hooks/chat-handler/utils/message-helpers.d.ts.map +1 -0
  276. package/dist/hooks/chat-handler/utils/message-helpers.js +20 -0
  277. package/dist/hooks/chat-handler/utils/message-helpers.js.map +1 -0
  278. package/dist/hooks/chat-handler/utils/tool-filters.d.ts +17 -0
  279. package/dist/hooks/chat-handler/utils/tool-filters.d.ts.map +1 -0
  280. package/dist/hooks/chat-handler/utils/tool-filters.js +50 -0
  281. package/dist/hooks/chat-handler/utils/tool-filters.js.map +1 -0
  282. package/dist/hooks/useAppHandlers.d.ts +60 -0
  283. package/dist/hooks/useAppHandlers.d.ts.map +1 -0
  284. package/dist/hooks/useAppHandlers.js +141 -0
  285. package/dist/hooks/useAppHandlers.js.map +1 -0
  286. package/dist/hooks/useAppInitialization.d.ts +3 -3
  287. package/dist/hooks/useAppInitialization.d.ts.map +1 -1
  288. package/dist/hooks/useAppInitialization.js +9 -9
  289. package/dist/hooks/useAppInitialization.js.map +1 -1
  290. package/dist/hooks/useAppState.d.ts +12 -9
  291. package/dist/hooks/useAppState.d.ts.map +1 -1
  292. package/dist/hooks/useAppState.js +42 -17
  293. package/dist/hooks/useAppState.js.map +1 -1
  294. package/dist/hooks/useDirectoryTrust.js +3 -3
  295. package/dist/hooks/useDirectoryTrust.js.map +1 -1
  296. package/dist/hooks/useInputState.d.ts.map +1 -1
  297. package/dist/hooks/useInputState.js +29 -8
  298. package/dist/hooks/useInputState.js.map +1 -1
  299. package/dist/hooks/useModeHandlers.d.ts +8 -4
  300. package/dist/hooks/useModeHandlers.d.ts.map +1 -1
  301. package/dist/hooks/useModeHandlers.js +31 -14
  302. package/dist/hooks/useModeHandlers.js.map +1 -1
  303. package/dist/hooks/useNonInteractiveMode.d.ts +24 -0
  304. package/dist/hooks/useNonInteractiveMode.d.ts.map +1 -0
  305. package/dist/hooks/useNonInteractiveMode.js +96 -0
  306. package/dist/hooks/useNonInteractiveMode.js.map +1 -0
  307. package/dist/hooks/useTerminalWidth.d.ts.map +1 -1
  308. package/dist/hooks/useTerminalWidth.js +4 -3
  309. package/dist/hooks/useTerminalWidth.js.map +1 -1
  310. package/dist/hooks/useTheme.d.ts.map +1 -1
  311. package/dist/hooks/useTheme.js.map +1 -1
  312. package/dist/hooks/useTitleShape.d.ts +17 -0
  313. package/dist/hooks/useTitleShape.d.ts.map +1 -0
  314. package/dist/hooks/useTitleShape.js +23 -0
  315. package/dist/hooks/useTitleShape.js.map +1 -0
  316. package/dist/hooks/useToolHandler.d.ts +4 -3
  317. package/dist/hooks/useToolHandler.d.ts.map +1 -1
  318. package/dist/hooks/useToolHandler.js +49 -16
  319. package/dist/hooks/useToolHandler.js.map +1 -1
  320. package/dist/hooks/useUIState.d.ts +1 -1
  321. package/dist/hooks/useUIState.d.ts.map +1 -1
  322. package/dist/hooks/useUIState.js.map +1 -1
  323. package/dist/hooks/useVSCodeServer.d.ts +4 -2
  324. package/dist/hooks/useVSCodeServer.d.ts.map +1 -1
  325. package/dist/hooks/useVSCodeServer.js +9 -7
  326. package/dist/hooks/useVSCodeServer.js.map +1 -1
  327. package/dist/init/agents-template-generator.d.ts.map +1 -1
  328. package/dist/init/agents-template-generator.js +2 -1
  329. package/dist/init/agents-template-generator.js.map +1 -1
  330. package/dist/init/file-scanner.d.ts +6 -5
  331. package/dist/init/file-scanner.d.ts.map +1 -1
  332. package/dist/init/file-scanner.js +32 -56
  333. package/dist/init/file-scanner.js.map +1 -1
  334. package/dist/init/language-detector.d.ts.map +1 -1
  335. package/dist/init/language-detector.js +3 -2
  336. package/dist/init/language-detector.js.map +1 -1
  337. package/dist/lsp/index.d.ts +2 -2
  338. package/dist/lsp/index.d.ts.map +1 -1
  339. package/dist/lsp/index.js.map +1 -1
  340. package/dist/lsp/lsp-client.d.ts.map +1 -1
  341. package/dist/lsp/lsp-client.js +18 -8
  342. package/dist/lsp/lsp-client.js.map +1 -1
  343. package/dist/lsp/lsp-manager.d.ts +2 -1
  344. package/dist/lsp/lsp-manager.d.ts.map +1 -1
  345. package/dist/lsp/lsp-manager.js +20 -6
  346. package/dist/lsp/lsp-manager.js.map +1 -1
  347. package/dist/lsp/server-discovery.d.ts +25 -1
  348. package/dist/lsp/server-discovery.d.ts.map +1 -1
  349. package/dist/lsp/server-discovery.js +147 -13
  350. package/dist/lsp/server-discovery.js.map +1 -1
  351. package/dist/markdown-parser/index.d.ts +1 -1
  352. package/dist/markdown-parser/index.d.ts.map +1 -1
  353. package/dist/markdown-parser/index.js +9 -4
  354. package/dist/markdown-parser/index.js.map +1 -1
  355. package/dist/markdown-parser/table-parser.d.ts.map +1 -1
  356. package/dist/markdown-parser/table-parser.js +3 -2
  357. package/dist/markdown-parser/table-parser.js.map +1 -1
  358. package/dist/mcp/mcp-client.d.ts +1 -2
  359. package/dist/mcp/mcp-client.d.ts.map +1 -1
  360. package/dist/mcp/mcp-client.js +1 -1
  361. package/dist/mcp/mcp-client.js.map +1 -1
  362. package/dist/mcp/transport-factory.d.ts.map +1 -1
  363. package/dist/mcp/transport-factory.js +73 -3
  364. package/dist/mcp/transport-factory.js.map +1 -1
  365. package/dist/model-database/model-database.d.ts.map +1 -1
  366. package/dist/model-database/model-database.js +4 -2
  367. package/dist/model-database/model-database.js.map +1 -1
  368. package/dist/model-database/model-fetcher.d.ts.map +1 -1
  369. package/dist/model-database/model-fetcher.js +5 -3
  370. package/dist/model-database/model-fetcher.js.map +1 -1
  371. package/dist/models/models-cache.d.ts +2 -2
  372. package/dist/models/models-cache.d.ts.map +1 -1
  373. package/dist/models/models-cache.js +22 -19
  374. package/dist/models/models-cache.js.map +1 -1
  375. package/dist/models/models-dev-client.d.ts.map +1 -1
  376. package/dist/models/models-dev-client.js +12 -8
  377. package/dist/models/models-dev-client.js.map +1 -1
  378. package/dist/prompt-history.d.ts +4 -2
  379. package/dist/prompt-history.d.ts.map +1 -1
  380. package/dist/prompt-history.js +26 -17
  381. package/dist/prompt-history.js.map +1 -1
  382. package/dist/services/bash-executor.d.ts +24 -0
  383. package/dist/services/bash-executor.d.ts.map +1 -0
  384. package/dist/services/bash-executor.js +98 -0
  385. package/dist/services/bash-executor.js.map +1 -0
  386. package/dist/services/checkpoint-manager.d.ts.map +1 -1
  387. package/dist/services/checkpoint-manager.js +31 -20
  388. package/dist/services/checkpoint-manager.js.map +1 -1
  389. package/dist/services/file-snapshot.d.ts.map +1 -1
  390. package/dist/services/file-snapshot.js +96 -39
  391. package/dist/services/file-snapshot.js.map +1 -1
  392. package/dist/test-utils/render-with-theme.d.ts +1 -1
  393. package/dist/test-utils/render-with-theme.d.ts.map +1 -1
  394. package/dist/test-utils/render-with-theme.js +14 -8
  395. package/dist/test-utils/render-with-theme.js.map +1 -1
  396. package/dist/tokenization/tokenizers/anthropic-tokenizer.d.ts.map +1 -1
  397. package/dist/tokenization/tokenizers/anthropic-tokenizer.js.map +1 -1
  398. package/dist/tokenization/tokenizers/llama-tokenizer.d.ts.map +1 -1
  399. package/dist/tokenization/tokenizers/llama-tokenizer.js.map +1 -1
  400. package/dist/tokenization/tokenizers/openai-tokenizer.d.ts.map +1 -1
  401. package/dist/tokenization/tokenizers/openai-tokenizer.js.map +1 -1
  402. package/dist/tools/execute-bash.d.ts +16 -0
  403. package/dist/tools/execute-bash.d.ts.map +1 -1
  404. package/dist/tools/execute-bash.js +66 -70
  405. package/dist/tools/execute-bash.js.map +1 -1
  406. package/dist/tools/fetch-url.d.ts +2 -16
  407. package/dist/tools/fetch-url.d.ts.map +1 -1
  408. package/dist/tools/fetch-url.js +7 -6
  409. package/dist/tools/fetch-url.js.map +1 -1
  410. package/dist/tools/find-files.d.ts +2 -18
  411. package/dist/tools/find-files.d.ts.map +1 -1
  412. package/dist/tools/find-files.js +53 -61
  413. package/dist/tools/find-files.js.map +1 -1
  414. package/dist/tools/git/git-branch-suggest.d.ts +9 -0
  415. package/dist/tools/git/git-branch-suggest.d.ts.map +1 -0
  416. package/dist/tools/git/git-branch-suggest.js +326 -0
  417. package/dist/tools/git/git-branch-suggest.js.map +1 -0
  418. package/dist/tools/git/git-create-pr.d.ts +9 -0
  419. package/dist/tools/git/git-create-pr.d.ts.map +1 -0
  420. package/dist/tools/git/git-create-pr.js +380 -0
  421. package/dist/tools/git/git-create-pr.js.map +1 -0
  422. package/dist/tools/git/git-smart-commit.d.ts +9 -0
  423. package/dist/tools/git/git-smart-commit.d.ts.map +1 -0
  424. package/dist/tools/git/git-smart-commit.js +280 -0
  425. package/dist/tools/git/git-smart-commit.js.map +1 -0
  426. package/dist/tools/git/git-status-enhanced.d.ts +9 -0
  427. package/dist/tools/git/git-status-enhanced.d.ts.map +1 -0
  428. package/dist/tools/git/git-status-enhanced.js +282 -0
  429. package/dist/tools/git/git-status-enhanced.js.map +1 -0
  430. package/dist/tools/git/index.d.ts +16 -0
  431. package/dist/tools/git/index.d.ts.map +1 -0
  432. package/dist/tools/git/index.js +15 -0
  433. package/dist/tools/git/index.js.map +1 -0
  434. package/dist/tools/git/types.d.ts +103 -0
  435. package/dist/tools/git/types.d.ts.map +1 -0
  436. package/dist/tools/git/types.js +7 -0
  437. package/dist/tools/git/types.js.map +1 -0
  438. package/dist/tools/git/utils.d.ts +65 -0
  439. package/dist/tools/git/utils.d.ts.map +1 -0
  440. package/dist/tools/git/utils.js +509 -0
  441. package/dist/tools/git/utils.js.map +1 -0
  442. package/dist/tools/index.d.ts +2 -1
  443. package/dist/tools/index.d.ts.map +1 -1
  444. package/dist/tools/index.js +15 -0
  445. package/dist/tools/index.js.map +1 -1
  446. package/dist/tools/list-directory.d.ts +3 -0
  447. package/dist/tools/list-directory.d.ts.map +1 -0
  448. package/dist/tools/list-directory.js +214 -0
  449. package/dist/tools/list-directory.js.map +1 -0
  450. package/dist/tools/lsp-get-diagnostics.d.ts +2 -10
  451. package/dist/tools/lsp-get-diagnostics.d.ts.map +1 -1
  452. package/dist/tools/lsp-get-diagnostics.js +42 -5
  453. package/dist/tools/lsp-get-diagnostics.js.map +1 -1
  454. package/dist/tools/read-file.d.ts.map +1 -1
  455. package/dist/tools/read-file.js +112 -53
  456. package/dist/tools/read-file.js.map +1 -1
  457. package/dist/tools/search-file-contents.d.ts +2 -20
  458. package/dist/tools/search-file-contents.d.ts.map +1 -1
  459. package/dist/tools/search-file-contents.js +36 -47
  460. package/dist/tools/search-file-contents.js.map +1 -1
  461. package/dist/tools/string-replace.d.ts +2 -18
  462. package/dist/tools/string-replace.d.ts.map +1 -1
  463. package/dist/tools/string-replace.js +149 -36
  464. package/dist/tools/string-replace.js.map +1 -1
  465. package/dist/tools/tool-manager.d.ts +3 -4
  466. package/dist/tools/tool-manager.d.ts.map +1 -1
  467. package/dist/tools/tool-manager.js +6 -7
  468. package/dist/tools/tool-manager.js.map +1 -1
  469. package/dist/tools/tool-registry.d.ts +9 -2
  470. package/dist/tools/tool-registry.d.ts.map +1 -1
  471. package/dist/tools/tool-registry.js +11 -1
  472. package/dist/tools/tool-registry.js.map +1 -1
  473. package/dist/tools/web-search.d.ts.map +1 -1
  474. package/dist/tools/web-search.js +9 -7
  475. package/dist/tools/web-search.js.map +1 -1
  476. package/dist/tools/write-file.d.ts +2 -24
  477. package/dist/tools/write-file.d.ts.map +1 -1
  478. package/dist/tools/write-file.js +34 -5
  479. package/dist/tools/write-file.js.map +1 -1
  480. package/dist/types/app.d.ts +5 -4
  481. package/dist/types/app.d.ts.map +1 -1
  482. package/dist/types/components.d.ts +0 -3
  483. package/dist/types/components.d.ts.map +1 -1
  484. package/dist/types/config.d.ts +2 -0
  485. package/dist/types/config.d.ts.map +1 -1
  486. package/dist/types/core.d.ts +15 -1
  487. package/dist/types/core.d.ts.map +1 -1
  488. package/dist/types/core.js.map +1 -1
  489. package/dist/types/index.d.ts +7 -7
  490. package/dist/types/index.d.ts.map +1 -1
  491. package/dist/types/index.js +7 -7
  492. package/dist/types/index.js.map +1 -1
  493. package/dist/types/markdown-parser.d.ts +1 -1
  494. package/dist/types/markdown-parser.d.ts.map +1 -1
  495. package/dist/types/ui.d.ts +6 -3
  496. package/dist/types/ui.d.ts.map +1 -1
  497. package/dist/usage/calculator.d.ts.map +1 -1
  498. package/dist/usage/calculator.js +5 -5
  499. package/dist/usage/calculator.js.map +1 -1
  500. package/dist/usage/storage.d.ts.map +1 -1
  501. package/dist/usage/storage.js +4 -5
  502. package/dist/usage/storage.js.map +1 -1
  503. package/dist/usage/tracker.d.ts.map +1 -1
  504. package/dist/usage/tracker.js +2 -1
  505. package/dist/usage/tracker.js.map +1 -1
  506. package/dist/utils/bounded-map.d.ts +83 -0
  507. package/dist/utils/bounded-map.d.ts.map +1 -0
  508. package/dist/utils/bounded-map.js +148 -0
  509. package/dist/utils/bounded-map.js.map +1 -0
  510. package/dist/utils/file-autocomplete.d.ts +0 -6
  511. package/dist/utils/file-autocomplete.d.ts.map +1 -1
  512. package/dist/utils/file-autocomplete.js +8 -46
  513. package/dist/utils/file-autocomplete.js.map +1 -1
  514. package/dist/utils/file-cache.d.ts +39 -0
  515. package/dist/utils/file-cache.d.ts.map +1 -0
  516. package/dist/utils/file-cache.js +153 -0
  517. package/dist/utils/file-cache.js.map +1 -0
  518. package/dist/utils/file-content-loader.d.ts +0 -5
  519. package/dist/utils/file-content-loader.d.ts.map +1 -1
  520. package/dist/utils/file-content-loader.js +5 -35
  521. package/dist/utils/file-content-loader.js.map +1 -1
  522. package/dist/utils/file-mention-parser.d.ts +6 -0
  523. package/dist/utils/file-mention-parser.d.ts.map +1 -1
  524. package/dist/utils/file-mention-parser.js +9 -38
  525. package/dist/utils/file-mention-parser.js.map +1 -1
  526. package/dist/utils/file-type-detector.d.ts +17 -0
  527. package/dist/utils/file-type-detector.d.ts.map +1 -0
  528. package/dist/utils/file-type-detector.js +72 -0
  529. package/dist/utils/file-type-detector.js.map +1 -0
  530. package/dist/utils/fuzzy-matching.js +4 -4
  531. package/dist/utils/fuzzy-matching.js.map +1 -1
  532. package/dist/utils/gitignore-loader.d.ts +21 -0
  533. package/dist/utils/gitignore-loader.d.ts.map +1 -0
  534. package/dist/utils/gitignore-loader.js +62 -0
  535. package/dist/utils/gitignore-loader.js.map +1 -0
  536. package/dist/utils/gradient-utils.d.ts +25 -0
  537. package/dist/utils/gradient-utils.d.ts.map +1 -0
  538. package/dist/utils/gradient-utils.js +45 -0
  539. package/dist/utils/gradient-utils.js.map +1 -0
  540. package/dist/utils/indentation-normalizer.d.ts +10 -0
  541. package/dist/utils/indentation-normalizer.d.ts.map +1 -0
  542. package/dist/utils/indentation-normalizer.js +65 -0
  543. package/dist/utils/indentation-normalizer.js.map +1 -0
  544. package/dist/utils/inline-diff.d.ts +15 -0
  545. package/dist/utils/inline-diff.d.ts.map +1 -0
  546. package/dist/utils/inline-diff.js +51 -0
  547. package/dist/utils/inline-diff.js.map +1 -0
  548. package/dist/utils/installation-detector.js +1 -1
  549. package/dist/utils/installation-detector.js.map +1 -1
  550. package/dist/utils/logging/config.d.ts.map +1 -1
  551. package/dist/utils/logging/config.js +1 -2
  552. package/dist/utils/logging/config.js.map +1 -1
  553. package/dist/utils/logging/correlation.d.ts +0 -18
  554. package/dist/utils/logging/correlation.d.ts.map +1 -1
  555. package/dist/utils/logging/correlation.js +3 -34
  556. package/dist/utils/logging/correlation.js.map +1 -1
  557. package/dist/utils/logging/formatters.d.ts.map +1 -1
  558. package/dist/utils/logging/formatters.js +0 -3
  559. package/dist/utils/logging/formatters.js.map +1 -1
  560. package/dist/utils/logging/health-monitor/alerts/alert-manager.d.ts +9 -0
  561. package/dist/utils/logging/health-monitor/alerts/alert-manager.d.ts.map +1 -0
  562. package/dist/utils/logging/health-monitor/alerts/alert-manager.js +66 -0
  563. package/dist/utils/logging/health-monitor/alerts/alert-manager.js.map +1 -0
  564. package/dist/utils/logging/health-monitor/checks/configuration-check.d.ts +9 -0
  565. package/dist/utils/logging/health-monitor/checks/configuration-check.d.ts.map +1 -0
  566. package/dist/utils/logging/health-monitor/checks/configuration-check.js +39 -0
  567. package/dist/utils/logging/health-monitor/checks/configuration-check.js.map +1 -0
  568. package/dist/utils/logging/health-monitor/checks/logging-check.d.ts +9 -0
  569. package/dist/utils/logging/health-monitor/checks/logging-check.d.ts.map +1 -0
  570. package/dist/utils/logging/health-monitor/checks/logging-check.js +55 -0
  571. package/dist/utils/logging/health-monitor/checks/logging-check.js.map +1 -0
  572. package/dist/utils/logging/health-monitor/checks/memory-check.d.ts +9 -0
  573. package/dist/utils/logging/health-monitor/checks/memory-check.d.ts.map +1 -0
  574. package/dist/utils/logging/health-monitor/checks/memory-check.js +61 -0
  575. package/dist/utils/logging/health-monitor/checks/memory-check.js.map +1 -0
  576. package/dist/utils/logging/health-monitor/checks/performance-check.d.ts +9 -0
  577. package/dist/utils/logging/health-monitor/checks/performance-check.d.ts.map +1 -0
  578. package/dist/utils/logging/health-monitor/checks/performance-check.js +48 -0
  579. package/dist/utils/logging/health-monitor/checks/performance-check.js.map +1 -0
  580. package/dist/utils/logging/health-monitor/checks/request-check.d.ts +9 -0
  581. package/dist/utils/logging/health-monitor/checks/request-check.d.ts.map +1 -0
  582. package/dist/utils/logging/health-monitor/checks/request-check.js +65 -0
  583. package/dist/utils/logging/health-monitor/checks/request-check.js.map +1 -0
  584. package/dist/utils/logging/health-monitor/core/health-check-runner.d.ts +9 -0
  585. package/dist/utils/logging/health-monitor/core/health-check-runner.d.ts.map +1 -0
  586. package/dist/utils/logging/health-monitor/core/health-check-runner.js +116 -0
  587. package/dist/utils/logging/health-monitor/core/health-check-runner.js.map +1 -0
  588. package/dist/utils/logging/health-monitor/core/health-monitor.d.ts +49 -0
  589. package/dist/utils/logging/health-monitor/core/health-monitor.d.ts.map +1 -0
  590. package/dist/utils/logging/health-monitor/core/health-monitor.js +297 -0
  591. package/dist/utils/logging/health-monitor/core/health-monitor.js.map +1 -0
  592. package/dist/utils/logging/health-monitor/core/scoring.d.ts +13 -0
  593. package/dist/utils/logging/health-monitor/core/scoring.d.ts.map +1 -0
  594. package/dist/utils/logging/health-monitor/core/scoring.js +63 -0
  595. package/dist/utils/logging/health-monitor/core/scoring.js.map +1 -0
  596. package/dist/utils/logging/health-monitor/index.d.ts +7 -0
  597. package/dist/utils/logging/health-monitor/index.d.ts.map +1 -0
  598. package/dist/utils/logging/health-monitor/index.js +7 -0
  599. package/dist/utils/logging/health-monitor/index.js.map +1 -0
  600. package/dist/utils/logging/health-monitor/instances.d.ts +29 -0
  601. package/dist/utils/logging/health-monitor/instances.d.ts.map +1 -0
  602. package/dist/utils/logging/health-monitor/instances.js +44 -0
  603. package/dist/utils/logging/health-monitor/instances.js.map +1 -0
  604. package/dist/utils/logging/health-monitor/middleware/http-middleware.d.ts +29 -0
  605. package/dist/utils/logging/health-monitor/middleware/http-middleware.d.ts.map +1 -0
  606. package/dist/utils/logging/health-monitor/middleware/http-middleware.js +55 -0
  607. package/dist/utils/logging/health-monitor/middleware/http-middleware.js.map +1 -0
  608. package/dist/utils/logging/{health-monitor.d.ts → health-monitor/types.d.ts} +2 -95
  609. package/dist/utils/logging/health-monitor/types.d.ts.map +1 -0
  610. package/dist/utils/logging/health-monitor/types.js +5 -0
  611. package/dist/utils/logging/health-monitor/types.js.map +1 -0
  612. package/dist/utils/logging/index.d.ts +21 -28
  613. package/dist/utils/logging/index.d.ts.map +1 -1
  614. package/dist/utils/logging/index.js +40 -45
  615. package/dist/utils/logging/index.js.map +1 -1
  616. package/dist/utils/logging/log-method-factory.d.ts.map +1 -1
  617. package/dist/utils/logging/log-method-factory.js +0 -4
  618. package/dist/utils/logging/log-method-factory.js.map +1 -1
  619. package/dist/utils/logging/log-query/aggregation/aggregator.d.ts +13 -0
  620. package/dist/utils/logging/log-query/aggregation/aggregator.d.ts.map +1 -0
  621. package/dist/utils/logging/log-query/aggregation/aggregator.js +119 -0
  622. package/dist/utils/logging/log-query/aggregation/aggregator.js.map +1 -0
  623. package/dist/utils/logging/log-query/aggregation/facet-generator.d.ts +15 -0
  624. package/dist/utils/logging/log-query/aggregation/facet-generator.d.ts.map +1 -0
  625. package/dist/utils/logging/log-query/aggregation/facet-generator.js +39 -0
  626. package/dist/utils/logging/log-query/aggregation/facet-generator.js.map +1 -0
  627. package/dist/utils/logging/log-query/index.d.ts +13 -0
  628. package/dist/utils/logging/log-query/index.d.ts.map +1 -0
  629. package/dist/utils/logging/log-query/index.js +13 -0
  630. package/dist/utils/logging/log-query/index.js.map +1 -0
  631. package/dist/utils/logging/log-query/query/filter-predicates.d.ts +9 -0
  632. package/dist/utils/logging/log-query/query/filter-predicates.d.ts.map +1 -0
  633. package/dist/utils/logging/log-query/query/filter-predicates.js +122 -0
  634. package/dist/utils/logging/log-query/query/filter-predicates.js.map +1 -0
  635. package/dist/utils/logging/log-query/query/query-builder.d.ts +79 -0
  636. package/dist/utils/logging/log-query/query/query-builder.d.ts.map +1 -0
  637. package/dist/utils/logging/log-query/query/query-builder.js +129 -0
  638. package/dist/utils/logging/log-query/query/query-builder.js.map +1 -0
  639. package/dist/utils/logging/log-query/query/query-engine.d.ts +9 -0
  640. package/dist/utils/logging/log-query/query/query-engine.d.ts.map +1 -0
  641. package/dist/utils/logging/log-query/query/query-engine.js +33 -0
  642. package/dist/utils/logging/log-query/query/query-engine.js.map +1 -0
  643. package/dist/utils/logging/log-query/storage/circular-buffer.d.ts +33 -0
  644. package/dist/utils/logging/log-query/storage/circular-buffer.d.ts.map +1 -0
  645. package/dist/utils/logging/log-query/storage/circular-buffer.js +66 -0
  646. package/dist/utils/logging/log-query/storage/circular-buffer.js.map +1 -0
  647. package/dist/utils/logging/log-query/storage/index-manager.d.ts +23 -0
  648. package/dist/utils/logging/log-query/storage/index-manager.d.ts.map +1 -0
  649. package/dist/utils/logging/log-query/storage/index-manager.js +67 -0
  650. package/dist/utils/logging/log-query/storage/index-manager.js.map +1 -0
  651. package/dist/utils/logging/log-query/storage/log-storage.d.ts +37 -0
  652. package/dist/utils/logging/log-query/storage/log-storage.d.ts.map +1 -0
  653. package/dist/utils/logging/log-query/storage/log-storage.js +64 -0
  654. package/dist/utils/logging/log-query/storage/log-storage.js.map +1 -0
  655. package/dist/utils/logging/log-query/types.d.ts +124 -0
  656. package/dist/utils/logging/log-query/types.d.ts.map +1 -0
  657. package/dist/utils/logging/log-query/types.js +5 -0
  658. package/dist/utils/logging/log-query/types.js.map +1 -0
  659. package/dist/utils/logging/log-query/utils/helpers.d.ts +33 -0
  660. package/dist/utils/logging/log-query/utils/helpers.d.ts.map +1 -0
  661. package/dist/utils/logging/log-query/utils/helpers.js +60 -0
  662. package/dist/utils/logging/log-query/utils/helpers.js.map +1 -0
  663. package/dist/utils/logging/log-query/utils/sorting.d.ts +17 -0
  664. package/dist/utils/logging/log-query/utils/sorting.d.ts.map +1 -0
  665. package/dist/utils/logging/log-query/utils/sorting.js +53 -0
  666. package/dist/utils/logging/log-query/utils/sorting.js.map +1 -0
  667. package/dist/utils/logging/logger-provider.d.ts +12 -2
  668. package/dist/utils/logging/logger-provider.d.ts.map +1 -1
  669. package/dist/utils/logging/logger-provider.js +46 -28
  670. package/dist/utils/logging/logger-provider.js.map +1 -1
  671. package/dist/utils/logging/performance.d.ts.map +1 -1
  672. package/dist/utils/logging/performance.js +4 -2
  673. package/dist/utils/logging/performance.js.map +1 -1
  674. package/dist/utils/logging/pino-logger.d.ts +2 -2
  675. package/dist/utils/logging/pino-logger.d.ts.map +1 -1
  676. package/dist/utils/logging/pino-logger.js +52 -163
  677. package/dist/utils/logging/pino-logger.js.map +1 -1
  678. package/dist/utils/logging/request-tracker.d.ts.map +1 -1
  679. package/dist/utils/logging/request-tracker.js +4 -2
  680. package/dist/utils/logging/request-tracker.js.map +1 -1
  681. package/dist/utils/logging/transports.d.ts.map +1 -1
  682. package/dist/utils/logging/transports.js +6 -5
  683. package/dist/utils/logging/transports.js.map +1 -1
  684. package/dist/utils/logging/types.d.ts +2 -6
  685. package/dist/utils/logging/types.d.ts.map +1 -1
  686. package/dist/utils/message-queue.d.ts +1 -1
  687. package/dist/utils/message-queue.d.ts.map +1 -1
  688. package/dist/utils/message-queue.js +4 -6
  689. package/dist/utils/message-queue.js.map +1 -1
  690. package/dist/utils/path-validation.d.ts +69 -0
  691. package/dist/utils/path-validation.d.ts.map +1 -0
  692. package/dist/utils/path-validation.js +109 -0
  693. package/dist/utils/path-validation.js.map +1 -0
  694. package/dist/utils/prompt-processor.d.ts.map +1 -1
  695. package/dist/utils/prompt-processor.js +5 -2
  696. package/dist/utils/prompt-processor.js.map +1 -1
  697. package/dist/utils/token-calculator.d.ts +10 -0
  698. package/dist/utils/token-calculator.d.ts.map +1 -0
  699. package/dist/utils/token-calculator.js +13 -0
  700. package/dist/utils/token-calculator.js.map +1 -0
  701. package/dist/utils/tool-result-display.d.ts +3 -3
  702. package/dist/utils/tool-result-display.d.ts.map +1 -1
  703. package/dist/utils/tool-result-display.js +9 -9
  704. package/dist/utils/tool-result-display.js.map +1 -1
  705. package/dist/utils/update-checker.d.ts.map +1 -1
  706. package/dist/utils/update-checker.js +2 -1
  707. package/dist/utils/update-checker.js.map +1 -1
  708. package/dist/vscode/extension-installer.d.ts.map +1 -1
  709. package/dist/vscode/extension-installer.js +8 -1
  710. package/dist/vscode/extension-installer.js.map +1 -1
  711. package/dist/vscode/index.d.ts +3 -3
  712. package/dist/vscode/index.d.ts.map +1 -1
  713. package/dist/vscode/index.js +3 -3
  714. package/dist/vscode/index.js.map +1 -1
  715. package/dist/vscode/protocol.d.ts +3 -0
  716. package/dist/vscode/protocol.d.ts.map +1 -1
  717. package/dist/vscode/vscode-server.d.ts +19 -2
  718. package/dist/vscode/vscode-server.d.ts.map +1 -1
  719. package/dist/vscode/vscode-server.js +99 -20
  720. package/dist/vscode/vscode-server.js.map +1 -1
  721. package/dist/wizard/config-wizard.d.ts.map +1 -1
  722. package/dist/wizard/config-wizard.js +5 -5
  723. package/dist/wizard/config-wizard.js.map +1 -1
  724. package/dist/wizard/steps/location-step.js +3 -3
  725. package/dist/wizard/steps/location-step.js.map +1 -1
  726. package/dist/wizard/steps/mcp-step.js +2 -2
  727. package/dist/wizard/steps/mcp-step.js.map +1 -1
  728. package/dist/wizard/steps/provider-step.d.ts.map +1 -1
  729. package/dist/wizard/steps/provider-step.js +340 -4
  730. package/dist/wizard/steps/provider-step.js.map +1 -1
  731. package/dist/wizard/steps/summary-step.js +2 -2
  732. package/dist/wizard/steps/summary-step.js.map +1 -1
  733. package/dist/wizard/templates/mcp-templates.d.ts.map +1 -1
  734. package/dist/wizard/templates/mcp-templates.js +7 -6
  735. package/dist/wizard/templates/mcp-templates.js.map +1 -1
  736. package/dist/wizard/templates/provider-templates.d.ts +2 -0
  737. package/dist/wizard/templates/provider-templates.d.ts.map +1 -1
  738. package/dist/wizard/templates/provider-templates.js +29 -4
  739. package/dist/wizard/templates/provider-templates.js.map +1 -1
  740. package/dist/wizard/utils/fetch-cloud-models.d.ts +20 -0
  741. package/dist/wizard/utils/fetch-cloud-models.d.ts.map +1 -0
  742. package/dist/wizard/utils/fetch-cloud-models.js +178 -0
  743. package/dist/wizard/utils/fetch-cloud-models.js.map +1 -0
  744. package/dist/wizard/utils/fetch-local-models.d.ts +29 -0
  745. package/dist/wizard/utils/fetch-local-models.d.ts.map +1 -0
  746. package/dist/wizard/utils/fetch-local-models.js +146 -0
  747. package/dist/wizard/utils/fetch-local-models.js.map +1 -0
  748. package/dist/wizard/validation.d.ts.map +1 -1
  749. package/dist/wizard/validation.js +2 -1
  750. package/dist/wizard/validation.js.map +1 -1
  751. package/package.json +21 -9
  752. package/source/app/prompts/main-prompt.md +127 -1
  753. package/dist/ai-sdk-client-empty-message.spec.d.ts +0 -2
  754. package/dist/ai-sdk-client-empty-message.spec.d.ts.map +0 -1
  755. package/dist/ai-sdk-client-empty-message.spec.js +0 -124
  756. package/dist/ai-sdk-client-empty-message.spec.js.map +0 -1
  757. package/dist/ai-sdk-client-error-handling.spec.d.ts +0 -2
  758. package/dist/ai-sdk-client-error-handling.spec.d.ts.map +0 -1
  759. package/dist/ai-sdk-client-error-handling.spec.js +0 -108
  760. package/dist/ai-sdk-client-error-handling.spec.js.map +0 -1
  761. package/dist/ai-sdk-client-maxretries.spec.d.ts +0 -2
  762. package/dist/ai-sdk-client-maxretries.spec.d.ts.map +0 -1
  763. package/dist/ai-sdk-client-maxretries.spec.js +0 -96
  764. package/dist/ai-sdk-client-maxretries.spec.js.map +0 -1
  765. package/dist/ai-sdk-client-preparestep.spec.d.ts +0 -2
  766. package/dist/ai-sdk-client-preparestep.spec.d.ts.map +0 -1
  767. package/dist/ai-sdk-client-preparestep.spec.js +0 -246
  768. package/dist/ai-sdk-client-preparestep.spec.js.map +0 -1
  769. package/dist/ai-sdk-client.d.ts.map +0 -1
  770. package/dist/ai-sdk-client.js +0 -673
  771. package/dist/ai-sdk-client.js.map +0 -1
  772. package/dist/app/utils/appUtils.d.ts.map +0 -1
  773. package/dist/app/utils/appUtils.js +0 -227
  774. package/dist/app/utils/appUtils.js.map +0 -1
  775. package/dist/app/utils/conversationState.d.ts.map +0 -1
  776. package/dist/app/utils/conversationState.js.map +0 -1
  777. package/dist/app.d.ts +0 -28
  778. package/dist/app.d.ts.map +0 -1
  779. package/dist/app.js +0 -587
  780. package/dist/app.js.map +0 -1
  781. package/dist/cli.spec.d.ts +0 -2
  782. package/dist/cli.spec.d.ts.map +0 -1
  783. package/dist/cli.spec.js +0 -101
  784. package/dist/cli.spec.js.map +0 -1
  785. package/dist/components/bash-execution-indicator.d.ts +0 -4
  786. package/dist/components/bash-execution-indicator.d.ts.map +0 -1
  787. package/dist/components/bash-execution-indicator.js +0 -9
  788. package/dist/components/bash-execution-indicator.js.map +0 -1
  789. package/dist/components/error-message.d.ts +0 -7
  790. package/dist/components/error-message.d.ts.map +0 -1
  791. package/dist/components/error-message.js +0 -12
  792. package/dist/components/error-message.js.map +0 -1
  793. package/dist/components/info-message.d.ts +0 -6
  794. package/dist/components/info-message.d.ts.map +0 -1
  795. package/dist/components/info-message.js +0 -11
  796. package/dist/components/info-message.js.map +0 -1
  797. package/dist/components/success-message.d.ts +0 -6
  798. package/dist/components/success-message.d.ts.map +0 -1
  799. package/dist/components/success-message.js +0 -11
  800. package/dist/components/success-message.js.map +0 -1
  801. package/dist/components/warning-message.d.ts +0 -7
  802. package/dist/components/warning-message.d.ts.map +0 -1
  803. package/dist/components/warning-message.js +0 -12
  804. package/dist/components/warning-message.js.map +0 -1
  805. package/dist/config/index.spec.d.ts +0 -2
  806. package/dist/config/index.spec.d.ts.map +0 -1
  807. package/dist/config/index.spec.js +0 -99
  808. package/dist/config/index.spec.js.map +0 -1
  809. package/dist/config/paths.spec.d.ts +0 -2
  810. package/dist/config/paths.spec.d.ts.map +0 -1
  811. package/dist/config/paths.spec.js +0 -114
  812. package/dist/config/paths.spec.js.map +0 -1
  813. package/dist/context/mode-context.spec.d.ts +0 -2
  814. package/dist/context/mode-context.spec.d.ts.map +0 -1
  815. package/dist/context/mode-context.spec.js +0 -61
  816. package/dist/context/mode-context.spec.js.map +0 -1
  817. package/dist/hooks/useChatHandler.d.ts.map +0 -1
  818. package/dist/hooks/useChatHandler.js +0 -525
  819. package/dist/hooks/useChatHandler.js.map +0 -1
  820. package/dist/lsp/lsp-client.spec.d.ts +0 -2
  821. package/dist/lsp/lsp-client.spec.d.ts.map +0 -1
  822. package/dist/lsp/lsp-client.spec.js +0 -394
  823. package/dist/lsp/lsp-client.spec.js.map +0 -1
  824. package/dist/lsp/lsp-manager.spec.d.ts +0 -2
  825. package/dist/lsp/lsp-manager.spec.d.ts.map +0 -1
  826. package/dist/lsp/lsp-manager.spec.js +0 -388
  827. package/dist/lsp/lsp-manager.spec.js.map +0 -1
  828. package/dist/lsp/protocol.spec.d.ts +0 -2
  829. package/dist/lsp/protocol.spec.d.ts.map +0 -1
  830. package/dist/lsp/protocol.spec.js +0 -406
  831. package/dist/lsp/protocol.spec.js.map +0 -1
  832. package/dist/lsp/server-discovery.spec.d.ts +0 -2
  833. package/dist/lsp/server-discovery.spec.d.ts.map +0 -1
  834. package/dist/lsp/server-discovery.spec.js +0 -408
  835. package/dist/lsp/server-discovery.spec.js.map +0 -1
  836. package/dist/markdown-parser/html-entities.spec.d.ts +0 -2
  837. package/dist/markdown-parser/html-entities.spec.d.ts.map +0 -1
  838. package/dist/markdown-parser/html-entities.spec.js +0 -73
  839. package/dist/markdown-parser/html-entities.spec.js.map +0 -1
  840. package/dist/markdown-parser/index.spec.d.ts +0 -2
  841. package/dist/markdown-parser/index.spec.d.ts.map +0 -1
  842. package/dist/markdown-parser/index.spec.js +0 -245
  843. package/dist/markdown-parser/index.spec.js.map +0 -1
  844. package/dist/markdown-parser/table-parser.spec.d.ts +0 -2
  845. package/dist/markdown-parser/table-parser.spec.d.ts.map +0 -1
  846. package/dist/markdown-parser/table-parser.spec.js +0 -120
  847. package/dist/markdown-parser/table-parser.spec.js.map +0 -1
  848. package/dist/markdown-parser/utils.spec.d.ts +0 -2
  849. package/dist/markdown-parser/utils.spec.d.ts.map +0 -1
  850. package/dist/markdown-parser/utils.spec.js +0 -59
  851. package/dist/markdown-parser/utils.spec.js.map +0 -1
  852. package/dist/mcp/mcp-client.spec.d.ts +0 -2
  853. package/dist/mcp/mcp-client.spec.d.ts.map +0 -1
  854. package/dist/mcp/mcp-client.spec.js +0 -64
  855. package/dist/mcp/mcp-client.spec.js.map +0 -1
  856. package/dist/mcp/transport-factory.spec.d.ts +0 -2
  857. package/dist/mcp/transport-factory.spec.d.ts.map +0 -1
  858. package/dist/mcp/transport-factory.spec.js +0 -255
  859. package/dist/mcp/transport-factory.spec.js.map +0 -1
  860. package/dist/model-database/database-engine.spec.d.ts +0 -2
  861. package/dist/model-database/database-engine.spec.d.ts.map +0 -1
  862. package/dist/model-database/database-engine.spec.js +0 -413
  863. package/dist/model-database/database-engine.spec.js.map +0 -1
  864. package/dist/model-database/model-database.spec.d.ts +0 -2
  865. package/dist/model-database/model-database.spec.d.ts.map +0 -1
  866. package/dist/model-database/model-database.spec.js +0 -322
  867. package/dist/model-database/model-database.spec.js.map +0 -1
  868. package/dist/model-database/model-engine.spec.d.ts +0 -2
  869. package/dist/model-database/model-engine.spec.d.ts.map +0 -1
  870. package/dist/model-database/model-engine.spec.js +0 -381
  871. package/dist/model-database/model-engine.spec.js.map +0 -1
  872. package/dist/model-database/model-fetcher.spec.d.ts +0 -2
  873. package/dist/model-database/model-fetcher.spec.d.ts.map +0 -1
  874. package/dist/model-database/model-fetcher.spec.js +0 -498
  875. package/dist/model-database/model-fetcher.spec.js.map +0 -1
  876. package/dist/models/models-dev-client.spec.d.ts +0 -2
  877. package/dist/models/models-dev-client.spec.d.ts.map +0 -1
  878. package/dist/models/models-dev-client.spec.js +0 -303
  879. package/dist/models/models-dev-client.spec.js.map +0 -1
  880. package/dist/services/checkpoint-manager.spec.d.ts +0 -2
  881. package/dist/services/checkpoint-manager.spec.d.ts.map +0 -1
  882. package/dist/services/checkpoint-manager.spec.js +0 -353
  883. package/dist/services/checkpoint-manager.spec.js.map +0 -1
  884. package/dist/services/file-snapshot.spec.d.ts +0 -2
  885. package/dist/services/file-snapshot.spec.d.ts.map +0 -1
  886. package/dist/services/file-snapshot.spec.js +0 -285
  887. package/dist/services/file-snapshot.spec.js.map +0 -1
  888. package/dist/tokenization/tokenizer-factory.spec.d.ts +0 -5
  889. package/dist/tokenization/tokenizer-factory.spec.d.ts.map +0 -1
  890. package/dist/tokenization/tokenizer-factory.spec.js +0 -137
  891. package/dist/tokenization/tokenizer-factory.spec.js.map +0 -1
  892. package/dist/tokenization/tokenizers/anthropic-tokenizer.spec.d.ts +0 -5
  893. package/dist/tokenization/tokenizers/anthropic-tokenizer.spec.d.ts.map +0 -1
  894. package/dist/tokenization/tokenizers/anthropic-tokenizer.spec.js +0 -152
  895. package/dist/tokenization/tokenizers/anthropic-tokenizer.spec.js.map +0 -1
  896. package/dist/tokenization/tokenizers/fallback-tokenizer.spec.d.ts +0 -5
  897. package/dist/tokenization/tokenizers/fallback-tokenizer.spec.d.ts.map +0 -1
  898. package/dist/tokenization/tokenizers/fallback-tokenizer.spec.js +0 -183
  899. package/dist/tokenization/tokenizers/fallback-tokenizer.spec.js.map +0 -1
  900. package/dist/tokenization/tokenizers/llama-tokenizer.spec.d.ts +0 -5
  901. package/dist/tokenization/tokenizers/llama-tokenizer.spec.d.ts.map +0 -1
  902. package/dist/tokenization/tokenizers/llama-tokenizer.spec.js +0 -170
  903. package/dist/tokenization/tokenizers/llama-tokenizer.spec.js.map +0 -1
  904. package/dist/tokenization/tokenizers/openai-tokenizer.spec.d.ts +0 -5
  905. package/dist/tokenization/tokenizers/openai-tokenizer.spec.d.ts.map +0 -1
  906. package/dist/tokenization/tokenizers/openai-tokenizer.spec.js +0 -140
  907. package/dist/tokenization/tokenizers/openai-tokenizer.spec.js.map +0 -1
  908. package/dist/tool-calling/json-parser.spec.d.ts +0 -2
  909. package/dist/tool-calling/json-parser.spec.d.ts.map +0 -1
  910. package/dist/tool-calling/json-parser.spec.js +0 -518
  911. package/dist/tool-calling/json-parser.spec.js.map +0 -1
  912. package/dist/tool-calling/tool-parser.spec.d.ts +0 -2
  913. package/dist/tool-calling/tool-parser.spec.d.ts.map +0 -1
  914. package/dist/tool-calling/tool-parser.spec.js +0 -328
  915. package/dist/tool-calling/tool-parser.spec.js.map +0 -1
  916. package/dist/tool-calling/xml-parser.spec.d.ts +0 -2
  917. package/dist/tool-calling/xml-parser.spec.d.ts.map +0 -1
  918. package/dist/tool-calling/xml-parser.spec.js +0 -500
  919. package/dist/tool-calling/xml-parser.spec.js.map +0 -1
  920. package/dist/tools/execute-function.spec.d.ts +0 -2
  921. package/dist/tools/execute-function.spec.d.ts.map +0 -1
  922. package/dist/tools/execute-function.spec.js +0 -93
  923. package/dist/tools/execute-function.spec.js.map +0 -1
  924. package/dist/tools/needs-approval.spec.d.ts +0 -2
  925. package/dist/tools/needs-approval.spec.d.ts.map +0 -1
  926. package/dist/tools/needs-approval.spec.js +0 -247
  927. package/dist/tools/needs-approval.spec.js.map +0 -1
  928. package/dist/tools/string-replace.spec.d.ts +0 -2
  929. package/dist/tools/string-replace.spec.d.ts.map +0 -1
  930. package/dist/tools/string-replace.spec.js +0 -315
  931. package/dist/tools/string-replace.spec.js.map +0 -1
  932. package/dist/tools/write-file.spec.d.ts +0 -2
  933. package/dist/tools/write-file.spec.d.ts.map +0 -1
  934. package/dist/tools/write-file.spec.js +0 -263
  935. package/dist/tools/write-file.spec.js.map +0 -1
  936. package/dist/types/core-connection-status.spec.d.ts +0 -2
  937. package/dist/types/core-connection-status.spec.d.ts.map +0 -1
  938. package/dist/types/core-connection-status.spec.js +0 -52
  939. package/dist/types/core-connection-status.spec.js.map +0 -1
  940. package/dist/usage/calculator.spec.d.ts +0 -2
  941. package/dist/usage/calculator.spec.d.ts.map +0 -1
  942. package/dist/usage/calculator.spec.js +0 -303
  943. package/dist/usage/calculator.spec.js.map +0 -1
  944. package/dist/usage/storage.spec.d.ts +0 -2
  945. package/dist/usage/storage.spec.d.ts.map +0 -1
  946. package/dist/usage/storage.spec.js +0 -551
  947. package/dist/usage/storage.spec.js.map +0 -1
  948. package/dist/usage/tracker.spec.d.ts +0 -2
  949. package/dist/usage/tracker.spec.d.ts.map +0 -1
  950. package/dist/usage/tracker.spec.js +0 -347
  951. package/dist/usage/tracker.spec.js.map +0 -1
  952. package/dist/utils/atomic-deletion.spec.d.ts +0 -2
  953. package/dist/utils/atomic-deletion.spec.d.ts.map +0 -1
  954. package/dist/utils/atomic-deletion.spec.js +0 -154
  955. package/dist/utils/atomic-deletion.spec.js.map +0 -1
  956. package/dist/utils/checkpoint-utils.spec.d.ts +0 -2
  957. package/dist/utils/checkpoint-utils.spec.d.ts.map +0 -1
  958. package/dist/utils/checkpoint-utils.spec.js +0 -182
  959. package/dist/utils/checkpoint-utils.spec.js.map +0 -1
  960. package/dist/utils/error-formatter.spec.d.ts +0 -2
  961. package/dist/utils/error-formatter.spec.d.ts.map +0 -1
  962. package/dist/utils/error-formatter.spec.js +0 -147
  963. package/dist/utils/error-formatter.spec.js.map +0 -1
  964. package/dist/utils/file-autocomplete.spec.d.ts +0 -2
  965. package/dist/utils/file-autocomplete.spec.d.ts.map +0 -1
  966. package/dist/utils/file-autocomplete.spec.js +0 -142
  967. package/dist/utils/file-autocomplete.spec.js.map +0 -1
  968. package/dist/utils/file-content-loader.spec.d.ts +0 -2
  969. package/dist/utils/file-content-loader.spec.d.ts.map +0 -1
  970. package/dist/utils/file-content-loader.spec.js +0 -140
  971. package/dist/utils/file-content-loader.spec.js.map +0 -1
  972. package/dist/utils/file-mention-handler.spec.d.ts +0 -2
  973. package/dist/utils/file-mention-handler.spec.d.ts.map +0 -1
  974. package/dist/utils/file-mention-handler.spec.js +0 -147
  975. package/dist/utils/file-mention-handler.spec.js.map +0 -1
  976. package/dist/utils/file-mention-parser.spec.d.ts +0 -2
  977. package/dist/utils/file-mention-parser.spec.d.ts.map +0 -1
  978. package/dist/utils/file-mention-parser.spec.js +0 -149
  979. package/dist/utils/file-mention-parser.spec.js.map +0 -1
  980. package/dist/utils/fuzzy-matching.spec.d.ts +0 -2
  981. package/dist/utils/fuzzy-matching.spec.d.ts.map +0 -1
  982. package/dist/utils/fuzzy-matching.spec.js +0 -124
  983. package/dist/utils/fuzzy-matching.spec.js.map +0 -1
  984. package/dist/utils/installation-detector.spec.d.ts +0 -2
  985. package/dist/utils/installation-detector.spec.d.ts.map +0 -1
  986. package/dist/utils/installation-detector.spec.js +0 -134
  987. package/dist/utils/installation-detector.spec.js.map +0 -1
  988. package/dist/utils/logging/config.spec.d.ts +0 -2
  989. package/dist/utils/logging/config.spec.d.ts.map +0 -1
  990. package/dist/utils/logging/config.spec.js +0 -233
  991. package/dist/utils/logging/config.spec.js.map +0 -1
  992. package/dist/utils/logging/console-facade.spec.d.ts +0 -2
  993. package/dist/utils/logging/console-facade.spec.d.ts.map +0 -1
  994. package/dist/utils/logging/console-facade.spec.js +0 -143
  995. package/dist/utils/logging/console-facade.spec.js.map +0 -1
  996. package/dist/utils/logging/correlation.spec.d.ts +0 -2
  997. package/dist/utils/logging/correlation.spec.d.ts.map +0 -1
  998. package/dist/utils/logging/correlation.spec.js +0 -449
  999. package/dist/utils/logging/correlation.spec.js.map +0 -1
  1000. package/dist/utils/logging/formatters.spec.d.ts +0 -2
  1001. package/dist/utils/logging/formatters.spec.d.ts.map +0 -1
  1002. package/dist/utils/logging/formatters.spec.js +0 -356
  1003. package/dist/utils/logging/formatters.spec.js.map +0 -1
  1004. package/dist/utils/logging/health-monitor.d.ts.map +0 -1
  1005. package/dist/utils/logging/health-monitor.js +0 -760
  1006. package/dist/utils/logging/health-monitor.js.map +0 -1
  1007. package/dist/utils/logging/health-monitor.spec.d.ts +0 -2
  1008. package/dist/utils/logging/health-monitor.spec.d.ts.map +0 -1
  1009. package/dist/utils/logging/health-monitor.spec.js +0 -305
  1010. package/dist/utils/logging/health-monitor.spec.js.map +0 -1
  1011. package/dist/utils/logging/index.spec.d.ts +0 -2
  1012. package/dist/utils/logging/index.spec.d.ts.map +0 -1
  1013. package/dist/utils/logging/index.spec.js +0 -214
  1014. package/dist/utils/logging/index.spec.js.map +0 -1
  1015. package/dist/utils/logging/integration.spec.d.ts +0 -2
  1016. package/dist/utils/logging/integration.spec.d.ts.map +0 -1
  1017. package/dist/utils/logging/integration.spec.js +0 -312
  1018. package/dist/utils/logging/integration.spec.js.map +0 -1
  1019. package/dist/utils/logging/log-method-factory.spec.d.ts +0 -2
  1020. package/dist/utils/logging/log-method-factory.spec.d.ts.map +0 -1
  1021. package/dist/utils/logging/log-method-factory.spec.js +0 -428
  1022. package/dist/utils/logging/log-method-factory.spec.js.map +0 -1
  1023. package/dist/utils/logging/log-query.d.ts +0 -275
  1024. package/dist/utils/logging/log-query.d.ts.map +0 -1
  1025. package/dist/utils/logging/log-query.js +0 -621
  1026. package/dist/utils/logging/log-query.js.map +0 -1
  1027. package/dist/utils/logging/log-query.spec.d.ts +0 -2
  1028. package/dist/utils/logging/log-query.spec.d.ts.map +0 -1
  1029. package/dist/utils/logging/log-query.spec.js +0 -737
  1030. package/dist/utils/logging/log-query.spec.js.map +0 -1
  1031. package/dist/utils/logging/logger-provider.spec.d.ts +0 -2
  1032. package/dist/utils/logging/logger-provider.spec.d.ts.map +0 -1
  1033. package/dist/utils/logging/logger-provider.spec.js +0 -204
  1034. package/dist/utils/logging/logger-provider.spec.js.map +0 -1
  1035. package/dist/utils/logging/performance.spec.d.ts +0 -2
  1036. package/dist/utils/logging/performance.spec.d.ts.map +0 -1
  1037. package/dist/utils/logging/performance.spec.js +0 -139
  1038. package/dist/utils/logging/performance.spec.js.map +0 -1
  1039. package/dist/utils/logging/pino-logger.spec.d.ts +0 -2
  1040. package/dist/utils/logging/pino-logger.spec.d.ts.map +0 -1
  1041. package/dist/utils/logging/pino-logger.spec.js +0 -294
  1042. package/dist/utils/logging/pino-logger.spec.js.map +0 -1
  1043. package/dist/utils/logging/redaction.spec.d.ts +0 -2
  1044. package/dist/utils/logging/redaction.spec.d.ts.map +0 -1
  1045. package/dist/utils/logging/redaction.spec.js +0 -338
  1046. package/dist/utils/logging/redaction.spec.js.map +0 -1
  1047. package/dist/utils/logging/request-tracker.spec.d.ts +0 -2
  1048. package/dist/utils/logging/request-tracker.spec.d.ts.map +0 -1
  1049. package/dist/utils/logging/request-tracker.spec.js +0 -868
  1050. package/dist/utils/logging/request-tracker.spec.js.map +0 -1
  1051. package/dist/utils/logging/transports.spec.d.ts +0 -2
  1052. package/dist/utils/logging/transports.spec.d.ts.map +0 -1
  1053. package/dist/utils/logging/transports.spec.js +0 -390
  1054. package/dist/utils/logging/transports.spec.js.map +0 -1
  1055. package/dist/utils/message-builder.spec.d.ts +0 -2
  1056. package/dist/utils/message-builder.spec.d.ts.map +0 -1
  1057. package/dist/utils/message-builder.spec.js +0 -142
  1058. package/dist/utils/message-builder.spec.js.map +0 -1
  1059. package/dist/utils/paste-detection.spec.d.ts +0 -2
  1060. package/dist/utils/paste-detection.spec.d.ts.map +0 -1
  1061. package/dist/utils/paste-detection.spec.js +0 -52
  1062. package/dist/utils/paste-detection.spec.js.map +0 -1
  1063. package/dist/utils/paste-roundtrip.spec.d.ts +0 -2
  1064. package/dist/utils/paste-roundtrip.spec.d.ts.map +0 -1
  1065. package/dist/utils/paste-roundtrip.spec.js +0 -328
  1066. package/dist/utils/paste-roundtrip.spec.js.map +0 -1
  1067. package/dist/utils/paste-utils.spec.d.ts +0 -2
  1068. package/dist/utils/paste-utils.spec.d.ts.map +0 -1
  1069. package/dist/utils/paste-utils.spec.js +0 -78
  1070. package/dist/utils/paste-utils.spec.js.map +0 -1
  1071. package/dist/utils/prompt-assembly.spec.d.ts +0 -2
  1072. package/dist/utils/prompt-assembly.spec.d.ts.map +0 -1
  1073. package/dist/utils/prompt-assembly.spec.js +0 -179
  1074. package/dist/utils/prompt-assembly.spec.js.map +0 -1
  1075. package/dist/utils/tool-args-parser.spec.d.ts +0 -2
  1076. package/dist/utils/tool-args-parser.spec.d.ts.map +0 -1
  1077. package/dist/utils/tool-args-parser.spec.js +0 -111
  1078. package/dist/utils/tool-args-parser.spec.js.map +0 -1
  1079. package/dist/utils/tool-cancellation.spec.d.ts +0 -2
  1080. package/dist/utils/tool-cancellation.spec.d.ts.map +0 -1
  1081. package/dist/utils/tool-cancellation.spec.js +0 -186
  1082. package/dist/utils/tool-cancellation.spec.js.map +0 -1
  1083. package/dist/utils/update-checker.spec.d.ts +0 -2
  1084. package/dist/utils/update-checker.spec.d.ts.map +0 -1
  1085. package/dist/utils/update-checker.spec.js +0 -280
  1086. package/dist/utils/update-checker.spec.js.map +0 -1
  1087. package/dist/vscode/extension-installer.spec.d.ts +0 -2
  1088. package/dist/vscode/extension-installer.spec.d.ts.map +0 -1
  1089. package/dist/vscode/extension-installer.spec.js +0 -132
  1090. package/dist/vscode/extension-installer.spec.js.map +0 -1
  1091. package/dist/vscode/protocol.spec.d.ts +0 -2
  1092. package/dist/vscode/protocol.spec.d.ts.map +0 -1
  1093. package/dist/vscode/protocol.spec.js +0 -354
  1094. package/dist/vscode/protocol.spec.js.map +0 -1
  1095. package/dist/vscode/vscode-server.spec.d.ts +0 -2
  1096. package/dist/vscode/vscode-server.spec.d.ts.map +0 -1
  1097. package/dist/vscode/vscode-server.spec.js +0 -487
  1098. package/dist/vscode/vscode-server.spec.js.map +0 -1
  1099. package/dist/wizard/templates/mcp-templates.spec.d.ts +0 -2
  1100. package/dist/wizard/templates/mcp-templates.spec.d.ts.map +0 -1
  1101. package/dist/wizard/templates/mcp-templates.spec.js +0 -476
  1102. package/dist/wizard/templates/mcp-templates.spec.js.map +0 -1
  1103. package/dist/wizard/templates/provider-templates.spec.d.ts +0 -2
  1104. package/dist/wizard/templates/provider-templates.spec.d.ts.map +0 -1
  1105. package/dist/wizard/templates/provider-templates.spec.js +0 -120
  1106. package/dist/wizard/templates/provider-templates.spec.js.map +0 -1
  1107. package/dist/wizard/validation-array.spec.d.ts +0 -2
  1108. package/dist/wizard/validation-array.spec.d.ts.map +0 -1
  1109. package/dist/wizard/validation-array.spec.js +0 -221
  1110. package/dist/wizard/validation-array.spec.js.map +0 -1
  1111. package/dist/wizard/validation.spec.d.ts +0 -2
  1112. package/dist/wizard/validation.spec.d.ts.map +0 -1
  1113. package/dist/wizard/validation.spec.js +0 -297
  1114. package/dist/wizard/validation.spec.js.map +0 -1
package/README.md CHANGED
@@ -4,6 +4,17 @@ A local-first CLI coding agent that brings the power of agentic coding tools lik
4
4
 
5
5
  ![Example](./.github/assets/example.gif)
6
6
 
7
+ ---
8
+ ![Build Status](https://github.com/Nano-Collective/nanocoder/raw/main/badges/build.svg)
9
+ ![Coverage](https://github.com/Nano-Collective/nanocoder/raw/main/badges/coverage.svg)
10
+ ![Version](https://github.com/Nano-Collective/nanocoder/raw/main/badges/npm-version.svg)
11
+ ![NPM Downloads](https://github.com/Nano-Collective/nanocoder/raw/main/badges/npm-downloads-monthly.svg)
12
+ ![NPM License](https://github.com/Nano-Collective/nanocoder/raw/main/badges/npm-license.svg)
13
+ ![Repo Size](https://github.com/Nano-Collective/nanocoder/raw/main/badges/repo-size.svg)
14
+ ![Stars](https://github.com/Nano-Collective/nanocoder/raw/main/badges/stars.svg)
15
+ ![Forks](https://github.com/Nano-Collective/nanocoder/raw/main/badges/forks.svg)
16
+
17
+
7
18
  ## Table of Contents
8
19
 
9
20
  - [FAQs](#faqs)
@@ -289,13 +300,13 @@ Nanocoder looks for configuration in the following order (first found wins):
289
300
  "name": "Z.ai",
290
301
  "baseUrl": "https://api.z.ai/api/paas/v4/",
291
302
  "apiKey": "your-z.ai-api-key",
292
- "models": ["glm-4.6", "glm-4.5", "glm-4.5-air"]
303
+ "models": ["glm-4.7", "glm-4.5", "glm-4.5-air"]
293
304
  },
294
305
  {
295
306
  "name": "Z.ai Coding Subscription",
296
307
  "baseUrl": "https://api.z.ai/api/coding/paas/v4/",
297
308
  "apiKey": "your-z.ai-coding-api-key",
298
- "models": ["glm-4.6", "glm-4.5", "glm-4.5-air"]
309
+ "models": ["glm-4.7", "glm-4.5", "glm-4.5-air"]
299
310
  },
300
311
  {
301
312
  "name": "GitHub Models",
@@ -426,7 +437,7 @@ When `NANOCODER_LOG_TO_FILE=true` is set, logs are stored in platform-specific l
426
437
 
427
438
  You can override the default location using `NANOCODER_LOG_DIR` environment variable.
428
439
 
429
- For complete documentation, see [Pino Logging Guide](docs/pino-logging-comprehensive.md).
440
+ For complete documentation, see [Pino Logging Guide](docs/pino-logging.md).
430
441
 
431
442
  ### MCP (Model Context Protocol) Servers
432
443
 
@@ -564,6 +575,7 @@ You can override this directory using `NANOCODER_DATA_DIR`.
564
575
  - `/exit` - Exit the application
565
576
  - `/export` - Export current session to markdown file
566
577
  - `/theme` - Select a theme for the Nanocoder CLI
578
+ - `/title-shape` - Select a title shape style for the Nanocoder CLI (real-time preview)
567
579
  - `/update` - Update Nanocoder to the latest version
568
580
  - `/usage` – Get current model context usage visually
569
581
  - `/lsp` – List connected LSP servers
@@ -755,4 +767,4 @@ Nanocoder could benefit from help all across the board. Such as:
755
767
  - Marketing and getting the word out
756
768
  - Design and building more great software
757
769
 
758
- All contributions and community participation are welcome!
770
+ All contributions and community participation are welcome!
Binary file
@@ -1,26 +1,4 @@
1
- import type { AIProviderConfig, AISDKCoreTool, LLMChatResponse, LLMClient, Message, StreamCallbacks } from './types/index.js';
2
- /**
3
- * Message type used for testing the empty assistant message filter.
4
- * This is a simplified version of the AI SDK's internal message format.
5
- */
6
- export interface TestableMessage {
7
- role: 'system' | 'user' | 'assistant' | 'tool';
8
- content: string | unknown[];
9
- toolCalls?: unknown[];
10
- }
11
- /**
12
- * Checks if an assistant message is empty (no content and no tool calls).
13
- * Empty assistant messages cause API errors:
14
- * "400 Bad Request: Assistant message must have either content or tool_calls, but not none."
15
- *
16
- * Exported for testing purposes.
17
- */
18
- export declare function isEmptyAssistantMessage(message: TestableMessage): boolean;
19
- /**
20
- * Parses API errors into user-friendly messages.
21
- * Exported for testing purposes.
22
- */
23
- export declare function parseAPIError(error: unknown): string;
1
+ import type { AIProviderConfig, AISDKCoreTool, LLMChatResponse, LLMClient, Message, StreamCallbacks } from '../types/index.js';
24
2
  export declare class AISDKClient implements LLMClient {
25
3
  private provider;
26
4
  private currentModel;
@@ -35,7 +13,6 @@ export declare class AISDKClient implements LLMClient {
35
13
  */
36
14
  private updateContextSize;
37
15
  static create(providerConfig: AIProviderConfig): Promise<AISDKClient>;
38
- private createProvider;
39
16
  setModel(model: string): void;
40
17
  getCurrentModel(): string;
41
18
  getContextSize(): number;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-sdk-client.d.ts","sourceRoot":"","sources":["../../source/ai-sdk-client/ai-sdk-client.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACX,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,SAAS,EACT,OAAO,EACP,eAAe,EACf,MAAM,eAAe,CAAC;AAKvB,qBAAa,WAAY,YAAW,SAAS;IAC5C,OAAO,CAAC,QAAQ,CAA4C;IAC5D,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,eAAe,CAAW;IAClC,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,UAAU,CAAS;gBAEf,cAAc,EAAE,gBAAgB;IA0C5C;;OAEG;YACW,iBAAiB;IAc/B,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC;IAKrE,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAgB7B,eAAe,IAAI,MAAM;IAIzB,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,MAAM;IAIvB,kBAAkB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIvC;;OAEG;IACG,IAAI,CACT,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EACpC,SAAS,EAAE,eAAe,EAC1B,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,eAAe,CAAC;IAiB3B,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;CAW7B"}
@@ -0,0 +1,122 @@
1
+ import { Agent } from 'undici';
2
+ import { TIMEOUT_SOCKET_DEFAULT_MS } from '../constants.js';
3
+ import { getModelContextLimit } from '../models/index.js';
4
+ import { getLogger } from '../utils/logging/index.js';
5
+ import { handleChat } from './chat/chat-handler.js';
6
+ import { createProvider } from './providers/provider-factory.js';
7
+ export class AISDKClient {
8
+ provider;
9
+ currentModel;
10
+ availableModels;
11
+ providerConfig;
12
+ undiciAgent;
13
+ cachedContextSize;
14
+ maxRetries;
15
+ constructor(providerConfig) {
16
+ const logger = getLogger();
17
+ this.providerConfig = providerConfig;
18
+ this.availableModels = providerConfig.models;
19
+ this.currentModel = providerConfig.models[0] || '';
20
+ this.cachedContextSize = 0;
21
+ // Default to 2 retries (same as AI SDK default), or use configured value
22
+ this.maxRetries = providerConfig.maxRetries ?? 2;
23
+ logger.info('AI SDK client initializing', {
24
+ models: this.availableModels,
25
+ defaultModel: this.currentModel,
26
+ provider: providerConfig.name || 'unknown',
27
+ baseUrl: providerConfig.config.baseURL ? '[REDACTED]' : undefined,
28
+ maxRetries: this.maxRetries,
29
+ });
30
+ const { connectionPool } = this.providerConfig;
31
+ const { requestTimeout, socketTimeout } = this.providerConfig;
32
+ const effectiveSocketTimeout = socketTimeout ?? requestTimeout;
33
+ const resolvedSocketTimeout = effectiveSocketTimeout === -1
34
+ ? 0
35
+ : (effectiveSocketTimeout ?? TIMEOUT_SOCKET_DEFAULT_MS);
36
+ this.undiciAgent = new Agent({
37
+ connect: {
38
+ timeout: resolvedSocketTimeout,
39
+ },
40
+ bodyTimeout: resolvedSocketTimeout,
41
+ headersTimeout: resolvedSocketTimeout,
42
+ keepAliveTimeout: connectionPool?.idleTimeout,
43
+ keepAliveMaxTimeout: connectionPool?.cumulativeMaxIdleTimeout,
44
+ });
45
+ this.provider = createProvider(this.providerConfig, this.undiciAgent);
46
+ // Fetch context size asynchronously (don't block construction)
47
+ void this.updateContextSize();
48
+ }
49
+ /**
50
+ * Fetch and cache context size from models.dev
51
+ */
52
+ async updateContextSize() {
53
+ const logger = getLogger();
54
+ try {
55
+ const contextSize = await getModelContextLimit(this.currentModel);
56
+ this.cachedContextSize = contextSize || 0;
57
+ }
58
+ catch (error) {
59
+ logger.debug('Failed to get model context size', {
60
+ model: this.currentModel,
61
+ error,
62
+ });
63
+ this.cachedContextSize = 0;
64
+ }
65
+ }
66
+ static create(providerConfig) {
67
+ const client = new AISDKClient(providerConfig);
68
+ return Promise.resolve(client);
69
+ }
70
+ setModel(model) {
71
+ const logger = getLogger();
72
+ const previousModel = this.currentModel;
73
+ this.currentModel = model;
74
+ logger.info('Model changed', {
75
+ previousModel,
76
+ newModel: model,
77
+ provider: this.providerConfig.name,
78
+ });
79
+ // Update context size when model changes
80
+ void this.updateContextSize();
81
+ }
82
+ getCurrentModel() {
83
+ return this.currentModel;
84
+ }
85
+ getContextSize() {
86
+ return this.cachedContextSize;
87
+ }
88
+ getMaxRetries() {
89
+ return this.maxRetries;
90
+ }
91
+ getAvailableModels() {
92
+ return Promise.resolve(this.availableModels);
93
+ }
94
+ /**
95
+ * Stream chat with real-time token updates
96
+ */
97
+ async chat(messages, tools, callbacks, signal) {
98
+ // Get the language model instance from the provider
99
+ const model = this.provider(this.currentModel);
100
+ // Delegate to chat handler
101
+ return await handleChat({
102
+ model,
103
+ currentModel: this.currentModel,
104
+ providerConfig: this.providerConfig,
105
+ messages,
106
+ tools,
107
+ callbacks,
108
+ signal,
109
+ maxRetries: this.maxRetries,
110
+ });
111
+ }
112
+ clearContext() {
113
+ const logger = getLogger();
114
+ logger.debug('AI SDK client context cleared', {
115
+ model: this.currentModel,
116
+ provider: this.providerConfig.name,
117
+ });
118
+ // No internal state to clear
119
+ return Promise.resolve();
120
+ }
121
+ }
122
+ //# sourceMappingURL=ai-sdk-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-sdk-client.js","sourceRoot":"","sources":["../../source/ai-sdk-client/ai-sdk-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { LanguageModel } from 'ai';
2
+ import type { AIProviderConfig, AISDKCoreTool, LLMChatResponse, Message, StreamCallbacks } from '../../types/index.js';
3
+ export interface ChatHandlerParams {
4
+ model: LanguageModel;
5
+ currentModel: string;
6
+ providerConfig: AIProviderConfig;
7
+ messages: Message[];
8
+ tools: Record<string, AISDKCoreTool>;
9
+ callbacks: StreamCallbacks;
10
+ signal?: AbortSignal;
11
+ maxRetries: number;
12
+ }
13
+ /**
14
+ * Main chat handler - orchestrates the entire chat flow
15
+ */
16
+ export declare function handleChat(params: ChatHandlerParams): Promise<LLMChatResponse>;
17
+ //# sourceMappingURL=chat-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-handler.d.ts","sourceRoot":"","sources":["../../../source/ai-sdk-client/chat/chat-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,IAAI,CAAC;AAStC,OAAO,KAAK,EACX,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,OAAO,EACP,eAAe,EAEf,MAAM,eAAe,CAAC;AAwBvB,MAAM,WAAW,iBAAiB;IACjC,KAAK,EAAE,aAAa,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,gBAAgB,CAAC;IACjC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACrC,SAAS,EAAE,eAAe,CAAC;IAC3B,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,UAAU,CAC/B,MAAM,EAAE,iBAAiB,GACvB,OAAO,CAAC,eAAe,CAAC,CAuR1B"}
@@ -0,0 +1,235 @@
1
+ import { generateText, InvalidToolInputError, NoSuchToolError, stepCountIs, ToolCallRepairError, } from 'ai';
2
+ import { MAX_TOOL_STEPS } from '../../constants.js';
3
+ import { endMetrics, formatMemoryUsage, generateCorrelationId, getCorrelationId, getLogger, startMetrics, withNewCorrelationContext, } from '../../utils/logging/index.js';
4
+ import { convertToModelMessages } from '../converters/message-converter.js';
5
+ import { convertAISDKToolCalls, generateToolCallId, getToolResultOutput, } from '../converters/tool-converter.js';
6
+ import { extractRootError } from '../error-handling/error-extractor.js';
7
+ import { parseAPIError } from '../error-handling/error-parser.js';
8
+ import { createOnStepFinishHandler, createPrepareStepHandler, } from './streaming-handler.js';
9
+ import { processXMLToolCalls } from './tool-processor.js';
10
+ /**
11
+ * Main chat handler - orchestrates the entire chat flow
12
+ */
13
+ export async function handleChat(params) {
14
+ const { model, currentModel, providerConfig, messages, tools, callbacks, signal, maxRetries, } = params;
15
+ const logger = getLogger();
16
+ // Check if already aborted before starting
17
+ if (signal?.aborted) {
18
+ logger.debug('Chat request already aborted');
19
+ throw new Error('Operation was cancelled');
20
+ }
21
+ // Start performance tracking
22
+ const metrics = startMetrics();
23
+ const correlationId = getCorrelationId() || generateCorrelationId();
24
+ logger.info('Chat request starting', {
25
+ model: currentModel,
26
+ messageCount: messages.length,
27
+ toolCount: Object.keys(tools).length,
28
+ correlationId,
29
+ provider: providerConfig.name,
30
+ });
31
+ return await withNewCorrelationContext(async (_context) => {
32
+ try {
33
+ // Tools are already in AI SDK format - use directly
34
+ const aiTools = Object.keys(tools).length > 0 ? tools : undefined;
35
+ // Convert messages to AI SDK v5 ModelMessage format
36
+ const modelMessages = convertToModelMessages(messages);
37
+ logger.debug('AI SDK request prepared', {
38
+ messageCount: modelMessages.length,
39
+ hasTools: !!aiTools,
40
+ toolCount: aiTools ? Object.keys(aiTools).length : 0,
41
+ });
42
+ // Tools with needsApproval: false auto-execute in the loop
43
+ // Tools with needsApproval: true cause interruptions for manual approval
44
+ // stopWhen controls when the tool loop stops (max MAX_TOOL_STEPS steps)
45
+ const result = await generateText({
46
+ model,
47
+ messages: modelMessages,
48
+ tools: aiTools,
49
+ abortSignal: signal,
50
+ maxRetries,
51
+ stopWhen: stepCountIs(MAX_TOOL_STEPS), // Allow up to MAX_TOOL_STEPS tool execution steps
52
+ // Can be used to add custom logging, metrics, or step tracking
53
+ onStepFinish: createOnStepFinishHandler(callbacks),
54
+ prepareStep: createPrepareStepHandler(),
55
+ });
56
+ // Get the full text from the result
57
+ const fullText = result.text;
58
+ logger.debug('AI SDK response received', {
59
+ responseLength: fullText.length,
60
+ hasToolCalls: !!(result.toolCalls && result.toolCalls.length > 0),
61
+ toolCallCount: result.toolCalls?.length || 0,
62
+ });
63
+ // Send the complete text to the callback
64
+ if (fullText) {
65
+ callbacks.onToken?.(fullText);
66
+ }
67
+ // Get tool calls from result
68
+ const toolCallsResult = result.toolCalls;
69
+ // Extract auto-executed assistant messages and tool results from steps
70
+ // These need to be added to the messages array so usage tracking can count them
71
+ const autoExecutedMessages = [];
72
+ const steps = result.steps;
73
+ for (const step of steps) {
74
+ if (step.toolCalls &&
75
+ step.toolResults &&
76
+ step.toolCalls.length === step.toolResults.length) {
77
+ // This step had tool calls that were auto-executed
78
+ // Add the assistant message with tool_calls
79
+ const stepToolCalls = convertAISDKToolCalls(step.toolCalls);
80
+ autoExecutedMessages.push({
81
+ role: 'assistant',
82
+ content: step.text || '',
83
+ tool_calls: stepToolCalls,
84
+ });
85
+ // Add the tool result messages
86
+ step.toolCalls.forEach((toolCall, idx) => {
87
+ const toolResult = step.toolResults[idx];
88
+ const resultStr = getToolResultOutput(toolResult.output);
89
+ autoExecutedMessages.push({
90
+ role: 'tool',
91
+ content: resultStr,
92
+ tool_call_id: toolCall.toolCallId || generateToolCallId(),
93
+ name: toolCall.toolName,
94
+ });
95
+ });
96
+ }
97
+ }
98
+ // Extract tool calls
99
+ const toolCalls = [];
100
+ if (toolCallsResult && toolCallsResult.length > 0) {
101
+ logger.debug('Processing tool calls from response', {
102
+ toolCallCount: toolCallsResult.length,
103
+ });
104
+ for (const toolCall of toolCallsResult) {
105
+ const tc = convertAISDKToolCalls([toolCall])[0];
106
+ toolCalls.push(tc);
107
+ logger.debug('Tool call processed', {
108
+ toolName: tc.function.name,
109
+ hasArguments: !!tc.function.arguments,
110
+ });
111
+ // Note: onToolCall already fired in onStepFinish - no need to call again
112
+ }
113
+ }
114
+ // Check for XML tool calls if no native ones
115
+ let content = fullText;
116
+ const xmlResult = processXMLToolCalls(content, tools, callbacks);
117
+ if (xmlResult.toolCalls.length > 0) {
118
+ toolCalls.push(...xmlResult.toolCalls);
119
+ content = xmlResult.cleanedContent;
120
+ }
121
+ // Calculate performance metrics
122
+ const finalMetrics = endMetrics(metrics);
123
+ logger.info('Chat request completed successfully', {
124
+ model: currentModel,
125
+ duration: `${finalMetrics.duration.toFixed(2)}ms`,
126
+ responseLength: content.length,
127
+ toolCallsFound: toolCalls.length,
128
+ memoryDelta: formatMemoryUsage(finalMetrics.memoryUsage || process.memoryUsage()),
129
+ correlationId,
130
+ provider: providerConfig.name,
131
+ });
132
+ callbacks.onFinish?.();
133
+ return {
134
+ choices: [
135
+ {
136
+ message: {
137
+ role: 'assistant',
138
+ content,
139
+ tool_calls: toolCalls.length > 0 ? toolCalls : undefined,
140
+ },
141
+ },
142
+ ],
143
+ // Include auto-executed messages so they can be added to message history
144
+ autoExecutedMessages: autoExecutedMessages.length > 0 ? autoExecutedMessages : undefined,
145
+ };
146
+ }
147
+ catch (error) {
148
+ // Calculate performance metrics even for errors
149
+ const finalMetrics = endMetrics(metrics);
150
+ // Check if this was a user-initiated cancellation
151
+ if (error instanceof Error && error.name === 'AbortError') {
152
+ logger.info('Chat request cancelled by user', {
153
+ model: currentModel,
154
+ duration: `${finalMetrics.duration.toFixed(2)}ms`,
155
+ correlationId,
156
+ provider: providerConfig.name,
157
+ });
158
+ throw new Error('Operation was cancelled');
159
+ }
160
+ // Handle tool-specific errors - NoSuchToolError
161
+ if (error instanceof NoSuchToolError) {
162
+ logger.error('Tool not found', {
163
+ toolName: error.toolName,
164
+ model: currentModel,
165
+ correlationId,
166
+ provider: providerConfig.name,
167
+ });
168
+ // Provide helpful error message with available tools
169
+ const availableTools = Object.keys(tools).join(', ');
170
+ const errorMessage = availableTools
171
+ ? `Tool "$\{error.toolName\}" does not exist. Available tools: $\{availableTools\}`
172
+ : `Tool "$\{error.toolName\}" does not exist and no tools are currently loaded.`;
173
+ throw new Error(errorMessage);
174
+ }
175
+ // Handle tool-specific errors - InvalidToolInputError
176
+ if (error instanceof InvalidToolInputError) {
177
+ logger.error('Invalid tool input', {
178
+ toolName: error.toolName,
179
+ model: currentModel,
180
+ correlationId,
181
+ provider: providerConfig.name,
182
+ validationError: error.message,
183
+ });
184
+ // Provide clear validation error
185
+ throw new Error(`Invalid arguments for tool "$\{error.toolName\}": $\{error.message\}`);
186
+ }
187
+ // Handle tool-specific errors - ToolCallRepairError
188
+ if (error instanceof ToolCallRepairError) {
189
+ logger.error('Tool call repair failed', {
190
+ toolName: error.originalError.toolName,
191
+ model: currentModel,
192
+ correlationId,
193
+ provider: providerConfig.name,
194
+ repairError: error.message,
195
+ });
196
+ // Fall through to general error handling
197
+ // Don't throw here - let the general handler provide context
198
+ }
199
+ // Log the error with performance metrics
200
+ logger.error('Chat request failed', {
201
+ model: currentModel,
202
+ duration: `${finalMetrics.duration.toFixed(2)}ms`,
203
+ error: error instanceof Error ? error.message : error,
204
+ errorName: error instanceof Error ? error.name : 'Unknown',
205
+ errorType: error?.constructor?.name || 'Unknown',
206
+ correlationId,
207
+ provider: providerConfig.name,
208
+ memoryDelta: formatMemoryUsage(finalMetrics.memoryUsage || process.memoryUsage()),
209
+ });
210
+ // AI SDK wraps errors in NoOutputGeneratedError with no useful cause
211
+ // Check if it's a cancellation without an underlying API error
212
+ if (error instanceof Error &&
213
+ (error.name === 'AI_NoOutputGeneratedError' ||
214
+ error.message.includes('No output generated'))) {
215
+ // Check if there's an underlying RetryError with the real cause
216
+ const rootError = extractRootError(error);
217
+ if (rootError === error) {
218
+ // No underlying error - check if user actually cancelled
219
+ if (signal?.aborted) {
220
+ throw new Error('Operation was cancelled');
221
+ }
222
+ // Model returned empty response without cancellation
223
+ throw new Error('Model returned empty response. This may indicate the model is not responding correctly or the prompt was unclear.');
224
+ }
225
+ // There's a real error underneath, parse it
226
+ const userMessage = parseAPIError(rootError);
227
+ throw new Error(userMessage);
228
+ }
229
+ // Parse any other error (including RetryError and APICallError)
230
+ const userMessage = parseAPIError(error);
231
+ throw new Error(userMessage);
232
+ }
233
+ }, correlationId); // End of withNewCorrelationContext
234
+ }
235
+ //# sourceMappingURL=chat-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-handler.js","sourceRoot":"","sources":["../../../source/ai-sdk-client/chat/chat-handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { ModelMessage } from 'ai';
2
+ import type { StreamCallbacks } from '../../types/index.js';
3
+ /**
4
+ * Creates the onStepFinish callback for AI SDK generateText
5
+ * This handles logging and displaying tool execution results
6
+ */
7
+ export declare function createOnStepFinishHandler(callbacks: StreamCallbacks): (step: {
8
+ toolCalls?: Array<{
9
+ toolCallId?: string;
10
+ toolName: string;
11
+ input: unknown;
12
+ }>;
13
+ toolResults?: Array<{
14
+ output: unknown;
15
+ }>;
16
+ text?: string;
17
+ }) => void;
18
+ /**
19
+ * Creates the prepareStep callback for AI SDK generateText
20
+ * This filters out empty assistant messages and orphaned tool results
21
+ */
22
+ export declare function createPrepareStepHandler(): (params: {
23
+ messages: ModelMessage[];
24
+ }) => {
25
+ messages?: ModelMessage[];
26
+ } | Record<string, never>;
27
+ //# sourceMappingURL=streaming-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streaming-handler.d.ts","sourceRoot":"","sources":["../../../source/ai-sdk-client/chat/streaming-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,IAAI,CAAC;AACrC,OAAO,KAAK,EAAC,eAAe,EAAW,MAAM,eAAe,CAAC;AAS7D;;;GAGG;AACH,wBAAgB,yBAAyB,CACxC,SAAS,EAAE,eAAe,GACxB,CAAC,IAAI,EAAE;IACT,SAAS,CAAC,EAAE,KAAK,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAC,CAAC,CAAC;IAC3E,WAAW,CAAC,EAAE,KAAK,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAC,CAAC,CAAC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;CACd,KAAK,IAAI,CAkCT;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,CAAC,MAAM,EAAE;IACpD,QAAQ,EAAE,YAAY,EAAE,CAAC;CACzB,KAAK;IAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAA;CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAiDxD"}
@@ -0,0 +1,83 @@
1
+ import { getLogger } from '../../utils/logging/index.js';
2
+ import { isEmptyAssistantMessage } from '../converters/message-converter.js';
3
+ import { convertAISDKToolCall, getToolResultOutput, } from '../converters/tool-converter.js';
4
+ /**
5
+ * Creates the onStepFinish callback for AI SDK generateText
6
+ * This handles logging and displaying tool execution results
7
+ */
8
+ export function createOnStepFinishHandler(callbacks) {
9
+ const logger = getLogger();
10
+ return step => {
11
+ // Log tool execution steps
12
+ if (step.toolCalls && step.toolCalls.length > 0) {
13
+ logger.trace('AI SDK tool step', {
14
+ stepType: 'tool_execution',
15
+ toolCount: step.toolCalls.length,
16
+ hasResults: !!step.toolResults,
17
+ });
18
+ }
19
+ // Display formatters for auto-executed tools (after execution with results)
20
+ if (step.toolCalls &&
21
+ step.toolResults &&
22
+ step.toolCalls.length === step.toolResults.length) {
23
+ step.toolCalls.forEach((toolCall, idx) => {
24
+ const toolResult = step.toolResults?.[idx];
25
+ if (!toolResult)
26
+ return;
27
+ const tc = convertAISDKToolCall(toolCall);
28
+ const resultStr = getToolResultOutput(toolResult.output);
29
+ logger.debug('Tool executed', {
30
+ toolName: tc.function.name,
31
+ resultLength: resultStr.length,
32
+ });
33
+ callbacks.onToolExecuted?.(tc, resultStr);
34
+ });
35
+ }
36
+ };
37
+ }
38
+ /**
39
+ * Creates the prepareStep callback for AI SDK generateText
40
+ * This filters out empty assistant messages and orphaned tool results
41
+ */
42
+ export function createPrepareStepHandler() {
43
+ const logger = getLogger();
44
+ return ({ messages }) => {
45
+ // Filter out empty assistant messages that would cause API errors
46
+ // "Assistant message must have either content or tool_calls"
47
+ // Also filter out orphaned tool messages that follow empty assistant messages
48
+ const filteredMessages = [];
49
+ const indicesToSkip = new Set();
50
+ // First pass: identify empty assistant messages and their orphaned tool results
51
+ for (let i = 0; i < messages.length; i++) {
52
+ if (isEmptyAssistantMessage(messages[i])) {
53
+ indicesToSkip.add(i);
54
+ // Mark any immediately following tool messages as orphaned
55
+ let j = i + 1;
56
+ while (j < messages.length && messages[j].role === 'tool') {
57
+ indicesToSkip.add(j);
58
+ j++;
59
+ }
60
+ }
61
+ }
62
+ // Second pass: build filtered array
63
+ for (let i = 0; i < messages.length; i++) {
64
+ if (!indicesToSkip.has(i)) {
65
+ filteredMessages.push(messages[i]);
66
+ }
67
+ }
68
+ // Log message filtering
69
+ if (filteredMessages.length !== messages.length) {
70
+ logger.debug('Filtered empty assistant messages and orphaned tool results', {
71
+ originalCount: messages.length,
72
+ filteredCount: filteredMessages.length,
73
+ removedCount: messages.length - filteredMessages.length,
74
+ });
75
+ }
76
+ // Return filtered messages if any were removed, otherwise no changes
77
+ if (filteredMessages.length !== messages.length) {
78
+ return { messages: filteredMessages };
79
+ }
80
+ return {}; // No modifications needed
81
+ };
82
+ }
83
+ //# sourceMappingURL=streaming-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streaming-handler.js","sourceRoot":"","sources":["../../../source/ai-sdk-client/chat/streaming-handler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAC,uBAAuB,EAAC,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EACN,oBAAoB,EACpB,mBAAmB,GACnB,MAAM,iCAAiC,CAAC;AAGzC;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CACxC,SAA0B;IAM1B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,OAAO,IAAI,CAAC,EAAE;QACb,2BAA2B;QAC3B,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjD,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE;gBAChC,QAAQ,EAAE,gBAAgB;gBAC1B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM;gBAChC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW;aAC9B,CAAC,CAAC;QACJ,CAAC;QAED,4EAA4E;QAC5E,IACC,IAAI,CAAC,SAAS;YACd,IAAI,CAAC,WAAW;YAChB,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,IAAI,CAAC,WAAW,CAAC,MAAM,EAChD,CAAC;YACF,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE;gBACxC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC;gBAC3C,IAAI,CAAC,UAAU;oBAAE,OAAO;gBACxB,MAAM,EAAE,GAAa,oBAAoB,CAAC,QAAQ,CAAC,CAAC;gBACpD,MAAM,SAAS,GAAG,mBAAmB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBAEzD,MAAM,CAAC,KAAK,CAAC,eAAe,EAAE;oBAC7B,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI;oBAC1B,YAAY,EAAE,SAAS,CAAC,MAAM;iBAC9B,CAAC,CAAC;gBAEH,SAAS,CAAC,cAAc,EAAE,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;QACJ,CAAC;IACF,CAAC,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB;IAGvC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,OAAO,CAAC,EAAC,QAAQ,EAAC,EAAE,EAAE;QACrB,kEAAkE;QAClE,6DAA6D;QAC7D,8EAA8E;QAC9E,MAAM,gBAAgB,GAAmB,EAAE,CAAC;QAC5C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;QAExC,gFAAgF;QAChF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,IAAI,uBAAuB,CAAC,QAAQ,CAAC,CAAC,CAA+B,CAAC,EAAE,CAAC;gBACxE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAErB,2DAA2D;gBAC3D,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACd,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC3D,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBACrB,CAAC,EAAE,CAAC;gBACL,CAAC;YACF,CAAC;QACF,CAAC;QAED,oCAAoC;QACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3B,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACpC,CAAC;QACF,CAAC;QAED,wBAAwB;QACxB,IAAI,gBAAgB,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;YACjD,MAAM,CAAC,KAAK,CACX,6DAA6D,EAC7D;gBACC,aAAa,EAAE,QAAQ,CAAC,MAAM;gBAC9B,aAAa,EAAE,gBAAgB,CAAC,MAAM;gBACtC,YAAY,EAAE,QAAQ,CAAC,MAAM,GAAG,gBAAgB,CAAC,MAAM;aACvD,CACD,CAAC;QACH,CAAC;QAED,qEAAqE;QACrE,IAAI,gBAAgB,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;YACjD,OAAO,EAAC,QAAQ,EAAE,gBAAgB,EAAC,CAAC;QACrC,CAAC;QACD,OAAO,EAAE,CAAC,CAAC,0BAA0B;IACtC,CAAC,CAAC;AACH,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { AISDKCoreTool, StreamCallbacks, ToolCall } from '../../types/index.js';
2
+ export interface XMLToolProcessingResult {
3
+ toolCalls: ToolCall[];
4
+ cleanedContent: string;
5
+ }
6
+ /**
7
+ * Processes XML tool calls from response content
8
+ */
9
+ export declare function processXMLToolCalls(content: string, tools: Record<string, AISDKCoreTool>, callbacks: StreamCallbacks): XMLToolProcessingResult;
10
+ //# sourceMappingURL=tool-processor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-processor.d.ts","sourceRoot":"","sources":["../../../source/ai-sdk-client/chat/tool-processor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,aAAa,EAAE,eAAe,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAG5E,MAAM,WAAW,uBAAuB;IACvC,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAClC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EACpC,SAAS,EAAE,eAAe,GACxB,uBAAuB,CAqDzB"}