@theia/ai-ide 1.67.0-next.3 → 1.67.0-next.56

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 (306) hide show
  1. package/README.md +1 -0
  2. package/package.json +21 -21
  3. package/src/browser/ai-configuration/agent-configuration-widget.tsx +3 -3
  4. package/src/browser/context-file-validation-service-impl.spec.ts +405 -0
  5. package/src/browser/context-file-validation-service-impl.ts +120 -0
  6. package/src/browser/context-functions.spec.ts +155 -1
  7. package/src/browser/context-functions.ts +40 -6
  8. package/src/browser/file-changeset-functions.spec.ts +13 -13
  9. package/src/browser/file-changeset-functions.ts +9 -9
  10. package/src/browser/frontend-module.ts +12 -4
  11. package/src/browser/ide-chat-welcome-message-provider.tsx +64 -70
  12. package/src/browser/remember-command-contribution.ts +105 -0
  13. package/src/browser/workspace-functions.ts +68 -1
  14. package/src/common/ai-ide-preferences.ts +1 -1
  15. package/src/common/coder-replace-prompt-template.ts +8 -9
  16. package/src/common/command-prompt-template.ts +5 -5
  17. package/src/common/file-changeset-function-ids.ts +15 -1
  18. package/src/common/orchestrator-chat-agent.ts +2 -2
  19. package/lib/browser/ai-configuration/agent-configuration-widget.d.ts +0 -41
  20. package/lib/browser/ai-configuration/agent-configuration-widget.d.ts.map +0 -1
  21. package/lib/browser/ai-configuration/agent-configuration-widget.js +0 -333
  22. package/lib/browser/ai-configuration/agent-configuration-widget.js.map +0 -1
  23. package/lib/browser/ai-configuration/ai-configuration-service.d.ts +0 -18
  24. package/lib/browser/ai-configuration/ai-configuration-service.d.ts.map +0 -1
  25. package/lib/browser/ai-configuration/ai-configuration-service.js +0 -53
  26. package/lib/browser/ai-configuration/ai-configuration-service.js.map +0 -1
  27. package/lib/browser/ai-configuration/ai-configuration-view-contribution.d.ts +0 -14
  28. package/lib/browser/ai-configuration/ai-configuration-view-contribution.d.ts.map +0 -1
  29. package/lib/browser/ai-configuration/ai-configuration-view-contribution.js +0 -67
  30. package/lib/browser/ai-configuration/ai-configuration-view-contribution.js.map +0 -1
  31. package/lib/browser/ai-configuration/ai-configuration-widget.d.ts +0 -29
  32. package/lib/browser/ai-configuration/ai-configuration-widget.d.ts.map +0 -1
  33. package/lib/browser/ai-configuration/ai-configuration-widget.js +0 -118
  34. package/lib/browser/ai-configuration/ai-configuration-widget.js.map +0 -1
  35. package/lib/browser/ai-configuration/language-model-renderer.d.ts +0 -13
  36. package/lib/browser/ai-configuration/language-model-renderer.d.ts.map +0 -1
  37. package/lib/browser/ai-configuration/language-model-renderer.js +0 -104
  38. package/lib/browser/ai-configuration/language-model-renderer.js.map +0 -1
  39. package/lib/browser/ai-configuration/mcp-configuration-widget.d.ts +0 -43
  40. package/lib/browser/ai-configuration/mcp-configuration-widget.d.ts.map +0 -1
  41. package/lib/browser/ai-configuration/mcp-configuration-widget.js +0 -302
  42. package/lib/browser/ai-configuration/mcp-configuration-widget.js.map +0 -1
  43. package/lib/browser/ai-configuration/model-aliases-configuration-widget.d.ts +0 -41
  44. package/lib/browser/ai-configuration/model-aliases-configuration-widget.d.ts.map +0 -1
  45. package/lib/browser/ai-configuration/model-aliases-configuration-widget.js +0 -226
  46. package/lib/browser/ai-configuration/model-aliases-configuration-widget.js.map +0 -1
  47. package/lib/browser/ai-configuration/prompt-fragments-configuration-widget.d.ts +0 -141
  48. package/lib/browser/ai-configuration/prompt-fragments-configuration-widget.d.ts.map +0 -1
  49. package/lib/browser/ai-configuration/prompt-fragments-configuration-widget.js +0 -508
  50. package/lib/browser/ai-configuration/prompt-fragments-configuration-widget.js.map +0 -1
  51. package/lib/browser/ai-configuration/template-settings-renderer.d.ts +0 -10
  52. package/lib/browser/ai-configuration/template-settings-renderer.d.ts.map +0 -1
  53. package/lib/browser/ai-configuration/template-settings-renderer.js +0 -48
  54. package/lib/browser/ai-configuration/template-settings-renderer.js.map +0 -1
  55. package/lib/browser/ai-configuration/token-usage-configuration-widget.d.ts +0 -22
  56. package/lib/browser/ai-configuration/token-usage-configuration-widget.d.ts.map +0 -1
  57. package/lib/browser/ai-configuration/token-usage-configuration-widget.js +0 -156
  58. package/lib/browser/ai-configuration/token-usage-configuration-widget.js.map +0 -1
  59. package/lib/browser/ai-configuration/tools-configuration-widget.d.ts +0 -30
  60. package/lib/browser/ai-configuration/tools-configuration-widget.d.ts.map +0 -1
  61. package/lib/browser/ai-configuration/tools-configuration-widget.js +0 -150
  62. package/lib/browser/ai-configuration/tools-configuration-widget.js.map +0 -1
  63. package/lib/browser/ai-configuration/variable-configuration-widget.d.ts +0 -19
  64. package/lib/browser/ai-configuration/variable-configuration-widget.d.ts.map +0 -1
  65. package/lib/browser/ai-configuration/variable-configuration-widget.js +0 -99
  66. package/lib/browser/ai-configuration/variable-configuration-widget.js.map +0 -1
  67. package/lib/browser/ai-ide-activation-service.d.ts +0 -18
  68. package/lib/browser/ai-ide-activation-service.d.ts.map +0 -1
  69. package/lib/browser/ai-ide-activation-service.js +0 -71
  70. package/lib/browser/ai-ide-activation-service.js.map +0 -1
  71. package/lib/browser/ai-terminal-functions.d.ts +0 -13
  72. package/lib/browser/ai-terminal-functions.d.ts.map +0 -1
  73. package/lib/browser/ai-terminal-functions.js +0 -114
  74. package/lib/browser/ai-terminal-functions.js.map +0 -1
  75. package/lib/browser/app-tester-chat-agent.d.ts +0 -35
  76. package/lib/browser/app-tester-chat-agent.d.ts.map +0 -1
  77. package/lib/browser/app-tester-chat-agent.js +0 -142
  78. package/lib/browser/app-tester-chat-agent.js.map +0 -1
  79. package/lib/browser/app-tester-chat-functions.d.ts +0 -25
  80. package/lib/browser/app-tester-chat-functions.d.ts.map +0 -1
  81. package/lib/browser/app-tester-chat-functions.js +0 -170
  82. package/lib/browser/app-tester-chat-functions.js.map +0 -1
  83. package/lib/browser/app-tester-prompt-template.d.ts +0 -6
  84. package/lib/browser/app-tester-prompt-template.d.ts.map +0 -1
  85. package/lib/browser/app-tester-prompt-template.js +0 -83
  86. package/lib/browser/app-tester-prompt-template.js.map +0 -1
  87. package/lib/browser/architect-agent.d.ts +0 -15
  88. package/lib/browser/architect-agent.d.ts.map +0 -1
  89. package/lib/browser/architect-agent.js +0 -68
  90. package/lib/browser/architect-agent.js.map +0 -1
  91. package/lib/browser/coder-agent.d.ts +0 -15
  92. package/lib/browser/coder-agent.d.ts.map +0 -1
  93. package/lib/browser/coder-agent.js +0 -81
  94. package/lib/browser/coder-agent.js.map +0 -1
  95. package/lib/browser/context-functions.d.ts +0 -14
  96. package/lib/browser/context-functions.d.ts.map +0 -1
  97. package/lib/browser/context-functions.js +0 -130
  98. package/lib/browser/context-functions.js.map +0 -1
  99. package/lib/browser/context-functions.spec.d.ts +0 -2
  100. package/lib/browser/context-functions.spec.d.ts.map +0 -1
  101. package/lib/browser/context-functions.spec.js +0 -93
  102. package/lib/browser/context-functions.spec.js.map +0 -1
  103. package/lib/browser/file-changeset-function.spec.d.ts +0 -2
  104. package/lib/browser/file-changeset-function.spec.d.ts.map +0 -1
  105. package/lib/browser/file-changeset-function.spec.js +0 -45
  106. package/lib/browser/file-changeset-function.spec.js.map +0 -1
  107. package/lib/browser/file-changeset-functions.d.ts +0 -87
  108. package/lib/browser/file-changeset-functions.d.ts.map +0 -1
  109. package/lib/browser/file-changeset-functions.js +0 -645
  110. package/lib/browser/file-changeset-functions.js.map +0 -1
  111. package/lib/browser/file-changeset-functions.spec.d.ts +0 -2
  112. package/lib/browser/file-changeset-functions.spec.d.ts.map +0 -1
  113. package/lib/browser/file-changeset-functions.spec.js +0 -179
  114. package/lib/browser/file-changeset-functions.spec.js.map +0 -1
  115. package/lib/browser/frontend-module.d.ts +0 -5
  116. package/lib/browser/frontend-module.d.ts.map +0 -1
  117. package/lib/browser/frontend-module.js +0 -214
  118. package/lib/browser/frontend-module.js.map +0 -1
  119. package/lib/browser/github-chat-agent.d.ts +0 -48
  120. package/lib/browser/github-chat-agent.d.ts.map +0 -1
  121. package/lib/browser/github-chat-agent.js +0 -222
  122. package/lib/browser/github-chat-agent.js.map +0 -1
  123. package/lib/browser/github-prompt-template.d.ts +0 -6
  124. package/lib/browser/github-prompt-template.d.ts.map +0 -1
  125. package/lib/browser/github-prompt-template.js +0 -53
  126. package/lib/browser/github-prompt-template.js.map +0 -1
  127. package/lib/browser/github-repo-variable-contribution.d.ts +0 -15
  128. package/lib/browser/github-repo-variable-contribution.d.ts.map +0 -1
  129. package/lib/browser/github-repo-variable-contribution.js +0 -82
  130. package/lib/browser/github-repo-variable-contribution.js.map +0 -1
  131. package/lib/browser/ide-chat-welcome-message-provider.d.ts +0 -11
  132. package/lib/browser/ide-chat-welcome-message-provider.d.ts.map +0 -1
  133. package/lib/browser/ide-chat-welcome-message-provider.js +0 -142
  134. package/lib/browser/ide-chat-welcome-message-provider.js.map +0 -1
  135. package/lib/browser/project-info-agent.d.ts +0 -13
  136. package/lib/browser/project-info-agent.d.ts.map +0 -1
  137. package/lib/browser/project-info-agent.js +0 -45
  138. package/lib/browser/project-info-agent.js.map +0 -1
  139. package/lib/browser/summarize-session-command-contribution.d.ts +0 -19
  140. package/lib/browser/summarize-session-command-contribution.d.ts.map +0 -1
  141. package/lib/browser/summarize-session-command-contribution.js +0 -118
  142. package/lib/browser/summarize-session-command-contribution.js.map +0 -1
  143. package/lib/browser/task-background-summary-variable.d.ts +0 -9
  144. package/lib/browser/task-background-summary-variable.d.ts.map +0 -1
  145. package/lib/browser/task-background-summary-variable.js +0 -60
  146. package/lib/browser/task-background-summary-variable.js.map +0 -1
  147. package/lib/browser/task-context-agent.d.ts +0 -13
  148. package/lib/browser/task-context-agent.d.ts.map +0 -1
  149. package/lib/browser/task-context-agent.js +0 -45
  150. package/lib/browser/task-context-agent.js.map +0 -1
  151. package/lib/browser/task-context-file-storage-service.d.ts +0 -40
  152. package/lib/browser/task-context-file-storage-service.d.ts.map +0 -1
  153. package/lib/browser/task-context-file-storage-service.js +0 -232
  154. package/lib/browser/task-context-file-storage-service.js.map +0 -1
  155. package/lib/browser/template-preference-contribution.d.ts +0 -17
  156. package/lib/browser/template-preference-contribution.d.ts.map +0 -1
  157. package/lib/browser/template-preference-contribution.js +0 -94
  158. package/lib/browser/template-preference-contribution.js.map +0 -1
  159. package/lib/browser/test/tool-provider-cancellation-test-util.spec.d.ts +0 -2
  160. package/lib/browser/test/tool-provider-cancellation-test-util.spec.d.ts.map +0 -1
  161. package/lib/browser/test/tool-provider-cancellation-test-util.spec.js +0 -52
  162. package/lib/browser/test/tool-provider-cancellation-test-util.spec.js.map +0 -1
  163. package/lib/browser/workspace-functions.d.ts +0 -75
  164. package/lib/browser/workspace-functions.d.ts.map +0 -1
  165. package/lib/browser/workspace-functions.js +0 -641
  166. package/lib/browser/workspace-functions.js.map +0 -1
  167. package/lib/browser/workspace-functions.spec.d.ts +0 -2
  168. package/lib/browser/workspace-functions.spec.d.ts.map +0 -1
  169. package/lib/browser/workspace-functions.spec.js +0 -161
  170. package/lib/browser/workspace-functions.spec.js.map +0 -1
  171. package/lib/browser/workspace-launch-provider.d.ts +0 -24
  172. package/lib/browser/workspace-launch-provider.d.ts.map +0 -1
  173. package/lib/browser/workspace-launch-provider.js +0 -216
  174. package/lib/browser/workspace-launch-provider.js.map +0 -1
  175. package/lib/browser/workspace-launch-provider.spec.d.ts +0 -2
  176. package/lib/browser/workspace-launch-provider.spec.d.ts.map +0 -1
  177. package/lib/browser/workspace-launch-provider.spec.js +0 -245
  178. package/lib/browser/workspace-launch-provider.spec.js.map +0 -1
  179. package/lib/browser/workspace-search-provider.d.ts +0 -15
  180. package/lib/browser/workspace-search-provider.d.ts.map +0 -1
  181. package/lib/browser/workspace-search-provider.js +0 -204
  182. package/lib/browser/workspace-search-provider.js.map +0 -1
  183. package/lib/browser/workspace-search-provider.spec.d.ts +0 -2
  184. package/lib/browser/workspace-search-provider.spec.d.ts.map +0 -1
  185. package/lib/browser/workspace-search-provider.spec.js +0 -82
  186. package/lib/browser/workspace-search-provider.spec.js.map +0 -1
  187. package/lib/browser/workspace-task-provider.d.ts +0 -15
  188. package/lib/browser/workspace-task-provider.d.ts.map +0 -1
  189. package/lib/browser/workspace-task-provider.js +0 -138
  190. package/lib/browser/workspace-task-provider.js.map +0 -1
  191. package/lib/browser/workspace-task-provider.spec.d.ts +0 -2
  192. package/lib/browser/workspace-task-provider.spec.d.ts.map +0 -1
  193. package/lib/browser/workspace-task-provider.spec.js +0 -109
  194. package/lib/browser/workspace-task-provider.spec.js.map +0 -1
  195. package/lib/common/ai-configuration-preferences.d.ts +0 -8
  196. package/lib/common/ai-configuration-preferences.d.ts.map +0 -1
  197. package/lib/common/ai-configuration-preferences.js +0 -41
  198. package/lib/common/ai-configuration-preferences.js.map +0 -1
  199. package/lib/common/ai-ide-preferences.d.ts +0 -5
  200. package/lib/common/ai-ide-preferences.d.ts.map +0 -1
  201. package/lib/common/ai-ide-preferences.js +0 -53
  202. package/lib/common/ai-ide-preferences.js.map +0 -1
  203. package/lib/common/ai-terminal-functions.d.ts +0 -2
  204. package/lib/common/ai-terminal-functions.d.ts.map +0 -1
  205. package/lib/common/ai-terminal-functions.js +0 -20
  206. package/lib/common/ai-terminal-functions.js.map +0 -1
  207. package/lib/common/app-tester-chat-functions.d.ts +0 -5
  208. package/lib/common/app-tester-chat-functions.d.ts.map +0 -1
  209. package/lib/common/app-tester-chat-functions.js +0 -23
  210. package/lib/common/app-tester-chat-functions.js.map +0 -1
  211. package/lib/common/architect-prompt-template.d.ts +0 -3
  212. package/lib/common/architect-prompt-template.d.ts.map +0 -1
  213. package/lib/common/architect-prompt-template.js +0 -81
  214. package/lib/common/architect-prompt-template.js.map +0 -1
  215. package/lib/common/browser-automation-protocol.d.ts +0 -15
  216. package/lib/common/browser-automation-protocol.d.ts.map +0 -1
  217. package/lib/common/browser-automation-protocol.js +0 -22
  218. package/lib/common/browser-automation-protocol.js.map +0 -1
  219. package/lib/common/coder-replace-prompt-template.d.ts +0 -11
  220. package/lib/common/coder-replace-prompt-template.d.ts.map +0 -1
  221. package/lib/common/coder-replace-prompt-template.js +0 -295
  222. package/lib/common/coder-replace-prompt-template.js.map +0 -1
  223. package/lib/common/command-chat-agents.d.ts +0 -36
  224. package/lib/common/command-chat-agents.d.ts.map +0 -1
  225. package/lib/common/command-chat-agents.js +0 -122
  226. package/lib/common/command-chat-agents.js.map +0 -1
  227. package/lib/common/command-prompt-template.d.ts +0 -3
  228. package/lib/common/command-prompt-template.d.ts.map +0 -1
  229. package/lib/common/command-prompt-template.js +0 -226
  230. package/lib/common/command-prompt-template.js.map +0 -1
  231. package/lib/common/context-files-variable.d.ts +0 -9
  232. package/lib/common/context-files-variable.d.ts.map +0 -1
  233. package/lib/common/context-files-variable.js +0 -52
  234. package/lib/common/context-files-variable.js.map +0 -1
  235. package/lib/common/context-functions.d.ts +0 -4
  236. package/lib/common/context-functions.d.ts.map +0 -1
  237. package/lib/common/context-functions.js +0 -22
  238. package/lib/common/context-functions.js.map +0 -1
  239. package/lib/common/context-variables.d.ts +0 -3
  240. package/lib/common/context-variables.d.ts.map +0 -1
  241. package/lib/common/context-variables.js +0 -21
  242. package/lib/common/context-variables.js.map +0 -1
  243. package/lib/common/file-changeset-function-ids.d.ts +0 -8
  244. package/lib/common/file-changeset-function-ids.d.ts.map +0 -1
  245. package/lib/common/file-changeset-function-ids.js +0 -26
  246. package/lib/common/file-changeset-function-ids.js.map +0 -1
  247. package/lib/common/github-repo-protocol.d.ts +0 -15
  248. package/lib/common/github-repo-protocol.d.ts.map +0 -1
  249. package/lib/common/github-repo-protocol.js +0 -21
  250. package/lib/common/github-repo-protocol.js.map +0 -1
  251. package/lib/common/orchestrator-chat-agent.d.ts +0 -36
  252. package/lib/common/orchestrator-chat-agent.d.ts.map +0 -1
  253. package/lib/common/orchestrator-chat-agent.js +0 -167
  254. package/lib/common/orchestrator-chat-agent.js.map +0 -1
  255. package/lib/common/orchestrator-prompt-template.d.ts +0 -3
  256. package/lib/common/orchestrator-prompt-template.d.ts.map +0 -1
  257. package/lib/common/orchestrator-prompt-template.js +0 -55
  258. package/lib/common/orchestrator-prompt-template.js.map +0 -1
  259. package/lib/common/project-info-prompt-template.d.ts +0 -6
  260. package/lib/common/project-info-prompt-template.d.ts.map +0 -1
  261. package/lib/common/project-info-prompt-template.js +0 -145
  262. package/lib/common/project-info-prompt-template.js.map +0 -1
  263. package/lib/common/summarize-session-commands.d.ts +0 -4
  264. package/lib/common/summarize-session-commands.d.ts.map +0 -1
  265. package/lib/common/summarize-session-commands.js +0 -28
  266. package/lib/common/summarize-session-commands.js.map +0 -1
  267. package/lib/common/task-context-prompt-template.d.ts +0 -8
  268. package/lib/common/task-context-prompt-template.d.ts.map +0 -1
  269. package/lib/common/task-context-prompt-template.js +0 -217
  270. package/lib/common/task-context-prompt-template.js.map +0 -1
  271. package/lib/common/universal-chat-agent.d.ts +0 -17
  272. package/lib/common/universal-chat-agent.d.ts.map +0 -1
  273. package/lib/common/universal-chat-agent.js +0 -47
  274. package/lib/common/universal-chat-agent.js.map +0 -1
  275. package/lib/common/universal-prompt-template.d.ts +0 -4
  276. package/lib/common/universal-prompt-template.d.ts.map +0 -1
  277. package/lib/common/universal-prompt-template.js +0 -32
  278. package/lib/common/universal-prompt-template.js.map +0 -1
  279. package/lib/common/workspace-functions.d.ts +0 -12
  280. package/lib/common/workspace-functions.d.ts.map +0 -1
  281. package/lib/common/workspace-functions.js +0 -30
  282. package/lib/common/workspace-functions.js.map +0 -1
  283. package/lib/common/workspace-preferences.d.ts +0 -10
  284. package/lib/common/workspace-preferences.d.ts.map +0 -1
  285. package/lib/common/workspace-preferences.js +0 -89
  286. package/lib/common/workspace-preferences.js.map +0 -1
  287. package/lib/common/workspace-search-provider-util.d.ts +0 -17
  288. package/lib/common/workspace-search-provider-util.d.ts.map +0 -1
  289. package/lib/common/workspace-search-provider-util.js +0 -51
  290. package/lib/common/workspace-search-provider-util.js.map +0 -1
  291. package/lib/node/app-tester-agent/browser-automation-impl.d.ts +0 -18
  292. package/lib/node/app-tester-agent/browser-automation-impl.d.ts.map +0 -1
  293. package/lib/node/app-tester-agent/browser-automation-impl.js +0 -96
  294. package/lib/node/app-tester-agent/browser-automation-impl.js.map +0 -1
  295. package/lib/node/backend-module.d.ts +0 -4
  296. package/lib/node/backend-module.d.ts.map +0 -1
  297. package/lib/node/backend-module.js +0 -45
  298. package/lib/node/backend-module.js.map +0 -1
  299. package/lib/node/github-repo-service-impl.d.ts +0 -7
  300. package/lib/node/github-repo-service-impl.d.ts.map +0 -1
  301. package/lib/node/github-repo-service-impl.js +0 -86
  302. package/lib/node/github-repo-service-impl.js.map +0 -1
  303. package/lib/package.spec.d.ts +0 -1
  304. package/lib/package.spec.d.ts.map +0 -1
  305. package/lib/package.spec.js +0 -26
  306. package/lib/package.spec.js.map +0 -1
