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

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 (373) hide show
  1. package/lib/browser/address-pr-review-command-contribution.d.ts +9 -0
  2. package/lib/browser/address-pr-review-command-contribution.d.ts.map +1 -0
  3. package/lib/browser/address-pr-review-command-contribution.js +176 -0
  4. package/lib/browser/address-pr-review-command-contribution.js.map +1 -0
  5. package/lib/browser/ai-configuration/agent-configuration-widget.d.ts +47 -0
  6. package/lib/browser/ai-configuration/agent-configuration-widget.d.ts.map +1 -0
  7. package/lib/browser/ai-configuration/agent-configuration-widget.js +385 -0
  8. package/lib/browser/ai-configuration/agent-configuration-widget.js.map +1 -0
  9. package/lib/browser/ai-configuration/ai-configuration-service.d.ts +18 -0
  10. package/lib/browser/ai-configuration/ai-configuration-service.d.ts.map +1 -0
  11. package/lib/browser/ai-configuration/ai-configuration-service.js +53 -0
  12. package/lib/browser/ai-configuration/ai-configuration-service.js.map +1 -0
  13. package/lib/browser/ai-configuration/ai-configuration-view-contribution.d.ts +14 -0
  14. package/lib/browser/ai-configuration/ai-configuration-view-contribution.d.ts.map +1 -0
  15. package/lib/browser/ai-configuration/ai-configuration-view-contribution.js +67 -0
  16. package/lib/browser/ai-configuration/ai-configuration-view-contribution.js.map +1 -0
  17. package/lib/browser/ai-configuration/ai-configuration-widget.d.ts +29 -0
  18. package/lib/browser/ai-configuration/ai-configuration-widget.d.ts.map +1 -0
  19. package/lib/browser/ai-configuration/ai-configuration-widget.js +118 -0
  20. package/lib/browser/ai-configuration/ai-configuration-widget.js.map +1 -0
  21. package/lib/browser/ai-configuration/base/ai-card-grid-configuration-widget.d.ts +32 -0
  22. package/lib/browser/ai-configuration/base/ai-card-grid-configuration-widget.d.ts.map +1 -0
  23. package/lib/browser/ai-configuration/base/ai-card-grid-configuration-widget.js +55 -0
  24. package/lib/browser/ai-configuration/base/ai-card-grid-configuration-widget.js.map +1 -0
  25. package/lib/browser/ai-configuration/base/ai-configuration-base-widget.d.ts +14 -0
  26. package/lib/browser/ai-configuration/base/ai-configuration-base-widget.d.ts.map +1 -0
  27. package/lib/browser/ai-configuration/base/ai-configuration-base-widget.js +35 -0
  28. package/lib/browser/ai-configuration/base/ai-configuration-base-widget.js.map +1 -0
  29. package/lib/browser/ai-configuration/base/ai-hierarchical-configuration-widget.d.ts +23 -0
  30. package/lib/browser/ai-configuration/base/ai-hierarchical-configuration-widget.d.ts.map +1 -0
  31. package/lib/browser/ai-configuration/base/ai-hierarchical-configuration-widget.js +60 -0
  32. package/lib/browser/ai-configuration/base/ai-hierarchical-configuration-widget.js.map +1 -0
  33. package/lib/browser/ai-configuration/base/ai-list-detail-configuration-widget.d.ts +56 -0
  34. package/lib/browser/ai-configuration/base/ai-list-detail-configuration-widget.d.ts.map +1 -0
  35. package/lib/browser/ai-configuration/base/ai-list-detail-configuration-widget.js +96 -0
  36. package/lib/browser/ai-configuration/base/ai-list-detail-configuration-widget.js.map +1 -0
  37. package/lib/browser/ai-configuration/base/ai-table-configuration-widget.d.ts +45 -0
  38. package/lib/browser/ai-configuration/base/ai-table-configuration-widget.d.ts.map +1 -0
  39. package/lib/browser/ai-configuration/base/ai-table-configuration-widget.js +66 -0
  40. package/lib/browser/ai-configuration/base/ai-table-configuration-widget.js.map +1 -0
  41. package/lib/browser/ai-configuration/components/configuration-section.d.ts +13 -0
  42. package/lib/browser/ai-configuration/components/configuration-section.d.ts.map +1 -0
  43. package/lib/browser/ai-configuration/components/configuration-section.js +28 -0
  44. package/lib/browser/ai-configuration/components/configuration-section.js.map +1 -0
  45. package/lib/browser/ai-configuration/components/empty-state.d.ts +11 -0
  46. package/lib/browser/ai-configuration/components/empty-state.d.ts.map +1 -0
  47. package/lib/browser/ai-configuration/components/empty-state.js +26 -0
  48. package/lib/browser/ai-configuration/components/empty-state.js.map +1 -0
  49. package/lib/browser/ai-configuration/components/expandable-section.d.ts +14 -0
  50. package/lib/browser/ai-configuration/components/expandable-section.d.ts.map +1 -0
  51. package/lib/browser/ai-configuration/components/expandable-section.js +31 -0
  52. package/lib/browser/ai-configuration/components/expandable-section.js.map +1 -0
  53. package/lib/browser/ai-configuration/language-model-renderer.d.ts +13 -0
  54. package/lib/browser/ai-configuration/language-model-renderer.d.ts.map +1 -0
  55. package/lib/browser/ai-configuration/language-model-renderer.js +105 -0
  56. package/lib/browser/ai-configuration/language-model-renderer.js.map +1 -0
  57. package/lib/browser/ai-configuration/mcp-configuration-widget.d.ts +42 -0
  58. package/lib/browser/ai-configuration/mcp-configuration-widget.d.ts.map +1 -0
  59. package/lib/browser/ai-configuration/mcp-configuration-widget.js +308 -0
  60. package/lib/browser/ai-configuration/mcp-configuration-widget.js.map +1 -0
  61. package/lib/browser/ai-configuration/model-aliases-configuration-widget.d.ts +27 -0
  62. package/lib/browser/ai-configuration/model-aliases-configuration-widget.d.ts.map +1 -0
  63. package/lib/browser/ai-configuration/model-aliases-configuration-widget.js +197 -0
  64. package/lib/browser/ai-configuration/model-aliases-configuration-widget.js.map +1 -0
  65. package/lib/browser/ai-configuration/prompt-fragments-configuration-widget.d.ts +141 -0
  66. package/lib/browser/ai-configuration/prompt-fragments-configuration-widget.d.ts.map +1 -0
  67. package/lib/browser/ai-configuration/prompt-fragments-configuration-widget.js +508 -0
  68. package/lib/browser/ai-configuration/prompt-fragments-configuration-widget.js.map +1 -0
  69. package/lib/browser/ai-configuration/template-settings-renderer.d.ts +10 -0
  70. package/lib/browser/ai-configuration/template-settings-renderer.d.ts.map +1 -0
  71. package/lib/browser/ai-configuration/template-settings-renderer.js +48 -0
  72. package/lib/browser/ai-configuration/template-settings-renderer.js.map +1 -0
  73. package/lib/browser/ai-configuration/token-usage-configuration-widget.d.ts +21 -0
  74. package/lib/browser/ai-configuration/token-usage-configuration-widget.d.ts.map +1 -0
  75. package/lib/browser/ai-configuration/token-usage-configuration-widget.js +170 -0
  76. package/lib/browser/ai-configuration/token-usage-configuration-widget.js.map +1 -0
  77. package/lib/browser/ai-configuration/tools-configuration-widget.d.ts +35 -0
  78. package/lib/browser/ai-configuration/tools-configuration-widget.d.ts.map +1 -0
  79. package/lib/browser/ai-configuration/tools-configuration-widget.js +158 -0
  80. package/lib/browser/ai-configuration/tools-configuration-widget.js.map +1 -0
  81. package/lib/browser/ai-configuration/variable-configuration-widget.d.ts +23 -0
  82. package/lib/browser/ai-configuration/variable-configuration-widget.d.ts.map +1 -0
  83. package/lib/browser/ai-configuration/variable-configuration-widget.js +132 -0
  84. package/lib/browser/ai-configuration/variable-configuration-widget.js.map +1 -0
  85. package/lib/browser/ai-ide-activation-service.d.ts +18 -0
  86. package/lib/browser/ai-ide-activation-service.d.ts.map +1 -0
  87. package/lib/browser/ai-ide-activation-service.js +71 -0
  88. package/lib/browser/ai-ide-activation-service.js.map +1 -0
  89. package/lib/browser/ai-terminal-functions.d.ts +13 -0
  90. package/lib/browser/ai-terminal-functions.d.ts.map +1 -0
  91. package/lib/browser/ai-terminal-functions.js +114 -0
  92. package/lib/browser/ai-terminal-functions.js.map +1 -0
  93. package/lib/browser/analyze-gh-ticket-command-contribution.d.ts +9 -0
  94. package/lib/browser/analyze-gh-ticket-command-contribution.d.ts.map +1 -0
  95. package/lib/browser/analyze-gh-ticket-command-contribution.js +172 -0
  96. package/lib/browser/analyze-gh-ticket-command-contribution.js.map +1 -0
  97. package/lib/browser/app-tester-chat-agent.d.ts +35 -0
  98. package/lib/browser/app-tester-chat-agent.d.ts.map +1 -0
  99. package/lib/browser/app-tester-chat-agent.js +142 -0
  100. package/lib/browser/app-tester-chat-agent.js.map +1 -0
  101. package/lib/browser/app-tester-chat-functions.d.ts +25 -0
  102. package/lib/browser/app-tester-chat-functions.d.ts.map +1 -0
  103. package/lib/browser/app-tester-chat-functions.js +170 -0
  104. package/lib/browser/app-tester-chat-functions.js.map +1 -0
  105. package/lib/browser/app-tester-prompt-template.d.ts +6 -0
  106. package/lib/browser/app-tester-prompt-template.d.ts.map +1 -0
  107. package/lib/browser/app-tester-prompt-template.js +83 -0
  108. package/lib/browser/app-tester-prompt-template.js.map +1 -0
  109. package/lib/browser/architect-agent.d.ts +15 -0
  110. package/lib/browser/architect-agent.d.ts.map +1 -0
  111. package/lib/browser/architect-agent.js +68 -0
  112. package/lib/browser/architect-agent.js.map +1 -0
  113. package/lib/browser/coder-agent.d.ts +15 -0
  114. package/lib/browser/coder-agent.d.ts.map +1 -0
  115. package/lib/browser/coder-agent.js +81 -0
  116. package/lib/browser/coder-agent.js.map +1 -0
  117. package/lib/browser/context-file-validation-service-impl.d.ts +13 -0
  118. package/lib/browser/context-file-validation-service-impl.d.ts.map +1 -0
  119. package/lib/browser/context-file-validation-service-impl.js +123 -0
  120. package/lib/browser/context-file-validation-service-impl.js.map +1 -0
  121. package/lib/browser/context-file-validation-service-impl.spec.d.ts +2 -0
  122. package/lib/browser/context-file-validation-service-impl.spec.d.ts.map +1 -0
  123. package/lib/browser/context-file-validation-service-impl.spec.js +340 -0
  124. package/lib/browser/context-file-validation-service-impl.spec.js.map +1 -0
  125. package/lib/browser/context-functions.d.ts +16 -0
  126. package/lib/browser/context-functions.d.ts.map +1 -0
  127. package/lib/browser/context-functions.js +166 -0
  128. package/lib/browser/context-functions.js.map +1 -0
  129. package/lib/browser/context-functions.spec.d.ts +2 -0
  130. package/lib/browser/context-functions.spec.d.ts.map +1 -0
  131. package/lib/browser/context-functions.spec.js +213 -0
  132. package/lib/browser/context-functions.spec.js.map +1 -0
  133. package/lib/browser/file-changeset-function.spec.d.ts +2 -0
  134. package/lib/browser/file-changeset-function.spec.d.ts.map +1 -0
  135. package/lib/browser/file-changeset-function.spec.js +45 -0
  136. package/lib/browser/file-changeset-function.spec.js.map +1 -0
  137. package/lib/browser/file-changeset-functions.d.ts +87 -0
  138. package/lib/browser/file-changeset-functions.d.ts.map +1 -0
  139. package/lib/browser/file-changeset-functions.js +645 -0
  140. package/lib/browser/file-changeset-functions.js.map +1 -0
  141. package/lib/browser/file-changeset-functions.spec.d.ts +2 -0
  142. package/lib/browser/file-changeset-functions.spec.d.ts.map +1 -0
  143. package/lib/browser/file-changeset-functions.spec.js +179 -0
  144. package/lib/browser/file-changeset-functions.spec.js.map +1 -0
  145. package/lib/browser/frontend-module.d.ts +5 -0
  146. package/lib/browser/frontend-module.d.ts.map +1 -0
  147. package/lib/browser/frontend-module.js +226 -0
  148. package/lib/browser/frontend-module.js.map +1 -0
  149. package/lib/browser/github-chat-agent.d.ts +48 -0
  150. package/lib/browser/github-chat-agent.d.ts.map +1 -0
  151. package/lib/browser/github-chat-agent.js +222 -0
  152. package/lib/browser/github-chat-agent.js.map +1 -0
  153. package/lib/browser/github-prompt-template.d.ts +6 -0
  154. package/lib/browser/github-prompt-template.d.ts.map +1 -0
  155. package/lib/browser/github-prompt-template.js +53 -0
  156. package/lib/browser/github-prompt-template.js.map +1 -0
  157. package/lib/browser/github-repo-variable-contribution.d.ts +15 -0
  158. package/lib/browser/github-repo-variable-contribution.d.ts.map +1 -0
  159. package/lib/browser/github-repo-variable-contribution.js +82 -0
  160. package/lib/browser/github-repo-variable-contribution.js.map +1 -0
  161. package/lib/browser/ide-chat-welcome-message-provider.d.ts +10 -0
  162. package/lib/browser/ide-chat-welcome-message-provider.d.ts.map +1 -0
  163. package/lib/browser/ide-chat-welcome-message-provider.js +102 -0
  164. package/lib/browser/ide-chat-welcome-message-provider.js.map +1 -0
  165. package/lib/browser/implement-gh-ticket-command-contribution.d.ts +9 -0
  166. package/lib/browser/implement-gh-ticket-command-contribution.d.ts.map +1 -0
  167. package/lib/browser/implement-gh-ticket-command-contribution.js +156 -0
  168. package/lib/browser/implement-gh-ticket-command-contribution.js.map +1 -0
  169. package/lib/browser/project-info-agent.d.ts +13 -0
  170. package/lib/browser/project-info-agent.d.ts.map +1 -0
  171. package/lib/browser/project-info-agent.js +45 -0
  172. package/lib/browser/project-info-agent.js.map +1 -0
  173. package/lib/browser/remember-command-contribution.d.ts +16 -0
  174. package/lib/browser/remember-command-contribution.d.ts.map +1 -0
  175. package/lib/browser/remember-command-contribution.js +101 -0
  176. package/lib/browser/remember-command-contribution.js.map +1 -0
  177. package/lib/browser/summarize-session-command-contribution.d.ts +19 -0
  178. package/lib/browser/summarize-session-command-contribution.d.ts.map +1 -0
  179. package/lib/browser/summarize-session-command-contribution.js +118 -0
  180. package/lib/browser/summarize-session-command-contribution.js.map +1 -0
  181. package/lib/browser/task-background-summary-variable.d.ts +9 -0
  182. package/lib/browser/task-background-summary-variable.d.ts.map +1 -0
  183. package/lib/browser/task-background-summary-variable.js +60 -0
  184. package/lib/browser/task-background-summary-variable.js.map +1 -0
  185. package/lib/browser/task-context-agent.d.ts +13 -0
  186. package/lib/browser/task-context-agent.d.ts.map +1 -0
  187. package/lib/browser/task-context-agent.js +45 -0
  188. package/lib/browser/task-context-agent.js.map +1 -0
  189. package/lib/browser/task-context-file-storage-service.d.ts +40 -0
  190. package/lib/browser/task-context-file-storage-service.d.ts.map +1 -0
  191. package/lib/browser/task-context-file-storage-service.js +232 -0
  192. package/lib/browser/task-context-file-storage-service.js.map +1 -0
  193. package/lib/browser/template-preference-contribution.d.ts +17 -0
  194. package/lib/browser/template-preference-contribution.d.ts.map +1 -0
  195. package/lib/browser/template-preference-contribution.js +94 -0
  196. package/lib/browser/template-preference-contribution.js.map +1 -0
  197. package/lib/browser/test/tool-provider-cancellation-test-util.spec.d.ts +2 -0
  198. package/lib/browser/test/tool-provider-cancellation-test-util.spec.d.ts.map +1 -0
  199. package/lib/browser/test/tool-provider-cancellation-test-util.spec.js +52 -0
  200. package/lib/browser/test/tool-provider-cancellation-test-util.spec.js.map +1 -0
  201. package/lib/browser/workspace-functions.d.ts +78 -0
  202. package/lib/browser/workspace-functions.d.ts.map +1 -0
  203. package/lib/browser/workspace-functions.js +697 -0
  204. package/lib/browser/workspace-functions.js.map +1 -0
  205. package/lib/browser/workspace-functions.spec.d.ts +2 -0
  206. package/lib/browser/workspace-functions.spec.d.ts.map +1 -0
  207. package/lib/browser/workspace-functions.spec.js +161 -0
  208. package/lib/browser/workspace-functions.spec.js.map +1 -0
  209. package/lib/browser/workspace-launch-provider.d.ts +24 -0
  210. package/lib/browser/workspace-launch-provider.d.ts.map +1 -0
  211. package/lib/browser/workspace-launch-provider.js +216 -0
  212. package/lib/browser/workspace-launch-provider.js.map +1 -0
  213. package/lib/browser/workspace-launch-provider.spec.d.ts +2 -0
  214. package/lib/browser/workspace-launch-provider.spec.d.ts.map +1 -0
  215. package/lib/browser/workspace-launch-provider.spec.js +245 -0
  216. package/lib/browser/workspace-launch-provider.spec.js.map +1 -0
  217. package/lib/browser/workspace-search-provider.d.ts +15 -0
  218. package/lib/browser/workspace-search-provider.d.ts.map +1 -0
  219. package/lib/browser/workspace-search-provider.js +204 -0
  220. package/lib/browser/workspace-search-provider.js.map +1 -0
  221. package/lib/browser/workspace-search-provider.spec.d.ts +2 -0
  222. package/lib/browser/workspace-search-provider.spec.d.ts.map +1 -0
  223. package/lib/browser/workspace-search-provider.spec.js +82 -0
  224. package/lib/browser/workspace-search-provider.spec.js.map +1 -0
  225. package/lib/browser/workspace-task-provider.d.ts +15 -0
  226. package/lib/browser/workspace-task-provider.d.ts.map +1 -0
  227. package/lib/browser/workspace-task-provider.js +138 -0
  228. package/lib/browser/workspace-task-provider.js.map +1 -0
  229. package/lib/browser/workspace-task-provider.spec.d.ts +2 -0
  230. package/lib/browser/workspace-task-provider.spec.d.ts.map +1 -0
  231. package/lib/browser/workspace-task-provider.spec.js +109 -0
  232. package/lib/browser/workspace-task-provider.spec.js.map +1 -0
  233. package/lib/common/ai-configuration-preferences.d.ts +8 -0
  234. package/lib/common/ai-configuration-preferences.d.ts.map +1 -0
  235. package/lib/common/ai-configuration-preferences.js +41 -0
  236. package/lib/common/ai-configuration-preferences.js.map +1 -0
  237. package/lib/common/ai-ide-preferences.d.ts +5 -0
  238. package/lib/common/ai-ide-preferences.d.ts.map +1 -0
  239. package/lib/common/ai-ide-preferences.js +53 -0
  240. package/lib/common/ai-ide-preferences.js.map +1 -0
  241. package/lib/common/ai-terminal-functions.d.ts +2 -0
  242. package/lib/common/ai-terminal-functions.d.ts.map +1 -0
  243. package/lib/common/ai-terminal-functions.js +20 -0
  244. package/lib/common/ai-terminal-functions.js.map +1 -0
  245. package/lib/common/app-tester-chat-functions.d.ts +5 -0
  246. package/lib/common/app-tester-chat-functions.d.ts.map +1 -0
  247. package/lib/common/app-tester-chat-functions.js +23 -0
  248. package/lib/common/app-tester-chat-functions.js.map +1 -0
  249. package/lib/common/architect-prompt-template.d.ts +3 -0
  250. package/lib/common/architect-prompt-template.d.ts.map +1 -0
  251. package/lib/common/architect-prompt-template.js +81 -0
  252. package/lib/common/architect-prompt-template.js.map +1 -0
  253. package/lib/common/browser-automation-protocol.d.ts +15 -0
  254. package/lib/common/browser-automation-protocol.d.ts.map +1 -0
  255. package/lib/common/browser-automation-protocol.js +22 -0
  256. package/lib/common/browser-automation-protocol.js.map +1 -0
  257. package/lib/common/coder-replace-prompt-template.d.ts +11 -0
  258. package/lib/common/coder-replace-prompt-template.d.ts.map +1 -0
  259. package/lib/common/coder-replace-prompt-template.js +296 -0
  260. package/lib/common/coder-replace-prompt-template.js.map +1 -0
  261. package/lib/common/command-chat-agents.d.ts +36 -0
  262. package/lib/common/command-chat-agents.d.ts.map +1 -0
  263. package/lib/common/command-chat-agents.js +122 -0
  264. package/lib/common/command-chat-agents.js.map +1 -0
  265. package/lib/common/command-prompt-template.d.ts +3 -0
  266. package/lib/common/command-prompt-template.d.ts.map +1 -0
  267. package/lib/common/command-prompt-template.js +226 -0
  268. package/lib/common/command-prompt-template.js.map +1 -0
  269. package/lib/common/context-files-variable.d.ts +9 -0
  270. package/lib/common/context-files-variable.d.ts.map +1 -0
  271. package/lib/common/context-files-variable.js +52 -0
  272. package/lib/common/context-files-variable.js.map +1 -0
  273. package/lib/common/context-functions.d.ts +4 -0
  274. package/lib/common/context-functions.d.ts.map +1 -0
  275. package/lib/common/context-functions.js +22 -0
  276. package/lib/common/context-functions.js.map +1 -0
  277. package/lib/common/context-variables.d.ts +3 -0
  278. package/lib/common/context-variables.d.ts.map +1 -0
  279. package/lib/common/context-variables.js +21 -0
  280. package/lib/common/context-variables.js.map +1 -0
  281. package/lib/common/file-changeset-function-ids.d.ts +19 -0
  282. package/lib/common/file-changeset-function-ids.d.ts.map +1 -0
  283. package/lib/common/file-changeset-function-ids.js +37 -0
  284. package/lib/common/file-changeset-function-ids.js.map +1 -0
  285. package/lib/common/github-repo-protocol.d.ts +15 -0
  286. package/lib/common/github-repo-protocol.d.ts.map +1 -0
  287. package/lib/common/github-repo-protocol.js +21 -0
  288. package/lib/common/github-repo-protocol.js.map +1 -0
  289. package/lib/common/orchestrator-chat-agent.d.ts +36 -0
  290. package/lib/common/orchestrator-chat-agent.d.ts.map +1 -0
  291. package/lib/common/orchestrator-chat-agent.js +167 -0
  292. package/lib/common/orchestrator-chat-agent.js.map +1 -0
  293. package/lib/common/orchestrator-prompt-template.d.ts +3 -0
  294. package/lib/common/orchestrator-prompt-template.d.ts.map +1 -0
  295. package/lib/common/orchestrator-prompt-template.js +55 -0
  296. package/lib/common/orchestrator-prompt-template.js.map +1 -0
  297. package/lib/common/project-info-prompt-template.d.ts +6 -0
  298. package/lib/common/project-info-prompt-template.d.ts.map +1 -0
  299. package/lib/common/project-info-prompt-template.js +145 -0
  300. package/lib/common/project-info-prompt-template.js.map +1 -0
  301. package/lib/common/summarize-session-commands.d.ts +4 -0
  302. package/lib/common/summarize-session-commands.d.ts.map +1 -0
  303. package/lib/common/summarize-session-commands.js +28 -0
  304. package/lib/common/summarize-session-commands.js.map +1 -0
  305. package/lib/common/task-context-prompt-template.d.ts +8 -0
  306. package/lib/common/task-context-prompt-template.d.ts.map +1 -0
  307. package/lib/common/task-context-prompt-template.js +217 -0
  308. package/lib/common/task-context-prompt-template.js.map +1 -0
  309. package/lib/common/universal-chat-agent.d.ts +17 -0
  310. package/lib/common/universal-chat-agent.d.ts.map +1 -0
  311. package/lib/common/universal-chat-agent.js +47 -0
  312. package/lib/common/universal-chat-agent.js.map +1 -0
  313. package/lib/common/universal-prompt-template.d.ts +4 -0
  314. package/lib/common/universal-prompt-template.d.ts.map +1 -0
  315. package/lib/common/universal-prompt-template.js +32 -0
  316. package/lib/common/universal-prompt-template.js.map +1 -0
  317. package/lib/common/workspace-functions.d.ts +12 -0
  318. package/lib/common/workspace-functions.d.ts.map +1 -0
  319. package/lib/common/workspace-functions.js +30 -0
  320. package/lib/common/workspace-functions.js.map +1 -0
  321. package/lib/common/workspace-preferences.d.ts +10 -0
  322. package/lib/common/workspace-preferences.d.ts.map +1 -0
  323. package/lib/common/workspace-preferences.js +89 -0
  324. package/lib/common/workspace-preferences.js.map +1 -0
  325. package/lib/common/workspace-search-provider-util.d.ts +17 -0
  326. package/lib/common/workspace-search-provider-util.d.ts.map +1 -0
  327. package/lib/common/workspace-search-provider-util.js +51 -0
  328. package/lib/common/workspace-search-provider-util.js.map +1 -0
  329. package/lib/node/app-tester-agent/browser-automation-impl.d.ts +18 -0
  330. package/lib/node/app-tester-agent/browser-automation-impl.d.ts.map +1 -0
  331. package/lib/node/app-tester-agent/browser-automation-impl.js +96 -0
  332. package/lib/node/app-tester-agent/browser-automation-impl.js.map +1 -0
  333. package/lib/node/backend-module.d.ts +4 -0
  334. package/lib/node/backend-module.d.ts.map +1 -0
  335. package/lib/node/backend-module.js +45 -0
  336. package/lib/node/backend-module.js.map +1 -0
  337. package/lib/node/github-repo-service-impl.d.ts +7 -0
  338. package/lib/node/github-repo-service-impl.d.ts.map +1 -0
  339. package/lib/node/github-repo-service-impl.js +86 -0
  340. package/lib/node/github-repo-service-impl.js.map +1 -0
  341. package/lib/package.spec.d.ts +1 -0
  342. package/lib/package.spec.d.ts.map +1 -0
  343. package/lib/package.spec.js +26 -0
  344. package/lib/package.spec.js.map +1 -0
  345. package/package.json +21 -21
  346. package/src/browser/address-pr-review-command-contribution.ts +180 -0
  347. package/src/browser/ai-configuration/agent-configuration-widget.tsx +256 -135
  348. package/src/browser/ai-configuration/base/ai-card-grid-configuration-widget.tsx +72 -0
  349. package/src/browser/ai-configuration/base/ai-configuration-base-widget.tsx +37 -0
  350. package/src/browser/ai-configuration/base/ai-hierarchical-configuration-widget.tsx +51 -0
  351. package/src/browser/ai-configuration/base/ai-list-detail-configuration-widget.tsx +140 -0
  352. package/src/browser/ai-configuration/base/ai-table-configuration-widget.tsx +107 -0
  353. package/src/browser/ai-configuration/components/configuration-section.tsx +37 -0
  354. package/src/browser/ai-configuration/components/empty-state.tsx +30 -0
  355. package/src/browser/ai-configuration/components/expandable-section.tsx +51 -0
  356. package/src/browser/ai-configuration/language-model-renderer.tsx +68 -63
  357. package/src/browser/ai-configuration/mcp-configuration-widget.tsx +80 -85
  358. package/src/browser/ai-configuration/model-aliases-configuration-widget.tsx +93 -107
  359. package/src/browser/ai-configuration/template-settings-renderer.tsx +25 -29
  360. package/src/browser/ai-configuration/token-usage-configuration-widget.tsx +130 -130
  361. package/src/browser/ai-configuration/tools-configuration-widget.tsx +68 -59
  362. package/src/browser/ai-configuration/variable-configuration-widget.tsx +95 -45
  363. package/src/browser/analyze-gh-ticket-command-contribution.ts +176 -0
  364. package/src/browser/frontend-module.ts +6 -0
  365. package/src/browser/implement-gh-ticket-command-contribution.ts +160 -0
  366. package/src/browser/style/ai-configuration-base.css +90 -0
  367. package/src/browser/style/ai-configuration-cards.css +60 -0
  368. package/src/browser/style/ai-configuration-hierarchical.css +61 -0
  369. package/src/browser/style/ai-configuration-list-detail.css +88 -0
  370. package/src/browser/style/ai-configuration-table.css +73 -0
  371. package/src/browser/style/index.css +458 -288
  372. package/src/browser/style/widgets/mcp-configuration.css +253 -0
  373. package/src/browser/style/widgets/model-aliases-configuration.css +74 -0
