@codingame/monaco-vscode-chat-service-override 30.0.0 → 31.0.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 (377) hide show
  1. package/index.js +21 -3
  2. package/package.json +5 -5
  3. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.d.ts +125 -0
  4. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.js +393 -0
  5. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.d.ts +65 -0
  6. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.js +453 -0
  7. package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.d.ts +28 -0
  8. package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.js +81 -0
  9. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.d.ts +75 -0
  10. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.js +180 -0
  11. package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +202 -51
  12. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.d.ts +182 -0
  13. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +282 -0
  14. package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +303 -32
  15. package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.js +14 -0
  16. package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.d.ts +1 -1
  17. package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.js +9 -0
  18. package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.d.ts +30 -0
  19. package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.js +662 -0
  20. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +12 -5
  21. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.js +9 -0
  22. package/vscode/src/vs/platform/agentHost/common/state/sessionCapabilities.d.ts +17 -0
  23. package/vscode/src/vs/platform/agentHost/common/state/sessionCapabilities.js +5 -0
  24. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +5 -5
  25. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.js +14 -0
  26. package/vscode/src/vs/platform/agentHost/common/state/sessionTransport.d.ts +42 -0
  27. package/vscode/src/vs/platform/agentHost/common/state/sessionTransport.js +7 -0
  28. package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.d.ts +118 -0
  29. package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.js +551 -0
  30. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.d.ts +22 -0
  31. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.js +83 -0
  32. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
  33. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +16 -16
  34. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
  35. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +59 -59
  36. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
  37. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +12 -12
  38. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.d.ts +2 -1
  39. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +17 -15
  40. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.d.ts +8 -0
  41. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +113 -9
  42. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +81 -4
  43. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
  44. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +47 -26
  45. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +15 -10
  46. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
  47. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
  48. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +14 -14
  49. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +13 -14
  50. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +15 -14
  51. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
  52. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.d.ts +5 -0
  53. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +58 -23
  54. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
  55. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +18 -18
  56. package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.d.ts +2 -1
  57. package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +24 -22
  58. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +8 -8
  59. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +2 -2
  60. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
  61. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +3 -1
  62. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +29 -20
  63. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +16 -16
  64. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.d.ts +9 -0
  65. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.js +23 -0
  66. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +3 -3
  67. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +2 -2
  68. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +65 -55
  69. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +5 -5
  70. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
  71. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
  72. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +4 -4
  73. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
  74. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +5 -5
  75. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +28 -28
  76. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
  77. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
  78. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +10 -3
  79. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +80 -15
  80. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +20 -14
  81. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +30 -15
  82. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +131 -0
  83. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.js +363 -0
  84. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +31 -76
  85. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +374 -764
  86. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.d.ts +8 -0
  87. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.js +11 -1
  88. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +222 -44
  89. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +20 -11
  90. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +269 -123
  91. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +1 -1
  92. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.d.ts +40 -0
  93. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.js +40 -0
  94. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.d.ts +26 -0
  95. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +249 -0
  96. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.d.ts +3 -0
  97. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +3 -0
  98. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +4 -3
  99. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +5 -17
  100. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +14 -1
  101. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +113 -58
  102. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +202 -68
  103. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationWelcomePromptLaunchers.css +246 -0
  104. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +15 -1
  105. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +162 -50
  106. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.d.ts +24 -0
  107. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.js +306 -0
  108. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +1 -1
  109. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +581 -257
  110. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.d.ts +15 -1
  111. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +245 -26
  112. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +25 -7
  113. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.d.ts +1 -1
  114. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +3 -5
  115. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
  116. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +19 -19
  117. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
  118. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +6 -6
  119. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
  120. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +103 -28
  121. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowLayout.js +3 -2
  122. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.d.ts +11 -1
  123. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +80 -29
  124. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
  125. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +20 -3
  126. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +128 -65
  127. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
  128. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
  129. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +28 -28
  130. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
  131. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +18 -0
  132. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
  133. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
  134. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
  135. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
  136. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +1 -0
  137. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +11 -1
  138. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +3 -3
  139. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +6 -5
  140. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
  141. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +1 -1
  142. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +10 -27
  143. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.d.ts +4 -41
  144. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +4 -310
  145. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.d.ts +0 -12
  146. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +3 -30
  147. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +2 -2
  148. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +1 -0
  149. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +61 -53
  150. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatManagementEditor.css +0 -110
  151. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
  152. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +31 -31
  153. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
  154. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +46 -34
  155. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.d.ts +4 -4
  156. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +17 -18
  157. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
  158. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.d.ts +1 -0
  159. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +96 -82
  160. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +2 -1
  161. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +21 -14
  162. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +18 -18
  163. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.js +1 -1
  164. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +15 -8
  165. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +315 -263
  166. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +14 -14
  167. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +196 -24
  168. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +56 -17
  169. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipEligibilityTracker.d.ts +2 -2
  170. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +2 -2
  171. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +8 -4
  172. package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
  173. package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
  174. package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
  175. package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
  176. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
  177. package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.d.ts +18 -0
  178. package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +31 -0
  179. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +26 -25
  180. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +3 -1
  181. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +48 -57
  182. package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +6 -6
  183. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
  184. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +26 -26
  185. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.d.ts +2 -2
  186. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +3 -3
  187. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
  188. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
  189. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
  190. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
  191. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
  192. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
  193. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.d.ts +11 -6
  194. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +226 -36
  195. package/vscode/src/vs/workbench/contrib/chat/browser/telemetry/chatModelCountTelemetry.d.ts +23 -0
  196. package/vscode/src/vs/workbench/contrib/chat/browser/telemetry/chatModelCountTelemetry.js +82 -0
  197. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.d.ts +3 -1
  198. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +108 -56
  199. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +24 -24
  200. package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +6 -6
  201. package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +7 -7
  202. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
  203. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +9 -9
  204. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.d.ts +3 -4
  205. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +9 -16
  206. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +21 -80
  207. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +26 -59
  208. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
  209. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +4 -3
  210. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +9 -1
  211. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +2 -1
  212. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +46 -14
  213. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
  214. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugEvents.d.ts +40 -0
  215. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugEvents.js +60 -0
  216. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +32 -5
  217. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +152 -26
  218. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +5 -9
  219. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +265 -261
  220. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.d.ts +28 -2
  221. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.js +75 -7
  222. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +9 -1
  223. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +6 -5
  224. package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.d.ts +18 -0
  225. package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +32 -4
  226. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +10 -25
  227. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +7 -52
  228. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +58 -466
  229. package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.js +3 -1
  230. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +36 -18
  231. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +5 -5
  232. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +5 -5
  233. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +12 -12
  234. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +0 -1
  235. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +168 -182
  236. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +49 -29
  237. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +491 -462
  238. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +16 -6
  239. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +18 -12
  240. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.d.ts +24 -4
  241. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.js +145 -68
  242. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
  243. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +2 -2
  244. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +4 -4
  245. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +25 -25
  246. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
  247. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.d.ts +2 -4
  248. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.js +19 -17
  249. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.d.ts +1 -1
  250. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +3 -3
  251. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +5 -17
  252. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +77 -157
  253. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
  254. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
  255. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +10 -10
  256. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
  257. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
  258. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
  259. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +17 -17
  260. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.js +1 -1
  261. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +21 -21
  262. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.js +1 -1
  263. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +4 -1
  264. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +29 -7
  265. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +2 -2
  266. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +1 -1
  267. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +3 -3
  268. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +12 -14
  269. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +4 -4
  270. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.d.ts +5 -1
  271. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +49 -12
  272. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +4 -4
  273. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +9 -8
  274. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.d.ts +2 -2
  275. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +13 -8
  276. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.d.ts +53 -0
  277. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +319 -0
  278. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +15 -15
  279. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +8 -8
  280. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +15 -15
  281. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.d.ts +1 -1
  282. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +2 -2
  283. package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.d.ts +21 -0
  284. package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.js +35 -0
  285. package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +0 -94
  286. package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +0 -16
  287. package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.d.ts +0 -578
  288. package/vscode/src/vs/platform/agentHost/common/state/protocol/messages.d.ts +0 -206
  289. package/vscode/src/vs/platform/agentHost/common/state/protocol/notifications.d.ts +0 -114
  290. package/vscode/src/vs/platform/agentHost/common/state/protocol/state.d.ts +0 -860
  291. package/vscode/src/vs/platform/agentHost/common/state/sessionState.d.ts +0 -27
  292. package/vscode/src/vs/platform/browserElements/common/browserElements.d.ts +0 -58
  293. package/vscode/src/vs/platform/browserElements/common/browserElements.js +0 -16
  294. package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.d.ts +0 -18
  295. package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.js +0 -13
  296. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/media/simpleBrowserOverlay.css +0 -85
  297. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.d.ts +0 -9
  298. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +0 -443
  299. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.d.ts +0 -17
  300. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +0 -132
  301. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatUsageWidget.css +0 -69
  302. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.d.ts +0 -65
  303. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +0 -66
  304. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.d.ts +0 -8
  305. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.js +0 -158
  306. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.d.ts +0 -2
  307. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +0 -41
  308. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/commandFileWriteParser.d.ts +0 -24
  309. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.d.ts +0 -26
  310. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.js +0 -142
  311. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +0 -45
  312. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +0 -164
  313. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +0 -50
  314. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +0 -163
  315. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +0 -27
  316. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +0 -142
  317. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +0 -29
  318. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +0 -137
  319. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +0 -40
  320. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +0 -174
  321. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.d.ts +0 -3
  322. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +0 -39
  323. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +0 -32
  324. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +0 -249
  325. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +0 -41
  326. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +0 -92
  327. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +0 -40
  328. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +0 -209
  329. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.d.ts +0 -12
  330. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +0 -106
  331. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.d.ts +0 -31
  332. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.js +0 -392
  333. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.d.ts +0 -45
  334. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +0 -243
  335. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +0 -52
  336. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.js +0 -10
  337. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.d.ts +0 -20
  338. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +0 -310
  339. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +0 -19
  340. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +0 -168
  341. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.d.ts +0 -8
  342. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.js +0 -25
  343. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/commandLinePresenter.d.ts +0 -41
  344. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.d.ts +0 -19
  345. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.js +0 -37
  346. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.d.ts +0 -19
  347. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.js +0 -37
  348. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.d.ts +0 -19
  349. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.js +0 -44
  350. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +0 -13
  351. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +0 -21
  352. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.d.ts +0 -5
  353. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +0 -27
  354. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.d.ts +0 -14
  355. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.js +0 -29
  356. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.d.ts +0 -8
  357. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.js +0 -33
  358. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +0 -20
  359. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.d.ts +0 -8
  360. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +0 -28
  361. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +0 -118
  362. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +0 -1019
  363. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +0 -49
  364. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.js +0 -23
  365. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/outputAnalyzer.d.ts +0 -9
  366. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +0 -150
  367. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +0 -1619
  368. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +0 -22
  369. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +0 -41
  370. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.d.ts +0 -17
  371. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.js +0 -118
  372. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.d.ts +0 -12
  373. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.js +0 -17
  374. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +0 -25
  375. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +0 -130
  376. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +0 -122
  377. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +0 -482