@@ -1,222 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2025 EclipseSource GmbH.
4
- //
5
- // This program and the accompanying materials are made available under the
6
- // terms of the Eclipse Public License v. 2.0 which is available at
7
- // http://www.eclipse.org/legal/epl-2.0.
8
- //
9
- // This Source Code may also be made available under the following Secondary
10
- // Licenses when the conditions for such availability set forth in the Eclipse
11
- // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
- // with the GNU Classpath Exception which is available at
13
- // https://www.gnu.org/software/classpath/license.html.
14
- //
15
- // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
- // *****************************************************************************
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.GitHubChatAgent = exports.GitHubChatAgentId = void 0;
19
- const tslib_1 = require("tslib");
20
- const chat_agents_1 = require("@theia/ai-chat/lib/common/chat-agents");
21
- const chat_model_1 = require("@theia/ai-chat/lib/common/chat-model");
22
- const mcp_server_manager_1 = require("@theia/ai-mcp/lib/common/mcp-server-manager");
23
- const core_1 = require("@theia/core");
24
- const inversify_1 = require("@theia/core/shared/inversify");
25
- const mcp_preferences_1 = require("@theia/ai-mcp/lib/common/mcp-preferences");
26
- const common_1 = require("@theia/core/lib/common");
27
- const preference_types_1 = require("@theia/preferences/lib/browser/util/preference-types");
28
- const browser_1 = require("@theia/editor/lib/browser");
29
- const file_service_1 = require("@theia/filesystem/lib/browser/file-service");
30
- const github_prompt_template_1 = require("./github-prompt-template");
31
- exports.GitHubChatAgentId = 'GitHub';
32
- let GitHubChatAgent = class GitHubChatAgent extends chat_agents_1.AbstractStreamParsingChatAgent {
33
- constructor() {
34
- super(...arguments);
35
- this.id = exports.GitHubChatAgentId;
36
- this.name = exports.GitHubChatAgentId;
37
- this.languageModelRequirements = [{
38
- purpose: 'chat',
39
- identifier: 'default/code',
40
- }];
41
- this.defaultLanguageModelPurpose = 'chat';
42
- this.description = core_1.nls.localize('theia/ai/ide/github/description', 'This agent helps you interact with GitHub repositories, issues, pull requests, and other GitHub '
43
- + 'features through the GitHub MCP server. '
44
- + 'It can help you manage your repositories, create issues, handle pull requests, and perform various GitHub operations.');
45
- this.iconClass = 'codicon codicon-github';
46
- this.systemPromptId = 'github-system';
47
- this.prompts = [{ id: 'github-system', defaultVariant: github_prompt_template_1.githubTemplate, variants: [] }];
48
- }
49
- /**
50
- * Override invoke to check if the GitHub MCP server is configured and running,
51
- * and if not, offer to configure or start it.
52
- */
53
- async invoke(request) {
54
- try {
55
- if (await this.requiresConfiguration()) {
56
- // Ask the user if they want to configure the GitHub server
57
- request.response.response.addContent(new chat_model_1.QuestionResponseContentImpl(core_1.nls.localize('theia/ai/ide/github/configureGitHubServer/question', 'The GitHub MCP server is not configured. Would you like to configure it now? '
58
- + 'This will open the settings.json file where you can add your GitHub access token.'), [
59
- { text: core_1.nls.localize('theia/ai/ide/github/configureGitHubServer/yes', 'Yes, configure GitHub server'), value: 'configure' },
60
- { text: core_1.nls.localize('theia/ai/ide/github/configureGitHubServer/no', 'No, cancel'), value: 'cancel' }
61
- ], request, async (selectedOption) => {
62
- if (selectedOption.value === 'configure') {
63
- await this.offerConfiguration();
64
- request.response.response.addContent(new chat_model_1.MarkdownChatResponseContentImpl(core_1.nls.localize('theia/ai/ide/github/configureGitHubServer/followup', 'Settings file opened. Please add your GitHub Personal Access Token to the `serverAuthToken` property in the GitHub server configuration, then '
65
- + ' save and try again.\n\n' +
66
- 'You can create a Personal Access Token at: https://github.com/settings/tokens')));
67
- request.response.complete();
68
- }
69
- else {
70
- request.response.response.addContent(new chat_model_1.MarkdownChatResponseContentImpl(core_1.nls.localize('theia/ai/ide/github/configureGitHubServer/canceled', 'GitHub server configuration cancelled. Please configure the GitHub MCP server to use this agent.')));
71
- request.response.complete();
72
- }
73
- }));
74
- request.response.waitForInput();
75
- return;
76
- }
77
- if (await this.requiresStartingServer()) {
78
- // Ask the user if they want to start the server
79
- request.response.response.addContent(new chat_model_1.QuestionResponseContentImpl(core_1.nls.localize('theia/ai/ide/github/startGitHubServer/question', 'The GitHub MCP server is configured but not running. Would you like to start it now?'), [
80
- { text: core_1.nls.localize('theia/ai/ide/github/startGitHubServer/yes', 'Yes, start the server'), value: 'yes' },
81
- { text: core_1.nls.localize('theia/ai/ide/github/startGitHubServer/no', 'No, cancel'), value: 'no' }
82
- ], request, async (selectedOption) => {
83
- if (selectedOption.value === 'yes') {
84
- const progress = request.response.addProgressMessage({
85
- content: core_1.nls.localize('theia/ai/ide/github/startGitHubServer/progress', 'Starting GitHub MCP server.'),
86
- show: 'whileIncomplete'
87
- });
88
- try {
89
- await this.startServer();
90
- request.response.updateProgressMessage({ ...progress, show: 'whileIncomplete', status: 'completed' });
91
- await super.invoke(request);
92
- }
93
- catch (error) {
94
- request.response.response.addContent(new chat_model_1.ErrorChatResponseContentImpl(new Error(core_1.nls.localize('theia/ai/ide/github/startGitHubServer/error', 'Failed to start GitHub MCP server: {0}', error instanceof Error ? error.message : String(error)))));
95
- request.response.complete();
96
- }
97
- }
98
- else {
99
- request.response.response.addContent(new chat_model_1.MarkdownChatResponseContentImpl(core_1.nls.localize('theia/ai/ide/github/startGitHubServer/canceled', 'Please start the GitHub MCP server to use this agent.')));
100
- request.response.complete();
101
- }
102
- }));
103
- request.response.waitForInput();
104
- return;
105
- }
106
- // If already configured and running, continue as normal
107
- await super.invoke(request);
108
- }
109
- catch (error) {
110
- request.response.response.addContent(new chat_model_1.ErrorChatResponseContentImpl(new Error(core_1.nls.localize('theia/ai/ide/github/errorCheckingGitHubServerStatus', 'Error checking GitHub MCP server status: {0}', error instanceof Error ? error.message : String(error)))));
111
- request.response.complete();
112
- }
113
- }
114
- async requiresConfiguration() {
115
- const serverConfigured = await this.mcpService.hasServer(github_prompt_template_1.REQUIRED_GITHUB_MCP_SERVERS[0].name);
116
- return !serverConfigured;
117
- }
118
- async requiresStartingServer() {
119
- const serverStarted = await this.mcpService.isServerStarted(github_prompt_template_1.REQUIRED_GITHUB_MCP_SERVERS[0].name);
120
- return !serverStarted;
121
- }
122
- async startServer() {
123
- await this.ensureServerStarted(github_prompt_template_1.REQUIRED_GITHUB_MCP_SERVERS[0]);
124
- }
125
- async offerConfiguration() {
126
- const currentServers = this.preferenceService.get(mcp_preferences_1.MCP_SERVERS_PREF, {});
127
- const githubServer = github_prompt_template_1.REQUIRED_GITHUB_MCP_SERVERS[0];
128
- const { name, ...serverWithoutName } = githubServer;
129
- await this.preferenceService.set(mcp_preferences_1.MCP_SERVERS_PREF, {
130
- ...currentServers,
131
- [name]: serverWithoutName
132
- }, common_1.PreferenceScope.User);
133
- await this.openAndFocusOnGitHubConfig(name);
134
- }
135
- /**
136
- * Opens the user preferences JSON file and attempts to focus on the GitHub server configuration.
137
- */
138
- async openAndFocusOnGitHubConfig(serverName) {
139
- try {
140
- const configUri = this.preferenceService.getConfigUri(common_1.PreferenceScope.User);
141
- if (!configUri) {
142
- this.logger.debug('Could not get config URI for user preferences');
143
- return;
144
- }
145
- if (!await this.fileService.exists(configUri)) {
146
- await this.fileService.create(configUri);
147
- }
148
- const content = await this.fileService.read(configUri);
149
- const text = content.value;
150
- const preferencePattern = `"${mcp_preferences_1.MCP_SERVERS_PREF}"`;
151
- const preferenceMatch = text.indexOf(preferencePattern);
152
- let selection;
153
- if (preferenceMatch !== -1) {
154
- const serverPattern = `"${serverName}"`;
155
- const serverMatch = text.indexOf(serverPattern, preferenceMatch);
156
- if (serverMatch !== -1) {
157
- const lines = text.substring(0, serverMatch).split('\n');
158
- const line = lines.length - 1;
159
- const character = lines[lines.length - 1].length;
160
- selection = {
161
- start: { line, character }
162
- };
163
- }
164
- }
165
- await this.editorManager.open(configUri, {
166
- selection
167
- });
168
- }
169
- catch (error) {
170
- this.logger.debug('Failed to open and focus on GitHub configuration:', error);
171
- // Fallback to just opening the preferences file
172
- await this.commandService.executeCommand(preference_types_1.PreferencesCommands.OPEN_USER_PREFERENCES_JSON.id);
173
- }
174
- }
175
- /**
176
- * Starts the GitHub MCP server if it doesn't exist or isn't running.
177
- *
178
- * @returns A promise that resolves when the server is started
179
- */
180
- async ensureServerStarted(server) {
181
- try {
182
- if (!(await this.mcpService.hasServer(server.name))) {
183
- const currentServers = this.preferenceService.get(mcp_preferences_1.MCP_SERVERS_PREF, {});
184
- const { name, ...serverWithoutName } = server;
185
- await this.preferenceService.set(mcp_preferences_1.MCP_SERVERS_PREF, { ...currentServers, [name]: serverWithoutName }, common_1.PreferenceScope.User);
186
- await this.mcpService.addOrUpdateServer(server);
187
- }
188
- if (!(await this.mcpService.isServerStarted(server.name))) {
189
- await this.mcpService.startServer(server.name);
190
- }
191
- }
192
- catch (error) {
193
- this.logger.error(`Error starting GitHub MCP server ${server.name}: ${error}`);
194
- throw error;
195
- }
196
- }
197
- };
198
- exports.GitHubChatAgent = GitHubChatAgent;
199
- tslib_1.__decorate([
200
- (0, inversify_1.inject)(mcp_server_manager_1.MCPFrontendService),
201
- tslib_1.__metadata("design:type", Object)
202
- ], GitHubChatAgent.prototype, "mcpService", void 0);
203
- tslib_1.__decorate([
204
- (0, inversify_1.inject)(common_1.PreferenceService),
205
- tslib_1.__metadata("design:type", Object)
206
- ], GitHubChatAgent.prototype, "preferenceService", void 0);
207
- tslib_1.__decorate([
208
- (0, inversify_1.inject)(core_1.CommandService),
209
- tslib_1.__metadata("design:type", Object)
210
- ], GitHubChatAgent.prototype, "commandService", void 0);
211
- tslib_1.__decorate([
212
- (0, inversify_1.inject)(browser_1.EditorManager),
213
- tslib_1.__metadata("design:type", browser_1.EditorManager)
214
- ], GitHubChatAgent.prototype, "editorManager", void 0);
215
- tslib_1.__decorate([
216
- (0, inversify_1.inject)(file_service_1.FileService),
217
- tslib_1.__metadata("design:type", file_service_1.FileService)
218
- ], GitHubChatAgent.prototype, "fileService", void 0);
219
- exports.GitHubChatAgent = GitHubChatAgent = tslib_1.__decorate([
220
- (0, inversify_1.injectable)()
221
- ], GitHubChatAgent);
222
- //# sourceMappingURL=github-chat-agent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-chat-agent.js","sourceRoot":"","sources":["../../src/browser/github-chat-agent.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import { BasePromptFragment } from '@theia/ai-core/lib/common';
2
- import { MCPServerDescription } from '@theia/ai-mcp/lib/common/mcp-server-manager';
3
- export declare const GITHUB_REPO_NAME_VARIABLE_ID = "githubRepoName";
4
- export declare const REQUIRED_GITHUB_MCP_SERVERS: MCPServerDescription[];
5
- export declare const githubTemplate: BasePromptFragment;
6
- //# sourceMappingURL=github-prompt-template.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-prompt-template.d.ts","sourceRoot":"","sources":["../../src/browser/github-prompt-template.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAEnF,eAAO,MAAM,4BAA4B,mBAAmB,CAAC;AAE7D,eAAO,MAAM,2BAA2B,EAAE,oBAAoB,EAM7D,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,kBAwB5B,CAAC"}
@@ -1,53 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2025 EclipseSource GmbH.
4
- //
5
- // This program and the accompanying materials are made available under the
6
- // terms of the Eclipse Public License v. 2.0 which is available at
7
- // http://www.eclipse.org/legal/epl-2.0.
8
- //
9
- // This Source Code may also be made available under the following Secondary
10
- // Licenses when the conditions for such availability set forth in the Eclipse
11
- // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
- // with the GNU Classpath Exception which is available at
13
- // https://www.gnu.org/software/classpath/license.html.
14
- //
15
- // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
- // *
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.githubTemplate = exports.REQUIRED_GITHUB_MCP_SERVERS = exports.GITHUB_REPO_NAME_VARIABLE_ID = void 0;
19
- const ai_chat_1 = require("@theia/ai-chat");
20
- exports.GITHUB_REPO_NAME_VARIABLE_ID = 'githubRepoName';
21
- exports.REQUIRED_GITHUB_MCP_SERVERS = [
22
- {
23
- 'name': 'github',
24
- 'serverUrl': 'https://api.githubcopilot.com/mcp/',
25
- 'serverAuthToken': 'your_github_token_here'
26
- }
27
- ];
28
- exports.githubTemplate = {
29
- id: 'github-system-default',
30
- template: `{{!-- This prompt is licensed under the MIT License (https://opensource.org/license/mit).
31
- Made improvements or adaptations to this prompt template? We'd love for you to share it with the community! Contribute back here:
32
- https://github.com/eclipse-theia/theia/discussions/new?category=prompt-template-contribution --}}
33
-
34
- You are GitHub Agent, an AI assistant integrated into Theia IDE specifically designed to help developers interact with GitHub repositories.
35
- Your role is to help users manage GitHub repositories, issues, pull requests, and other GitHub-related tasks through the GitHub MCP server.
36
-
37
- ## Current Repository Context
38
- {{${exports.GITHUB_REPO_NAME_VARIABLE_ID}}}
39
-
40
- ## Available GitHub Tools
41
- You have access to GitHub functionality through the MCP server:
42
- {{prompt:mcp_github_tools}}
43
-
44
- ## Important Notes
45
- - Be mindful of rate limits and use batch operations when appropriate
46
- - Provide clear error messages and suggestions for resolution when operations fail
47
-
48
- ## Current Context
49
- Some files and other pieces of data may have been added by the user to the context of the chat. If any have, the details can be found below.
50
- {{${ai_chat_1.CHAT_CONTEXT_DETAILS_VARIABLE_ID}}}
51
- `
52
- };
53
- //# sourceMappingURL=github-prompt-template.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-prompt-template.js","sourceRoot":"","sources":["../../src/browser/github-prompt-template.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,IAAI;;;AAGJ,4CAAkE;AAGrD,QAAA,4BAA4B,GAAG,gBAAgB,CAAC;AAEhD,QAAA,2BAA2B,GAA2B;IAC/D;QACI,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,oCAAoC;QACjD,iBAAiB,EAAE,wBAAwB;KAC9C;CACJ,CAAC;AAEW,QAAA,cAAc,GAAuB;IAC9C,EAAE,EAAE,uBAAuB;IAC3B,QAAQ,EAAE;;;;;;;;IAQV,oCAA4B;;;;;;;;;;;;IAY5B,0CAAgC;CACnC;CACA,CAAC"}
@@ -1,15 +0,0 @@
1
- import { MaybePromise } from '@theia/core';
2
- import { AIVariableContribution, AIVariableResolver, AIVariableService, AIVariableResolutionRequest, AIVariableContext, ResolvedAIVariable, AIVariable } from '@theia/ai-core/lib/common';
3
- import { WorkspaceService } from '@theia/workspace/lib/browser';
4
- import { FileService } from '@theia/filesystem/lib/browser/file-service';
5
- import { GitHubRepoService } from '../common/github-repo-protocol';
6
- export declare const GITHUB_REPO_NAME_VARIABLE: AIVariable;
7
- export declare class GitHubRepoVariableContribution implements AIVariableContribution, AIVariableResolver {
8
- protected readonly workspaceService: WorkspaceService;
9
- protected readonly fileService: FileService;
10
- protected readonly gitHubRepoService: GitHubRepoService;
11
- registerVariables(service: AIVariableService): void;
12
- canResolve(request: AIVariableResolutionRequest, _context: AIVariableContext): MaybePromise<number>;
13
- resolve(request: AIVariableResolutionRequest, _context: AIVariableContext): Promise<ResolvedAIVariable | undefined>;
14
- }
15
- //# sourceMappingURL=github-repo-variable-contribution.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-repo-variable-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/github-repo-variable-contribution.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,YAAY,EAAO,MAAM,aAAa,CAAC;AAChD,OAAO,EACH,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,2BAA2B,EAC3B,iBAAiB,EACjB,kBAAkB,EAClB,UAAU,EACb,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAEzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEnE,eAAO,MAAM,yBAAyB,EAAE,UAIvC,CAAC;AAEF,qBACa,8BAA+B,YAAW,sBAAsB,EAAE,kBAAkB;IAG7F,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAG5C,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAExD,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAInD,UAAU,CAAC,OAAO,EAAE,2BAA2B,EAAE,QAAQ,EAAE,iBAAiB,GAAG,YAAY,CAAC,MAAM,CAAC;IAQ7F,OAAO,CAAC,OAAO,EAAE,2BAA2B,EAAE,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;CA8B5H"}
@@ -1,82 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2025 EclipseSource GmbH.
4
- //
5
- // This program and the accompanying materials are made available under the
6
- // terms of the Eclipse Public License v. 2.0 which is available at
7
- // http://www.eclipse.org/legal/epl-2.0.
8
- //
9
- // This Source Code may also be made available under the following Secondary
10
- // Licenses when the conditions for such availability set forth in the Eclipse
11
- // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
- // with the GNU Classpath Exception which is available at
13
- // https://www.gnu.org/software/classpath/license.html.
14
- //
15
- // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
- // *****************************************************************************
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.GitHubRepoVariableContribution = exports.GITHUB_REPO_NAME_VARIABLE = void 0;
19
- const tslib_1 = require("tslib");
20
- const inversify_1 = require("@theia/core/shared/inversify");
21
- const core_1 = require("@theia/core");
22
- const browser_1 = require("@theia/workspace/lib/browser");
23
- const file_service_1 = require("@theia/filesystem/lib/browser/file-service");
24
- const github_repo_protocol_1 = require("../common/github-repo-protocol");
25
- exports.GITHUB_REPO_NAME_VARIABLE = {
26
- id: 'github-repo-name-provider',
27
- name: 'githubRepoName',
28
- description: core_1.nls.localize('theia/ai/ide/githubRepoName/description', 'The name of the current GitHub repository (e.g., "eclipse-theia/theia")')
29
- };
30
- let GitHubRepoVariableContribution = class GitHubRepoVariableContribution {
31
- registerVariables(service) {
32
- service.registerResolver(exports.GITHUB_REPO_NAME_VARIABLE, this);
33
- }
34
- canResolve(request, _context) {
35
- if (request.variable.name !== exports.GITHUB_REPO_NAME_VARIABLE.name) {
36
- return 0;
37
- }
38
- return 1;
39
- }
40
- async resolve(request, _context) {
41
- if (request.variable.name !== exports.GITHUB_REPO_NAME_VARIABLE.name) {
42
- return undefined;
43
- }
44
- try {
45
- const workspaceRoots = await this.workspaceService.roots;
46
- if (workspaceRoots.length === 0) {
47
- return { variable: request.variable, value: 'No GitHub repository is currently selected or detected.' };
48
- }
49
- // Get the filesystem path from the workspace root URI
50
- const workspaceRoot = workspaceRoots[0].resource;
51
- const workspacePath = workspaceRoot.path.fsPath();
52
- // Use the backend service to get GitHub repository information
53
- const repoInfo = await this.gitHubRepoService.getGitHubRepoInfo(workspacePath);
54
- if (!repoInfo) {
55
- return { variable: request.variable, value: 'No GitHub repository is currently selected or detected.' };
56
- }
57
- const repoName = `${repoInfo.owner}/${repoInfo.repo}`;
58
- return { variable: request.variable, value: `You are currently working with the GitHub repository: **${repoName}**` };
59
- }
60
- catch (error) {
61
- console.warn('Failed to resolve GitHub repository name:', error);
62
- return { variable: request.variable, value: 'No GitHub repository is currently selected or detected.' };
63
- }
64
- }
65
- };
66
- exports.GitHubRepoVariableContribution = GitHubRepoVariableContribution;
67
- tslib_1.__decorate([
68
- (0, inversify_1.inject)(browser_1.WorkspaceService),
69
- tslib_1.__metadata("design:type", browser_1.WorkspaceService)
70
- ], GitHubRepoVariableContribution.prototype, "workspaceService", void 0);
71
- tslib_1.__decorate([
72
- (0, inversify_1.inject)(file_service_1.FileService),
73
- tslib_1.__metadata("design:type", file_service_1.FileService)
74
- ], GitHubRepoVariableContribution.prototype, "fileService", void 0);
75
- tslib_1.__decorate([
76
- (0, inversify_1.inject)(github_repo_protocol_1.GitHubRepoService),
77
- tslib_1.__metadata("design:type", Object)
78
- ], GitHubRepoVariableContribution.prototype, "gitHubRepoService", void 0);
79
- exports.GitHubRepoVariableContribution = GitHubRepoVariableContribution = tslib_1.__decorate([
80
- (0, inversify_1.injectable)()
81
- ], GitHubRepoVariableContribution);
82
- //# sourceMappingURL=github-repo-variable-contribution.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-repo-variable-contribution.js","sourceRoot":"","sources":["../../src/browser/github-repo-variable-contribution.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAAkE;AAClE,sCAAgD;AAUhD,0DAAgE;AAChE,6EAAyE;AAEzE,yEAAmE;AAEtD,QAAA,yBAAyB,GAAe;IACjD,EAAE,EAAE,2BAA2B;IAC/B,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,UAAG,CAAC,QAAQ,CAAC,yCAAyC,EAAE,yEAAyE,CAAC;CAClJ,CAAC;AAGK,IAAM,8BAA8B,GAApC,MAAM,8BAA8B;IAWvC,iBAAiB,CAAC,OAA0B;QACxC,OAAO,CAAC,gBAAgB,CAAC,iCAAyB,EAAE,IAAI,CAAC,CAAC;IAC9D,CAAC;IAED,UAAU,CAAC,OAAoC,EAAE,QAA2B;QACxE,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,iCAAyB,CAAC,IAAI,EAAE,CAAC;YAC3D,OAAO,CAAC,CAAC;QACb,CAAC;QAED,OAAO,CAAC,CAAC;IACb,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAoC,EAAE,QAA2B;QAC3E,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,iCAAyB,CAAC,IAAI,EAAE,CAAC;YAC3D,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,IAAI,CAAC;YACD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;YACzD,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,yDAAyD,EAAE,CAAC;YAC5G,CAAC;YAED,sDAAsD;YACtD,MAAM,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACjD,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAElD,+DAA+D;YAC/D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;YAE/E,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACZ,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,yDAAyD,EAAE,CAAC;YAC5G,CAAC;YAED,MAAM,QAAQ,GAAG,GAAG,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YACtD,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,2DAA2D,QAAQ,IAAI,EAAE,CAAC;QAE1H,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAC;YACjE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,yDAAyD,EAAE,CAAC;QAC5G,CAAC;IACL,CAAC;CACJ,CAAA;AArDY,wEAA8B;AAGpB;IADlB,IAAA,kBAAM,EAAC,0BAAgB,CAAC;sCACY,0BAAgB;wEAAC;AAGnC;IADlB,IAAA,kBAAM,EAAC,0BAAW,CAAC;sCACY,0BAAW;mEAAC;AAGzB;IADlB,IAAA,kBAAM,EAAC,wCAAiB,CAAC;;yEAC8B;yCAT/C,8BAA8B;IAD1C,IAAA,sBAAU,GAAE;GACA,8BAA8B,CAqD1C"}
@@ -1,11 +0,0 @@
1
- /// <reference types="react" />
2
- import { ChatWelcomeMessageProvider } from '@theia/ai-chat-ui/lib/browser/chat-tree-view';
3
- import * as React from '@theia/core/shared/react';
4
- import { CommandRegistry } from '@theia/core';
5
- export declare class IdeChatWelcomeMessageProvider implements ChatWelcomeMessageProvider {
6
- protected commandRegistry: CommandRegistry;
7
- renderWelcomeMessage?(): React.ReactNode;
8
- renderDisabledMessage?(): React.ReactNode;
9
- protected renderLinkButton(title: string, openCommandId: string, ...commandArgs: unknown[]): React.ReactNode;
10
- }
11
- //# sourceMappingURL=ide-chat-welcome-message-provider.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ide-chat-welcome-message-provider.d.ts","sourceRoot":"","sources":["../../src/browser/ide-chat-welcome-message-provider.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,0BAA0B,EAAc,MAAM,8CAA8C,CAAC;AACtG,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAGlD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAoC9C,qBACa,6BAA8B,YAAW,0BAA0B;IAG5E,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC;IAE3C,oBAAoB,CAAC,IAAI,KAAK,CAAC,SAAS;IAoBxC,qBAAqB,CAAC,IAAI,KAAK,CAAC,SAAS;IA0DzC,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,SAAS;CAU/G"}
@@ -1,142 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2025 EclipseSource GmbH.
4
- //
5
- // This program and the accompanying materials are made available under the
6
- // terms of the Eclipse Public License v. 2.0 which is available at
7
- // http://www.eclipse.org/legal/epl-2.0.
8
- //
9
- // This Source Code may also be made available under the following Secondary
10
- // Licenses when the conditions for such availability set forth in the Eclipse
11
- // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
- // with the GNU Classpath Exception which is available at
13
- // https://www.gnu.org/software/classpath/license.html.
14
- //
15
- // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
- // *****************************************************************************
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.IdeChatWelcomeMessageProvider = void 0;
19
- const tslib_1 = require("tslib");
20
- const chat_tree_view_1 = require("@theia/ai-chat-ui/lib/browser/chat-tree-view");
21
- const React = require("@theia/core/shared/react");
22
- const nls_1 = require("@theia/core/lib/common/nls");
23
- const inversify_1 = require("@theia/core/shared/inversify");
24
- const core_1 = require("@theia/core");
25
- const browser_1 = require("@theia/core/lib/browser");
26
- const TheiaIdeAiLogo = ({ width = 200, height = 200, className = '' }) => React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 200 200", width: width, height: height, className: className },
27
- React.createElement("rect", { x: "55", y: "45", width: "90", height: "85", rx: "30", fill: "var(--theia-disabledForeground)" }),
28
- React.createElement("line", { x1: "100", y1: "45", x2: "100", y2: "30", stroke: "var(--theia-foreground)", strokeWidth: "4" }),
29
- React.createElement("circle", { cx: "100", cy: "25", r: "6", fill: "var(--theia-foreground)" }),
30
- React.createElement("rect", { x: "40", y: "75", width: "15", height: "30", rx: "5", fill: "var(--theia-foreground)" }),
31
- React.createElement("rect", { x: "145", y: "75", width: "15", height: "30", rx: "5", fill: "var(--theia-foreground)" }),
32
- React.createElement("circle", { cx: "80", cy: "80", r: "10", fill: "var(--theia-editor-background)" }),
33
- React.createElement("circle", { cx: "120", cy: "80", r: "10", fill: "var(--theia-editor-background)" }),
34
- React.createElement("path", { d: "M85 105 Q100 120 115 105", fill: "none", stroke: "var(--theia-editor-background)", strokeWidth: "4", strokeLinecap: "round" }),
35
- React.createElement("rect", { x: "55", y: "135", width: "90", height: "30", rx: "5", fill: "var(--theia-foreground)" }),
36
- React.createElement("rect", { x: "60", y: "140", width: "10", height: "8", rx: "2", fill: "var(--theia-editor-background)" }),
37
- React.createElement("rect", { x: "75", y: "140", width: "10", height: "8", rx: "2", fill: "var(--theia-editor-background)" }),
38
- React.createElement("rect", { x: "90", y: "140", width: "10", height: "8", rx: "2", fill: "var(--theia-editor-background)" }),
39
- React.createElement("rect", { x: "105", y: "140", width: "10", height: "8", rx: "2", fill: "var(--theia-editor-background)" }),
40
- React.createElement("rect", { x: "120", y: "140", width: "10", height: "8", rx: "2", fill: "var(--theia-editor-background)" }),
41
- React.createElement("rect", { x: "65", y: "152", width: "50", height: "8", rx: "2", fill: "var(--theia-editor-background)" }),
42
- React.createElement("rect", { x: "120", y: "152", width: "10", height: "8", rx: "2", fill: "var(--theia-editor-background)" }));
43
- let IdeChatWelcomeMessageProvider = class IdeChatWelcomeMessageProvider {
44
- renderWelcomeMessage() {
45
- return React.createElement("div", { className: 'theia-WelcomeMessage' },
46
- React.createElement(TheiaIdeAiLogo, { width: 200, height: 200, className: "theia-WelcomeMessage-Logo" }),
47
- React.createElement("div", { className: "theia-WelcomeMessage-Content" },
48
- React.createElement("h1", null, "Ask the Theia IDE AI"),
49
- React.createElement("p", null,
50
- "To talk to a specialized agent, simply start your message with ",
51
- React.createElement("em", null, "@"),
52
- " followed by the agent's name:",
53
- ' ',
54
- React.createElement("em", null, "@Coder"),
55
- ", ",
56
- React.createElement("em", null, "@Architect"),
57
- ", ",
58
- React.createElement("em", null, "@Universal"),
59
- ", and more."),
60
- React.createElement("p", null,
61
- "Attach context: use variables, like ",
62
- React.createElement("em", null, "#file"),
63
- ", ",
64
- React.createElement("em", null, "#_f"),
65
- " (current file), ",
66
- React.createElement("em", null, "#selectedText"),
67
- ' ',
68
- "or click ",
69
- React.createElement("span", { className: "codicon codicon-add" }),
70
- "."),
71
- React.createElement("p", null,
72
- "Lean more in the ",
73
- React.createElement("a", { target: '_blank', href: "https://theia-ide.org/docs/user_ai/#chat" }, "documentation"),
74
- ".")));
75
- }
76
- renderDisabledMessage() {
77
- return React.createElement("div", { className: 'theia-ResponseNode' },
78
- React.createElement("div", { className: 'theia-ResponseNode-Content', key: 'disabled-message' },
79
- React.createElement("div", { className: "disable-message" },
80
- React.createElement("span", { className: "section-header" }, nls_1.nls.localize('theia/ai/chat-ui/chat-view-tree-widget/aiFeatureHeader', '🚀 AI Features Available (Beta Version)!')),
81
- React.createElement("div", { className: "section-title" },
82
- React.createElement("p", null,
83
- React.createElement("code", null, nls_1.nls.localize('theia/ai/chat-ui/chat-view-tree-widget/featuresDisabled', 'Currently, all AI Features are disabled!')))),
84
- React.createElement("div", { className: "section-title" },
85
- React.createElement("p", null, nls_1.nls.localize('theia/ai/chat-ui/chat-view-tree-widget/howToEnable', 'How to Enable the AI Features:'))),
86
- React.createElement("div", { className: "section-content" },
87
- React.createElement("p", null,
88
- "To enable the AI features, please go to the AI features section of the\u00A0",
89
- this.renderLinkButton(nls_1.nls.localize('theia/ai/chat-ui/chat-view-tree-widget/settingsMenu', 'the settings menu'), browser_1.CommonCommands.OPEN_PREFERENCES.id, 'ai-features'),
90
- "\u00A0and"),
91
- React.createElement("ol", null,
92
- React.createElement("li", null,
93
- "Toggle the switch for ",
94
- React.createElement("strong", null, nls_1.nls.localize('theia/ai/chat-ui/chat-view-tree-widget/aiFeaturesEnable', 'Ai-features: Enable')),
95
- "."),
96
- React.createElement("li", null,
97
- "Provide at least one LLM provider (e.g. OpenAI). See ",
98
- React.createElement("a", { href: "https://theia-ide.org/docs/user_ai/", target: "_blank" }, "the documentation"),
99
- "\u00A0for more information.")),
100
- React.createElement("p", null,
101
- "This will activate the AI capabilities in the app. Please remember, these features are ",
102
- React.createElement("strong", null, "in a beta state"),
103
- ", so they may change and we are working on improving them \uD83D\uDEA7.",
104
- React.createElement("br", null),
105
- "Please support us by ",
106
- React.createElement("a", { href: "https://github.com/eclipse-theia/theia" }, "providing feedback"),
107
- "!")),
108
- React.createElement("div", { className: "section-title" },
109
- React.createElement("p", null, "Currently Supported Views and Features:")),
110
- React.createElement("div", { className: "section-content" },
111
- React.createElement("p", null, "Once the AI features are enabled, you can access the following views and features:"),
112
- React.createElement("ul", null,
113
- React.createElement("li", null, "Code Completion"),
114
- React.createElement("li", null, "Terminal Assistance (via CTRL+I in a terminal)"),
115
- React.createElement("li", null,
116
- "This Chat View (features the following agents):",
117
- React.createElement("ul", null,
118
- React.createElement("li", null, "Universal Chat Agent"),
119
- React.createElement("li", null, "Coder Chat Agent"),
120
- React.createElement("li", null, "Architect Chat Agent"),
121
- React.createElement("li", null, "Command Chat Agent"),
122
- React.createElement("li", null, "Orchestrator Chat Agent"))),
123
- React.createElement("li", null, this.renderLinkButton(nls_1.nls.localize('theia/ai/chat-ui/chat-view-tree-widget/aiHistoryView', 'AI History View'), 'aiHistory:open')),
124
- React.createElement("li", null, this.renderLinkButton(nls_1.nls.localize('theia/ai/chat-ui/chat-view-tree-widget/aiConfigurationView', 'AI Configuration View'), 'aiConfiguration:open'))),
125
- React.createElement("p", null,
126
- "See ",
127
- React.createElement("a", { href: "https://theia-ide.org/docs/user_ai/", target: "_blank" }, "the documentation"),
128
- " for more information.")))));
129
- }
130
- renderLinkButton(title, openCommandId, ...commandArgs) {
131
- return React.createElement("a", { role: 'button', tabIndex: 0, onClick: () => this.commandRegistry.executeCommand(openCommandId, ...commandArgs), onKeyDown: e => (0, chat_tree_view_1.isEnterKey)(e) && this.commandRegistry.executeCommand(openCommandId) }, title);
132
- }
133
- };
134
- exports.IdeChatWelcomeMessageProvider = IdeChatWelcomeMessageProvider;
135
- tslib_1.__decorate([
136
- (0, inversify_1.inject)(core_1.CommandRegistry),
137
- tslib_1.__metadata("design:type", core_1.CommandRegistry)
138
- ], IdeChatWelcomeMessageProvider.prototype, "commandRegistry", void 0);
139
- exports.IdeChatWelcomeMessageProvider = IdeChatWelcomeMessageProvider = tslib_1.__decorate([
140
- (0, inversify_1.injectable)()
141
- ], IdeChatWelcomeMessageProvider);
142
- //# sourceMappingURL=ide-chat-welcome-message-provider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ide-chat-welcome-message-provider.js","sourceRoot":"","sources":["../../src/browser/ide-chat-welcome-message-provider.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,iFAAsG;AACtG,kDAAkD;AAClD,oDAAiD;AACjD,4DAAkE;AAClE,sCAA8C;AAC9C,qDAAyD;AAEzD,MAAM,cAAc,GAAG,CAAC,EAAE,KAAK,GAAG,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CACrE,6BACI,KAAK,EAAC,4BAA4B,EAClC,OAAO,EAAC,aAAa,EACrB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS;IAEpB,8BAAM,CAAC,EAAC,IAAI,EAAC,CAAC,EAAC,IAAI,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,IAAI,EAAC,iCAAiC,GAAG;IAE5F,8BAAM,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,IAAI,EAAC,MAAM,EAAC,yBAAyB,EAAC,WAAW,EAAC,GAAG,GAAG;IAC3F,gCAAQ,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,GAAG,EAAC,IAAI,EAAC,yBAAyB,GAAG;IAEhE,8BAAM,CAAC,EAAC,IAAI,EAAC,CAAC,EAAC,IAAI,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,EAAC,IAAI,EAAC,yBAAyB,GAAG;IACnF,8BAAM,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,IAAI,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,EAAC,IAAI,EAAC,yBAAyB,GAAG;IAEpF,gCAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,IAAI,EAAC,IAAI,EAAC,gCAAgC,GAAG;IACvE,gCAAQ,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,IAAI,EAAC,IAAI,EAAC,gCAAgC,GAAG;IAExE,8BAAM,CAAC,EAAC,0BAA0B,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,gCAAgC,EAAC,WAAW,EAAC,GAAG,EAAC,aAAa,EAAC,OAAO,GAAG;IAE/H,8BAAM,CAAC,EAAC,IAAI,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,EAAC,IAAI,EAAC,yBAAyB,GAAG;IAEpF,8BAAM,CAAC,EAAC,IAAI,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,IAAI,EAAC,gCAAgC,GAAG;IAC1F,8BAAM,CAAC,EAAC,IAAI,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,IAAI,EAAC,gCAAgC,GAAG;IAC1F,8BAAM,CAAC,EAAC,IAAI,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,IAAI,EAAC,gCAAgC,GAAG;IAC1F,8BAAM,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,IAAI,EAAC,gCAAgC,GAAG;IAC3F,8BAAM,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,IAAI,EAAC,gCAAgC,GAAG;IAE3F,8BAAM,CAAC,EAAC,IAAI,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,IAAI,EAAC,gCAAgC,GAAG;IAC1F,8BAAM,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,IAAI,EAAC,gCAAgC,GAAG,CACzF,CAAC;AAGJ,IAAM,6BAA6B,GAAnC,MAAM,6BAA6B;IAKtC,oBAAoB;QAChB,OAAO,6BAAK,SAAS,EAAE,sBAAsB;YACzC,oBAAC,cAAc,IAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAC,2BAA2B,GAAG;YACjF,6BAAK,SAAS,EAAC,8BAA8B;gBACzC,uDAA6B;gBAC7B;;oBACmE,oCAAU;;oBAA+B,GAAG;oBAC3G,yCAAe;;oBAAE,6CAAmB;;oBAAE,6CAAmB;kCACzD;gBACJ;;oBACyC,wCAAc;;oBAAE,sCAAY;;oBAAiB,gDAAsB;oBAAC,GAAG;;oBACnG,8BAAM,SAAS,EAAC,qBAAqB,GAAG;wBACjD;gBACJ;;oBACqB,2BAAG,MAAM,EAAC,QAAQ,EAAC,IAAI,EAAC,0CAA0C,oBAAkB;wBACrG,CACF,CACJ,CAAC;IACX,CAAC;IAED,qBAAqB;QACjB,OAAO,6BAAK,SAAS,EAAE,oBAAoB;YACvC,6BAAK,SAAS,EAAC,4BAA4B,EAAC,GAAG,EAAE,kBAAkB;gBAC/D,6BAAK,SAAS,EAAC,iBAAiB;oBAC5B,8BAAM,SAAS,EAAC,gBAAgB,IAC5B,SAAG,CAAC,QAAQ,CAAC,wDAAwD,EAAE,0CAA0C,CAAC,CAC/G;oBACP,6BAAK,SAAS,EAAC,eAAe;wBAC1B;4BAAG,kCAAO,SAAG,CAAC,QAAQ,CAAC,yDAAyD,EAAE,0CAA0C,CAAC,CAAQ,CAAI,CACvI;oBACN,6BAAK,SAAS,EAAC,eAAe;wBAC1B,+BAAI,SAAG,CAAC,QAAQ,CAAC,oDAAoD,EAAE,gCAAgC,CAAC,CAAK,CAC3G;oBACN,6BAAK,SAAS,EAAC,iBAAiB;wBAC5B;;4BACK,IAAI,CAAC,gBAAgB,CAAC,SAAG,CAAC,QAAQ,CAAC,qDAAqD,EAAE,mBAAmB,CAAC,EAC3G,wBAAc,CAAC,gBAAgB,CAAC,EAAE,EAAE,aAAa,CAAC;wCACtD;wBACJ;4BACI;;gCAA0B,oCAAS,SAAG,CAAC,QAAQ,CAAC,yDAAyD,EAAE,qBAAqB,CAAC,CAAU;oCAAM;4BACjJ;;gCAAyD,2BAAG,IAAI,EAAC,qCAAqC,EAAC,MAAM,EAAC,QAAQ,wBAAsB;8DACxG,CACnC;wBACL;;4BAA0F,sDAAgC;;4BAC3D,+BAAS;;4BAC/C,2BAAG,IAAI,EAAC,wCAAwC,yBACjE;gCAAK,CACX;oBAEN,6BAAK,SAAS,EAAC,eAAe;wBAC1B,yEAA8C,CAC5C;oBACN,6BAAK,SAAS,EAAC,iBAAiB;wBAC5B,oHAAyF;wBACzF;4BACI,kDAAwB;4BACxB,iFAAuD;4BACvD;;gCACI;oCACI,uDAA6B;oCAC7B,mDAAyB;oCACzB,uDAA6B;oCAC7B,qDAA2B;oCAC3B,0DAAgC,CAC/B,CACJ;4BACL,gCAAK,IAAI,CAAC,gBAAgB,CAAC,SAAG,CAAC,QAAQ,CAAC,sDAAsD,EAAE,iBAAiB,CAAC,EAAE,gBAAgB,CAAC,CAAM;4BAC3I,gCAAK,IAAI,CAAC,gBAAgB,CACtB,SAAG,CAAC,QAAQ,CAAC,4DAA4D,EAAE,uBAAuB,CAAC,EAAE,sBAAsB,CAAC,CAC3H,CACJ;wBACL;;4BAAO,2BAAG,IAAI,EAAC,qCAAqC,EAAC,MAAM,EAAC,QAAQ,wBAAsB;qDAA0B,CAClH,CACJ,CACJ,CACH,CAAC;IACZ,CAAC;IAES,gBAAgB,CAAC,KAAa,EAAE,aAAqB,EAAE,GAAG,WAAsB;QACtF,OAAO,2BACH,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,aAAa,EAAE,GAAG,WAAW,CAAC,EACjF,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,IAAA,2BAAU,EAAC,CAAC,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,aAAa,CAAC,IAClF,KAAK,CACN,CAAC;IACT,CAAC;CAEJ,CAAA;AA7FY,sEAA6B;AAG5B;IADT,IAAA,kBAAM,EAAC,sBAAe,CAAC;sCACG,sBAAe;sEAAC;wCAHlC,6BAA6B;IADzC,IAAA,sBAAU,GAAE;GACA,6BAA6B,CA6FzC"}
@@ -1,13 +0,0 @@
1
- import { AbstractStreamParsingChatAgent } from '@theia/ai-chat';
2
- import { LanguageModelRequirement } from '@theia/ai-core';
3
- export declare class ProjectInfoAgent extends AbstractStreamParsingChatAgent {
4
- name: string;
5
- id: string;
6
- languageModelRequirements: LanguageModelRequirement[];
7
- protected defaultLanguageModelPurpose: string;
8
- description: string;
9
- tags: string[];
10
- prompts: import("@theia/ai-core").PromptVariantSet[];
11
- protected systemPromptId: string | undefined;
12
- }
13
- //# sourceMappingURL=project-info-agent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"project-info-agent.d.ts","sourceRoot":"","sources":["../../src/browser/project-info-agent.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAK1D,qBACa,gBAAiB,SAAQ,8BAA8B;IAEhE,IAAI,SAAiB;IACrB,EAAE,SAAiB;IACnB,yBAAyB,EAAE,wBAAwB,EAAE,CAGlD;IACH,SAAS,CAAC,2BAA2B,EAAE,MAAM,CAAU;IAE9C,WAAW,SAEwJ;IAEnK,IAAI,EAAE,MAAM,EAAE,CAA2B;IAEzC,OAAO,8CAA4D;IAC5E,UAAmB,cAAc,EAAE,MAAM,GAAG,SAAS,CAAgC;CAExF"}