@codingame/monaco-vscode-chat-service-override 28.4.1 → 29.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (339) hide show
  1. package/index.js +18 -12
  2. package/package.json +5 -5
  3. package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +300 -0
  4. package/vscode/src/vs/platform/agentHost/common/agentService.js +31 -0
  5. package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +84 -0
  6. package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +16 -0
  7. package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.d.ts +488 -0
  8. package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +424 -0
  9. package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.d.ts +50 -0
  10. package/vscode/src/vs/platform/agentHost/common/state/protocol/messages.d.ts +202 -0
  11. package/vscode/src/vs/platform/agentHost/common/state/protocol/notifications.d.ts +114 -0
  12. package/vscode/src/vs/platform/agentHost/common/state/protocol/state.d.ts +723 -0
  13. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +33 -0
  14. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +40 -0
  15. package/vscode/src/vs/platform/agentHost/common/state/sessionState.d.ts +22 -0
  16. package/vscode/src/vs/platform/browserElements/common/browserElements.d.ts +13 -0
  17. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
  18. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.d.ts +2 -2
  19. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +29 -15
  20. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
  21. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +59 -59
  22. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
  23. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +12 -12
  24. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +8 -8
  25. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +3 -3
  26. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +4 -4
  27. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
  28. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +76 -10
  29. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
  30. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
  31. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
  32. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +11 -11
  33. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.d.ts +1 -1
  34. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +162 -4
  35. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +167 -4
  36. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
  37. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.d.ts +1 -1
  38. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +52 -20
  39. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
  40. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +11 -11
  41. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +13 -13
  42. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +19 -19
  43. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.d.ts +82 -0
  44. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +195 -0
  45. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.d.ts +5 -1
  46. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +97 -88
  47. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +3 -3
  48. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +4 -1
  49. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +5 -3
  50. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +78 -35
  51. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +7 -1
  52. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +174 -170
  53. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +7 -4
  54. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +12 -0
  55. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +118 -52
  56. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +7 -7
  57. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
  58. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.d.ts +5 -1
  59. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.js +13 -2
  60. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
  61. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.d.ts +0 -3
  62. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +5 -10
  63. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
  64. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +9 -10
  65. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.d.ts +23 -25
  66. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +341 -196
  67. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/agenttitlebarstatuswidget.css +79 -7
  68. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
  69. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
  70. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.d.ts +5 -4
  71. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.js +22 -10
  72. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +1 -1
  73. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +2 -2
  74. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +4 -0
  75. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +15 -14
  76. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +85 -5
  77. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +668 -214
  78. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.d.ts +10 -0
  79. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.js +18 -0
  80. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +306 -39
  81. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +84 -4
  82. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +651 -81
  83. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.d.ts +2 -1
  84. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +6 -2
  85. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.d.ts +31 -1
  86. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +9 -20
  87. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.d.ts +11 -1
  88. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +7 -142
  89. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationGroupHeaderRenderer.d.ts +43 -0
  90. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationGroupHeaderRenderer.js +63 -0
  91. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +11 -0
  92. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +44 -0
  93. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +25 -1
  94. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +297 -123
  95. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +153 -31
  96. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +17 -1
  97. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +111 -171
  98. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.d.ts +1 -3
  99. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +5 -30
  100. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +19 -19
  101. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +277 -186
  102. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.d.ts +4 -2
  103. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +31 -23
  104. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCollapsible.d.ts +3 -7
  105. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCollapsible.js +4 -16
  106. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.d.ts +18 -2
  107. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +112 -17
  108. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.d.ts +3 -3
  109. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +16 -27
  110. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
  111. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.d.ts +1 -1
  112. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +41 -19
  113. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.d.ts +7 -1
  114. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +35 -23
  115. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.d.ts +1 -8
  116. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +8 -51
  117. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.d.ts +1 -0
  118. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +13 -8
  119. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.d.ts +1 -1
  120. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +29 -36
  121. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowLayout.js +14 -7
  122. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.d.ts +5 -1
  123. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +79 -26
  124. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.d.ts +19 -0
  125. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +125 -0
  126. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +11 -4
  127. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +113 -82
  128. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.d.ts +18 -7
  129. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +54 -15
  130. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.d.ts +8 -3
  131. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +103 -28
  132. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.d.ts +2 -0
  133. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +48 -37
  134. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.d.ts +28 -2
  135. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +62 -20
  136. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +21 -37
  137. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
  138. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.js +2 -1
  139. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
  140. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +4 -3
  141. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +1 -1
  142. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
  143. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +1 -0
  144. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +17 -4
  145. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +5 -5
  146. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +4 -1
  147. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +43 -5
  148. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
  149. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.d.ts +59 -0
  150. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +194 -0
  151. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +9 -10
  152. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +13 -13
  153. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.d.ts +2 -1
  154. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +8 -4
  155. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +2 -2
  156. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +11 -0
  157. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +81 -50
  158. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +11 -11
  159. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +4 -4
  160. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +32 -32
  161. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
  162. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +1 -1
  163. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +22 -15
  164. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +10 -10
  165. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.d.ts +2 -2
  166. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +9 -7
  167. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +29 -26
  168. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +0 -2
  169. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +19 -27
  170. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.d.ts +2 -4
  171. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +105 -172
  172. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +1 -0
  173. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +80 -65
  174. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +12 -12
  175. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +56 -27
  176. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +1 -1
  177. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +4 -4
  178. package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.d.ts +16 -0
  179. package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +70 -0
  180. package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
  181. package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.d.ts +20 -0
  182. package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +40 -0
  183. package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.d.ts +31 -0
  184. package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +53 -0
  185. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +33 -2
  186. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +21 -2
  187. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +362 -18
  188. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +15 -4
  189. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +90 -43
  190. package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.d.ts +35 -0
  191. package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +146 -0
  192. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
  193. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +26 -26
  194. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +3 -3
  195. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
  196. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
  197. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +10 -9
  198. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
  199. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
  200. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
  201. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.d.ts +1 -1
  202. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +33 -5
  203. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.d.ts +3 -0
  204. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +200 -55
  205. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +7 -0
  206. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +90 -45
  207. package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.d.ts +4 -2
  208. package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +21 -10
  209. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +22 -16
  210. package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.d.ts +4 -2
  211. package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +28 -13
  212. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
  213. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +9 -9
  214. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +6 -6
  215. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +20 -16
  216. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +68 -5
  217. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
  218. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +1 -1
  219. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +1 -1
  220. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +1 -0
  221. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +57 -20
  222. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
  223. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +21 -5
  224. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +171 -57
  225. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +7 -5
  226. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +206 -35
  227. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +4 -3
  228. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +7 -7
  229. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.d.ts +7 -1
  230. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +11 -3
  231. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +44 -22
  232. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +450 -301
  233. package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.d.ts +23 -0
  234. package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.js +165 -0
  235. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +34 -20
  236. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +209 -144
  237. package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.d.ts +20 -0
  238. package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.js +205 -0
  239. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +17 -17
  240. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalCustomizations.d.ts +33 -0
  241. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalCustomizations.js +47 -0
  242. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalSkill.d.ts +30 -0
  243. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +5 -5
  244. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +5 -5
  245. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +12 -12
  246. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +1 -1
  247. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +191 -159
  248. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +6 -7
  249. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +210 -233
  250. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +19 -26
  251. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +183 -193
  252. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.d.ts +24 -0
  253. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.js +75 -0
  254. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
  255. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +8 -5
  256. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +8 -0
  257. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +97 -35
  258. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
  259. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.d.ts +16 -0
  260. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.js +67 -0
  261. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +2 -2
  262. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +62 -23
  263. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
  264. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
  265. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +10 -10
  266. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
  267. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
  268. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +8 -8
  269. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
  270. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -20
  271. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +2 -2
  272. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +3 -1
  273. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +23 -9
  274. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +1 -1
  275. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +2 -2
  276. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +3 -1
  277. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +50 -9
  278. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +3 -1
  279. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +21 -7
  280. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +20 -1
  281. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +124 -1
  282. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +20 -5
  283. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +5 -0
  284. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +10 -7
  285. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +2 -1
  286. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +46 -31
  287. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.d.ts +18 -1
  288. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +74 -37
  289. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +3 -3
  290. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
  291. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +1 -0
  292. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +24 -14
  293. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +2 -2
  294. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.js +1 -1
  295. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +3 -2
  296. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +1 -1
  297. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +2 -0
  298. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +5 -1
  299. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
  300. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +3 -3
  301. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
  302. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +3 -3
  303. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +1 -2
  304. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +66 -64
  305. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/outputAnalyzer.d.ts +1 -0
  306. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.d.ts +1 -0
  307. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +5 -2
  308. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +32 -2
  309. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +390 -114
  310. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +14 -0
  311. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +21 -11
  312. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +70 -51
  313. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +61 -51
  314. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +94 -76
  315. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
  316. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +19 -1
  317. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +112 -21
  318. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.d.ts +0 -53
  319. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.js +0 -219
  320. package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.d.ts +0 -89
  321. package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.js +0 -251
  322. package/vscode/src/vs/sessions/contrib/chat/browser/newSession.d.ts +0 -123
  323. package/vscode/src/vs/sessions/contrib/chat/browser/newSession.js +0 -278
  324. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.d.ts +0 -76
  325. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.js +0 -299
  326. package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.d.ts +0 -67
  327. package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.js +0 -263
  328. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.d.ts +0 -85
  329. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.js +0 -397
  330. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +0 -56
  331. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +0 -26
  332. package/vscode/src/vs/workbench/contrib/chat/browser/sessionResourceMatching.d.ts +0 -5
  333. package/vscode/src/vs/workbench/contrib/chat/browser/sessionResourceMatching.js +0 -30
  334. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.d.ts +0 -40
  335. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.js +0 -28
  336. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.d.ts +0 -190
  337. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.js +0 -11
  338. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +0 -16
  339. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +0 -20
