@opensumi/ide-ai-native 3.7.2-next-1740450374.0 → 3.7.2-next-1741226843.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (448) hide show
  1. package/lib/browser/ai-core.contextkeys.d.ts +0 -1
  2. package/lib/browser/ai-core.contextkeys.d.ts.map +1 -1
  3. package/lib/browser/ai-core.contextkeys.js +0 -1
  4. package/lib/browser/ai-core.contextkeys.js.map +1 -1
  5. package/lib/browser/ai-core.contribution.d.ts +2 -8
  6. package/lib/browser/ai-core.contribution.d.ts.map +1 -1
  7. package/lib/browser/ai-core.contribution.js +20 -149
  8. package/lib/browser/ai-core.contribution.js.map +1 -1
  9. package/lib/browser/chat/chat-agent.service.d.ts.map +1 -1
  10. package/lib/browser/chat/chat-agent.service.js +0 -6
  11. package/lib/browser/chat/chat-agent.service.js.map +1 -1
  12. package/lib/browser/chat/chat-manager.service.d.ts +2 -30
  13. package/lib/browser/chat/chat-manager.service.d.ts.map +1 -1
  14. package/lib/browser/chat/chat-manager.service.js +1 -45
  15. package/lib/browser/chat/chat-manager.service.js.map +1 -1
  16. package/lib/browser/chat/chat-model.d.ts +7 -34
  17. package/lib/browser/chat/chat-model.d.ts.map +1 -1
  18. package/lib/browser/chat/chat-model.js +57 -71
  19. package/lib/browser/chat/chat-model.js.map +1 -1
  20. package/lib/browser/chat/chat-proxy.service.d.ts +1 -6
  21. package/lib/browser/chat/chat-proxy.service.d.ts.map +1 -1
  22. package/lib/browser/chat/chat-proxy.service.js +3 -54
  23. package/lib/browser/chat/chat-proxy.service.js.map +1 -1
  24. package/lib/browser/chat/chat.api.service.d.ts +1 -1
  25. package/lib/browser/chat/chat.api.service.d.ts.map +1 -1
  26. package/lib/browser/chat/chat.api.service.js +2 -2
  27. package/lib/browser/chat/chat.api.service.js.map +1 -1
  28. package/lib/browser/chat/chat.internal.service.d.ts +2 -8
  29. package/lib/browser/chat/chat.internal.service.d.ts.map +1 -1
  30. package/lib/browser/chat/chat.internal.service.js +13 -41
  31. package/lib/browser/chat/chat.internal.service.js.map +1 -1
  32. package/lib/browser/chat/chat.module.less +41 -17
  33. package/lib/browser/chat/chat.view.d.ts.map +1 -1
  34. package/lib/browser/chat/chat.view.js +14 -102
  35. package/lib/browser/chat/chat.view.js.map +1 -1
  36. package/lib/browser/components/ChatEditor.d.ts +0 -1
  37. package/lib/browser/components/ChatEditor.d.ts.map +1 -1
  38. package/lib/browser/components/ChatEditor.js +3 -3
  39. package/lib/browser/components/ChatEditor.js.map +1 -1
  40. package/lib/browser/components/ChatInput.d.ts.map +1 -1
  41. package/lib/browser/components/ChatInput.js.map +1 -1
  42. package/lib/browser/components/ChatMarkdown.d.ts +0 -1
  43. package/lib/browser/components/ChatMarkdown.d.ts.map +1 -1
  44. package/lib/browser/components/ChatMarkdown.js +2 -2
  45. package/lib/browser/components/ChatMarkdown.js.map +1 -1
  46. package/lib/browser/components/ChatReply.d.ts.map +1 -1
  47. package/lib/browser/components/ChatReply.js +4 -29
  48. package/lib/browser/components/ChatReply.js.map +1 -1
  49. package/lib/browser/components/ChatThinking.js +1 -1
  50. package/lib/browser/components/ChatThinking.js.map +1 -1
  51. package/lib/browser/components/WelcomeMsg.js.map +1 -1
  52. package/lib/browser/components/components.module.less +31 -33
  53. package/lib/browser/components/utils.d.ts +2 -2
  54. package/lib/browser/contrib/intelligent-completions/index.d.ts +9 -16
  55. package/lib/browser/contrib/intelligent-completions/index.d.ts.map +1 -1
  56. package/lib/browser/contrib/intelligent-completions/index.js +1 -6
  57. package/lib/browser/contrib/intelligent-completions/index.js.map +1 -1
  58. package/lib/browser/contrib/intelligent-completions/intelligent-completions.contribution.d.ts +0 -1
  59. package/lib/browser/contrib/intelligent-completions/intelligent-completions.contribution.d.ts.map +1 -1
  60. package/lib/browser/contrib/intelligent-completions/intelligent-completions.contribution.js +4 -26
  61. package/lib/browser/contrib/intelligent-completions/intelligent-completions.contribution.js.map +1 -1
  62. package/lib/browser/contrib/intelligent-completions/intelligent-completions.controller.d.ts +5 -5
  63. package/lib/browser/contrib/intelligent-completions/intelligent-completions.controller.d.ts.map +1 -1
  64. package/lib/browser/contrib/intelligent-completions/intelligent-completions.controller.js +48 -59
  65. package/lib/browser/contrib/intelligent-completions/intelligent-completions.controller.js.map +1 -1
  66. package/lib/browser/contrib/intelligent-completions/intelligent-completions.feature.registry.d.ts +0 -4
  67. package/lib/browser/contrib/intelligent-completions/intelligent-completions.feature.registry.d.ts.map +1 -1
  68. package/lib/browser/contrib/intelligent-completions/intelligent-completions.feature.registry.js +0 -7
  69. package/lib/browser/contrib/intelligent-completions/intelligent-completions.feature.registry.js.map +1 -1
  70. package/lib/browser/contrib/intelligent-completions/source/base.d.ts +5 -14
  71. package/lib/browser/contrib/intelligent-completions/source/base.d.ts.map +1 -1
  72. package/lib/browser/contrib/intelligent-completions/source/base.js +8 -29
  73. package/lib/browser/contrib/intelligent-completions/source/base.js.map +1 -1
  74. package/lib/browser/contrib/intelligent-completions/source/line-change.source.d.ts +3 -10
  75. package/lib/browser/contrib/intelligent-completions/source/line-change.source.d.ts.map +1 -1
  76. package/lib/browser/contrib/intelligent-completions/source/line-change.source.js +22 -95
  77. package/lib/browser/contrib/intelligent-completions/source/line-change.source.js.map +1 -1
  78. package/lib/browser/contrib/intelligent-completions/source/lint-error.source.d.ts +3 -1
  79. package/lib/browser/contrib/intelligent-completions/source/lint-error.source.d.ts.map +1 -1
  80. package/lib/browser/contrib/intelligent-completions/source/lint-error.source.js +20 -13
  81. package/lib/browser/contrib/intelligent-completions/source/lint-error.source.js.map +1 -1
  82. package/lib/browser/contrib/terminal/component/terminal-command-suggest-controller.js +2 -2
  83. package/lib/browser/contrib/terminal/component/terminal-command-suggest-controller.js.map +1 -1
  84. package/lib/browser/index.d.ts +3 -11
  85. package/lib/browser/index.d.ts.map +1 -1
  86. package/lib/browser/index.js +4 -56
  87. package/lib/browser/index.js.map +1 -1
  88. package/lib/browser/languages/tree-sitter/wasm-manager.d.ts.map +1 -1
  89. package/lib/browser/languages/tree-sitter/wasm-manager.js +2 -14
  90. package/lib/browser/languages/tree-sitter/wasm-manager.js.map +1 -1
  91. package/lib/browser/layout/ai-layout.d.ts.map +1 -1
  92. package/lib/browser/layout/ai-layout.js +2 -2
  93. package/lib/browser/layout/ai-layout.js.map +1 -1
  94. package/lib/browser/layout/layout.module.less +9 -9
  95. package/lib/browser/layout/tabbar.view.d.ts.map +1 -1
  96. package/lib/browser/layout/tabbar.view.js +6 -5
  97. package/lib/browser/layout/tabbar.view.js.map +1 -1
  98. package/lib/browser/model/enhanceDecorationsCollection.d.ts +10 -14
  99. package/lib/browser/model/enhanceDecorationsCollection.d.ts.map +1 -1
  100. package/lib/browser/model/enhanceDecorationsCollection.js +53 -42
  101. package/lib/browser/model/enhanceDecorationsCollection.js.map +1 -1
  102. package/lib/browser/model/msg-history-manager.d.ts +1 -20
  103. package/lib/browser/model/msg-history-manager.d.ts.map +1 -1
  104. package/lib/browser/model/msg-history-manager.js +10 -46
  105. package/lib/browser/model/msg-history-manager.js.map +1 -1
  106. package/lib/browser/model/styles.module.less +7 -0
  107. package/lib/browser/preferences/schema.d.ts.map +1 -1
  108. package/lib/browser/preferences/schema.js +0 -69
  109. package/lib/browser/preferences/schema.js.map +1 -1
  110. package/lib/browser/types.d.ts +4 -74
  111. package/lib/browser/types.d.ts.map +1 -1
  112. package/lib/browser/types.js +1 -4
  113. package/lib/browser/types.js.map +1 -1
  114. package/lib/browser/widget/inline-chat/inline-chat-editor.controller.d.ts +1 -2
  115. package/lib/browser/widget/inline-chat/inline-chat-editor.controller.d.ts.map +1 -1
  116. package/lib/browser/widget/inline-chat/inline-chat-editor.controller.js +49 -21
  117. package/lib/browser/widget/inline-chat/inline-chat-editor.controller.js.map +1 -1
  118. package/lib/browser/widget/inline-chat/inline-chat.feature.registry.d.ts +13 -3
  119. package/lib/browser/widget/inline-chat/inline-chat.feature.registry.d.ts.map +1 -1
  120. package/lib/browser/widget/inline-chat/inline-chat.feature.registry.js +72 -24
  121. package/lib/browser/widget/inline-chat/inline-chat.feature.registry.js.map +1 -1
  122. package/lib/browser/widget/inline-chat/inline-chat.service.d.ts +6 -1
  123. package/lib/browser/widget/inline-chat/inline-chat.service.d.ts.map +1 -1
  124. package/lib/browser/widget/inline-chat/inline-chat.service.js +17 -5
  125. package/lib/browser/widget/inline-chat/inline-chat.service.js.map +1 -1
  126. package/lib/browser/widget/inline-chat/inline-content-widget.d.ts +5 -2
  127. package/lib/browser/widget/inline-chat/inline-content-widget.d.ts.map +1 -1
  128. package/lib/browser/widget/inline-chat/inline-content-widget.js +42 -17
  129. package/lib/browser/widget/inline-chat/inline-content-widget.js.map +1 -1
  130. package/lib/browser/widget/inline-diff/inline-diff-previewer.d.ts +5 -22
  131. package/lib/browser/widget/inline-diff/inline-diff-previewer.d.ts.map +1 -1
  132. package/lib/browser/widget/inline-diff/inline-diff-previewer.js +30 -61
  133. package/lib/browser/widget/inline-diff/inline-diff-previewer.js.map +1 -1
  134. package/lib/browser/widget/inline-diff/inline-diff.controller.d.ts +12 -8
  135. package/lib/browser/widget/inline-diff/inline-diff.controller.d.ts.map +1 -1
  136. package/lib/browser/widget/inline-diff/inline-diff.controller.js +96 -68
  137. package/lib/browser/widget/inline-diff/inline-diff.controller.js.map +1 -1
  138. package/lib/browser/widget/inline-hint/inline-hint.controller.d.ts +1 -0
  139. package/lib/browser/widget/inline-hint/inline-hint.controller.d.ts.map +1 -1
  140. package/lib/browser/widget/inline-hint/inline-hint.controller.js +5 -0
  141. package/lib/browser/widget/inline-hint/inline-hint.controller.js.map +1 -1
  142. package/lib/browser/widget/inline-input/inline-input-widget.d.ts +2 -12
  143. package/lib/browser/widget/inline-input/inline-input-widget.d.ts.map +1 -1
  144. package/lib/browser/widget/inline-input/inline-input-widget.js +18 -26
  145. package/lib/browser/widget/inline-input/inline-input-widget.js.map +1 -1
  146. package/lib/browser/widget/inline-input/inline-input.controller.d.ts +5 -14
  147. package/lib/browser/widget/inline-input/inline-input.controller.d.ts.map +1 -1
  148. package/lib/browser/widget/inline-input/inline-input.controller.js +165 -321
  149. package/lib/browser/widget/inline-input/inline-input.controller.js.map +1 -1
  150. package/lib/browser/widget/inline-input/inline-input.module.less +0 -4
  151. package/lib/browser/widget/inline-input/inline-input.service.d.ts +7 -19
  152. package/lib/browser/widget/inline-input/inline-input.service.d.ts.map +1 -1
  153. package/lib/browser/widget/inline-input/inline-input.service.js +12 -72
  154. package/lib/browser/widget/inline-input/inline-input.service.js.map +1 -1
  155. package/lib/browser/widget/inline-stream-diff/inline-stream-diff.handler.d.ts +19 -9
  156. package/lib/browser/widget/inline-stream-diff/inline-stream-diff.handler.d.ts.map +1 -1
  157. package/lib/browser/widget/inline-stream-diff/inline-stream-diff.handler.js +39 -47
  158. package/lib/browser/widget/inline-stream-diff/inline-stream-diff.handler.js.map +1 -1
  159. package/lib/browser/widget/inline-stream-diff/live-preview.component.d.ts +4 -21
  160. package/lib/browser/widget/inline-stream-diff/live-preview.component.d.ts.map +1 -1
  161. package/lib/browser/widget/inline-stream-diff/live-preview.component.js +5 -37
  162. package/lib/browser/widget/inline-stream-diff/live-preview.component.js.map +1 -1
  163. package/lib/browser/widget/inline-stream-diff/live-preview.decoration.d.ts +11 -7
  164. package/lib/browser/widget/inline-stream-diff/live-preview.decoration.d.ts.map +1 -1
  165. package/lib/browser/widget/inline-stream-diff/live-preview.decoration.js +77 -34
  166. package/lib/browser/widget/inline-stream-diff/live-preview.decoration.js.map +1 -1
  167. package/lib/common/index.d.ts +0 -10
  168. package/lib/common/index.d.ts.map +1 -1
  169. package/lib/common/index.js +1 -4
  170. package/lib/common/index.js.map +1 -1
  171. package/lib/common/types.d.ts +0 -17
  172. package/lib/common/types.d.ts.map +1 -1
  173. package/lib/common/utils.d.ts +0 -1
  174. package/lib/common/utils.d.ts.map +1 -1
  175. package/lib/common/utils.js +3 -5
  176. package/lib/common/utils.js.map +1 -1
  177. package/lib/node/index.d.ts.map +1 -1
  178. package/lib/node/index.js +0 -19
  179. package/lib/node/index.js.map +1 -1
  180. package/package.json +22 -33
  181. package/src/browser/ai-core.contextkeys.ts +0 -3
  182. package/src/browser/ai-core.contribution.ts +21 -167
  183. package/src/browser/chat/chat-agent.service.ts +0 -7
  184. package/src/browser/chat/chat-manager.service.ts +7 -83
  185. package/src/browser/chat/chat-model.ts +20 -86
  186. package/src/browser/chat/chat-proxy.service.ts +3 -55
  187. package/src/browser/chat/chat.api.service.ts +2 -2
  188. package/src/browser/chat/chat.internal.service.ts +6 -35
  189. package/src/browser/chat/chat.module.less +41 -17
  190. package/src/browser/chat/chat.view.tsx +45 -191
  191. package/src/browser/components/ChatEditor.tsx +10 -13
  192. package/src/browser/components/ChatInput.tsx +0 -1
  193. package/src/browser/components/ChatMarkdown.tsx +2 -4
  194. package/src/browser/components/ChatReply.tsx +9 -38
  195. package/src/browser/components/ChatThinking.tsx +1 -1
  196. package/src/browser/components/WelcomeMsg.tsx +1 -1
  197. package/src/browser/components/components.module.less +31 -33
  198. package/src/browser/contrib/intelligent-completions/index.ts +4 -19
  199. package/src/browser/contrib/intelligent-completions/intelligent-completions.contribution.ts +8 -32
  200. package/src/browser/contrib/intelligent-completions/intelligent-completions.controller.ts +67 -102
  201. package/src/browser/contrib/intelligent-completions/intelligent-completions.feature.registry.ts +0 -11
  202. package/src/browser/contrib/intelligent-completions/source/base.ts +14 -39
  203. package/src/browser/contrib/intelligent-completions/source/line-change.source.ts +22 -129
  204. package/src/browser/contrib/intelligent-completions/source/lint-error.source.ts +31 -19
  205. package/src/browser/contrib/terminal/component/terminal-command-suggest-controller.tsx +1 -1
  206. package/src/browser/index.ts +6 -69
  207. package/src/browser/languages/tree-sitter/wasm-manager.ts +2 -12
  208. package/src/browser/layout/ai-layout.tsx +2 -5
  209. package/src/browser/layout/layout.module.less +9 -9
  210. package/src/browser/layout/tabbar.view.tsx +8 -10
  211. package/src/browser/model/enhanceDecorationsCollection.ts +77 -62
  212. package/src/browser/model/msg-history-manager.ts +2 -56
  213. package/src/browser/model/styles.module.less +7 -0
  214. package/src/browser/preferences/schema.ts +0 -69
  215. package/src/browser/types.ts +5 -100
  216. package/src/browser/widget/inline-chat/inline-chat-editor.controller.ts +65 -30
  217. package/src/browser/widget/inline-chat/inline-chat.feature.registry.ts +90 -23
  218. package/src/browser/widget/inline-chat/inline-chat.service.ts +17 -2
  219. package/src/browser/widget/inline-chat/inline-content-widget.tsx +69 -14
  220. package/src/browser/widget/inline-diff/inline-diff-previewer.ts +32 -87
  221. package/src/browser/widget/inline-diff/inline-diff.controller.ts +114 -90
  222. package/src/browser/widget/inline-hint/inline-hint.controller.ts +7 -1
  223. package/src/browser/widget/inline-input/inline-input-widget.tsx +12 -34
  224. package/src/browser/widget/inline-input/inline-input.controller.ts +242 -454
  225. package/src/browser/widget/inline-input/inline-input.module.less +0 -4
  226. package/src/browser/widget/inline-input/inline-input.service.ts +13 -92
  227. package/src/browser/widget/inline-stream-diff/inline-stream-diff.handler.tsx +67 -58
  228. package/src/browser/widget/inline-stream-diff/live-preview.component.tsx +6 -49
  229. package/src/browser/widget/inline-stream-diff/live-preview.decoration.tsx +112 -41
  230. package/src/common/index.ts +0 -15
  231. package/src/common/types.ts +0 -22
  232. package/src/common/utils.ts +2 -4
  233. package/src/node/index.ts +0 -21
  234. package/lib/browser/components/ChatContext/ContextSelector.d.ts +0 -12
  235. package/lib/browser/components/ChatContext/ContextSelector.d.ts.map +0 -1
  236. package/lib/browser/components/ChatContext/ContextSelector.js +0 -113
  237. package/lib/browser/components/ChatContext/ContextSelector.js.map +0 -1
  238. package/lib/browser/components/ChatContext/index.d.ts +0 -4
  239. package/lib/browser/components/ChatContext/index.d.ts.map +0 -1
  240. package/lib/browser/components/ChatContext/index.js +0 -100
  241. package/lib/browser/components/ChatContext/index.js.map +0 -1
  242. package/lib/browser/components/ChatContext/style.module.less +0 -201
  243. package/lib/browser/components/ChatHistory.d.ts +0 -21
  244. package/lib/browser/components/ChatHistory.d.ts.map +0 -1
  245. package/lib/browser/components/ChatHistory.js +0 -148
  246. package/lib/browser/components/ChatHistory.js.map +0 -1
  247. package/lib/browser/components/ChatToolRender.d.ts +0 -7
  248. package/lib/browser/components/ChatToolRender.d.ts.map +0 -1
  249. package/lib/browser/components/ChatToolRender.js +0 -71
  250. package/lib/browser/components/ChatToolRender.js.map +0 -1
  251. package/lib/browser/components/ChatToolRender.module.less +0 -86
  252. package/lib/browser/components/chat-history.css +0 -139
  253. package/lib/browser/context/llm-context.contribution.d.ts +0 -7
  254. package/lib/browser/context/llm-context.contribution.d.ts.map +0 -1
  255. package/lib/browser/context/llm-context.contribution.js +0 -21
  256. package/lib/browser/context/llm-context.contribution.js.map +0 -1
  257. package/lib/browser/context/llm-context.service.d.ts +0 -36
  258. package/lib/browser/context/llm-context.service.d.ts.map +0 -1
  259. package/lib/browser/context/llm-context.service.js +0 -170
  260. package/lib/browser/context/llm-context.service.js.map +0 -1
  261. package/lib/browser/contrib/intelligent-completions/source/trigger.source.d.ts +0 -13
  262. package/lib/browser/contrib/intelligent-completions/source/trigger.source.d.ts.map +0 -1
  263. package/lib/browser/contrib/intelligent-completions/source/trigger.source.js +0 -36
  264. package/lib/browser/contrib/intelligent-completions/source/trigger.source.js.map +0 -1
  265. package/lib/browser/contrib/intelligent-completions/source/typing.source.d.ts +0 -9
  266. package/lib/browser/contrib/intelligent-completions/source/typing.source.d.ts.map +0 -1
  267. package/lib/browser/contrib/intelligent-completions/source/typing.source.js +0 -36
  268. package/lib/browser/contrib/intelligent-completions/source/typing.source.js.map +0 -1
  269. package/lib/browser/mcp/base-apply.service.d.ts +0 -67
  270. package/lib/browser/mcp/base-apply.service.d.ts.map +0 -1
  271. package/lib/browser/mcp/base-apply.service.js +0 -290
  272. package/lib/browser/mcp/base-apply.service.js.map +0 -1
  273. package/lib/browser/mcp/mcp-server-proxy.service.d.ts +0 -30
  274. package/lib/browser/mcp/mcp-server-proxy.service.d.ts.map +0 -1
  275. package/lib/browser/mcp/mcp-server-proxy.service.js +0 -57
  276. package/lib/browser/mcp/mcp-server-proxy.service.js.map +0 -1
  277. package/lib/browser/mcp/mcp-server.feature.registry.d.ts +0 -20
  278. package/lib/browser/mcp/mcp-server.feature.registry.d.ts.map +0 -1
  279. package/lib/browser/mcp/mcp-server.feature.registry.js +0 -69
  280. package/lib/browser/mcp/mcp-server.feature.registry.js.map +0 -1
  281. package/lib/browser/mcp/mcp-tools-dialog.module.less +0 -44
  282. package/lib/browser/mcp/mcp-tools-dialog.view.d.ts +0 -8
  283. package/lib/browser/mcp/mcp-tools-dialog.view.d.ts.map +0 -1
  284. package/lib/browser/mcp/mcp-tools-dialog.view.js +0 -16
  285. package/lib/browser/mcp/mcp-tools-dialog.view.js.map +0 -1
  286. package/lib/browser/mcp/tools/components/EditFile.d.ts +0 -3
  287. package/lib/browser/mcp/tools/components/EditFile.d.ts.map +0 -1
  288. package/lib/browser/mcp/tools/components/EditFile.js +0 -101
  289. package/lib/browser/mcp/tools/components/EditFile.js.map +0 -1
  290. package/lib/browser/mcp/tools/components/SearchResult.d.ts +0 -11
  291. package/lib/browser/mcp/tools/components/SearchResult.d.ts.map +0 -1
  292. package/lib/browser/mcp/tools/components/SearchResult.js +0 -60
  293. package/lib/browser/mcp/tools/components/SearchResult.js.map +0 -1
  294. package/lib/browser/mcp/tools/components/Terminal.d.ts +0 -4
  295. package/lib/browser/mcp/tools/components/Terminal.d.ts.map +0 -1
  296. package/lib/browser/mcp/tools/components/Terminal.js +0 -64
  297. package/lib/browser/mcp/tools/components/Terminal.js.map +0 -1
  298. package/lib/browser/mcp/tools/components/index.module.less +0 -168
  299. package/lib/browser/mcp/tools/createNewFileWithText.d.ts +0 -9
  300. package/lib/browser/mcp/tools/createNewFileWithText.d.ts.map +0 -1
  301. package/lib/browser/mcp/tools/createNewFileWithText.js +0 -82
  302. package/lib/browser/mcp/tools/createNewFileWithText.js.map +0 -1
  303. package/lib/browser/mcp/tools/editFile.d.ts +0 -8
  304. package/lib/browser/mcp/tools/editFile.d.ts.map +0 -1
  305. package/lib/browser/mcp/tools/editFile.js +0 -95
  306. package/lib/browser/mcp/tools/editFile.js.map +0 -1
  307. package/lib/browser/mcp/tools/fileSearch.d.ts +0 -10
  308. package/lib/browser/mcp/tools/fileSearch.d.ts.map +0 -1
  309. package/lib/browser/mcp/tools/fileSearch.js +0 -94
  310. package/lib/browser/mcp/tools/fileSearch.js.map +0 -1
  311. package/lib/browser/mcp/tools/getDiagnosticsByPath.d.ts +0 -10
  312. package/lib/browser/mcp/tools/getDiagnosticsByPath.d.ts.map +0 -1
  313. package/lib/browser/mcp/tools/getDiagnosticsByPath.js +0 -118
  314. package/lib/browser/mcp/tools/getDiagnosticsByPath.js.map +0 -1
  315. package/lib/browser/mcp/tools/getOpenEditorFileDiagnostics.d.ts +0 -11
  316. package/lib/browser/mcp/tools/getOpenEditorFileDiagnostics.d.ts.map +0 -1
  317. package/lib/browser/mcp/tools/getOpenEditorFileDiagnostics.js +0 -118
  318. package/lib/browser/mcp/tools/getOpenEditorFileDiagnostics.js.map +0 -1
  319. package/lib/browser/mcp/tools/grepSearch.d.ts +0 -10
  320. package/lib/browser/mcp/tools/grepSearch.d.ts.map +0 -1
  321. package/lib/browser/mcp/tools/grepSearch.js +0 -118
  322. package/lib/browser/mcp/tools/grepSearch.js.map +0 -1
  323. package/lib/browser/mcp/tools/handlers/EditFile.d.ts +0 -10
  324. package/lib/browser/mcp/tools/handlers/EditFile.d.ts.map +0 -1
  325. package/lib/browser/mcp/tools/handlers/EditFile.js +0 -28
  326. package/lib/browser/mcp/tools/handlers/EditFile.js.map +0 -1
  327. package/lib/browser/mcp/tools/handlers/ListDir.d.ts +0 -21
  328. package/lib/browser/mcp/tools/handlers/ListDir.d.ts.map +0 -1
  329. package/lib/browser/mcp/tools/handlers/ListDir.js +0 -112
  330. package/lib/browser/mcp/tools/handlers/ListDir.js.map +0 -1
  331. package/lib/browser/mcp/tools/handlers/ReadFile.d.ts +0 -53
  332. package/lib/browser/mcp/tools/handlers/ReadFile.d.ts.map +0 -1
  333. package/lib/browser/mcp/tools/handlers/ReadFile.js +0 -161
  334. package/lib/browser/mcp/tools/handlers/ReadFile.js.map +0 -1
  335. package/lib/browser/mcp/tools/handlers/RunCommand.d.ts +0 -43
  336. package/lib/browser/mcp/tools/handlers/RunCommand.d.ts.map +0 -1
  337. package/lib/browser/mcp/tools/handlers/RunCommand.js +0 -104
  338. package/lib/browser/mcp/tools/handlers/RunCommand.js.map +0 -1
  339. package/lib/browser/mcp/tools/handlers/utils.d.ts +0 -2
  340. package/lib/browser/mcp/tools/handlers/utils.d.ts.map +0 -1
  341. package/lib/browser/mcp/tools/handlers/utils.js +0 -7
  342. package/lib/browser/mcp/tools/handlers/utils.js.map +0 -1
  343. package/lib/browser/mcp/tools/listDir.d.ts +0 -8
  344. package/lib/browser/mcp/tools/listDir.d.ts.map +0 -1
  345. package/lib/browser/mcp/tools/listDir.js +0 -64
  346. package/lib/browser/mcp/tools/listDir.js.map +0 -1
  347. package/lib/browser/mcp/tools/readFile.d.ts +0 -8
  348. package/lib/browser/mcp/tools/readFile.d.ts.map +0 -1
  349. package/lib/browser/mcp/tools/readFile.js +0 -81
  350. package/lib/browser/mcp/tools/readFile.js.map +0 -1
  351. package/lib/browser/mcp/tools/runTerminalCmd.d.ts +0 -13
  352. package/lib/browser/mcp/tools/runTerminalCmd.d.ts.map +0 -1
  353. package/lib/browser/mcp/tools/runTerminalCmd.js +0 -49
  354. package/lib/browser/mcp/tools/runTerminalCmd.js.map +0 -1
  355. package/lib/browser/widget/inline-input/model.d.ts +0 -34
  356. package/lib/browser/widget/inline-input/model.d.ts.map +0 -1
  357. package/lib/browser/widget/inline-input/model.js +0 -63
  358. package/lib/browser/widget/inline-input/model.js.map +0 -1
  359. package/lib/common/llm-context.d.ts +0 -40
  360. package/lib/common/llm-context.d.ts.map +0 -1
  361. package/lib/common/llm-context.js +0 -5
  362. package/lib/common/llm-context.js.map +0 -1
  363. package/lib/common/mcp-server-manager.d.ts +0 -40
  364. package/lib/common/mcp-server-manager.d.ts.map +0 -1
  365. package/lib/common/mcp-server-manager.js +0 -6
  366. package/lib/common/mcp-server-manager.js.map +0 -1
  367. package/lib/common/prompts/context-prompt-provider.d.ts +0 -14
  368. package/lib/common/prompts/context-prompt-provider.d.ts.map +0 -1
  369. package/lib/common/prompts/context-prompt-provider.js +0 -38
  370. package/lib/common/prompts/context-prompt-provider.js.map +0 -1
  371. package/lib/common/tool-invocation-registry.d.ts +0 -92
  372. package/lib/common/tool-invocation-registry.d.ts.map +0 -1
  373. package/lib/common/tool-invocation-registry.js +0 -90
  374. package/lib/common/tool-invocation-registry.js.map +0 -1
  375. package/lib/node/anthropic/anthropic-language-model.d.ts +0 -9
  376. package/lib/node/anthropic/anthropic-language-model.d.ts.map +0 -1
  377. package/lib/node/anthropic/anthropic-language-model.js +0 -26
  378. package/lib/node/anthropic/anthropic-language-model.js.map +0 -1
  379. package/lib/node/base-language-model.d.ts +0 -14
  380. package/lib/node/base-language-model.d.ts.map +0 -1
  381. package/lib/node/base-language-model.js +0 -140
  382. package/lib/node/base-language-model.js.map +0 -1
  383. package/lib/node/deepseek/deepseek-language-model.d.ts +0 -9
  384. package/lib/node/deepseek/deepseek-language-model.d.ts.map +0 -1
  385. package/lib/node/deepseek/deepseek-language-model.js +0 -26
  386. package/lib/node/deepseek/deepseek-language-model.js.map +0 -1
  387. package/lib/node/mcp/sumi-mcp-server.d.ts +0 -91
  388. package/lib/node/mcp/sumi-mcp-server.d.ts.map +0 -1
  389. package/lib/node/mcp/sumi-mcp-server.js +0 -175
  390. package/lib/node/mcp/sumi-mcp-server.js.map +0 -1
  391. package/lib/node/mcp-server-manager-impl.d.ts +0 -27
  392. package/lib/node/mcp-server-manager-impl.d.ts.map +0 -1
  393. package/lib/node/mcp-server-manager-impl.js +0 -128
  394. package/lib/node/mcp-server-manager-impl.js.map +0 -1
  395. package/lib/node/mcp-server.d.ts +0 -207
  396. package/lib/node/mcp-server.d.ts.map +0 -1
  397. package/lib/node/mcp-server.js +0 -92
  398. package/lib/node/mcp-server.js.map +0 -1
  399. package/lib/node/openai/openai-language-model.d.ts +0 -9
  400. package/lib/node/openai/openai-language-model.d.ts.map +0 -1
  401. package/lib/node/openai/openai-language-model.js +0 -29
  402. package/lib/node/openai/openai-language-model.js.map +0 -1
  403. package/src/browser/components/ChatContext/ContextSelector.tsx +0 -177
  404. package/src/browser/components/ChatContext/index.tsx +0 -151
  405. package/src/browser/components/ChatContext/style.module.less +0 -201
  406. package/src/browser/components/ChatHistory.tsx +0 -292
  407. package/src/browser/components/ChatToolRender.module.less +0 -86
  408. package/src/browser/components/ChatToolRender.tsx +0 -96
  409. package/src/browser/components/chat-history.css +0 -139
  410. package/src/browser/context/llm-context.contribution.ts +0 -14
  411. package/src/browser/context/llm-context.service.ts +0 -200
  412. package/src/browser/contrib/intelligent-completions/source/trigger.source.ts +0 -44
  413. package/src/browser/contrib/intelligent-completions/source/typing.source.ts +0 -34
  414. package/src/browser/mcp/base-apply.service.ts +0 -349
  415. package/src/browser/mcp/mcp-server-proxy.service.ts +0 -55
  416. package/src/browser/mcp/mcp-server.feature.registry.ts +0 -77
  417. package/src/browser/mcp/mcp-tools-dialog.module.less +0 -44
  418. package/src/browser/mcp/mcp-tools-dialog.view.tsx +0 -24
  419. package/src/browser/mcp/tools/components/EditFile.tsx +0 -144
  420. package/src/browser/mcp/tools/components/SearchResult.tsx +0 -92
  421. package/src/browser/mcp/tools/components/Terminal.tsx +0 -97
  422. package/src/browser/mcp/tools/components/index.module.less +0 -168
  423. package/src/browser/mcp/tools/createNewFileWithText.ts +0 -82
  424. package/src/browser/mcp/tools/editFile.ts +0 -100
  425. package/src/browser/mcp/tools/fileSearch.ts +0 -99
  426. package/src/browser/mcp/tools/getDiagnosticsByPath.ts +0 -122
  427. package/src/browser/mcp/tools/getOpenEditorFileDiagnostics.ts +0 -120
  428. package/src/browser/mcp/tools/grepSearch.ts +0 -121
  429. package/src/browser/mcp/tools/handlers/EditFile.ts +0 -21
  430. package/src/browser/mcp/tools/handlers/ListDir.ts +0 -117
  431. package/src/browser/mcp/tools/handlers/ReadFile.ts +0 -192
  432. package/src/browser/mcp/tools/handlers/RunCommand.ts +0 -115
  433. package/src/browser/mcp/tools/handlers/utils.ts +0 -3
  434. package/src/browser/mcp/tools/listDir.ts +0 -65
  435. package/src/browser/mcp/tools/readFile.ts +0 -81
  436. package/src/browser/mcp/tools/runTerminalCmd.ts +0 -45
  437. package/src/browser/widget/inline-input/model.ts +0 -74
  438. package/src/common/llm-context.ts +0 -47
  439. package/src/common/mcp-server-manager.ts +0 -51
  440. package/src/common/prompts/context-prompt-provider.ts +0 -46
  441. package/src/common/tool-invocation-registry.ts +0 -168
  442. package/src/node/anthropic/anthropic-language-model.ts +0 -25
  443. package/src/node/base-language-model.ts +0 -177
  444. package/src/node/deepseek/deepseek-language-model.ts +0 -25
  445. package/src/node/mcp/sumi-mcp-server.ts +0 -200
  446. package/src/node/mcp-server-manager-impl.ts +0 -156
  447. package/src/node/mcp-server.ts +0 -127
  448. package/src/node/openai/openai-language-model.ts +0 -25