@@ -0,0 +1,9 @@
1
+ import { FrontendApplicationContribution } from '@theia/core/lib/browser';
2
+ import { PromptService } from '@theia/ai-core/lib/common';
3
+ export declare class AddressGhReviewCommandContribution implements FrontendApplicationContribution {
4
+ protected readonly promptService: PromptService;
5
+ onStart(): void;
6
+ protected registerAddressGhReviewCommand(): void;
7
+ protected buildCommandTemplate(): string;
8
+ }
9
+ //# sourceMappingURL=address-pr-review-command-contribution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address-pr-review-command-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/address-pr-review-command-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;AAE1E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAK1D,qBACa,kCAAmC,YAAW,+BAA+B;IAGtF,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAEhD,OAAO,IAAI,IAAI;IAIf,SAAS,CAAC,8BAA8B,IAAI,IAAI;IAoBhD,SAAS,CAAC,oBAAoB,IAAI,MAAM;CA8H3C"}
@@ -0,0 +1,176 @@
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.AddressGhReviewCommandContribution = void 0;
19
+ const tslib_1 = require("tslib");
20
+ const inversify_1 = require("@theia/core/shared/inversify");
21
+ const common_1 = require("@theia/ai-core/lib/common");
22
+ const core_1 = require("@theia/core");
23
+ const agent_delegation_tool_1 = require("@theia/ai-chat/lib/browser/agent-delegation-tool");
24
+ const github_chat_agent_1 = require("./github-chat-agent");
25
+ let AddressGhReviewCommandContribution = class AddressGhReviewCommandContribution {
26
+ onStart() {
27
+ this.registerAddressGhReviewCommand();
28
+ }
29
+ registerAddressGhReviewCommand() {
30
+ const commandTemplate = this.buildCommandTemplate();
31
+ this.promptService.addBuiltInPromptFragment({
32
+ id: 'address-gh-review',
33
+ template: commandTemplate,
34
+ isCommand: true,
35
+ commandName: 'address-gh-review',
36
+ commandDescription: core_1.nls.localize('theia/ai-ide/addressGhReviewCommand/description', 'Address review comments on a GitHub pull request'),
37
+ commandArgumentHint: core_1.nls.localize('theia/ai-ide/addressGhReviewCommand/argumentHint', '<pr-number>'),
38
+ commandAgents: ['Coder']
39
+ });
40
+ }
41
+ buildCommandTemplate() {
42
+ return `You have been asked to address review comments on a GitHub pull request.
43
+
44
+ ## Pull Request Number
45
+ $ARGUMENTS
46
+
47
+ ## Task Overview
48
+ You need to retrieve all details about the specified pull request, especially the review comments, assess whether you can safely address all comments, and if so,
49
+ implement the requested changes.
50
+
51
+ ## Step 1: Retrieve Pull Request Information
52
+ Use the ~{${agent_delegation_tool_1.AGENT_DELEGATION_FUNCTION_ID}} tool to delegate to the GitHub agent and retrieve comprehensive information about the pull request.
53
+
54
+ **Agent ID:** '${github_chat_agent_1.GitHubChatAgentId}'
55
+ **Prompt:** Ask the GitHub agent to retrieve ALL details about PR #$ARGUMENTS, specifically requesting:
56
+ - The PR title and description
57
+ - The current state of the PR (open, closed, merged)
58
+ - ALL review comments - this is critical, every single review comment must be retrieved
59
+ - General PR comments (conversation)
60
+ - The list of files changed in the PR
61
+ - Any referenced issues
62
+ - Review status (approved, changes requested, etc.)
63
+
64
+ Example delegation prompt:
65
+ \`\`\`
66
+ Please retrieve comprehensive information about pull request #$ARGUMENTS. I need:
67
+ 1. The PR title, description, and current state
68
+ 2. ALL review comments on this PR - every single inline review comment is critical
69
+ 3. ALL general conversation comments on the PR
70
+ 4. The list of files changed in this PR
71
+ 5. The current review status (approved, changes requested, pending)
72
+ 6. Any linked or referenced issues
73
+
74
+ This is for addressing the review comments, so completeness is absolutely crucial. Make sure to get every review comment.
75
+ \`\`\`
76
+
77
+ ## Step 2: Analyze and Categorize Review Comments
78
+ After receiving the PR information, analyze each review comment and categorize them:
79
+
80
+ ### Categories of Review Comments:
81
+ 1. **Clear code changes**: Comments requesting specific, unambiguous code modifications (e.g., "rename this variable", "add null check here", "fix this typo")
82
+ 2. **Style/formatting fixes**: Comments about code style, formatting, or conventions
83
+ 3. **Bug fixes**: Comments pointing out bugs or issues that need to be fixed
84
+ 4. **Clarification questions**: Reviewers asking questions that need answers, not code changes
85
+ 5. **Design discussions**: Comments about architectural or design decisions that require human judgment
86
+ 6. **Ambiguous requests**: Comments that are unclear or could be interpreted multiple ways
87
+
88
+ ### Criteria for Safely Addressable Comments:
89
+ - The requested change is clearly specified
90
+ - The change is localized and well-scoped
91
+ - No architectural or design decisions are required
92
+ - The change doesn't conflict with other review comments
93
+ - You have enough context to make the change correctly
94
+
95
+ ### Criteria for Comments Requiring Clarification:
96
+ - The comment is ambiguous or vague
97
+ - Multiple valid interpretations exist
98
+ - The comment requires design decisions
99
+ - Comments conflict with each other
100
+ - The reviewer is asking a question rather than requesting a change
101
+
102
+ ## Step 3: Respond Based on Analysis
103
+
104
+ ### If ANY comments cannot be safely addressed:
105
+ List all comments and their status, then ask for clarification on the problematic ones:
106
+
107
+ Example response format:
108
+ \`\`\`
109
+ ## PR Review Analysis
110
+
111
+ ### Comments I Can Address:
112
+ 1. [File: path/to/file.ts, Line X] - "[Comment summary]" - Will [action]
113
+ 2. [File: path/to/file.ts, Line Y] - "[Comment summary]" - Will [action]
114
+
115
+ ### Comments Requiring Clarification:
116
+ 1. [File: path/to/file.ts, Line Z] - "[Comment summary]"
117
+ - **Issue**: [Why this needs clarification]
118
+ - **Question**: [Specific question to resolve ambiguity]
119
+
120
+ 2. [File: path/to/other.ts, Line W] - "[Comment summary]"
121
+ - **Issue**: [Why this needs clarification]
122
+ - **Question**: [Specific question to resolve ambiguity]
123
+
124
+ ### Conflicting Comments:
125
+ - [Describe any conflicts between review comments]
126
+
127
+ Please provide clarification on the above items. Once clarified, I can proceed to address all review comments.
128
+
129
+ Alternatively, if you'd like me to proceed with just the comments I can safely address, please confirm.
130
+ \`\`\`
131
+
132
+ ### If ALL comments can be safely addressed:
133
+ Proceed with implementing all the requested changes:
134
+
135
+ 1. **List all comments** and what you will do to address each one
136
+ 2. **Implement the changes** file by file, addressing each review comment
137
+ 3. **Explain each change** as you make it, referencing the original review comment
138
+ 4. **Summarize** all changes made at the end
139
+
140
+ Example response format:
141
+ \`\`\`
142
+ ## PR Review Analysis
143
+
144
+ All review comments can be safely addressed. Proceeding with implementation.
145
+
146
+ ### Review Comments to Address:
147
+ 1. [File: path/to/file.ts, Line X] - "[Comment summary]" - Will [action]
148
+ 2. [File: path/to/file.ts, Line Y] - "[Comment summary]" - Will [action]
149
+ ...
150
+
151
+ ### Implementation
152
+ [Proceed to make changes, explaining each one]
153
+
154
+ ### Summary
155
+ [List all changes made and which review comments they address]
156
+ \`\`\`
157
+
158
+ ## Important Guidelines
159
+ - Always preserve the intent of the original code while addressing review comments
160
+ - If a review comment conflicts with the existing code style, follow the project's conventions
161
+ - Make minimal changes - only change what's necessary to address each comment
162
+ - If you discover issues beyond the review comments, mention them but don't fix them unless asked
163
+ - After implementation, provide a summary that maps each change to the review comment it addresses
164
+
165
+ Remember: It's better to ask for clarification than to make assumptions that could introduce bugs or go against the reviewer's intent.`;
166
+ }
167
+ };
168
+ exports.AddressGhReviewCommandContribution = AddressGhReviewCommandContribution;
169
+ tslib_1.__decorate([
170
+ (0, inversify_1.inject)(common_1.PromptService),
171
+ tslib_1.__metadata("design:type", Object)
172
+ ], AddressGhReviewCommandContribution.prototype, "promptService", void 0);
173
+ exports.AddressGhReviewCommandContribution = AddressGhReviewCommandContribution = tslib_1.__decorate([
174
+ (0, inversify_1.injectable)()
175
+ ], AddressGhReviewCommandContribution);
176
+ //# sourceMappingURL=address-pr-review-command-contribution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address-pr-review-command-contribution.js","sourceRoot":"","sources":["../../src/browser/address-pr-review-command-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;;;;AAGhF,4DAAkE;AAClE,sDAA0D;AAC1D,sCAAkC;AAClC,4FAAgG;AAChG,2DAAwD;AAGjD,IAAM,kCAAkC,GAAxC,MAAM,kCAAkC;IAK3C,OAAO;QACH,IAAI,CAAC,8BAA8B,EAAE,CAAC;IAC1C,CAAC;IAES,8BAA8B;QACpC,MAAM,eAAe,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAEpD,IAAI,CAAC,aAAa,CAAC,wBAAwB,CAAC;YACxC,EAAE,EAAE,mBAAmB;YACvB,QAAQ,EAAE,eAAe;YACzB,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,mBAAmB;YAChC,kBAAkB,EAAE,UAAG,CAAC,QAAQ,CAC5B,iDAAiD,EACjD,kDAAkD,CACrD;YACD,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAC7B,kDAAkD,EAClD,aAAa,CAChB;YACD,aAAa,EAAE,CAAC,OAAO,CAAC;SAC3B,CAAC,CAAC;IACP,CAAC;IAES,oBAAoB;QAC1B,OAAO;;;;;;;;;;YAUH,oDAA4B;;iBAEvB,qCAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uIA+GqG,CAAC;IACpI,CAAC;CACJ,CAAA;AA3JY,gFAAkC;AAGxB;IADlB,IAAA,kBAAM,EAAC,sBAAa,CAAC;;yEAC0B;6CAHvC,kCAAkC;IAD9C,IAAA,sBAAU,GAAE;GACA,kCAAkC,CA2J9C"}
@@ -0,0 +1,47 @@
1
+ /// <reference types="react" />
2
+ import { Agent, AgentService, AISettingsService, AIVariableService, FrontendLanguageModelRegistry, LanguageModel, PromptFragmentCustomizationService, PromptService } from '@theia/ai-core/lib/common';
3
+ import { QuickInputService } from '@theia/core/lib/browser';
4
+ import * as React from '@theia/core/shared/react';
5
+ import { AIConfigurationSelectionService } from './ai-configuration-service';
6
+ import { LanguageModelAliasRegistry, LanguageModelAlias } from '@theia/ai-core/lib/common/language-model-alias';
7
+ import { AIListDetailConfigurationWidget } from './base/ai-list-detail-configuration-widget';
8
+ interface ParsedPrompt {
9
+ functions: string[];
10
+ globalVariables: string[];
11
+ agentSpecificVariables: string[];
12
+ }
13
+ export declare class AIAgentConfigurationWidget extends AIListDetailConfigurationWidget<Agent> {
14
+ static readonly ID = "ai-agent-configuration-container-widget";
15
+ static readonly LABEL: string;
16
+ protected readonly agentService: AgentService;
17
+ protected readonly languageModelRegistry: FrontendLanguageModelRegistry;
18
+ protected readonly promptFragmentCustomizationService: PromptFragmentCustomizationService;
19
+ protected readonly languageModelAliasRegistry: LanguageModelAliasRegistry;
20
+ protected readonly aiSettingsService: AISettingsService;
21
+ protected readonly aiConfigurationSelectionService: AIConfigurationSelectionService;
22
+ protected readonly variableService: AIVariableService;
23
+ protected promptService: PromptService;
24
+ protected readonly quickInputService: QuickInputService;
25
+ protected languageModels: LanguageModel[] | undefined;
26
+ protected languageModelAliases: LanguageModelAlias[];
27
+ protected parsedPromptParts: ParsedPrompt | undefined;
28
+ protected isLoadingDetails: boolean;
29
+ protected init(): void;
30
+ protected loadItems(): Promise<void>;
31
+ protected getItemId(agent: Agent): string;
32
+ protected getItemLabel(agent: Agent): string;
33
+ protected getEmptySelectionMessage(): string;
34
+ protected handleItemSelect: (agent: Agent) => void;
35
+ protected renderItemPrefix(agent: Agent): React.ReactNode;
36
+ protected renderItemSuffix(agent: Agent): React.ReactNode;
37
+ protected renderList(): React.ReactNode;
38
+ protected updateParsedPromptParts(): Promise<void>;
39
+ protected renderItemDetail(agent: Agent): React.ReactNode;
40
+ protected parsePromptFragmentsForVariableAndFunction(agent: Agent): Promise<ParsedPrompt>;
41
+ protected extractVariablesAndFunctions(promptContent: string, result: ParsedPrompt, agent: Agent): void;
42
+ protected showVariableConfigurationTab(): void;
43
+ protected addCustomAgent(): Promise<void>;
44
+ private toggleAgentEnabled;
45
+ }
46
+ export {};
47
+ //# sourceMappingURL=agent-configuration-widget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-configuration-widget.d.ts","sourceRoot":"","sources":["../../../src/browser/ai-configuration/agent-configuration-widget.tsx"],"names":[],"mappings":";AAgBA,OAAO,EACH,KAAK,EACL,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,6BAA6B,EAC7B,aAAa,EAIb,kCAAkC,EAClC,aAAa,EAChB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAW,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGrE,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,+BAA+B,EAAE,MAAM,4BAA4B,CAAC;AAE7E,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAIhH,OAAO,EAAE,+BAA+B,EAAE,MAAM,4CAA4C,CAAC;AAE7F,UAAU,YAAY;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,sBAAsB,EAAE,MAAM,EAAE,CAAC;CACpC;AAED,qBACa,0BAA2B,SAAQ,+BAA+B,CAAC,KAAK,CAAC;IAElF,MAAM,CAAC,QAAQ,CAAC,EAAE,6CAA6C;IAC/D,MAAM,CAAC,QAAQ,CAAC,KAAK,SAAoE;IAGzF,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IAG9C,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,6BAA6B,CAAC;IAGxE,SAAS,CAAC,QAAQ,CAAC,kCAAkC,EAAE,kCAAkC,CAAC;IAG1F,SAAS,CAAC,QAAQ,CAAC,0BAA0B,EAAE,0BAA0B,CAAC;IAG1E,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,+BAA+B,EAAE,+BAA+B,CAAC;IAGpF,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,iBAAiB,CAAC;IAGtD,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IAGvC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAExD,SAAS,CAAC,cAAc,EAAE,aAAa,EAAE,GAAG,SAAS,CAAC;IACtD,SAAS,CAAC,oBAAoB,EAAE,kBAAkB,EAAE,CAAM;IAC1D,SAAS,CAAC,iBAAiB,EAAE,YAAY,GAAG,SAAS,CAAC;IACtD,SAAS,CAAC,gBAAgB,UAAS;IAGnC,SAAS,CAAC,IAAI,IAAI,IAAI;cA8CN,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAW1C,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAIzC,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;cAIzB,wBAAwB,IAAI,MAAM;IAIrD,UAAmB,gBAAgB,UAAW,KAAK,KAAG,IAAI,CAIxD;cAEiB,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,SAAS;cAa/C,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,SAAS;cAO/C,UAAU,IAAI,KAAK,CAAC,SAAS;cA+BhC,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC;IAYxD,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,SAAS;cAqHzC,0CAA0C,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC;IAmB/F,SAAS,CAAC,4BAA4B,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;IAyBvG,SAAS,CAAC,4BAA4B,IAAI,IAAI;cAI9B,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAiC/C,OAAO,CAAC,kBAAkB,CAYxB;CACL"}
@@ -0,0 +1,385 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2024 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
+ var AIAgentConfigurationWidget_1;
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.AIAgentConfigurationWidget = void 0;
20
+ const tslib_1 = require("tslib");
21
+ const common_1 = require("@theia/ai-core/lib/common");
22
+ const browser_1 = require("@theia/core/lib/browser");
23
+ const inversify_1 = require("@theia/core/shared/inversify");
24
+ const React = require("@theia/core/shared/react");
25
+ const ai_configuration_service_1 = require("./ai-configuration-service");
26
+ const language_model_renderer_1 = require("./language-model-renderer");
27
+ const language_model_alias_1 = require("@theia/ai-core/lib/common/language-model-alias");
28
+ const variable_configuration_widget_1 = require("./variable-configuration-widget");
29
+ const core_1 = require("@theia/core");
30
+ const template_settings_renderer_1 = require("./template-settings-renderer");
31
+ const ai_list_detail_configuration_widget_1 = require("./base/ai-list-detail-configuration-widget");
32
+ ;
33
+ let AIAgentConfigurationWidget = AIAgentConfigurationWidget_1 = class AIAgentConfigurationWidget extends ai_list_detail_configuration_widget_1.AIListDetailConfigurationWidget {
34
+ constructor() {
35
+ super(...arguments);
36
+ this.languageModelAliases = [];
37
+ this.isLoadingDetails = false;
38
+ this.handleItemSelect = (agent) => {
39
+ this.selectedItem = agent;
40
+ this.aiConfigurationSelectionService.setActiveAgent(agent);
41
+ this.updateParsedPromptParts();
42
+ };
43
+ this.toggleAgentEnabled = async () => {
44
+ const agent = this.aiConfigurationSelectionService.getActiveAgent();
45
+ if (!agent) {
46
+ return false;
47
+ }
48
+ const enabled = this.agentService.isEnabled(agent.id);
49
+ if (enabled) {
50
+ await this.agentService.disableAgent(agent.id);
51
+ }
52
+ else {
53
+ await this.agentService.enableAgent(agent.id);
54
+ }
55
+ this.update();
56
+ };
57
+ }
58
+ init() {
59
+ this.id = AIAgentConfigurationWidget_1.ID;
60
+ this.title.label = AIAgentConfigurationWidget_1.LABEL;
61
+ this.title.closable = false;
62
+ Promise.all([
63
+ this.loadItems(),
64
+ this.languageModelRegistry.getLanguageModels().then(models => {
65
+ this.languageModels = models !== null && models !== void 0 ? models : [];
66
+ })
67
+ ]).then(() => this.update());
68
+ this.languageModelAliasRegistry.ready.then(() => {
69
+ this.languageModelAliases = this.languageModelAliasRegistry.getAliases();
70
+ this.toDispose.push(this.languageModelAliasRegistry.onDidChange(() => {
71
+ this.languageModelAliases = this.languageModelAliasRegistry.getAliases();
72
+ this.update();
73
+ }));
74
+ });
75
+ this.toDispose.pushAll([
76
+ this.languageModelRegistry.onChange(({ models }) => {
77
+ this.languageModelAliases = this.languageModelAliasRegistry.getAliases();
78
+ this.languageModels = models;
79
+ this.update();
80
+ }),
81
+ this.promptService.onPromptsChange(() => this.updateParsedPromptParts()),
82
+ this.promptFragmentCustomizationService.onDidChangePromptFragmentCustomization(() => {
83
+ this.updateParsedPromptParts();
84
+ }),
85
+ this.aiSettingsService.onDidChange(() => {
86
+ this.updateParsedPromptParts();
87
+ }),
88
+ this.aiConfigurationSelectionService.onDidAgentChange(() => {
89
+ this.selectedItem = this.aiConfigurationSelectionService.getActiveAgent();
90
+ this.updateParsedPromptParts();
91
+ }),
92
+ this.agentService.onDidChangeAgents(async () => {
93
+ await this.loadItems();
94
+ this.update();
95
+ })
96
+ ]);
97
+ this.updateParsedPromptParts();
98
+ }
99
+ async loadItems() {
100
+ this.items = this.agentService.getAllAgents();
101
+ const activeAgent = this.aiConfigurationSelectionService.getActiveAgent();
102
+ if (activeAgent) {
103
+ this.selectedItem = activeAgent;
104
+ }
105
+ else if (this.items.length > 0 && !this.selectedItem) {
106
+ this.selectedItem = this.items[0];
107
+ this.aiConfigurationSelectionService.setActiveAgent(this.items[0]);
108
+ }
109
+ }
110
+ getItemId(agent) {
111
+ return agent.id;
112
+ }
113
+ getItemLabel(agent) {
114
+ return agent.name;
115
+ }
116
+ getEmptySelectionMessage() {
117
+ return core_1.nls.localize('theia/ai/core/agentConfiguration/selectAgentMessage', 'Please select an Agent first!');
118
+ }
119
+ renderItemPrefix(agent) {
120
+ const enabled = this.agentService.isEnabled(agent.id);
121
+ return (React.createElement("span", { className: `agent-status-indicator ${enabled ? `agent-enabled ${(0, browser_1.codicon)('circle-filled')}` : `agent-disabled ${(0, browser_1.codicon)('circle')}`}`, title: enabled ? 'Enabled' : 'Disabled' }));
122
+ }
123
+ renderItemSuffix(agent) {
124
+ var _a;
125
+ if (!((_a = agent.tags) === null || _a === void 0 ? void 0 : _a.length)) {
126
+ return undefined;
127
+ }
128
+ return React.createElement("span", null, agent.tags.map(tag => React.createElement("span", { key: tag, className: 'agent-tag' }, tag)));
129
+ }
130
+ renderList() {
131
+ return (React.createElement("div", { className: "ai-configuration-list preferences-tree-widget theia-TreeContainer" },
132
+ React.createElement("ul", null, this.items.map(agent => {
133
+ const agentId = this.getItemId(agent);
134
+ const isSelected = this.selectedItem && this.getItemId(this.selectedItem) === agentId;
135
+ return (React.createElement("li", { key: agentId, className: `theia-TreeNode theia-CompositeTreeNode${isSelected ? ' theia-mod-selected' : ''} ${this.getItemClassName(agent)}`, onClick: () => this.handleItemSelect(agent) },
136
+ this.renderItemPrefix(agent),
137
+ React.createElement("span", { className: "ai-configuration-list-item-label" }, this.getItemLabel(agent)),
138
+ this.renderItemSuffix(agent)));
139
+ })),
140
+ React.createElement("div", { className: 'configuration-agents-add' },
141
+ React.createElement("button", { className: 'theia-button main', onClick: () => this.addCustomAgent() }, core_1.nls.localize('theia/ai/core/agentConfiguration/addCustomAgent', 'Add Custom Agent')))));
142
+ }
143
+ async updateParsedPromptParts() {
144
+ this.isLoadingDetails = true;
145
+ const agent = this.aiConfigurationSelectionService.getActiveAgent();
146
+ if (agent) {
147
+ this.parsedPromptParts = await this.parsePromptFragmentsForVariableAndFunction(agent);
148
+ }
149
+ else {
150
+ this.parsedPromptParts = undefined;
151
+ }
152
+ this.isLoadingDetails = false;
153
+ this.update();
154
+ }
155
+ renderItemDetail(agent) {
156
+ var _a;
157
+ if (this.isLoadingDetails) {
158
+ return React.createElement("div", null, core_1.nls.localize('theia/ai/core/agentConfiguration/loading', 'Loading...'));
159
+ }
160
+ const enabled = this.agentService.isEnabled(agent.id);
161
+ if (!this.parsedPromptParts) {
162
+ this.updateParsedPromptParts();
163
+ return React.createElement("div", null, core_1.nls.localize('theia/ai/core/agentConfiguration/loading', 'Loading...'));
164
+ }
165
+ const globalVariables = Array.from(new Set([...this.parsedPromptParts.globalVariables, ...agent.variables]));
166
+ const functions = Array.from(new Set([...this.parsedPromptParts.functions, ...agent.functions]));
167
+ const agentNameWithTags = React.createElement(React.Fragment, null,
168
+ agent.name,
169
+ ((_a = agent.tags) === null || _a === void 0 ? void 0 : _a.length) && React.createElement("span", null, agent.tags.map(tag => React.createElement("span", { key: tag, className: 'agent-tag' }, tag))));
170
+ return React.createElement("div", { key: agent.id },
171
+ React.createElement("div", { className: 'settings-section-title settings-section-category-title agent-title-with-toggle' },
172
+ React.createElement("div", { className: 'agent-title-content' },
173
+ React.createElement("div", null,
174
+ agentNameWithTags,
175
+ React.createElement("pre", { className: 'ai-id-label' },
176
+ "Id: ",
177
+ agent.id)),
178
+ React.createElement("label", { className: 'agent-enable-toggle', title: core_1.nls.localize('theia/ai/core/agentConfiguration/enableAgent', 'Enable Agent') },
179
+ React.createElement("div", { className: 'toggle-switch', onClick: this.toggleAgentEnabled },
180
+ React.createElement("input", { type: "checkbox", checked: enabled, onChange: this.toggleAgentEnabled }),
181
+ React.createElement("span", { className: 'toggle-slider' }))))),
182
+ agent.description && (React.createElement("div", { className: "ai-agent-description" }, agent.description)),
183
+ agent.prompts.length > 0 && (React.createElement(React.Fragment, null,
184
+ React.createElement("div", { className: "settings-section-subcategory-title ai-settings-section-subcategory-title" }, core_1.nls.localize('theia/ai/core/agentConfiguration/promptTemplates', 'Prompt Templates')),
185
+ React.createElement("table", { className: "ai-templates-table" },
186
+ React.createElement("thead", null,
187
+ React.createElement("tr", null,
188
+ React.createElement("th", null, core_1.nls.localize('theia/ai/core/agentConfiguration/templateName', 'Template')),
189
+ React.createElement("th", null, core_1.nls.localize('theia/ai/core/agentConfiguration/variant', 'Variant')),
190
+ React.createElement("th", { className: "template-actions-header" }, core_1.nls.localize('theia/ai/core/agentConfiguration/actions', 'Actions')))),
191
+ React.createElement("tbody", null, agent.prompts.map(prompt => (React.createElement(template_settings_renderer_1.PromptVariantRenderer, { key: agent.id + '.' + prompt.id, agentId: agent.id, promptVariantSet: prompt, promptService: this.promptService }))))))),
192
+ React.createElement("div", { className: 'ai-lm-requirements' },
193
+ React.createElement(language_model_renderer_1.LanguageModelRenderer, { agent: agent, languageModels: this.languageModels, aiSettingsService: this.aiSettingsService, languageModelRegistry: this.languageModelRegistry, languageModelAliases: this.languageModelAliases })),
194
+ globalVariables.length > 0 && (React.createElement(React.Fragment, null,
195
+ React.createElement("div", { className: "settings-section-subcategory-title" }, core_1.nls.localize('theia/ai/core/agentConfiguration/usedGlobalVariables', 'Used Global Variables')),
196
+ React.createElement(AgentGlobalVariables, { variables: globalVariables, variableService: this.variableService }))),
197
+ this.parsedPromptParts.agentSpecificVariables.length > 0 && (React.createElement(React.Fragment, null,
198
+ React.createElement("div", { className: "settings-section-subcategory-title" }, core_1.nls.localize('theia/ai/core/agentConfiguration/usedAgentSpecificVariables', 'Used Agent-Specific Variables')),
199
+ React.createElement("ul", { className: 'variable-references' },
200
+ React.createElement(AgentSpecificVariables, { promptVariables: this.parsedPromptParts.agentSpecificVariables, agent: agent })))),
201
+ functions.length > 0 && (React.createElement(React.Fragment, null,
202
+ React.createElement("div", { className: "settings-section-subcategory-title" }, core_1.nls.localize('theia/ai/core/agentConfiguration/usedFunctions', 'Used Functions')),
203
+ React.createElement("ul", { className: 'function-references' },
204
+ React.createElement(AgentFunctions, { functions: functions })))));
205
+ }
206
+ async parsePromptFragmentsForVariableAndFunction(agent) {
207
+ var _a, _b, _c, _d;
208
+ const result = { functions: [], globalVariables: [], agentSpecificVariables: [] };
209
+ const agentSettings = await this.aiSettingsService.getAgentSettings(agent.id);
210
+ const selectedVariants = (_a = agentSettings === null || agentSettings === void 0 ? void 0 : agentSettings.selectedVariants) !== null && _a !== void 0 ? _a : {};
211
+ for (const mainTemplate of agent.prompts) {
212
+ const promptId = (_c = (_b = selectedVariants[mainTemplate.id]) !== null && _b !== void 0 ? _b : mainTemplate.defaultVariant.id) !== null && _c !== void 0 ? _c : mainTemplate.id;
213
+ const promptToAnalyze = (_d = this.promptService.getRawPromptFragment(promptId)) === null || _d === void 0 ? void 0 : _d.template;
214
+ if (!promptToAnalyze) {
215
+ continue;
216
+ }
217
+ this.extractVariablesAndFunctions(promptToAnalyze, result, agent);
218
+ }
219
+ return result;
220
+ }
221
+ extractVariablesAndFunctions(promptContent, result, agent) {
222
+ const variableMatches = (0, common_1.matchVariablesRegEx)(promptContent);
223
+ variableMatches.forEach(match => {
224
+ const variableId = match[1];
225
+ if (variableId.startsWith('!--')) {
226
+ return;
227
+ }
228
+ const baseVariableId = variableId.split(':')[0];
229
+ if (this.variableService.hasVariable(baseVariableId) &&
230
+ agent.agentSpecificVariables.find(v => v.name === baseVariableId) === undefined) {
231
+ result.globalVariables.push(variableId);
232
+ }
233
+ else {
234
+ result.agentSpecificVariables.push(variableId);
235
+ }
236
+ });
237
+ const functionMatches = [...promptContent.matchAll(common_1.PROMPT_FUNCTION_REGEX)];
238
+ functionMatches.forEach(match => {
239
+ const functionId = match[1];
240
+ result.functions.push(functionId);
241
+ });
242
+ }
243
+ showVariableConfigurationTab() {
244
+ this.aiConfigurationSelectionService.selectConfigurationTab(variable_configuration_widget_1.AIVariableConfigurationWidget.ID);
245
+ }
246
+ async addCustomAgent() {
247
+ const locations = await this.promptFragmentCustomizationService.getCustomAgentsLocations();
248
+ // If only one location is available, use the direct approach
249
+ if (locations.length === 1) {
250
+ this.promptFragmentCustomizationService.openCustomAgentYaml(locations[0].uri);
251
+ return;
252
+ }
253
+ // Multiple locations - show quick picker
254
+ const quickPick = this.quickInputService.createQuickPick();
255
+ quickPick.title = core_1.nls.localize('theia/ai/ide/agentConfiguration/customAgentLocationQuickPick/title', 'Select Location for Custom Agents File');
256
+ quickPick.placeholder = core_1.nls.localize('theia/ai/ide/agentConfiguration/customAgentLocationQuickPick/placeholder', 'Choose where to create or open a custom agents file');
257
+ quickPick.items = locations.map(location => ({
258
+ label: location.uri.path.toString(),
259
+ description: location.exists
260
+ ? core_1.nls.localize('theia/ai/ide/agentConfiguration/customAgentLocationQuickPick/openExistingFile', 'Open existing file')
261
+ : core_1.nls.localize('theia/ai/ide/agentConfiguration/customAgentLocationQuickPick/createNewFile', 'Create new file'),
262
+ location
263
+ }));
264
+ quickPick.onDidAccept(async () => {
265
+ const selectedItem = quickPick.selectedItems[0];
266
+ if (selectedItem && selectedItem.location) {
267
+ quickPick.dispose();
268
+ this.promptFragmentCustomizationService.openCustomAgentYaml(selectedItem.location.uri);
269
+ }
270
+ });
271
+ quickPick.show();
272
+ }
273
+ };
274
+ exports.AIAgentConfigurationWidget = AIAgentConfigurationWidget;
275
+ AIAgentConfigurationWidget.ID = 'ai-agent-configuration-container-widget';
276
+ AIAgentConfigurationWidget.LABEL = core_1.nls.localize('theia/ai/core/agentConfiguration/label', 'Agents');
277
+ tslib_1.__decorate([
278
+ (0, inversify_1.inject)(common_1.AgentService),
279
+ tslib_1.__metadata("design:type", Object)
280
+ ], AIAgentConfigurationWidget.prototype, "agentService", void 0);
281
+ tslib_1.__decorate([
282
+ (0, inversify_1.inject)(common_1.LanguageModelRegistry),
283
+ tslib_1.__metadata("design:type", Object)
284
+ ], AIAgentConfigurationWidget.prototype, "languageModelRegistry", void 0);
285
+ tslib_1.__decorate([
286
+ (0, inversify_1.inject)(common_1.PromptFragmentCustomizationService),
287
+ tslib_1.__metadata("design:type", Object)
288
+ ], AIAgentConfigurationWidget.prototype, "promptFragmentCustomizationService", void 0);
289
+ tslib_1.__decorate([
290
+ (0, inversify_1.inject)(language_model_alias_1.LanguageModelAliasRegistry),
291
+ tslib_1.__metadata("design:type", Object)
292
+ ], AIAgentConfigurationWidget.prototype, "languageModelAliasRegistry", void 0);
293
+ tslib_1.__decorate([
294
+ (0, inversify_1.inject)(common_1.AISettingsService),
295
+ tslib_1.__metadata("design:type", Object)
296
+ ], AIAgentConfigurationWidget.prototype, "aiSettingsService", void 0);
297
+ tslib_1.__decorate([
298
+ (0, inversify_1.inject)(ai_configuration_service_1.AIConfigurationSelectionService),
299
+ tslib_1.__metadata("design:type", ai_configuration_service_1.AIConfigurationSelectionService)
300
+ ], AIAgentConfigurationWidget.prototype, "aiConfigurationSelectionService", void 0);
301
+ tslib_1.__decorate([
302
+ (0, inversify_1.inject)(common_1.AIVariableService),
303
+ tslib_1.__metadata("design:type", Object)
304
+ ], AIAgentConfigurationWidget.prototype, "variableService", void 0);
305
+ tslib_1.__decorate([
306
+ (0, inversify_1.inject)(common_1.PromptService),
307
+ tslib_1.__metadata("design:type", Object)
308
+ ], AIAgentConfigurationWidget.prototype, "promptService", void 0);
309
+ tslib_1.__decorate([
310
+ (0, inversify_1.inject)(browser_1.QuickInputService),
311
+ tslib_1.__metadata("design:type", Object)
312
+ ], AIAgentConfigurationWidget.prototype, "quickInputService", void 0);
313
+ tslib_1.__decorate([
314
+ (0, inversify_1.postConstruct)(),
315
+ tslib_1.__metadata("design:type", Function),
316
+ tslib_1.__metadata("design:paramtypes", []),
317
+ tslib_1.__metadata("design:returntype", void 0)
318
+ ], AIAgentConfigurationWidget.prototype, "init", null);
319
+ exports.AIAgentConfigurationWidget = AIAgentConfigurationWidget = AIAgentConfigurationWidget_1 = tslib_1.__decorate([
320
+ (0, inversify_1.injectable)()
321
+ ], AIAgentConfigurationWidget);
322
+ const AgentGlobalVariables = ({ variables: globalVariables, variableService }) => {
323
+ if (globalVariables.length === 0) {
324
+ return React.createElement("div", { className: "ai-empty-state-content" }, core_1.nls.localizeByDefault('None'));
325
+ }
326
+ const allVariables = variableService.getVariables();
327
+ const variableData = globalVariables.map(varId => {
328
+ const variable = allVariables.find(v => v.id === varId);
329
+ return {
330
+ id: varId,
331
+ name: (variable === null || variable === void 0 ? void 0 : variable.name) || varId,
332
+ description: (variable === null || variable === void 0 ? void 0 : variable.description) || ''
333
+ };
334
+ });
335
+ return (React.createElement("table", { className: "ai-templates-table" },
336
+ React.createElement("thead", null,
337
+ React.createElement("tr", null,
338
+ React.createElement("th", null, core_1.nls.localize('theia/ai/ide/agentConfiguration/variableName', 'Variable')),
339
+ React.createElement("th", null, core_1.nls.localize('theia/ai/ide/agentConfiguration/variableDescription', 'Description')))),
340
+ React.createElement("tbody", null, variableData.map(variable => (React.createElement("tr", { key: variable.id },
341
+ React.createElement("td", { className: "ai-variable-name-cell" }, variable.name),
342
+ React.createElement("td", { className: "ai-variable-description-cell" }, variable.description || core_1.nls.localize('theia/ai/ide/agentConfiguration/noDescription', 'No description available'))))))));
343
+ };
344
+ const AgentFunctions = ({ functions }) => {
345
+ if (functions.length === 0) {
346
+ return React.createElement(React.Fragment, null, core_1.nls.localizeByDefault('None'));
347
+ }
348
+ return React.createElement(React.Fragment, null, functions.map(functionId => React.createElement("li", { key: functionId, className: 'variable-reference' },
349
+ React.createElement("span", null, functionId))));
350
+ };
351
+ const AgentSpecificVariables = ({ promptVariables, agent }) => {
352
+ const agentDefinedVariablesName = agent.agentSpecificVariables.map(v => v.name);
353
+ const variables = Array.from(new Set([...promptVariables, ...agentDefinedVariablesName]));
354
+ if (variables.length === 0) {
355
+ return React.createElement("div", { className: "ai-empty-state-content" }, core_1.nls.localizeByDefault('None'));
356
+ }
357
+ return React.createElement("div", null, variables.map(variableId => React.createElement(AgentSpecificVariable, { key: variableId, variableId: variableId, agent: agent, promptVariables: promptVariables })));
358
+ };
359
+ const AgentSpecificVariable = ({ variableId, agent, promptVariables }) => {
360
+ const agentDefinedVariable = agent.agentSpecificVariables.find(v => v.name === variableId);
361
+ const undeclared = agentDefinedVariable === undefined;
362
+ const notUsed = !promptVariables.includes(variableId) && (agentDefinedVariable === null || agentDefinedVariable === void 0 ? void 0 : agentDefinedVariable.usedInPrompt) === true;
363
+ return React.createElement("div", { key: variableId, className: "ai-agent-specific-variable-item" },
364
+ React.createElement("div", { className: "ai-configuration-value-row" },
365
+ React.createElement("span", { className: "ai-configuration-value-row-label" },
366
+ core_1.nls.localize('theia/ai/core/agentConfiguration/name', 'Name'),
367
+ ":"),
368
+ React.createElement("span", { className: "ai-configuration-value-row-value" }, variableId)),
369
+ undeclared ? (React.createElement("div", { className: "ai-configuration-value-row" },
370
+ React.createElement("span", { className: "ai-configuration-value-row-label" },
371
+ core_1.nls.localize('theia/ai/core/agentConfiguration/status', 'Status'),
372
+ ":"),
373
+ React.createElement("span", { className: "ai-configuration-value-row-value ai-configuration-warning-text" }, core_1.nls.localize('theia/ai/core/agentConfiguration/undeclared', 'Undeclared')))) : (React.createElement(React.Fragment, null,
374
+ React.createElement("div", { className: "ai-configuration-value-row" },
375
+ React.createElement("span", { className: "ai-configuration-value-row-label" },
376
+ core_1.nls.localize('theia/ai/core/agentConfiguration/description', 'Description'),
377
+ ":"),
378
+ React.createElement("span", { className: "ai-configuration-value-row-value" }, agentDefinedVariable.description)),
379
+ notUsed && (React.createElement("div", { className: "ai-configuration-value-row" },
380
+ React.createElement("span", { className: "ai-configuration-value-row-label" },
381
+ core_1.nls.localize('theia/ai/core/agentConfiguration/status', 'Status'),
382
+ ":"),
383
+ React.createElement("span", { className: "ai-configuration-value-row-value ai-configuration-warning-text" }, core_1.nls.localize('theia/ai/core/agentConfiguration/notUsedInPrompt', 'Not used in prompt')))))));
384
+ };
385
+ //# sourceMappingURL=agent-configuration-widget.js.map