@@ -61,7 +61,6 @@ import { ITextModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor
61
61
  import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
62
62
  import { getSimpleEditorOptions } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/codeEditor/browser/simpleEditorOptions';
63
63
  import { IWorkingCopyService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/workingCopy/common/workingCopyService.service';
64
- import { IFileDialogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs.service';
65
64
  import { IHoverService } from '@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service';
66
65
  import { IFileService } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service';
67
66
  import { INotificationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/notification/common/notification.service';
@@ -76,16 +75,18 @@ import { AgentPluginEditorInput } from '../agentPluginEditor/agentPluginEditorIn
76
75
  import { CustomizationHarness, matchesWorkspaceSubpath } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/customizationHarnessService';
77
76
  import { ICustomizationHarnessService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/customizationHarnessService.service';
78
77
  import { ChatConfiguration } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
79
- import { AICustomizationManagementSection, BUILTIN_STORAGE } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService';
78
+ import { AICustomizationWelcomePage } from './aiCustomizationWelcomePage.js';
79
+ import { IViewsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/views/common/viewsService.service';
80
80
  import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
81
81
  import { Orientation } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/sash/sash';
82
+ import { AICustomizationManagementSection, BUILTIN_STORAGE } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService';
82
83
 
83
84
  var AICustomizationManagementEditor_1;
84
85
  registerCss(aiCustomizationManagement);
85
86
  const $ = $$1;
86
87
  const aiCustomizationManagementSashBorder = registerColor("aiCustomizationManagement.sashBorder", PANEL_BORDER, ( localize(
87
- 5393,
88
- "The color of the Chat Customization Management editor splitview sash border."
88
+ 5410,
89
+ "The color of the Agent Customizations editor splitview sash border."
89
90
  )));
90
91
  class SectionItemDelegate {
91
92
  getHeight() {
@@ -96,7 +97,8 @@ class SectionItemDelegate {
96
97
  }
97
98
  }
98
99
  class SectionItemRenderer {
99
- constructor() {
100
+ constructor(hoverService) {
101
+ this.hoverService = hoverService;
100
102
  this.templateId = "sectionItem";
101
103
  }
102
104
  renderTemplate(container) {
@@ -104,14 +106,17 @@ class SectionItemRenderer {
104
106
  const icon = append(container, $(".section-icon"));
105
107
  const label = append(container, $(".section-label"));
106
108
  const count = append(container, $(".section-count"));
109
+ const templateDisposables = ( new DisposableStore());
107
110
  return {
108
111
  container,
109
112
  icon,
110
113
  label,
111
- count
114
+ count,
115
+ templateDisposables
112
116
  };
113
117
  }
114
118
  renderElement(element, index, templateData) {
119
+ templateData.templateDisposables.clear();
115
120
  templateData.icon.className = "section-icon";
116
121
  templateData.icon.classList.add(...ThemeIcon.asClassNameArray(element.icon));
117
122
  templateData.label.textContent = element.label;
@@ -122,8 +127,15 @@ class SectionItemRenderer {
122
127
  templateData.count.textContent = "";
123
128
  templateData.count.style.display = "none";
124
129
  }
130
+ templateData.templateDisposables.add(this.hoverService.setupManagedHover(
131
+ getDefaultHoverDelegate("element"),
132
+ templateData.container,
133
+ element.description
134
+ ));
135
+ }
136
+ disposeTemplate(templateData) {
137
+ templateData.templateDisposables.dispose();
125
138
  }
126
- disposeTemplate() {}
127
139
  }
128
140
  let AICustomizationManagementEditor = class AICustomizationManagementEditor extends EditorPane {
129
141
  static {
@@ -146,14 +158,14 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
146
158
  textModelService,
147
159
  configurationService,
148
160
  workingCopyService,
149
- fileDialogService,
150
161
  hoverService,
151
162
  modelService,
152
163
  quickInputService,
153
164
  contextMenuService,
154
165
  fileService,
155
166
  notificationService,
156
- harnessService
167
+ harnessService,
168
+ viewsService
157
169
  ) {
158
170
  super(
159
171
  AICustomizationManagementEditor_1.ID,
@@ -171,7 +183,6 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
171
183
  this.textModelService = textModelService;
172
184
  this.configurationService = configurationService;
173
185
  this.workingCopyService = workingCopyService;
174
- this.fileDialogService = fileDialogService;
175
186
  this.hoverService = hoverService;
176
187
  this.modelService = modelService;
177
188
  this.quickInputService = quickInputService;
@@ -179,6 +190,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
179
190
  this.fileService = fileService;
180
191
  this.notificationService = notificationService;
181
192
  this.harnessService = harnessService;
193
+ this.viewsService = viewsService;
182
194
  this.editorActionButtonInProgress = false;
183
195
  this.editorModelChangeDisposables = this._register(( new DisposableStore()));
184
196
  this.builtinEditingSessions = ( new Map());
@@ -187,7 +199,6 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
187
199
  this.pluginDetailDisposables = this._register(( new DisposableStore()));
188
200
  this.sections = [];
189
201
  this.allSections = [];
190
- this.selectedSection = AICustomizationManagementSection.Agents;
191
202
  this.editorDisposables = this._register(( new DisposableStore()));
192
203
  this.promptsSectionCountScheduler = this._register(( new RunOnceScheduler(() => this._doRefreshAllPromptsSectionCounts(), 100)));
193
204
  this._editorContentChanged = false;
@@ -207,36 +218,62 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
207
218
  this._register(toDisposable(() => this.disposeBuiltinEditingSessions()));
208
219
  const sectionInfo = {
209
220
  [AICustomizationManagementSection.Agents]: {
210
- label: ( localize(5394, "Agents")),
211
- icon: agentIcon
221
+ label: ( localize(5411, "Agents")),
222
+ icon: agentIcon,
223
+ description: ( localize(
224
+ 5412,
225
+ "Define custom agents with specialized personas, tool access, and instructions for specific tasks."
226
+ ))
212
227
  },
213
228
  [AICustomizationManagementSection.Skills]: {
214
- label: ( localize(5395, "Skills")),
215
- icon: skillIcon
229
+ label: ( localize(5413, "Skills")),
230
+ icon: skillIcon,
231
+ description: ( localize(
232
+ 5414,
233
+ "Create reusable skill files that provide domain-specific knowledge and workflows."
234
+ ))
216
235
  },
217
236
  [AICustomizationManagementSection.Instructions]: {
218
- label: ( localize(5396, "Instructions")),
219
- icon: instructionsIcon
237
+ label: ( localize(5415, "Instructions")),
238
+ icon: instructionsIcon,
239
+ description: ( localize(
240
+ 5416,
241
+ "Set always-on instructions that guide AI behavior across your workspace or user profile."
242
+ ))
220
243
  },
221
244
  [AICustomizationManagementSection.Prompts]: {
222
- label: ( localize(5397, "Prompts")),
223
- icon: promptIcon
245
+ label: ( localize(5417, "Prompts")),
246
+ icon: promptIcon,
247
+ description: ( localize(5418, "Reusable prompt templates that can be invoked as slash commands."))
224
248
  },
225
249
  [AICustomizationManagementSection.Hooks]: {
226
- label: ( localize(5398, "Hooks")),
227
- icon: hookIcon
250
+ label: ( localize(5419, "Hooks")),
251
+ icon: hookIcon,
252
+ description: ( localize(
253
+ 5420,
254
+ "Configure automated actions triggered by events like saving files or running tasks."
255
+ ))
228
256
  },
229
257
  [AICustomizationManagementSection.McpServers]: {
230
- label: ( localize(5399, "MCP Servers")),
231
- icon: Codicon.server
258
+ label: ( localize(5421, "MCP Servers")),
259
+ icon: Codicon.server,
260
+ description: ( localize(
261
+ 5422,
262
+ "Connect external tool servers that extend AI capabilities with custom tools and data sources."
263
+ ))
232
264
  },
233
265
  [AICustomizationManagementSection.Plugins]: {
234
- label: ( localize(5400, "Plugins")),
235
- icon: pluginIcon
266
+ label: ( localize(5423, "Plugins")),
267
+ icon: pluginIcon,
268
+ description: ( localize(
269
+ 5424,
270
+ "Install and manage agent plugins that add additional tools, skills, and integrations."
271
+ ))
236
272
  },
237
273
  [AICustomizationManagementSection.Models]: {
238
- label: ( localize(5401, "Models")),
239
- icon: Codicon.vm
274
+ label: ( localize(5425, "Models")),
275
+ icon: Codicon.vm,
276
+ description: ( localize(5426, "Configure and manage language models available for use."))
240
277
  }
241
278
  };
242
279
  for (const id of this.workspaceService.managementSections) {
@@ -253,8 +290,8 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
253
290
  const savedSection = this.storageService.get(AI_CUSTOMIZATION_MANAGEMENT_SELECTED_SECTION_KEY, StorageScope.PROFILE);
254
291
  if (savedSection && ( this.sections.some(s => s.id === savedSection))) {
255
292
  this.selectedSection = savedSection;
256
- } else if (this.sections.length > 0) {
257
- this.selectedSection = this.sections[0].id;
293
+ } else {
294
+ this.selectedSection = undefined;
258
295
  }
259
296
  }
260
297
  createEditor(parent) {
@@ -286,9 +323,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
286
323
  layout: (width, _, height) => {
287
324
  this.sidebarContainer.style.width = `${width}px`;
288
325
  if (height !== undefined) {
289
- const footerHeight = this.folderPickerContainer?.offsetHeight ?? 0;
290
- const listHeight = height - 8 - footerHeight;
291
- this.sectionsList.layout(listHeight, width);
326
+ this.sectionsList.layout(height - 8, width);
292
327
  }
293
328
  }
294
329
  }, savedWidth, undefined, true);
@@ -360,29 +395,30 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
360
395
  if (this.sectionsList) {
361
396
  this.sectionsList.splice(0, this.sectionsList.length, this.sections);
362
397
  }
363
- if (!( this.sections.some(s => s.id === this.selectedSection)) && this.sections.length > 0) {
364
- this.selectSection(this.sections[0].id);
398
+ this.welcomePage?.rebuildCards(( new Set(( this.sections.map(s => s.id)))));
399
+ if (this.selectedSection !== undefined && !( this.sections.some(s => s.id === this.selectedSection)) && this.sections.length > 0) {
400
+ this.showWelcomePage();
365
401
  } else {
366
402
  this.ensureSectionsListReflectsActiveSection();
367
403
  }
368
404
  }
369
405
  createSidebar() {
370
- const sidebarContent = this.sidebarContent = append(this.sidebarContainer, $(".sidebar-content"));
371
- this.createHarnessDropdown(sidebarContent);
406
+ const sidebarContent = append(this.sidebarContainer, $(".sidebar-content"));
407
+ this.createSidebarHeader(sidebarContent);
372
408
  const sectionsListContainer = append(sidebarContent, $(".sidebar-sections-list"));
373
409
  this.sectionsList = this.editorDisposables.add(this.instantiationService.createInstance(
374
410
  WorkbenchList,
375
411
  "AICustomizationManagementSections",
376
412
  sectionsListContainer,
377
413
  ( new SectionItemDelegate()),
378
- [( new SectionItemRenderer())],
414
+ [( new SectionItemRenderer(this.hoverService))],
379
415
  {
380
416
  multipleSelectionSupport: false,
381
417
  setRowLineHeight: false,
382
418
  horizontalScrolling: false,
383
419
  accessibilityProvider: {
384
420
  getAriaLabel: item => item.label,
385
- getWidgetAriaLabel: () => ( localize(5402, "Chat Customization Sections"))
421
+ getWidgetAriaLabel: () => ( localize(5427, "Agent Customization Sections"))
386
422
  },
387
423
  openOnSingleClick: true,
388
424
  identityProvider: {
@@ -394,7 +430,9 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
394
430
  this.ensureSectionsListReflectsActiveSection();
395
431
  this.editorDisposables.add(this.sectionsList.onDidChangeSelection(e => {
396
432
  if (e.elements.length === 0) {
397
- this.ensureSectionsListReflectsActiveSection();
433
+ if (this.selectedSection !== undefined) {
434
+ this.showWelcomePage();
435
+ }
398
436
  return;
399
437
  }
400
438
  this.selectSection(e.elements[0].id);
@@ -410,6 +448,12 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
410
448
  this.rebuildVisibleSections();
411
449
  this.ensureHarnessDropdown();
412
450
  this.updateHarnessDropdown();
451
+ if (this._previousActiveHarnessId !== undefined && this._previousActiveHarnessId !== activeId) {
452
+ for (const section of this.sections) {
453
+ this.updateSectionCount(section.id, 0);
454
+ }
455
+ }
456
+ this._previousActiveHarnessId = activeId;
413
457
  this.refreshAllPromptsSectionCounts();
414
458
  }));
415
459
  if (!this.isHarnessSelectorEnabled) {
@@ -422,18 +466,39 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
422
466
  }
423
467
  }
424
468
  }));
425
- if (this.workspaceService.isSessionsWindow) {
426
- this.createFolderPicker(sidebarContent);
427
- }
428
469
  }
429
- createHarnessDropdown(sidebarContent) {
470
+ createSidebarHeader(sidebarContent) {
471
+ const headerRow = this.sidebarHeaderContainer = append(sidebarContent, $(".sidebar-header-row"));
472
+ const homeButton = this.homeButton = append(headerRow, $("button.sidebar-home-button"));
473
+ homeButton.setAttribute("aria-label", ( localize(5428, "Overview")));
474
+ this.editorDisposables.add(
475
+ this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), homeButton, ( localize(5429, "Back to overview")))
476
+ );
477
+ const homeIcon = append(homeButton, $("span.sidebar-home-icon"));
478
+ homeIcon.classList.add(...ThemeIcon.asClassNameArray(Codicon.home));
479
+ homeIcon.setAttribute("aria-hidden", "true");
480
+ const homeLabel = this.homeButtonLabel = append(homeButton, $("span.sidebar-home-label"));
481
+ homeLabel.textContent = ( localize(5430, "Overview"));
482
+ this.editorDisposables.add(addDisposableListener(homeButton, "click", () => {
483
+ this.showWelcomePage();
484
+ }));
485
+ this.createHarnessDropdown(headerRow);
486
+ this.updateHomeButtonStyle();
487
+ }
488
+ createHarnessDropdown(parent) {
430
489
  if (!this.isHarnessSelectorEnabled) {
431
490
  return;
432
491
  }
433
- const container = this.harnessDropdownContainer = append(sidebarContent, $(".sidebar-harness-dropdown"));
492
+ const container = this.harnessDropdownContainer = append(parent, $(".sidebar-harness-dropdown"));
434
493
  this.harnessDropdownButton = append(container, $("button.harness-dropdown-button"));
435
- this.harnessDropdownButton.setAttribute("aria-label", ( localize(5403, "Select customization target")));
494
+ this.harnessDropdownButton.setAttribute("aria-label", ( localize(5431, "Select customization target")));
436
495
  this.harnessDropdownButton.setAttribute("aria-haspopup", "listbox");
496
+ this.editorDisposables.add(
497
+ this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), this.harnessDropdownButton, () => {
498
+ const descriptor = this.harnessService.availableHarnesses.get().find(h => h.id === this.harnessService.activeHarness.get());
499
+ return descriptor?.label ?? "";
500
+ })
501
+ );
437
502
  this.harnessDropdownIcon = append(this.harnessDropdownButton, $("span.harness-dropdown-icon"));
438
503
  this.harnessDropdownLabel = append(this.harnessDropdownButton, $("span.harness-dropdown-label"));
439
504
  append(
@@ -446,17 +511,25 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
446
511
  }));
447
512
  }
448
513
  ensureHarnessDropdown() {
449
- const harnesses = this.harnessService.availableHarnesses.get();
450
- const shouldShow = this.isHarnessSelectorEnabled && harnesses.length > 1;
451
- if (shouldShow && !this.harnessDropdownContainer && this.sidebarContent) {
452
- this.createHarnessDropdown(this.sidebarContent);
453
- } else if (!shouldShow && this.harnessDropdownContainer) {
514
+ if (!this.isHarnessSelectorEnabled && this.harnessDropdownContainer) {
454
515
  this.harnessDropdownContainer.remove();
455
516
  this.harnessDropdownContainer = undefined;
456
517
  this.harnessDropdownButton = undefined;
457
518
  this.harnessDropdownIcon = undefined;
458
519
  this.harnessDropdownLabel = undefined;
520
+ this.updateHomeButtonStyle();
521
+ } else if (this.isHarnessSelectorEnabled && !this.harnessDropdownContainer && this.sidebarHeaderContainer) {
522
+ this.createHarnessDropdown(this.sidebarHeaderContainer);
523
+ this.updateHomeButtonStyle();
524
+ }
525
+ }
526
+ updateHomeButtonStyle() {
527
+ if (!this.homeButtonLabel || !this.homeButton) {
528
+ return;
459
529
  }
530
+ const harnessVisible = this.harnessDropdownContainer && this.harnessDropdownContainer.style.display !== "none";
531
+ this.homeButtonLabel.style.display = harnessVisible ? "none" : "";
532
+ this.homeButton.style.flex = harnessVisible ? "" : "1";
460
533
  }
461
534
  updateHarnessDropdown() {
462
535
  if (!this.harnessDropdownContainer || !this.harnessDropdownIcon || !this.harnessDropdownLabel) {
@@ -464,6 +537,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
464
537
  }
465
538
  const harnesses = this.harnessService.availableHarnesses.get();
466
539
  this.harnessDropdownContainer.style.display = harnesses.length <= 1 ? "none" : "";
540
+ this.updateHomeButtonStyle();
467
541
  const activeId = this.harnessService.activeHarness.get();
468
542
  const descriptor = harnesses.find(h => h.id === activeId);
469
543
  if (descriptor) {
@@ -491,62 +565,75 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
491
565
  getCheckedActionsRepresentation: () => "radio"
492
566
  });
493
567
  }
494
- createFolderPicker(sidebarContent) {
495
- const footer = this.folderPickerContainer = append(sidebarContent, $(".sidebar-folder-picker"));
496
- const button = append(footer, $("button.folder-picker-button"));
497
- button.setAttribute("aria-label", ( localize(5404, "Browse folder")));
498
- const folderIcon = append(button, $(`.codicon.codicon-${Codicon.folder.id}`));
499
- folderIcon.classList.add("folder-picker-icon");
500
- this.folderPickerLabel = append(button, $("span.folder-picker-label"));
501
- this.folderPickerClearButton = append(footer, $("button.folder-picker-clear"));
502
- this.folderPickerClearButton.setAttribute("aria-label", ( localize(5405, "Reset to session folder")));
503
- append(this.folderPickerClearButton, $(`.codicon.codicon-${Codicon.close.id}`));
504
- this.editorDisposables.add(addDisposableListener(button, "click", () => {
505
- this.browseForFolder();
506
- }));
507
- this.editorDisposables.add(addDisposableListener(this.folderPickerClearButton, "click", () => {
508
- this.workspaceService.clearOverrideProjectRoot();
509
- }));
568
+ createWelcomePage(parent) {
569
+ this.welcomePage = this.editorDisposables.add(( new AICustomizationWelcomePage(parent, this.workspaceService.welcomePageFeatures, {
570
+ selectSection: section => this.selectSection(section),
571
+ selectSectionWithMarketplace: section => this.selectSection(section, {
572
+ showMarketplace: true
573
+ }),
574
+ closeEditor: () => {
575
+ if (this.input) {
576
+ this.group.closeEditor(this.input);
577
+ }
578
+ },
579
+ prefillChat: async (query, options) => {
580
+ try {
581
+ if (this.workspaceService.isSessionsWindow) {
582
+ const sessionsViewId = "workbench.view.sessions.chat";
583
+ if (options?.newChat) {
584
+ await this.commandService.executeCommand("workbench.action.sessions.newChat");
585
+ }
586
+ const view = await this.viewsService.openView(sessionsViewId, true);
587
+ const chatView = view;
588
+ if (options?.isPartialQuery && chatView?.prefillInput) {
589
+ chatView.prefillInput(query);
590
+ } else if (chatView?.sendQuery) {
591
+ chatView.sendQuery(query);
592
+ }
593
+ } else {
594
+ if (options?.newChat) {
595
+ await this.commandService.executeCommand("workbench.action.chat.newChat");
596
+ }
597
+ await this.commandService.executeCommand("workbench.action.chat.open", {
598
+ query,
599
+ isPartialQuery: options?.isPartialQuery ?? false
600
+ });
601
+ }
602
+ } catch (err) {
603
+ onUnexpectedError(err);
604
+ }
605
+ }
606
+ }, this.commandService, this.workspaceService, this.hoverService)));
607
+ this.welcomePage.rebuildCards(( new Set(( this.sections.map(s => s.id)))));
608
+ }
609
+ createBackArrowButton() {
610
+ const button = $("button.section-back-arrow-button");
611
+ button.type = "button";
612
+ button.setAttribute("aria-label", ( localize(5432, "Back to overview")));
510
613
  this.editorDisposables.add(
511
- this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), button, () => {
512
- const root = this.workspaceService.getActiveProjectRoot();
513
- return root?.fsPath ?? "";
514
- })
614
+ this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), button, ( localize(5433, "Back to overview")))
515
615
  );
516
- this.editorDisposables.add(autorun(reader => {
517
- const root = this.workspaceService.activeProjectRoot.read(reader);
518
- const hasOverride = this.workspaceService.hasOverrideProjectRoot.read(reader);
519
- this.updateFolderPickerLabel(root, hasOverride);
616
+ const icon = append(button, $("span.section-back-arrow-icon"));
617
+ icon.classList.add(...ThemeIcon.asClassNameArray(Codicon.arrowLeft));
618
+ icon.setAttribute("aria-hidden", "true");
619
+ this.editorDisposables.add(addDisposableListener(button, "click", () => {
620
+ this.showWelcomePage();
520
621
  }));
622
+ return button;
521
623
  }
522
- updateFolderPickerLabel(root, hasOverride) {
523
- if (this.folderPickerLabel) {
524
- this.folderPickerLabel.textContent = root ? basename(root) : ( localize(5406, "No folder"));
525
- }
526
- if (this.folderPickerClearButton) {
527
- this.folderPickerClearButton.style.display = hasOverride ? "" : "none";
528
- }
529
- }
530
- async browseForFolder() {
531
- const result = await this.fileDialogService.showOpenDialog({
532
- canSelectFolders: true,
533
- canSelectFiles: false,
534
- canSelectMany: false,
535
- title: ( localize(5407, "Select Folder to Explore")),
536
- defaultUri: this.workspaceService.getActiveProjectRoot()
537
- });
538
- if (result?.[0]) {
539
- this.workspaceService.setOverrideProjectRoot(result[0]);
540
- }
624
+ injectBackArrowIntoSearchRow(widget) {
625
+ widget.prependToSearchRow(this.createBackArrowButton());
541
626
  }
542
627
  createContent() {
543
628
  const contentInner = append(this.contentContainer, $(".content-inner"));
629
+ this.createWelcomePage(contentInner);
544
630
  this.promptsContentContainer = append(contentInner, $(".prompts-content-container"));
545
631
  this.listWidget = this.editorDisposables.add(this.instantiationService.createInstance(AICustomizationListWidget));
546
632
  this.promptsContentContainer.appendChild(this.listWidget.element);
633
+ this.injectBackArrowIntoSearchRow(this.listWidget);
547
634
  this.editorDisposables.add(this.listWidget.onDidSelectItem(item => {
548
635
  this.telemetryService.publicLog2("chatCustomizationEditor.itemSelected", {
549
- section: this.selectedSection,
636
+ section: this.selectedSection ?? "welcome",
550
637
  promptType: item.promptType,
551
638
  storage: item.storage ?? "external"
552
639
  });
@@ -577,16 +664,18 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
577
664
  const hasSections = ( new Set(this.workspaceService.managementSections));
578
665
  if (( hasSections.has(AICustomizationManagementSection.Models))) {
579
666
  this.modelsContentContainer = append(contentInner, $(".models-content-container"));
667
+ const modelsBackBar = append(this.modelsContentContainer, $(".section-back-bar"));
668
+ modelsBackBar.appendChild(this.createBackArrowButton());
580
669
  this.modelsWidget = this.editorDisposables.add(this.instantiationService.createInstance(ChatModelsWidget));
581
670
  this.modelsContentContainer.appendChild(this.modelsWidget.element);
582
671
  this.modelsFooterElement = append(this.modelsContentContainer, $(".section-footer"));
583
672
  const modelsDescription = append(this.modelsFooterElement, $("p.section-footer-description"));
584
673
  modelsDescription.textContent = ( localize(
585
- 5408,
674
+ 5434,
586
675
  "Browse and manage language models from different providers. Select models for use in chat, code completion, and other AI features."
587
676
  ));
588
677
  const modelsLink = append(this.modelsFooterElement, $("a.section-footer-link"));
589
- modelsLink.textContent = ( localize(5409, "Learn more about language models"));
678
+ modelsLink.textContent = ( localize(5435, "Learn more about language models"));
590
679
  modelsLink.href = "https://code.visualstudio.com/docs/copilot/customization/language-models";
591
680
  this.editorDisposables.add(addDisposableListener(modelsLink, "click", e => {
592
681
  e.preventDefault();
@@ -597,6 +686,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
597
686
  this.mcpContentContainer = append(contentInner, $(".mcp-content-container"));
598
687
  this.mcpListWidget = this.editorDisposables.add(this.instantiationService.createInstance(McpListWidget));
599
688
  this.mcpContentContainer.appendChild(this.mcpListWidget.element);
689
+ this.injectBackArrowIntoSearchRow(this.mcpListWidget);
600
690
  this.mcpDetailContainer = append(contentInner, $(".mcp-detail-container"));
601
691
  this.createEmbeddedMcpDetail();
602
692
  this.editorDisposables.add(this.mcpListWidget.onDidSelectServer(server => {
@@ -610,6 +700,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
610
700
  this.pluginContentContainer = append(contentInner, $(".plugin-content-container"));
611
701
  this.pluginListWidget = this.editorDisposables.add(this.instantiationService.createInstance(PluginListWidget));
612
702
  this.pluginContentContainer.appendChild(this.pluginListWidget.element);
703
+ this.injectBackArrowIntoSearchRow(this.pluginListWidget);
613
704
  this.pluginDetailContainer = append(contentInner, $(".plugin-detail-container"));
614
705
  this.createEmbeddedPluginDetail();
615
706
  this.editorDisposables.add(this.pluginListWidget.onDidSelectPlugin(item => {
@@ -684,8 +775,25 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
684
775
  }
685
776
  }
686
777
  }
687
- selectSection(section) {
688
- if (this.selectedSection === section) {
778
+ showWelcomePage() {
779
+ if (this.viewMode === "editor") {
780
+ this.goBackToList();
781
+ }
782
+ if (this.viewMode === "mcpDetail") {
783
+ this.goBackFromMcpDetail();
784
+ }
785
+ if (this.viewMode === "pluginDetail") {
786
+ this.goBackFromPluginDetail();
787
+ }
788
+ this.selectedSection = undefined;
789
+ this.sectionContextKey.set("");
790
+ this.storageService.remove(AI_CUSTOMIZATION_MANAGEMENT_SELECTED_SECTION_KEY, StorageScope.PROFILE);
791
+ this.welcomePage?.reset();
792
+ this.updateContentVisibility();
793
+ this.ensureSectionsListReflectsActiveSection(undefined);
794
+ }
795
+ selectSection(section, options) {
796
+ if (this.selectedSection === section && !options?.showMarketplace) {
689
797
  this.ensureSectionsListReflectsActiveSection(section);
690
798
  return;
691
799
  }
@@ -714,11 +822,23 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
714
822
  void this.listWidget.setSection(section);
715
823
  }
716
824
  this.ensureSectionsListReflectsActiveSection(section);
825
+ if (options?.showMarketplace) {
826
+ if (section === AICustomizationManagementSection.McpServers) {
827
+ this.mcpListWidget?.showBrowseMarketplace();
828
+ } else if (section === AICustomizationManagementSection.Plugins) {
829
+ this.pluginListWidget?.showBrowseMarketplace();
830
+ }
831
+ }
717
832
  }
718
833
  ensureSectionsListReflectsActiveSection(section = this.selectedSection) {
719
834
  if (!this.sectionsList) {
720
835
  return;
721
836
  }
837
+ if (section === undefined) {
838
+ this.sectionsList.setSelection([]);
839
+ this.sectionsList.setFocus([]);
840
+ return;
841
+ }
722
842
  const index = this.sections.findIndex(s => s.id === section);
723
843
  if (index < 0) {
724
844
  return;
@@ -737,10 +857,14 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
737
857
  const isMcpDetailMode = this.viewMode === "mcpDetail";
738
858
  const isPluginDetailMode = this.viewMode === "pluginDetail";
739
859
  const isDetailMode = isMcpDetailMode || isPluginDetailMode;
740
- const isPromptsSection = this.isPromptsSection(this.selectedSection);
860
+ const isWelcome = this.selectedSection === undefined;
861
+ const isPromptsSection = this.selectedSection !== undefined && this.isPromptsSection(this.selectedSection);
741
862
  const isModelsSection = this.selectedSection === AICustomizationManagementSection.Models;
742
863
  const isMcpSection = this.selectedSection === AICustomizationManagementSection.McpServers;
743
864
  const isPluginsSection = this.selectedSection === AICustomizationManagementSection.Plugins;
865
+ if (this.welcomePage) {
866
+ this.welcomePage.container.style.display = isWelcome && !isEditorMode && !isDetailMode ? "" : "none";
867
+ }
744
868
  if (this.promptsContentContainer) {
745
869
  this.promptsContentContainer.style.display = !isEditorMode && !isDetailMode && isPromptsSection ? "" : "none";
746
870
  }
@@ -771,7 +895,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
771
895
  }
772
896
  async createNewItemWithAI(type) {
773
897
  this.telemetryService.publicLog2("chatCustomizationEditor.createItem", {
774
- section: this.selectedSection,
898
+ section: this.selectedSection ?? "welcome",
775
899
  promptType: type,
776
900
  creationMode: "ai",
777
901
  target: "workspace"
@@ -783,7 +907,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
783
907
  }
784
908
  async createNewItemManual(type, target, rootFileName) {
785
909
  this.telemetryService.publicLog2("chatCustomizationEditor.createItem", {
786
- section: this.selectedSection,
910
+ section: this.selectedSection ?? "welcome",
787
911
  promptType: type,
788
912
  creationMode: "manual",
789
913
  target: target === "workspace-root" ? "workspace" : target
@@ -793,7 +917,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
793
917
  if (!projectRoot) {
794
918
  return;
795
919
  }
796
- const override = this.harnessService.getActiveDescriptor().sectionOverrides?.get(this.selectedSection);
920
+ const override = this.selectedSection ? this.harnessService.getActiveDescriptor().sectionOverrides?.get(this.selectedSection) : undefined;
797
921
  const fileName = rootFileName ?? override?.rootFile ?? AGENT_MD_FILENAME;
798
922
  const fileUri = URI.joinPath(projectRoot, fileName);
799
923
  if (await this.fileService.exists(fileUri)) {
@@ -828,7 +952,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
828
952
  if (targetDir === null) {
829
953
  return;
830
954
  }
831
- const override = this.harnessService.getActiveDescriptor().sectionOverrides?.get(this.selectedSection);
955
+ const override = this.selectedSection ? this.harnessService.getActiveDescriptor().sectionOverrides?.get(this.selectedSection) : undefined;
832
956
  const options = {
833
957
  targetFolder: targetDir,
834
958
  targetStorage: target === "user" ? PromptsStorage.user : PromptsStorage.local,
@@ -910,7 +1034,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
910
1034
  uri: folder.uri
911
1035
  })));
912
1036
  const picked = await this.quickInputService.pick(items, {
913
- placeHolder: ( localize(5410, "Select a directory for the new customization file"))
1037
+ placeHolder: ( localize(5436, "Select a directory for the new customization file"))
914
1038
  });
915
1039
  return picked?.uri ?? null;
916
1040
  }
@@ -925,10 +1049,10 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
925
1049
  async setInput(input, options, context, token) {
926
1050
  this.workspaceService.clearOverrideProjectRoot();
927
1051
  this.inEditorContextKey.set(true);
928
- this.sectionContextKey.set(this.selectedSection);
1052
+ this.sectionContextKey.set(this.selectedSection ?? "");
929
1053
  input.setSaveHandler(() => this.handleBuiltinSave());
930
1054
  this.telemetryService.publicLog2("chatCustomizationEditor.opened", {
931
- section: this.selectedSection
1055
+ section: this.selectedSection ?? "welcome"
932
1056
  });
933
1057
  await super.setInput(input, options, context, token);
934
1058
  if (this.dimension) {
@@ -968,6 +1092,10 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
968
1092
  this.embeddedEditor?.focus();
969
1093
  return;
970
1094
  }
1095
+ if (this.selectedSection === undefined) {
1096
+ this.welcomePage?.focus();
1097
+ return;
1098
+ }
971
1099
  if (this.selectedSection === AICustomizationManagementSection.McpServers) {
972
1100
  this.mcpListWidget?.focusSearch();
973
1101
  } else if (this.selectedSection === AICustomizationManagementSection.Plugins) {
@@ -978,7 +1106,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
978
1106
  this.listWidget?.focusSearch();
979
1107
  }
980
1108
  }
981
- selectSectionById(sectionId) {
1109
+ selectSectionById(sectionId, options) {
982
1110
  const index = this.sections.findIndex(s => s.id === sectionId);
983
1111
  if (index >= 0) {
984
1112
  if (this.viewMode === "editor") {
@@ -1006,6 +1134,13 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
1006
1134
  this.layout(this.dimension);
1007
1135
  }
1008
1136
  this.ensureSectionsListReflectsActiveSection(sectionId);
1137
+ if (options?.showMarketplace) {
1138
+ if (sectionId === AICustomizationManagementSection.McpServers) {
1139
+ this.mcpListWidget?.showBrowseMarketplace();
1140
+ } else if (sectionId === AICustomizationManagementSection.Plugins) {
1141
+ this.pluginListWidget?.showBrowseMarketplace();
1142
+ }
1143
+ }
1009
1144
  }
1010
1145
  }
1011
1146
  refreshList() {
@@ -1029,7 +1164,12 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
1029
1164
  }
1030
1165
  const editorHeader = append(this.editorContentContainer, $(".editor-header"));
1031
1166
  this.editorActionButton = append(editorHeader, $("button.editor-back-button"));
1032
- this.editorActionButton.setAttribute("aria-label", ( localize(5411, "Back to list")));
1167
+ this.editorActionButton.setAttribute("aria-label", ( localize(5437, "Back to list")));
1168
+ this.editorDisposables.add(this.hoverService.setupManagedHover(
1169
+ getDefaultHoverDelegate("element"),
1170
+ this.editorActionButton,
1171
+ ( localize(5438, "Back to list"))
1172
+ ));
1033
1173
  this.editorActionButtonIcon = append(
1034
1174
  this.editorActionButton,
1035
1175
  $(`.codicon.codicon-${Codicon.arrowLeft.id}.editor-action-button-icon`)
@@ -1038,7 +1178,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
1038
1178
  this.editorDisposables.add(addDisposableListener(this.editorActionButton, "click", () => {
1039
1179
  void this.handleEditorActionButton().catch(error => {
1040
1180
  console.error("Failed to handle editor back action:", error);
1041
- this.notificationService.error(( localize(5412, "Failed to finish the prompt action.")));
1181
+ this.notificationService.error(( localize(5439, "Failed to finish the prompt action.")));
1042
1182
  });
1043
1183
  }));
1044
1184
  const itemInfo = append(editorHeader, $(".editor-item-info"));
@@ -1142,7 +1282,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
1142
1282
  this._editorContentChanged = this.workingCopyService.isDirty(uri);
1143
1283
  this.editorSaveIndicator.className = "editor-save-indicator visible saved";
1144
1284
  this.editorSaveIndicator.classList.add(...ThemeIcon.asClassNameArray(Codicon.check));
1145
- this.editorSaveIndicator.title = ( localize(5413, "Saved"));
1285
+ this.editorSaveIndicator.title = ( localize(5440, "Saved"));
1146
1286
  }
1147
1287
  }));
1148
1288
  } catch (error) {
@@ -1187,7 +1327,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
1187
1327
  const saveRequest = backgroundSaveRequest;
1188
1328
  void this.saveExistingCustomization(saveRequest).catch(error => {
1189
1329
  console.error("Failed to save customization changes on exit:", error);
1190
- this.notificationService.warn(( localize(5414, "Could not save changes to {0}.", basename(saveRequest.fileUri))));
1330
+ this.notificationService.warn(( localize(5441, "Could not save changes to {0}.", basename(saveRequest.fileUri))));
1191
1331
  });
1192
1332
  }
1193
1333
  }
@@ -1280,7 +1420,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
1280
1420
  const workspaceFolder = resolveWorkspaceTargetDirectory(this.workspaceService, promptType);
1281
1421
  if (workspaceFolder) {
1282
1422
  items.push({
1283
- label: ( localize(5415, "Workspace")),
1423
+ label: ( localize(5442, "Workspace")),
1284
1424
  description: workspaceFolder.fsPath,
1285
1425
  target: "workspace",
1286
1426
  folder: workspaceFolder
@@ -1289,19 +1429,19 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
1289
1429
  const userFolder = await resolveUserTargetDirectory(this.promptsService, promptType);
1290
1430
  if (userFolder) {
1291
1431
  items.push({
1292
- label: ( localize(5416, "User")),
1432
+ label: ( localize(5443, "User")),
1293
1433
  description: userFolder.fsPath,
1294
1434
  target: "user",
1295
1435
  folder: userFolder
1296
1436
  });
1297
1437
  }
1298
1438
  items.push({
1299
- label: ( localize(5417, "Cancel")),
1439
+ label: ( localize(5444, "Cancel")),
1300
1440
  target: "cancel"
1301
1441
  });
1302
1442
  return this.quickInputService.pick(items, {
1303
1443
  canPickMany: false,
1304
- placeHolder: ( localize(5418, "Select Workspace, User, or Cancel")),
1444
+ placeHolder: ( localize(5445, "Select Workspace, User, or Cancel")),
1305
1445
  matchOnDescription: true
1306
1446
  });
1307
1447
  }
@@ -1334,7 +1474,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
1334
1474
  void this.listWidget?.refresh();
1335
1475
  }, error => {
1336
1476
  console.error("Failed to save built-in override:", error);
1337
- this.notificationService.warn(saveRequest.target === "workspace" ? ( localize(5419, "Could not save the override to the workspace.")) : ( localize(5420, "Could not save the override to your user folder.")));
1477
+ this.notificationService.warn(saveRequest.target === "workspace" ? ( localize(5446, "Could not save the override to the workspace.")) : ( localize(5447, "Could not save the override to your user folder.")));
1338
1478
  });
1339
1479
  }
1340
1480
  } finally {
@@ -1350,8 +1490,8 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
1350
1490
  const shouldShowBuiltinSaveAction = this.shouldShowBuiltinSaveAction();
1351
1491
  this.editorActionButtonIcon.className = `codicon codicon-${shouldShowBuiltinSaveAction ? Codicon.save.id : Codicon.arrowLeft.id} editor-action-button-icon`;
1352
1492
  this.editorActionButton.disabled = this.editorActionButtonInProgress;
1353
- this.editorActionButton.setAttribute("aria-label", shouldShowBuiltinSaveAction ? ( localize(5421, "Save override")) : ( localize(5411, "Back to list")));
1354
- this.editorActionButton.title = shouldShowBuiltinSaveAction ? ( localize(5422, "Save override (choose Workspace, User, or Cancel)")) : ( localize(5411, "Back to list"));
1493
+ this.editorActionButton.setAttribute("aria-label", shouldShowBuiltinSaveAction ? ( localize(5448, "Save override")) : ( localize(5437, "Back to list")));
1494
+ this.editorActionButton.title = shouldShowBuiltinSaveAction ? ( localize(5449, "Save override (choose Workspace, User, or Cancel)")) : ( localize(5437, "Back to list"));
1355
1495
  }
1356
1496
  shouldShowBuiltinSaveAction() {
1357
1497
  return this._editorContentChanged && this.currentEditingStorage === BUILTIN_STORAGE && (this.currentEditingPromptType === PromptsType.prompt || this.currentEditingPromptType === PromptsType.skill);
@@ -1386,7 +1526,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
1386
1526
  return true;
1387
1527
  } catch (error) {
1388
1528
  console.error("Failed to save built-in override:", error);
1389
- this.notificationService.warn(target.target === "workspace" ? ( localize(5419, "Could not save the override to the workspace.")) : ( localize(5420, "Could not save the override to your user folder.")));
1529
+ this.notificationService.warn(target.target === "workspace" ? ( localize(5446, "Could not save the override to the workspace.")) : ( localize(5447, "Could not save the override to your user folder.")));
1390
1530
  return false;
1391
1531
  }
1392
1532
  }
@@ -1415,7 +1555,10 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
1415
1555
  }
1416
1556
  const detailHeader = append(this.mcpDetailContainer, $(".editor-header"));
1417
1557
  const backButton = append(detailHeader, $("button.editor-back-button"));
1418
- backButton.setAttribute("aria-label", ( localize(5423, "Back to MCP servers")));
1558
+ backButton.setAttribute("aria-label", ( localize(5450, "Back to MCP servers")));
1559
+ this.editorDisposables.add(
1560
+ this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), backButton, ( localize(5451, "Back to MCP servers")))
1561
+ );
1419
1562
  const backIconEl = append(backButton, $(`.codicon.codicon-${Codicon.arrowLeft.id}`));
1420
1563
  backIconEl.setAttribute("aria-hidden", "true");
1421
1564
  this.editorDisposables.add(addDisposableListener(backButton, "click", () => {
@@ -1460,7 +1603,10 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
1460
1603
  }
1461
1604
  const detailHeader = append(this.pluginDetailContainer, $(".editor-header"));
1462
1605
  const backButton = append(detailHeader, $("button.editor-back-button"));
1463
- backButton.setAttribute("aria-label", ( localize(5424, "Back to plugins")));
1606
+ backButton.setAttribute("aria-label", ( localize(5452, "Back to plugins")));
1607
+ this.editorDisposables.add(
1608
+ this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), backButton, ( localize(5453, "Back to plugins")))
1609
+ );
1464
1610
  const backIconEl = append(backButton, $(`.codicon.codicon-${Codicon.arrowLeft.id}`));
1465
1611
  backIconEl.setAttribute("aria-hidden", "true");
1466
1612
  this.editorDisposables.add(addDisposableListener(backButton, "click", () => {
@@ -1491,7 +1637,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
1491
1637
  }
1492
1638
  async showPluginDetail(item) {
1493
1639
  if (this.selectedSection !== AICustomizationManagementSection.Plugins) {
1494
- this.pluginDetailReturnSection = this.selectedSection;
1640
+ this.pluginDetailReturnSection = this.selectedSection ?? AICustomizationManagementSection.Agents;
1495
1641
  }
1496
1642
  await this.showEmbeddedPluginDetail(item);
1497
1643
  }
@@ -1514,6 +1660,6 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
1514
1660
  }
1515
1661
  }
1516
1662
  };
1517
- AICustomizationManagementEditor = AICustomizationManagementEditor_1 = ( __decorate([( __param(1, ITelemetryService)), ( __param(2, IThemeService)), ( __param(3, IStorageService)), ( __param(4, IInstantiationService)), ( __param(5, IContextKeyService)), ( __param(6, IOpenerService)), ( __param(7, ICommandService)), ( __param(8, IAICustomizationWorkspaceService)), ( __param(9, IPromptsService)), ( __param(10, ITextModelService)), ( __param(11, IConfigurationService)), ( __param(12, IWorkingCopyService)), ( __param(13, IFileDialogService)), ( __param(14, IHoverService)), ( __param(15, IModelService)), ( __param(16, IQuickInputService)), ( __param(17, IContextMenuService)), ( __param(18, IFileService)), ( __param(19, INotificationService)), ( __param(20, ICustomizationHarnessService))], AICustomizationManagementEditor));
1663
+ AICustomizationManagementEditor = AICustomizationManagementEditor_1 = ( __decorate([( __param(1, ITelemetryService)), ( __param(2, IThemeService)), ( __param(3, IStorageService)), ( __param(4, IInstantiationService)), ( __param(5, IContextKeyService)), ( __param(6, IOpenerService)), ( __param(7, ICommandService)), ( __param(8, IAICustomizationWorkspaceService)), ( __param(9, IPromptsService)), ( __param(10, ITextModelService)), ( __param(11, IConfigurationService)), ( __param(12, IWorkingCopyService)), ( __param(13, IHoverService)), ( __param(14, IModelService)), ( __param(15, IQuickInputService)), ( __param(16, IContextMenuService)), ( __param(17, IFileService)), ( __param(18, INotificationService)), ( __param(19, ICustomizationHarnessService)), ( __param(20, IViewsService))], AICustomizationManagementEditor));
1518
1664
 
1519
1665
  export { AICustomizationManagementEditor, aiCustomizationManagementSashBorder };