@@ -6,7 +6,6 @@ import {
6
6
  IChatComponent,
7
7
  IChatMarkdownContent,
8
8
  IChatProgress,
9
- IChatToolContent,
10
9
  IChatTreeData,
11
10
  ILogger,
12
11
  memoize,
@@ -27,13 +26,9 @@ import {
27
26
  import { MsgHistoryManager } from '../model/msg-history-manager';
28
27
  import { IChatSlashCommandItem } from '../types';
29
28
 
30
- export type IChatProgressResponseContent =
31
- | IChatMarkdownContent
32
- | IChatAsyncContent
33
- | IChatTreeData
34
- | IChatComponent
35
- | IChatToolContent;
29
+ export type IChatProgressResponseContent = IChatMarkdownContent | IChatAsyncContent | IChatTreeData | IChatComponent;
36
30
 
31
+ @Injectable({ multiple: true })
37
32
  export class ChatResponseModel extends Disposable {
38
33
  #responseParts: IChatProgressResponseContent[] = [];
39
34
  get responseParts() {
@@ -80,34 +75,14 @@ export class ChatResponseModel extends Disposable {
80
75
  return this.#onDidChange.event;
81
76
  }
82
77
 
83
- constructor(
84
- requestId: string,
85
- public readonly session: IChatModel,
86
- public readonly agentId: string,
87
- initParams?: {
88
- isComplete: boolean;
89
- isCanceled: boolean;
90
- responseContents: IChatProgressResponseContent[];
91
- responseText: string;
92
- errorDetails: IChatResponseErrorDetails | undefined;
93
- followups: IChatFollowup[] | undefined;
94
- },
95
- ) {
78
+ constructor(requestId: string, public readonly session: IChatModel, public readonly agentId: string) {
96
79
  super();
97
80
  this.#requestId = requestId;
98
- if (initParams) {
99
- this.#responseContents = initParams.responseContents;
100
- this.#responseText = initParams.responseText;
101
- this.#isComplete = initParams.isComplete;
102
- this.#isCanceled = initParams.isCanceled;
103
- this.#errorDetails = initParams.errorDetails;
104
- this.#followups = initParams.followups;
105
- }
106
81
  }
107
82
 
108
83
  updateContent(progress: IChatProgress, quiet?: boolean): void {
109
- const responsePartLength = this.#responseParts.length - 1;
110
84
  if (progress.kind === 'content' || progress.kind === 'markdownContent') {
85
+ const responsePartLength = this.#responseParts.length - 1;
111
86
  const lastResponsePart = this.#responseParts[responsePartLength];
112
87
 
113
88
  if (!lastResponsePart || lastResponsePart.kind !== 'markdownContent') {
@@ -145,20 +120,11 @@ export class ChatResponseModel extends Disposable {
145
120
  }
146
121
  this.#updateResponseText(quiet);
147
122
  });
148
- } else if (progress.kind === 'treeData' || progress.kind === 'component') {
123
+ } else if (progress.kind === 'treeData') {
149
124
  this.#responseParts.push(progress);
150
125
  this.#updateResponseText(quiet);
151
- } else if (progress.kind === 'toolCall') {
152
- const find = this.#responseParts.find(
153
- (item) => item.kind === 'toolCall' && item.content.id === progress.content.id,
154
- );
155
- if (find) {
156
- // @ts-ignore
157
- find.content = progress.content;
158
- // this.#responseParts[responsePartLength] = find;
159
- } else {
160
- this.#responseParts.push(progress);
161
- }
126
+ } else if (progress.kind === 'component') {
127
+ this.#responseParts.push(progress);
162
128
  this.#updateResponseText(quiet);
163
129
  }
164
130
  }
@@ -175,9 +141,6 @@ export class ChatResponseModel extends Disposable {
175
141
  if (part.kind === 'component') {
176
142
  return '';
177
143
  }
178
- if (part.kind === 'toolCall') {
179
- return part.content.function.name;
180
- }
181
144
  return part.content.value;
182
145
  })
183
146
  .join('\n\n');
@@ -235,18 +198,9 @@ export class ChatResponseModel extends Disposable {
235
198
  this.#followups = followups;
236
199
  this.#onDidChange.fire();
237
200
  }
238
-
239
- toJSON() {
240
- return {
241
- isCanceled: this.isCanceled,
242
- responseContents: this.responseContents,
243
- responseText: this.responseText,
244
- errorDetails: this.errorDetails,
245
- followups: this.followups,
246
- };
247
- }
248
201
  }
249
202
 
203
+ @Injectable({ multiple: true })
250
204
  export class ChatRequestModel implements IChatRequestModel {
251
205
  #requestId: string;
252
206
  public get requestId(): string {
@@ -261,29 +215,19 @@ export class ChatRequestModel implements IChatRequestModel {
261
215
  ) {
262
216
  this.#requestId = requestId;
263
217
  }
264
-
265
- toJSON() {
266
- return {
267
- requestId: this.requestId,
268
- message: this.message,
269
- response: this.response,
270
- };
271
- }
272
218
  }
273
219
 
220
+ @Injectable({ multiple: true })
274
221
  export class ChatModel extends Disposable implements IChatModel {
275
222
  private static requestIdPool = 0;
276
223
 
277
- constructor(initParams?: { sessionId?: string; history?: MsgHistoryManager; requests?: ChatRequestModel[] }) {
278
- super();
279
- this.#sessionId = initParams?.sessionId ?? uuid();
280
- this.history = initParams?.history ?? new MsgHistoryManager();
281
- if (initParams?.requests) {
282
- this.#requests = new Map(initParams.requests.map((r) => [r.requestId, r]));
283
- }
284
- }
224
+ @Autowired(ILogger)
225
+ protected readonly logger: ILogger;
226
+
227
+ @Autowired(INJECTOR_TOKEN)
228
+ injector: Injector;
285
229
 
286
- #sessionId: string;
230
+ #sessionId: string = uuid();
287
231
  get sessionId(): string {
288
232
  return this.#sessionId;
289
233
  }
@@ -293,12 +237,11 @@ export class ChatModel extends Disposable implements IChatModel {
293
237
  return Array.from(this.#requests.values());
294
238
  }
295
239
 
296
- restoreRequests(requests: ChatRequestModel[]): void {
297
- this.#requests = new Map(requests.map((r) => [r.requestId, r]));
240
+ @memoize
241
+ get history(): MsgHistoryManager {
242
+ return this.injector.get(MsgHistoryManager, []);
298
243
  }
299
244
 
300
- readonly history: MsgHistoryManager;
301
-
302
245
  addRequest(message: IChatRequestMessage): ChatRequestModel {
303
246
  const requestId = `${this.sessionId}_request_${ChatModel.requestIdPool++}`;
304
247
  const response = new ChatResponseModel(requestId, this, message.agentId);
@@ -315,13 +258,12 @@ export class ChatModel extends Disposable implements IChatModel {
315
258
 
316
259
  const { kind } = progress;
317
260
 
318
- const basicKind = ['content', 'markdownContent', 'asyncContent', 'treeData', 'component', 'toolCall'];
261
+ const basicKind = ['content', 'markdownContent', 'asyncContent', 'treeData', 'component'];
319
262
 
320
263
  if (basicKind.includes(kind)) {
321
264
  request.response.updateContent(progress, quiet);
322
265
  } else {
323
- // eslint-disable-next-line no-console
324
- console.error(`Couldn't handle progress: ${JSON.stringify(progress)}`);
266
+ this.logger.error(`Couldn't handle progress: ${JSON.stringify(progress)}`);
325
267
  }
326
268
  }
327
269
 
@@ -333,14 +275,6 @@ export class ChatModel extends Disposable implements IChatModel {
333
275
  super.dispose();
334
276
  this.#requests.forEach((r) => r.response.dispose());
335
277
  }
336
-
337
- toJSON() {
338
- return {
339
- sessionId: this.sessionId,
340
- history: this.history,
341
- requests: this.requests,
342
- };
343
- }
344
278
  }
345
279
 
346
280
  @Injectable({ multiple: true })
@@ -1,23 +1,18 @@
1
1
  import { Autowired, Injectable } from '@opensumi/di';
2
- import { AppConfig, PreferenceService } from '@opensumi/ide-core-browser';
3
2
  import {
4
3
  AIBackSerivcePath,
5
4
  CancellationToken,
6
- ChatAgentViewServiceToken,
7
5
  ChatFeatureRegistryToken,
8
6
  ChatServiceToken,
9
7
  Deferred,
10
8
  Disposable,
11
9
  IAIBackService,
12
10
  IAIReporter,
13
- IApplicationService,
14
11
  IChatProgress,
15
12
  uuid,
16
13
  } from '@opensumi/ide-core-common';
17
- import { AINativeSettingSectionsId } from '@opensumi/ide-core-common/lib/settings/ai-native';
18
14
  import { IChatMessage } from '@opensumi/ide-core-common/lib/types/ai-native';
19
15
  import { MonacoCommandRegistry } from '@opensumi/ide-editor/lib/browser/monaco-contrib/command/command.service';
20
- import { IMessageService } from '@opensumi/ide-overlay';
21
16
  import { listenReadable } from '@opensumi/ide-utils/lib/stream';
22
17
 
23
18
  import {
@@ -27,8 +22,6 @@ import {
27
22
  IChatAgentService,
28
23
  IChatAgentWelcomeMessage,
29
24
  } from '../../common';
30
- import { ChatToolRender } from '../components/ChatToolRender';
31
- import { IChatAgentViewService } from '../types';
32
25
 
33
26
  import { ChatService } from './chat.api.service';
34
27
  import { ChatFeatureRegistry } from './chat.feature.registry';
@@ -39,7 +32,7 @@ import { ChatFeatureRegistry } from './chat.feature.registry';
39
32
  @Injectable()
40
33
  export class ChatProxyService extends Disposable {
41
34
  // 避免和插件注册的 agent id 冲突
42
- static readonly AGENT_ID = 'Default_Chat_Agent';
35
+ static readonly AGENT_ID = 'Default_Chat_Agent_' + uuid(6);
43
36
 
44
37
  @Autowired(IChatAgentService)
45
38
  private readonly chatAgentService: IChatAgentService;
@@ -59,41 +52,13 @@ export class ChatProxyService extends Disposable {
59
52
  @Autowired(IAIReporter)
60
53
  private readonly aiReporter: IAIReporter;
61
54
 
62
- @Autowired(ChatAgentViewServiceToken)
63
- private readonly chatAgentViewService: IChatAgentViewService;
64
-
65
- @Autowired(PreferenceService)
66
- private readonly preferenceService: PreferenceService;
67
-
68
- @Autowired(IApplicationService)
69
- private readonly applicationService: IApplicationService;
70
-
71
- @Autowired(IMessageService)
72
- private readonly messageService: IMessageService;
73
-
74
- @Autowired(AppConfig)
75
- private readonly appConfig: AppConfig;
76
-
77
55
  private chatDeferred: Deferred<void> = new Deferred<void>();
78
56
 
79
57
  public registerDefaultAgent() {
80
- this.chatAgentViewService.registerChatComponent({
81
- id: 'toolCall',
82
- component: ChatToolRender,
83
- initialProps: {},
84
- });
85
-
86
58
  this.addDispose(
87
59
  this.chatAgentService.registerAgent({
88
60
  id: ChatProxyService.AGENT_ID,
89
- metadata: {
90
- systemPrompt:
91
- this.preferenceService.get<string>(
92
- AINativeSettingSectionsId.SystemPrompt,
93
- 'You are a powerful AI coding assistant working in OpenSumi, a top IDE framework. You collaborate with a USER to solve coding tasks, which may involve creating, modifying, or debugging code, or answering questions. When the USER sends a message, relevant context (e.g., open files, cursor position, edit history, linter errors) may be attached. Use this information as needed.\n\n<tool_calling>\nYou have access to tools to assist with tasks. Follow these rules:\n1. Always adhere to the tool call schema and provide all required parameters.\n2. Only use tools explicitly provided; ignore unavailable ones.\n3. Avoid mentioning tool names to the USER (e.g., say "I will edit your file" instead of "I need to use the edit_file tool").\n4. Only call tools when necessary; respond directly if the task is general or you already know the answer.\n5. Explain to the USER why you’re using a tool before calling it.\n</tool_calling>\n\n<making_code_changes>\nWhen modifying code:\n1. Use code edit tools instead of outputting code unless explicitly requested.\n2. Limit tool calls to one per turn.\n3. Ensure generated code is immediately executable by including necessary imports, dependencies, and endpoints.\n4. For new projects, create a dependency management file (e.g., requirements.txt) and a README.\n5. For web apps, design a modern, user-friendly UI.\n6. Avoid generating non-textual or excessively long code.\n7. Read file contents before editing, unless appending a small change or creating a new file.\n8. Fix introduced linter errors if possible, but stop after 3 attempts and ask the USER for guidance.\n9. Reapply reasonable code edits if they weren’t followed initially.\n</making_code_changes>\n\nUse the appropriate tools to fulfill the USER’s request, ensuring all required parameters are provided or inferred from context.',
94
- ) +
95
- `\n\n<user_info>\nThe user's OS version is ${this.applicationService.frontendOS}. The absolute path of the user's workspace is ${this.appConfig.workspaceDir}.\n</user_info>`,
96
- },
61
+ metadata: {},
97
62
  invoke: async (
98
63
  request: IChatAgentRequest,
99
64
  progress: (part: IChatProgress) => void,
@@ -114,28 +79,12 @@ export class ChatProxyService extends Disposable {
114
79
  }
115
80
  }
116
81
 
117
- const model = this.preferenceService.get<string>(AINativeSettingSectionsId.LLMModelSelection);
118
- let apiKey: string = '';
119
- let baseURL: string = '';
120
- if (model === 'deepseek') {
121
- apiKey = this.preferenceService.get<string>(AINativeSettingSectionsId.DeepseekApiKey, '');
122
- } else if (model === 'openai') {
123
- apiKey = this.preferenceService.get<string>(AINativeSettingSectionsId.OpenaiApiKey, '');
124
- baseURL = this.preferenceService.get<string>(AINativeSettingSectionsId.OpenaiBaseURL, '');
125
- } else {
126
- apiKey = this.preferenceService.get<string>(AINativeSettingSectionsId.AnthropicApiKey, '');
127
- }
128
- const MAX_INPUT_TOKENS = 30720;
129
82
  const stream = await this.aiBackService.requestStream(
130
83
  prompt,
131
84
  {
132
85
  requestId: request.requestId,
133
86
  sessionId: request.sessionId,
134
- history: this.aiChatService.getHistoryMessages(MAX_INPUT_TOKENS),
135
- clientId: this.applicationService.clientId,
136
- apiKey,
137
- model,
138
- baseURL,
87
+ history: this.aiChatService.getHistoryMessages(),
139
88
  },
140
89
  token,
141
90
  );
@@ -148,7 +97,6 @@ export class ChatProxyService extends Disposable {
148
97
  this.chatDeferred.resolve();
149
98
  },
150
99
  onError: (error) => {
151
- this.messageService.error(error.message);
152
100
  this.aiReporter.end(request.sessionId + '_' + request.requestId, {
153
101
  message: error.message,
154
102
  success: false,
@@ -65,8 +65,8 @@ export class ChatService extends Disposable {
65
65
  this._onChatMessageListLaunch.fire(list);
66
66
  }
67
67
 
68
- public getHistoryMessages(maxInputTokens?: number): IHistoryChatMessage[] {
69
- return this.chatInternalService.sessionModel?.history.getMessages(maxInputTokens) || [];
68
+ public getHistoryMessages(): IHistoryChatMessage[] {
69
+ return this.chatInternalService.sessionModel?.history.getMessages() || [];
70
70
  }
71
71
 
72
72
  public scrollToBottom(): void {
@@ -27,12 +27,6 @@ export class ChatInternalService extends Disposable {
27
27
  private readonly _onChangeSession = new Emitter<string>();
28
28
  public readonly onChangeSession: Event<string> = this._onChangeSession.event;
29
29
 
30
- private readonly _onCancelRequest = new Emitter<void>();
31
- public readonly onCancelRequest: Event<void> = this._onCancelRequest.event;
32
-
33
- private readonly _onRegenerateRequest = new Emitter<void>();
34
- public readonly onRegenerateRequest: Event<void> = this._onRegenerateRequest.event;
35
-
36
30
  private _latestRequestId: string;
37
31
  public get latestRequestId(): string {
38
32
  return this._latestRequestId;
@@ -43,15 +37,9 @@ export class ChatInternalService extends Disposable {
43
37
  return this.#sessionModel;
44
38
  }
45
39
 
46
- init() {
47
- this.chatManagerService.onStorageInit(() => {
48
- const sessions = this.chatManagerService.getSessions();
49
- if (sessions.length > 0) {
50
- this.activateSession(sessions[sessions.length - 1].sessionId);
51
- } else {
52
- this.createSessionModel();
53
- }
54
- });
40
+ constructor() {
41
+ super();
42
+ this.#sessionModel = this.chatManagerService.startSession();
55
43
  }
56
44
 
57
45
  public setLatestRequestId(id: string): void {
@@ -64,36 +52,19 @@ export class ChatInternalService extends Disposable {
64
52
  }
65
53
 
66
54
  sendRequest(request: ChatRequestModel, regenerate = false) {
67
- const result = this.chatManagerService.sendRequest(this.#sessionModel.sessionId, request, regenerate);
68
- if (regenerate) {
69
- this._onRegenerateRequest.fire();
70
- }
71
- return result;
55
+ return this.chatManagerService.sendRequest(this.#sessionModel.sessionId, request, regenerate);
72
56
  }
73
57
 
74
58
  cancelRequest() {
75
59
  this.chatManagerService.cancelRequest(this.#sessionModel.sessionId);
76
- this._onCancelRequest.fire();
77
60
  }
78
61
 
79
- createSessionModel() {
62
+ clearSessionModel() {
63
+ this.chatManagerService.clearSession(this.#sessionModel.sessionId);
80
64
  this.#sessionModel = this.chatManagerService.startSession();
81
65
  this._onChangeSession.fire(this.#sessionModel.sessionId);
82
66
  }
83
67
 
84
- clearSessionModel(sessionId?: string) {
85
- sessionId = sessionId || this.#sessionModel.sessionId;
86
- this.chatManagerService.clearSession(sessionId);
87
- if (sessionId === this.#sessionModel.sessionId) {
88
- this.#sessionModel = this.chatManagerService.startSession();
89
- }
90
- this._onChangeSession.fire(this.#sessionModel.sessionId);
91
- }
92
-
93
- getSessions() {
94
- return this.chatManagerService.getSessions();
95
- }
96
-
97
68
  activateSession(sessionId: string) {
98
69
  const targetSession = this.chatManagerService.getSession(sessionId);
99
70
  if (!targetSession) {
@@ -75,14 +75,53 @@
75
75
 
76
76
  .header_container {
77
77
  height: 36px;
78
- padding: 8px 0 8px 16px;
78
+ display: flex;
79
+ justify-content: space-between;
80
+ align-items: center;
81
+ padding: 12px 0 12px 16px;
79
82
  box-sizing: border-box;
80
83
  background-color: var(--editorGroupHeader-tabsBackground);
81
84
  user-select: none;
82
85
 
83
- .header {
86
+ .left {
84
87
  display: flex;
85
88
  align-items: center;
89
+ height: 16px;
90
+ color: var(--design-title-foreground);
91
+ font-size: 12px;
92
+
93
+ .ai_avatar_icon {
94
+ width: 18px;
95
+ height: 18px;
96
+ }
97
+
98
+ .avatar_icon_normal {
99
+ width: 18px;
100
+ height: 18px;
101
+ font-size: 14px !important;
102
+ }
103
+
104
+ & > * {
105
+ margin-right: 8px;
106
+ }
107
+ }
108
+
109
+ .right {
110
+ display: flex;
111
+ align-items: center;
112
+ padding-right: 10px;
113
+ .popover_icon {
114
+ margin-left: 2px;
115
+ }
116
+
117
+ .action_btn {
118
+ display: flex;
119
+ align-items: center;
120
+ justify-content: center;
121
+ width: 22px;
122
+ height: 22px;
123
+ padding: 0;
124
+ }
86
125
  }
87
126
  }
88
127
 
@@ -278,18 +317,3 @@
278
317
  }
279
318
  }
280
319
  }
281
-
282
-
283
- .chat_tips_container {
284
- display: flex;
285
- align-items: center;
286
- justify-content: center;
287
- color: var(--tab-inactiveForeground);
288
- font-size: 12px;
289
- margin-top: 16px;
290
- }
291
-
292
- .chat_history {
293
- width: calc(100% - 60px);
294
- color: var(--design-text-foreground);
295
- }