@@ -7,12 +7,13 @@ import { escapeRegExpCharacters } from '@codingame/monaco-vscode-api/vscode/vs/b
7
7
  import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
8
8
  import { ResourceSet } from '@codingame/monaco-vscode-api/vscode/vs/base/common/map';
9
9
  import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
10
- import { relativePath } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
10
+ import { relativePath, isEqual } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
11
11
  import { Position } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/position';
12
12
  import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range';
13
13
  import { IModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service';
14
14
  import { ILanguageFeaturesService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/languageFeatures.service';
15
15
  import { ITextModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService.service';
16
+ import { ILanguageService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language.service';
16
17
  import { getDefinitionsAtPosition, getReferencesAtPosition, getImplementationsAtPosition } from '@codingame/monaco-vscode-api/vscode/vs/editor/contrib/gotoSymbol/browser/goToSymbol';
17
18
  import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
18
19
  import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
@@ -40,6 +41,7 @@ If the tool returns an error, retry with corrected input - ensure the file path
40
41
  let UsagesTool = class UsagesTool extends Disposable {
41
42
  constructor(
42
43
  _languageFeaturesService,
44
+ _languageService,
43
45
  _modelService,
44
46
  _searchService,
45
47
  _textModelService,
@@ -47,6 +49,7 @@ let UsagesTool = class UsagesTool extends Disposable {
47
49
  ) {
48
50
  super();
49
51
  this._languageFeaturesService = _languageFeaturesService;
52
+ this._languageService = _languageService;
50
53
  this._modelService = _modelService;
51
54
  this._searchService = _searchService;
52
55
  this._textModelService = _textModelService;
@@ -61,22 +64,31 @@ let UsagesTool = class UsagesTool extends Disposable {
61
64
  }
62
65
  getToolData() {
63
66
  const languageIds = this._languageFeaturesService.referenceProvider.registeredLanguageIds;
67
+ if (languageIds.size === 0) {
68
+ return undefined;
69
+ }
64
70
  let modelDescription = BaseModelDescription;
71
+ let userDescription;
65
72
  if (( languageIds.has("*"))) {
66
73
  modelDescription += "\n\nSupported for all languages.";
67
- } else if (languageIds.size > 0) {
74
+ userDescription = ( localize(6645, "Find references, definitions, and implementations of a symbol"));
75
+ } else {
68
76
  const sorted = [...languageIds].sort();
69
77
  modelDescription += `\n\nCurrently supported for: ${sorted.join(", ")}.`;
70
- } else {
71
- modelDescription += "\n\nNo languages currently have reference providers registered.";
78
+ const niceNames = ( sorted.map(id => this._languageService.getLanguageName(id) ?? id));
79
+ userDescription = ( localize(
80
+ 6646,
81
+ "Find references, definitions, and implementations of a symbol ({0})",
82
+ niceNames.join(", ")
83
+ ));
72
84
  }
73
85
  return {
74
86
  id: UsagesToolId,
75
87
  toolReferenceName: "usages",
76
88
  canBeReferencedInPrompt: false,
77
89
  icon: ThemeIcon.fromId(Codicon.references.id),
78
- displayName: ( localize(6478, "List Code Usages")),
79
- userDescription: ( localize(6479, "Find references, definitions, and implementations of a symbol")),
90
+ displayName: ( localize(6647, "List Code Usages")),
91
+ userDescription,
80
92
  modelDescription,
81
93
  source: ToolDataSource.Internal,
82
94
  when: ( ContextKeyExpr.has("config.chat.tools.usagesTool.enabled")),
@@ -107,7 +119,7 @@ let UsagesTool = class UsagesTool extends Disposable {
107
119
  async prepareToolInvocation(context, _token) {
108
120
  const input = context.parameters;
109
121
  return {
110
- invocationMessage: ( localize(6480, "Analyzing usages of `{0}`", input.symbol))
122
+ invocationMessage: ( localize(6648, "Analyzing usages of `{0}`", input.symbol))
111
123
  };
112
124
  }
113
125
  async invoke(invocation, _countTokens, _progress, token) {
@@ -160,7 +172,7 @@ let UsagesTool = class UsagesTool extends Disposable {
160
172
  )]);
161
173
  if (references.length === 0) {
162
174
  const result = createToolSimpleTextResult(`No usages found for \`${input.symbol}\`.`);
163
- result.toolResultMessage = ( new MarkdownString(( localize(6481, "Analyzed usages of `{0}`, no results", input.symbol))));
175
+ result.toolResultMessage = ( new MarkdownString(( localize(6649, "Analyzed usages of `{0}`, no results", input.symbol))));
164
176
  return result;
165
177
  }
166
178
  const previews = await this._getLinePreviews(input.symbol, references, token);
@@ -181,8 +193,8 @@ let UsagesTool = class UsagesTool extends Disposable {
181
193
  }
182
194
  const text = lines.join("\n");
183
195
  const result = createToolSimpleTextResult(text);
184
- result.toolResultMessage = references.length === 1 ? ( new MarkdownString(( localize(6482, "Analyzed usages of `{0}`, 1 result", input.symbol)))) : ( new MarkdownString(( localize(
185
- 6483,
196
+ result.toolResultMessage = references.length === 1 ? ( new MarkdownString(( localize(6650, "Analyzed usages of `{0}`, 1 result", input.symbol)))) : ( new MarkdownString(( localize(
197
+ 6651,
186
198
  "Analyzed usages of `{0}`, {1} results",
187
199
  input.symbol,
188
200
  references.length
@@ -278,13 +290,13 @@ let UsagesTool = class UsagesTool extends Disposable {
278
290
  return "reference";
279
291
  }
280
292
  _overlaps(a, b) {
281
- if (( a.uri.toString()) !== ( b.uri.toString())) {
293
+ if (!isEqual(a.uri, b.uri)) {
282
294
  return false;
283
295
  }
284
296
  return Range.areIntersectingOrTouching(a.range, b.range);
285
297
  }
286
298
  };
287
- UsagesTool = ( __decorate([( __param(0, ILanguageFeaturesService)), ( __param(1, IModelService)), ( __param(2, ISearchService)), ( __param(3, ITextModelService)), ( __param(4, IWorkspaceContextService))], UsagesTool));
299
+ UsagesTool = ( __decorate([( __param(0, ILanguageFeaturesService)), ( __param(1, ILanguageService)), ( __param(2, IModelService)), ( __param(3, ISearchService)), ( __param(4, ITextModelService)), ( __param(5, IWorkspaceContextService))], UsagesTool));
288
300
  let UsagesToolContribution = class UsagesToolContribution extends Disposable {
289
301
  static {
290
302
  this.ID = "chat.usagesTool";
@@ -295,9 +307,12 @@ let UsagesToolContribution = class UsagesToolContribution extends Disposable {
295
307
  let registration;
296
308
  const registerUsagesTool = () => {
297
309
  registration?.dispose();
310
+ registration = undefined;
298
311
  toolsService.flushToolUpdates();
299
312
  const toolData = usagesTool.getToolData();
300
- registration = toolsService.registerTool(toolData, usagesTool);
313
+ if (toolData) {
314
+ registration = toolsService.registerTool(toolData, usagesTool);
315
+ }
301
316
  };
302
317
  registerUsagesTool();
303
318
  this._store.add(usagesTool.onDidUpdateToolData(registerUsagesTool));
@@ -17,29 +17,29 @@ const chatViewsWelcomeJsonSchema = {
17
17
  properties: {
18
18
  icon: {
19
19
  type: "string",
20
- description: ( localize(6484, "The icon for the welcome message."))
20
+ description: ( localize(6652, "The icon for the welcome message."))
21
21
  },
22
22
  title: {
23
23
  type: "string",
24
- description: ( localize(6485, "The title of the welcome message."))
24
+ description: ( localize(6653, "The title of the welcome message."))
25
25
  },
26
26
  content: {
27
27
  type: "string",
28
28
  description: ( localize(
29
- 6486,
29
+ 6654,
30
30
  "The content of the welcome message. The first command link will be rendered as a button."
31
31
  ))
32
32
  },
33
33
  when: {
34
34
  type: "string",
35
- description: ( localize(6487, "Condition when the welcome message is shown."))
35
+ description: ( localize(6655, "Condition when the welcome message is shown."))
36
36
  }
37
37
  }
38
38
  };
39
39
  const chatViewsWelcomeExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
40
40
  extensionPoint: "chatViewsWelcome",
41
41
  jsonSchema: {
42
- description: ( localize(6488, "Contributes a welcome message to a chat view")),
42
+ description: ( localize(6656, "Contributes a welcome message to a chat view")),
43
43
  type: "array",
44
44
  items: chatViewsWelcomeJsonSchema
45
45
  }
@@ -39,7 +39,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
39
39
  this.configurationService = configurationService;
40
40
  this._altKeyPressed = false;
41
41
  const isSteerDefault = this._isSteerDefault();
42
- this._primaryActionAction = this._register(( new Action("chat.queuePickerPrimary", isSteerDefault ? ( localize(6805, "Steer with Message")) : ( localize(6806, "Add to Queue")), ThemeIcon.asClassName(isSteerDefault ? Codicon.arrowUp : Codicon.add), !!contextKeyService.getContextKeyValue(ChatContextKeys.inputHasText.key), () => this._runDefaultAction())));
42
+ this._primaryActionAction = this._register(( new Action("chat.queuePickerPrimary", isSteerDefault ? ( localize(7007, "Steer with Message")) : ( localize(7008, "Add to Queue")), ThemeIcon.asClassName(isSteerDefault ? Codicon.arrowUp : Codicon.add), !!contextKeyService.getContextKeyValue(ChatContextKeys.inputHasText.key), () => this._runDefaultAction())));
43
43
  this._primaryAction = this._register(( new ActionViewItem(undefined, this._primaryActionAction, {
44
44
  icon: true,
45
45
  label: false
@@ -47,7 +47,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
47
47
  this._register(contextKeyService.onDidChangeContext(e => {
48
48
  this._primaryActionAction.enabled = !!contextKeyService.getContextKeyValue(ChatContextKeys.inputHasText.key);
49
49
  }));
50
- const dropdownAction = this._register(( new Action("chat.queuePickerDropdown", ( localize(6807, "More Actions...")))));
50
+ const dropdownAction = this._register(( new Action("chat.queuePickerDropdown", ( localize(7009, "More Actions...")))));
51
51
  this._dropdown = this._register(( new ChevronActionWidgetDropdown(dropdownAction, {
52
52
  actionProvider: {
53
53
  getActions: () => this._getDropdownActions()
@@ -75,7 +75,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
75
75
  }
76
76
  _updatePrimaryAction() {
77
77
  const isSteer = this._isEffectiveSteer();
78
- this._primaryActionAction.label = isSteer ? ( localize(6805, "Steer with Message")) : ( localize(6806, "Add to Queue"));
78
+ this._primaryActionAction.label = isSteer ? ( localize(7007, "Steer with Message")) : ( localize(7008, "Add to Queue"));
79
79
  this._primaryActionAction.class = ThemeIcon.asClassName(isSteer ? Codicon.arrowUp : Codicon.add);
80
80
  }
81
81
  _runDefaultAction() {
@@ -125,7 +125,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
125
125
  const isSteerDefault = this._isSteerDefault();
126
126
  const queueAction = {
127
127
  id: ChatQueueMessageAction.ID,
128
- label: ( localize(6806, "Add to Queue")),
128
+ label: ( localize(7008, "Add to Queue")),
129
129
  tooltip: "",
130
130
  enabled: true,
131
131
  checked: !isSteerDefault,
@@ -133,7 +133,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
133
133
  class: undefined,
134
134
  hover: {
135
135
  content: ( localize(
136
- 6808,
136
+ 7010,
137
137
  "Queue this message to send after the current request completes. The current response will finish uninterrupted before the queued message is sent."
138
138
  ))
139
139
  },
@@ -143,7 +143,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
143
143
  };
144
144
  const steerAction = {
145
145
  id: ChatSteerWithMessageAction.ID,
146
- label: ( localize(6805, "Steer with Message")),
146
+ label: ( localize(7007, "Steer with Message")),
147
147
  tooltip: "",
148
148
  enabled: true,
149
149
  checked: isSteerDefault,
@@ -151,7 +151,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
151
151
  class: undefined,
152
152
  hover: {
153
153
  content: ( localize(
154
- 6809,
154
+ 7011,
155
155
  "Send this message at the next opportunity, signaling the current request to yield. The current response will stop and the new message will be sent immediately."
156
156
  ))
157
157
  },
@@ -161,13 +161,13 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
161
161
  };
162
162
  const sendAction = {
163
163
  id: "_" + ChatSubmitAction.ID,
164
- label: ( localize(6810, "Stop and Send")),
164
+ label: ( localize(7012, "Stop and Send")),
165
165
  tooltip: "",
166
166
  enabled: true,
167
167
  icon: Codicon.arrowRight,
168
168
  class: undefined,
169
169
  hover: {
170
- content: ( localize(6811, "Cancel the current request and send this message immediately."))
170
+ content: ( localize(7013, "Cancel the current request and send this message immediately."))
171
171
  },
172
172
  run: () => {
173
173
  this.commandService.executeCommand(ChatSubmitAction.ID);
@@ -65,19 +65,19 @@ let ChatStatusWidget = class ChatStatusWidget extends Disposable {
65
65
  this.actionButton.element.classList.add("chat-status-button");
66
66
  if (enabledSku === "anonymous") {
67
67
  const message = ( localize(
68
- 6812,
68
+ 7014,
69
69
  "You've reached the limit for chat messages. Sign in to use Copilot Free."
70
70
  ));
71
- const buttonLabel = ( localize(6813, "Sign In"));
71
+ const buttonLabel = ( localize(7015, "Sign In"));
72
72
  this.messageElement.textContent = message;
73
73
  this.actionButton.label = buttonLabel;
74
- this.actionButton.element.ariaLabel = ( localize(6814, "{0} {1}", message, buttonLabel));
74
+ this.actionButton.element.ariaLabel = ( localize(7016, "{0} {1}", message, buttonLabel));
75
75
  } else {
76
- const message = ( localize(6815, "You've reached the limit for chat messages."));
77
- const buttonLabel = ( localize(6816, "Upgrade"));
76
+ const message = ( localize(7017, "You've reached the limit for chat messages."));
77
+ const buttonLabel = ( localize(7018, "Upgrade"));
78
78
  this.messageElement.textContent = message;
79
79
  this.actionButton.label = buttonLabel;
80
- this.actionButton.element.ariaLabel = ( localize(6817, "{0} {1}", message, buttonLabel));
80
+ this.actionButton.element.ariaLabel = ( localize(7019, "{0} {1}", message, buttonLabel));
81
81
  }
82
82
  this._register(this.actionButton.onDidClick(async () => {
83
83
  const commandId = this.chatEntitlementService.anonymous ? CHAT_SETUP_ACTION_ID : "workbench.action.chat.upgradePlan";
@@ -60,6 +60,7 @@ import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/c
60
60
  import { IChatDebugService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatDebugService.service';
61
61
  import { createDebugEventsAttachment } from '@codingame/monaco-vscode-xterm-addons-common/vscode/vs/workbench/contrib/chat/browser/chatDebug/chatDebugAttachment';
62
62
  import { getPromptFileType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations';
63
+ import { getChatSessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatUri';
63
64
 
64
65
  var BuiltinDynamicCompletions_1, ToolCompletions_1;
65
66
  const SlashCommandWord = /\/[\p{L}0-9_.:-]*/gu;
@@ -92,12 +93,9 @@ let SlashCommandCompletions = class SlashCommandCompletions extends Disposable {
92
93
  }
93
94
  let customAgentTarget = undefined;
94
95
  if (widget.lockedAgentId) {
95
- if (!widget.attachmentCapabilities.supportsPromptAttachments) {
96
- return null;
97
- }
98
96
  const sessionResource = widget.viewModel.model.sessionResource;
99
97
  const ctx = sessionResource && chatService.getChatSessionFromInternalUri(sessionResource);
100
- customAgentTarget = (ctx ? chatSessionsService.getCustomAgentTargetForSessionType(ctx.chatSessionType) : undefined) ?? Target.Undefined;
98
+ customAgentTarget = (ctx ? chatSessionsService.getCustomAgentTargetForSessionType(getChatSessionType(sessionResource)) : undefined) ?? Target.Undefined;
101
99
  }
102
100
  const range = computeCompletionRanges(model, position, SlashCommandWord);
103
101
  if (!range) {
@@ -117,13 +115,19 @@ let SlashCommandCompletions = class SlashCommandCompletions extends Disposable {
117
115
  }
118
116
  return {
119
117
  suggestions: ( slashCommands.filter(c => {
118
+ if (!c.silent && !widget.attachmentCapabilities.supportsPromptAttachments) {
119
+ return false;
120
+ }
121
+ if (c.when && !widget.scopedContextKeyService.contextMatchesRules(c.when)) {
122
+ return false;
123
+ }
120
124
  if (!widget.lockedAgentId) {
121
125
  return true;
122
126
  }
123
127
  if (c.modes && c.modes.length && !c.modes.includes(ChatModeKind.Agent)) {
124
128
  return false;
125
129
  }
126
- if (c.target && customAgentTarget && c.target !== customAgentTarget) {
130
+ if (c.targets && customAgentTarget && !c.targets.includes(customAgentTarget)) {
127
131
  return false;
128
132
  }
129
133
  return true;
@@ -178,7 +182,7 @@ let SlashCommandCompletions = class SlashCommandCompletions extends Disposable {
178
182
  return null;
179
183
  }
180
184
  return {
181
- suggestions: ( slashCommands.map((c, i) => {
185
+ suggestions: ( slashCommands.filter(c => !c.when || widget.scopedContextKeyService.contextMatchesRules(c.when)).map((c, i) => {
182
186
  const withSlash = `${chatSubcommandLeader}${c.command}`;
183
187
  return {
184
188
  label: {
@@ -247,7 +251,7 @@ let SlashCommandCompletions = class SlashCommandCompletions extends Disposable {
247
251
  } catch {}
248
252
  }
249
253
  return true;
250
- }).filter(c => c.parsedPromptFile?.header?.userInvocable !== false);
254
+ }).filter(c => c.parsedPromptFile?.header?.userInvocable !== false).filter(c => !c.when || widget.scopedContextKeyService.contextMatchesRules(c.when));
251
255
  if (userInvocableCommands.length === 0) {
252
256
  return null;
253
257
  }
@@ -559,7 +563,7 @@ let AgentCompletions = class AgentCompletions extends Disposable {
559
563
  if (!isEmptyUpToCompletionWord(model, range)) {
560
564
  return;
561
565
  }
562
- const label = ( localize(6823, "Install Chat Extensions..."));
566
+ const label = ( localize(7026, "Install Chat Extensions..."));
563
567
  const item = {
564
568
  label,
565
569
  insertText: "",
@@ -707,7 +711,7 @@ class StartParameterizedPromptAction extends Action2 {
707
711
  messages = await prompt.resolve(args, cts.token);
708
712
  } catch (e) {
709
713
  if (!cts.token.isCancellationRequested) {
710
- notificationService.error(( localize(6824, "Error resolving prompt: {0}", String(e))));
714
+ notificationService.error(( localize(7027, "Error resolving prompt: {0}", String(e))));
711
715
  }
712
716
  replaceTextWith("");
713
717
  return;
@@ -735,15 +739,15 @@ class StartParameterizedPromptAction extends Action2 {
735
739
  id: generateUuid(),
736
740
  kind: "generic",
737
741
  value: contents,
738
- name: ( localize(6825, "Prompt Resource"))
742
+ name: ( localize(7028, "Prompt Resource"))
739
743
  });
740
744
  }
741
745
  } else if (mimeType && getAttachableImageExtension(mimeType)) {
742
746
  const resized = await resizeImage(contents).catch(() => decodeBase64(contents).buffer);
743
747
  chatWidget.attachmentModel.addContext({
744
748
  id: generateUuid(),
745
- name: ( localize(6826, "Prompt Image")),
746
- fullName: ( localize(6826, "Prompt Image")),
749
+ name: ( localize(7029, "Prompt Image")),
750
+ fullName: ( localize(7029, "Prompt Image")),
747
751
  value: resized,
748
752
  kind: "image",
749
753
  references: validURI && [{
@@ -980,7 +984,7 @@ let BuiltinDynamicCompletions = class BuiltinDynamicCompletions extends Disposab
980
984
  result.suggestions.push({
981
985
  label: {
982
986
  label: text,
983
- description: ( localize(6827, "Attach debug events snapshot"))
987
+ description: ( localize(7030, "Attach debug events snapshot"))
984
988
  },
985
989
  filterText: text,
986
990
  insertText: "",
@@ -1073,7 +1077,7 @@ let BuiltinDynamicCompletions = class BuiltinDynamicCompletions extends Disposab
1073
1077
  const uriLabel = this.labelService.getUriLabel(resource, {
1074
1078
  relative: true
1075
1079
  });
1076
- const labelDescription = description ? ( localize(6828, "{0} ({1})", uriLabel, description)) : uriLabel;
1080
+ const labelDescription = description ? ( localize(7031, "{0} ({1})", uriLabel, description)) : uriLabel;
1077
1081
  const sortText = boostPriority ? " " : "!";
1078
1082
  return {
1079
1083
  label: {
@@ -1121,7 +1125,7 @@ let BuiltinDynamicCompletions = class BuiltinDynamicCompletions extends Disposab
1121
1125
  }
1122
1126
  }
1123
1127
  seen.add(resource);
1124
- const newLen = result.suggestions.push(makeCompletionItem(resource, FileKind.FILE, i === 0 ? ( localize(6829, "Active file")) : undefined, i === 0));
1128
+ const newLen = result.suggestions.push(makeCompletionItem(resource, FileKind.FILE, i === 0 ? ( localize(7032, "Active file")) : undefined, i === 0));
1125
1129
  if (newLen - len >= 5) {
1126
1130
  break;
1127
1131
  }
@@ -1354,7 +1358,7 @@ let ToolCompletions = class ToolCompletions extends Disposable {
1354
1358
  name = item.referenceName;
1355
1359
  } else {
1356
1360
  const source = item.source;
1357
- detail = ( localize(6830, "{0}: {1}", source.label, item.displayName));
1361
+ detail = ( localize(7033, "{0}: {1}", source.label, item.displayName));
1358
1362
  name = item.toolReferenceName ?? item.displayName;
1359
1363
  documentation = item.userDescription ?? item.modelDescription;
1360
1364
  }
@@ -5,7 +5,9 @@ import { Disposable, MutableDisposable } from '@codingame/monaco-vscode-api/vsco
5
5
  import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
6
6
  import { themeColorFromId } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
7
7
  import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
8
+ import { MouseTargetType } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/editorBrowser';
8
9
  import { ICodeEditorService } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/services/codeEditorService.service';
10
+ import { Position } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/position';
9
11
  import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range';
10
12
  import { TrackedRangeStickiness } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/model';
11
13
  import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
@@ -23,6 +25,7 @@ import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/quic
23
25
  import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/searchColors';
24
26
  import { IThemeService } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/themeService.service';
25
27
  import { IChatAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/participants/chatAgents.service';
28
+ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
26
29
  import { chatSlashCommandBackground, chatSlashCommandForeground } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/common/widget/chatColors';
27
30
  import { ChatRequestTextPart, ChatRequestSlashPromptPart, ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestSlashCommandPart, ChatRequestToolPart, ChatRequestToolSetPart, ChatRequestDynamicVariablePart, chatAgentLeader, chatSubcommandLeader } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/requestParser/chatParserTypes';
28
31
  import { ChatRequestParser } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/requestParser/chatRequestParser';
@@ -33,12 +36,14 @@ import { dynamicVariableDecorationType } from '@codingame/monaco-vscode-api/vsco
33
36
  import { NativeEditContextRegistry } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/controller/editContext/native/nativeEditContextRegistry';
34
37
  import { TextAreaEditContextRegistry } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/controller/editContext/textArea/textAreaEditContextRegistry';
35
38
  import { ThrottledDelayer } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
39
+ import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
36
40
  import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
37
41
 
38
42
  var InputEditorDecorations_1;
39
43
  const decorationDescription = "chat";
40
44
  const placeholderDecorationType = "chat-session-detail";
41
45
  const slashCommandTextDecorationType = "chat-session-text";
46
+ const clickableSlashPromptTextDecorationType = "chat-session-clickable-text";
42
47
  const variableTextDecorationType = "chat-variable-text";
43
48
  function agentAndCommandToKey(agent, subcommand) {
44
49
  return subcommand ? `${agent.id}__${subcommand}` : agent.id;
@@ -75,7 +80,8 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
75
80
  themeService,
76
81
  chatAgentService,
77
82
  labelService,
78
- promptsService
83
+ promptsService,
84
+ editorService
79
85
  ) {
80
86
  super();
81
87
  this.widget = widget;
@@ -84,6 +90,7 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
84
90
  this.chatAgentService = chatAgentService;
85
91
  this.labelService = labelService;
86
92
  this.promptsService = promptsService;
93
+ this.editorService = editorService;
87
94
  this.id = "inputEditorDecorations";
88
95
  this.previouslyUsedAgents = ( new Set());
89
96
  this.viewModelDisposables = this._register(( new MutableDisposable()));
@@ -104,6 +111,34 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
104
111
  this._register(this.widget.onDidSubmitAgent(e => {
105
112
  this.previouslyUsedAgents.add(agentAndCommandToKey(e.agent, e.slashCommand?.name));
106
113
  }));
114
+ this._register(this.widget.inputEditor.onMouseDown(e => {
115
+ this.mouseDownPromptSlashCommand = undefined;
116
+ if (!e.event.leftButton || e.target.type !== MouseTargetType.CONTENT_TEXT || !e.target.position) {
117
+ return;
118
+ }
119
+ const clickablePromptSlashCommand = this.clickablePromptSlashCommand;
120
+ if (!clickablePromptSlashCommand || !clickablePromptSlashCommand.range.containsPosition(e.target.position)) {
121
+ return;
122
+ }
123
+ this.mouseDownPromptSlashCommand = {
124
+ position: Position.lift(e.target.position),
125
+ uri: clickablePromptSlashCommand.uri,
126
+ range: clickablePromptSlashCommand.range
127
+ };
128
+ }));
129
+ this._register(this.widget.inputEditor.onMouseUp(e => {
130
+ const mouseDownPromptSlashCommand = this.mouseDownPromptSlashCommand;
131
+ this.mouseDownPromptSlashCommand = undefined;
132
+ if (!mouseDownPromptSlashCommand || e.target.type !== MouseTargetType.CONTENT_TEXT || !e.target.position) {
133
+ return;
134
+ }
135
+ if (!mouseDownPromptSlashCommand.range.containsPosition(e.target.position) || !Position.equals(mouseDownPromptSlashCommand.position, e.target.position)) {
136
+ return;
137
+ }
138
+ void this.editorService.openEditor({
139
+ resource: mouseDownPromptSlashCommand.uri
140
+ });
141
+ }));
107
142
  this._register(
108
143
  this.chatAgentService.onDidChangeAgents(() => this.triggerInputEditorDecorationsUpdate())
109
144
  );
@@ -137,6 +172,14 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
137
172
  borderRadius: "3px"
138
173
  })
139
174
  );
175
+ this._register(
176
+ this.codeEditorService.registerDecorationType(decorationDescription, clickableSlashPromptTextDecorationType, {
177
+ color: themeColorFromId(chatSlashCommandForeground),
178
+ backgroundColor: themeColorFromId(chatSlashCommandBackground),
179
+ borderRadius: "3px",
180
+ cursor: "pointer"
181
+ })
182
+ );
140
183
  this._register(
141
184
  this.codeEditorService.registerDecorationType(decorationDescription, variableTextDecorationType, {
142
185
  color: themeColorFromId(chatSlashCommandForeground),
@@ -255,6 +298,8 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
255
298
  );
256
299
  }
257
300
  async updateAsyncInputEditorDecorations(token) {
301
+ this.clickablePromptSlashCommand = undefined;
302
+ this.widget.inputEditor.setDecorationsByType(decorationDescription, clickableSlashPromptTextDecorationType, []);
258
303
  const parsedRequest = this.widget.parsedInput.parts;
259
304
  const agentPart = parsedRequest.find(p => p instanceof ChatRequestAgentPart);
260
305
  const agentSubcommandPart = parsedRequest.find(p => p instanceof ChatRequestAgentSubcommandPart);
@@ -299,9 +344,27 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
299
344
  });
300
345
  }
301
346
  if (slashPromptPart && promptSlashCommand) {
302
- textDecorations.push({
303
- range: slashPromptPart.editorRange
304
- });
347
+ this.clickablePromptSlashCommand = {
348
+ range: Range.lift(slashPromptPart.editorRange),
349
+ uri: promptSlashCommand.promptPath.uri
350
+ };
351
+ const promptHoverMessage = ( new MarkdownString());
352
+ promptHoverMessage.appendText(( localize(
353
+ 7034,
354
+ "Click to open {0}",
355
+ this.labelService.getUriLabel(promptSlashCommand.promptPath.uri, {
356
+ relative: true
357
+ })
358
+ )));
359
+ const promptDecoration = {
360
+ range: slashPromptPart.editorRange,
361
+ hoverMessage: promptHoverMessage
362
+ };
363
+ this.widget.inputEditor.setDecorationsByType(
364
+ decorationDescription,
365
+ clickableSlashPromptTextDecorationType,
366
+ [promptDecoration]
367
+ );
305
368
  }
306
369
  this.widget.inputEditor.setDecorationsByType(decorationDescription, slashCommandTextDecorationType, textDecorations);
307
370
  const varDecorations = [];
@@ -349,7 +412,7 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
349
412
  }
350
413
  }
351
414
  };
352
- InputEditorDecorations = InputEditorDecorations_1 = ( __decorate([( __param(1, ICodeEditorService)), ( __param(2, IThemeService)), ( __param(3, IChatAgentService)), ( __param(4, ILabelService)), ( __param(5, IPromptsService))], InputEditorDecorations));
415
+ InputEditorDecorations = InputEditorDecorations_1 = ( __decorate([( __param(1, ICodeEditorService)), ( __param(2, IThemeService)), ( __param(3, IChatAgentService)), ( __param(4, ILabelService)), ( __param(5, IPromptsService)), ( __param(6, IEditorService))], InputEditorDecorations));
353
416
  class InputEditorSlashCommandMode extends Disposable {
354
417
  constructor(widget) {
355
418
  super();
@@ -62,7 +62,7 @@ let ChatAgentHoverParticipant = class ChatAgentHoverParticipant {
62
62
  return ( new RenderedHoverParts([renderedHoverPart]));
63
63
  }
64
64
  getAccessibleContent(hoverPart) {
65
- return localize(6831, "There is a chat agent hover part here.");
65
+ return localize(7035, "There is a chat agent hover part here.");
66
66
  }
67
67
  };
68
68
  ChatAgentHoverParticipant = ( __decorate([( __param(1, IInstantiationService)), ( __param(2, IChatWidgetService)), ( __param(3, ICommandService))], ChatAgentHoverParticipant));
@@ -253,7 +253,7 @@ let QuickChat = class QuickChat extends Disposable {
253
253
  disclaimerElement.classList.toggle("hidden", !showDisclaimer);
254
254
  if (showDisclaimer) {
255
255
  const renderedMarkdown = disposables.add(this.markdownRendererService.render(( new MarkdownString(( localize(
256
- 6875,
256
+ 7081,
257
257
  "By continuing with {0} Copilot, you agree to {1}'s [Terms]({2}) and [Privacy Statement]({3})",
258
258
  product.defaultChatAgent?.provider?.default?.name ?? "",
259
259
  product.defaultChatAgent?.provider?.default?.name ?? "",
@@ -174,7 +174,7 @@ let ChatEditor = class ChatEditor extends AbstractEditorWithViewState {
174
174
  let isContributedChatSession = false;
175
175
  const chatSessionType = input.getSessionType();
176
176
  if (chatSessionType !== localChatSessionType) {
177
- const loadingMessage = ( localize(6876, "Loading..."));
177
+ const loadingMessage = ( localize(7082, "Loading..."));
178
178
  this.showLoadingInChatWidget(loadingMessage);
179
179
  }
180
180
  await super.setInput(input, options, context, token);
@@ -56,6 +56,7 @@ export declare class ChatViewPane extends ViewPane implements IViewWelcomeDelega
56
56
  private readonly lastDimensionsPerOrientation;
57
57
  private welcomeController;
58
58
  private restoringSession;
59
+ private readonly loadSessionCts;
59
60
  private readonly modelRef;
60
61
  private readonly activityBadge;
61
62
  constructor(options: IViewPaneOptions, keybindingService: IKeybindingService, contextMenuService: IContextMenuService, configurationService: IConfigurationService, contextKeyService: IContextKeyService, viewDescriptorService: IViewDescriptorService, instantiationService: IInstantiationService, openerService: IOpenerService, themeService: IThemeService, hoverService: IHoverService, storageService: IStorageService, chatService: IChatService, chatAgentService: IChatAgentService, logService: ILogService, notificationService: INotificationService, layoutService: IWorkbenchLayoutService, chatSessionsService: IChatSessionsService, telemetryService: ITelemetryService, lifecycleService: ILifecycleService, progressService: IProgressService, agentSessionsService: IAgentSessionsService, chatEntitlementService: IChatEntitlementService, commandService: ICommandService, activityService: IActivityService, workbenchEnvironmentService: IWorkbenchEnvironmentService, hostService: IHostService);