@codingame/monaco-vscode-api 37.2.0 → 37.3.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 (3067) hide show
  1. package/css.d.ts +1 -1
  2. package/css.js +4 -3
  3. package/lifecycle.d.ts +2 -2
  4. package/missing-services.js +884 -35
  5. package/override/vs/sessions/contrib/providers/remoteAgentHost/browser/devTunnelsWebLoader.d.ts +4 -0
  6. package/package.json +8 -8
  7. package/service-override/tools/editor.d.ts +1 -1
  8. package/services.d.ts +49 -1
  9. package/services.js +56 -4
  10. package/vscode/src/vs/base/browser/animationSync.d.ts +45 -0
  11. package/vscode/src/vs/base/browser/animationSync.js +122 -0
  12. package/vscode/src/vs/base/browser/dom.js +4 -4
  13. package/vscode/src/vs/base/browser/domSanitize.js +6 -4
  14. package/vscode/src/vs/base/browser/fonts.js +6 -5
  15. package/vscode/src/vs/base/browser/htmlToMarkdown.d.ts +1 -0
  16. package/vscode/src/vs/base/browser/htmlToMarkdown.js +144 -0
  17. package/vscode/src/vs/base/browser/iframe.js +1 -1
  18. package/vscode/src/vs/base/browser/indexedDB.js +1 -1
  19. package/vscode/src/vs/base/browser/markdownRenderer.js +3 -3
  20. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +1 -1
  21. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +1 -1
  22. package/vscode/src/vs/base/browser/ui/aria/aria.js +1 -1
  23. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +1 -1
  24. package/vscode/src/vs/base/browser/ui/button/button.js +1 -1
  25. package/vscode/src/vs/base/browser/ui/centered/centeredViewLayout.js +1 -1
  26. package/vscode/src/vs/base/browser/ui/codicons/codiconStyles.js +2 -2
  27. package/vscode/src/vs/base/browser/ui/contextview/contextview.js +1 -1
  28. package/vscode/src/vs/base/browser/ui/countBadge/countBadge.js +1 -1
  29. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +10 -10
  30. package/vscode/src/vs/base/browser/ui/dnd/dnd.js +1 -1
  31. package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +1 -1
  32. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +1 -1
  33. package/vscode/src/vs/base/browser/ui/findinput/findInput.js +1 -1
  34. package/vscode/src/vs/base/browser/ui/findinput/replaceInput.js +1 -1
  35. package/vscode/src/vs/base/browser/ui/grid/grid.js +7 -7
  36. package/vscode/src/vs/base/browser/ui/grid/gridview.js +35 -27
  37. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +1 -1
  38. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +5 -5
  39. package/vscode/src/vs/base/browser/ui/icons/iconSelectBox.js +1 -1
  40. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +1 -1
  41. package/vscode/src/vs/base/browser/ui/keybindingLabel/keybindingLabel.js +1 -1
  42. package/vscode/src/vs/base/browser/ui/list/listPaging.js +19 -19
  43. package/vscode/src/vs/base/browser/ui/list/listView.js +16 -16
  44. package/vscode/src/vs/base/browser/ui/list/listWidget.js +32 -29
  45. package/vscode/src/vs/base/browser/ui/list/rangeMap.js +9 -35
  46. package/vscode/src/vs/base/browser/ui/menu/menubar.js +1 -1
  47. package/vscode/src/vs/base/browser/ui/mouseCursor/mouseCursor.js +1 -1
  48. package/vscode/src/vs/base/browser/ui/pixelSpinner/pixelSpinner.css +169 -0
  49. package/vscode/src/vs/base/browser/ui/pixelSpinner/pixelSpinner.d.ts +32 -0
  50. package/vscode/src/vs/base/browser/ui/pixelSpinner/pixelSpinner.js +43 -0
  51. package/vscode/src/vs/base/browser/ui/progressbar/progressbar.js +1 -1
  52. package/vscode/src/vs/base/browser/ui/radio/radio.js +4 -4
  53. package/vscode/src/vs/base/browser/ui/sash/sash.js +1 -1
  54. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +1 -1
  55. package/vscode/src/vs/base/browser/ui/segmentedIconToggle/segmentedIconToggle.css +114 -0
  56. package/vscode/src/vs/base/browser/ui/selectBox/selectBox.js +1 -1
  57. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +10 -3
  58. package/vscode/src/vs/base/browser/ui/severityIcon/severityIcon.js +1 -1
  59. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +5 -5
  60. package/vscode/src/vs/base/browser/ui/splitview/splitview.js +19 -19
  61. package/vscode/src/vs/base/browser/ui/table/tableWidget.js +7 -7
  62. package/vscode/src/vs/base/browser/ui/toggle/switch.js +1 -1
  63. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +1 -1
  64. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +4 -4
  65. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +41 -29
  66. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +50 -38
  67. package/vscode/src/vs/base/browser/ui/tree/compressedObjectTreeModel.js +22 -22
  68. package/vscode/src/vs/base/browser/ui/tree/dataTree.js +2 -2
  69. package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +11 -6
  70. package/vscode/src/vs/base/browser/ui/tree/objectTree.js +1 -1
  71. package/vscode/src/vs/base/browser/ui/tree/objectTreeModel.js +4 -4
  72. package/vscode/src/vs/base/common/arrays.js +4 -4
  73. package/vscode/src/vs/base/common/async.js +12 -12
  74. package/vscode/src/vs/base/common/dataTransfer.js +2 -2
  75. package/vscode/src/vs/base/common/equals.js +1 -1
  76. package/vscode/src/vs/base/common/event.js +6 -6
  77. package/vscode/src/vs/base/common/fuzzyScorer.js +3 -3
  78. package/vscode/src/vs/base/common/glob.js +11 -3
  79. package/vscode/src/vs/base/common/htmlContent.js +2 -2
  80. package/vscode/src/vs/base/common/labels.js +2 -2
  81. package/vscode/src/vs/base/common/lifecycle.js +3 -3
  82. package/vscode/src/vs/base/common/linkedText.js +1 -1
  83. package/vscode/src/vs/base/common/markdownLinks.d.ts +37 -0
  84. package/vscode/src/vs/base/common/markdownLinks.js +127 -0
  85. package/vscode/src/vs/base/common/objects.js +1 -1
  86. package/vscode/src/vs/base/common/observableInternal/logging/consoleObservableLogger.js +6 -3
  87. package/vscode/src/vs/base/common/observableInternal/logging/debugger/devToolsLogger.js +8 -8
  88. package/vscode/src/vs/base/common/observableInternal/utils/utilsCancellation.js +2 -2
  89. package/vscode/src/vs/base/common/paging.js +4 -1
  90. package/vscode/src/vs/base/common/uriTemplate.js +8 -8
  91. package/vscode/src/vs/base/common/yaml.js +2 -2
  92. package/vscode/src/vs/base/parts/ipc/common/webSocketFraming.d.ts +57 -0
  93. package/vscode/src/vs/base/parts/ipc/common/webSocketFraming.js +219 -0
  94. package/vscode/src/vs/editor/browser/config/fontMeasurements.js +1 -1
  95. package/vscode/src/vs/editor/browser/controller/editContext/clipboardUtils.js +2 -2
  96. package/vscode/src/vs/editor/browser/controller/editContext/native/nativeEditContext.js +1 -1
  97. package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContext.js +1 -1
  98. package/vscode/src/vs/editor/browser/coreCommands.js +22 -15
  99. package/vscode/src/vs/editor/browser/editorExtensions.js +1 -1
  100. package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlas.js +2 -2
  101. package/vscode/src/vs/editor/browser/gpu/css/decorationCssRuleExtractor.js +1 -1
  102. package/vscode/src/vs/editor/browser/gpu/viewGpuContext.js +9 -3
  103. package/vscode/src/vs/editor/browser/observableCodeEditor.js +8 -8
  104. package/vscode/src/vs/editor/browser/services/abstractCodeEditorService.js +3 -3
  105. package/vscode/src/vs/editor/browser/services/bulkEditService.js +2 -2
  106. package/vscode/src/vs/editor/browser/services/codeEditorService.service.d.ts +1 -2
  107. package/vscode/src/vs/editor/browser/services/editorWorkerService.js +5 -5
  108. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.js +1 -1
  109. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.service.d.ts +1 -1
  110. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +6 -6
  111. package/vscode/src/vs/editor/browser/view.js +4 -4
  112. package/vscode/src/vs/editor/browser/viewParts/blockDecorations/blockDecorations.js +1 -1
  113. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +1 -1
  114. package/vscode/src/vs/editor/browser/viewParts/decorations/decorations.js +1 -1
  115. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +1 -1
  116. package/vscode/src/vs/editor/browser/viewParts/gpuMark/gpuMark.js +1 -1
  117. package/vscode/src/vs/editor/browser/viewParts/indentGuides/indentGuides.js +5 -5
  118. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +1 -1
  119. package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +1 -1
  120. package/vscode/src/vs/editor/browser/viewParts/margin/margin.js +1 -1
  121. package/vscode/src/vs/editor/browser/viewParts/marginDecorations/marginDecorations.js +1 -1
  122. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +1 -1
  123. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +1 -1
  124. package/vscode/src/vs/editor/browser/viewParts/rulers/rulers.js +1 -1
  125. package/vscode/src/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js +1 -1
  126. package/vscode/src/vs/editor/browser/viewParts/selections/selections.js +4 -4
  127. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.js +1 -1
  128. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLines.js +1 -1
  129. package/vscode/src/vs/editor/browser/viewParts/whitespace/whitespace.js +2 -2
  130. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +4 -4
  131. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +3 -3
  132. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js +27 -66
  133. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +4 -4
  134. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js +1 -1
  135. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +3 -3
  136. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +38 -28
  137. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +23 -17
  138. package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +10 -10
  139. package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +12 -8
  140. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +12 -8
  141. package/vscode/src/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js +12 -4
  142. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +4 -4
  143. package/vscode/src/vs/editor/browser/widget/diffEditor/utils/editorGutter.js +1 -1
  144. package/vscode/src/vs/editor/browser/widget/markdownRenderer/browser/editorMarkdownCodeBlockRenderer.js +1 -1
  145. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/compressedVirtualizedScrollView.js +1 -1
  146. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorLogging.js +2 -2
  147. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorViewModel.js +5 -3
  148. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +11 -11
  149. package/vscode/src/vs/editor/common/core/2d/point.js +1 -1
  150. package/vscode/src/vs/editor/common/core/2d/size.js +1 -1
  151. package/vscode/src/vs/editor/common/core/edits/edit.js +1 -1
  152. package/vscode/src/vs/editor/common/core/edits/lengthEdit.js +1 -1
  153. package/vscode/src/vs/editor/common/core/edits/lineEdit.js +8 -8
  154. package/vscode/src/vs/editor/common/core/edits/stringEdit.js +5 -5
  155. package/vscode/src/vs/editor/common/core/edits/textEdit.js +5 -5
  156. package/vscode/src/vs/editor/common/core/ranges/lineRange.js +2 -2
  157. package/vscode/src/vs/editor/common/core/ranges/offsetRange.js +1 -1
  158. package/vscode/src/vs/editor/common/core/text/positionToOffsetImpl.js +2 -2
  159. package/vscode/src/vs/editor/common/cursor/cursor.js +3 -3
  160. package/vscode/src/vs/editor/common/cursor/cursorCollection.js +5 -5
  161. package/vscode/src/vs/editor/common/cursor/cursorMoveCommands.js +16 -16
  162. package/vscode/src/vs/editor/common/cursor/cursorTypeEditOperations.js +10 -10
  163. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/computeMovedLines.js +5 -3
  164. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js +5 -5
  165. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +1 -1
  166. package/vscode/src/vs/editor/common/diff/legacyLinesDiffComputer.js +2 -2
  167. package/vscode/src/vs/editor/common/diff/linesDiffComputer.js +1 -1
  168. package/vscode/src/vs/editor/common/diff/rangeMapping.js +9 -6
  169. package/vscode/src/vs/editor/common/editorContextKeys.js +64 -64
  170. package/vscode/src/vs/editor/common/languageFeatureRegistry.js +1 -1
  171. package/vscode/src/vs/editor/common/languages/language.service.d.ts +1 -2
  172. package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.js +4 -4
  173. package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.service.d.ts +1 -1
  174. package/vscode/src/vs/editor/common/languages/supports/characterPair.js +3 -3
  175. package/vscode/src/vs/editor/common/languages/supports/languageBracketsConfiguration.js +2 -2
  176. package/vscode/src/vs/editor/common/languages/supports/richEditBrackets.js +6 -6
  177. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/beforeEditPositionMapper.js +3 -3
  178. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/bracketPairsTree.js +2 -2
  179. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/brackets.js +1 -1
  180. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/colorizedBracketPairsDecorationProvider.js +3 -3
  181. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/fixBrackets.js +1 -1
  182. package/vscode/src/vs/editor/common/model/editStack.js +11 -5
  183. package/vscode/src/vs/editor/common/model/textModel.js +16 -16
  184. package/vscode/src/vs/editor/common/model/textModelStringEdit.js +3 -3
  185. package/vscode/src/vs/editor/common/model/textModelTokens.js +1 -1
  186. package/vscode/src/vs/editor/common/model/tokens/abstractSyntaxTokenBackend.js +4 -2
  187. package/vscode/src/vs/editor/common/model/tokens/annotations.js +4 -4
  188. package/vscode/src/vs/editor/common/model/tokens/tokenizerSyntaxTokenBackend.js +1 -1
  189. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTokenizationImpl.js +9 -9
  190. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTree.js +2 -2
  191. package/vscode/src/vs/editor/common/services/editorWebWorker.js +4 -4
  192. package/vscode/src/vs/editor/common/services/editorWorker.service.d.ts +1 -1
  193. package/vscode/src/vs/editor/common/services/languagesAssociations.js +23 -48
  194. package/vscode/src/vs/editor/common/services/markerDecorations.service.d.ts +1 -2
  195. package/vscode/src/vs/editor/common/services/markerDecorationsService.js +3 -3
  196. package/vscode/src/vs/editor/common/services/model.service.d.ts +1 -2
  197. package/vscode/src/vs/editor/common/services/resolverService.service.d.ts +1 -1
  198. package/vscode/src/vs/editor/common/services/textResourceConfiguration.service.d.ts +1 -2
  199. package/vscode/src/vs/editor/common/services/unicodeTextModelHighlighter.js +1 -1
  200. package/vscode/src/vs/editor/common/textModelEditSource.js +2 -2
  201. package/vscode/src/vs/editor/common/tokens/lineTokens.js +2 -2
  202. package/vscode/src/vs/editor/common/tokens/tokenWithTextArray.js +2 -2
  203. package/vscode/src/vs/editor/common/viewLayout/lineHeights.js +2 -2
  204. package/vscode/src/vs/editor/common/viewModel/modelLineProjection.js +1 -1
  205. package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +2 -2
  206. package/vscode/src/vs/editor/common/viewModel/viewModelLines.js +8 -8
  207. package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +2 -2
  208. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +3 -3
  209. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +12 -9
  210. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +7 -7
  211. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.js +2 -2
  212. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +4 -4
  213. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +1 -1
  214. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +1 -1
  215. package/vscode/src/vs/editor/contrib/codelens/browser/codeLensCache.js +2 -2
  216. package/vscode/src/vs/editor/contrib/codelens/browser/codelens.js +2 -2
  217. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +4 -4
  218. package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.js +1 -1
  219. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorDetector.js +2 -2
  220. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParticipantUtils.js +2 -2
  221. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerBody.js +1 -1
  222. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerCloseButton.js +1 -1
  223. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerHeader.js +1 -1
  224. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerInsertButton.js +1 -1
  225. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerSaturationBox.js +1 -1
  226. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerStrip.js +1 -1
  227. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +1 -1
  228. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerWidget.js +1 -1
  229. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +2 -2
  230. package/vscode/src/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js +4 -4
  231. package/vscode/src/vs/editor/contrib/dnd/browser/dnd.js +3 -3
  232. package/vscode/src/vs/editor/contrib/documentSymbols/browser/outlineModel.js +4 -4
  233. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +1 -1
  234. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +10 -10
  235. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +4 -4
  236. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +3 -3
  237. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/edit.js +2 -2
  238. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +3 -3
  239. package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +2 -2
  240. package/vscode/src/vs/editor/contrib/find/browser/findController.js +2 -2
  241. package/vscode/src/vs/editor/contrib/find/browser/findDecorations.js +4 -4
  242. package/vscode/src/vs/editor/contrib/find/browser/findModel.js +15 -12
  243. package/vscode/src/vs/editor/contrib/find/browser/findOptionsWidget.js +1 -1
  244. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +5 -5
  245. package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.contribution.js +1 -1
  246. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +4 -4
  247. package/vscode/src/vs/editor/contrib/folding/browser/syntaxRangeProvider.js +2 -2
  248. package/vscode/src/vs/editor/contrib/format/browser/format.js +4 -4
  249. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +2 -2
  250. package/vscode/src/vs/editor/contrib/format/browser/formattingEdit.js +7 -6
  251. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +1 -1
  252. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +1 -1
  253. package/vscode/src/vs/editor/contrib/gotoError/browser/markerNavigationService.service.d.ts +1 -1
  254. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToSymbol.js +3 -3
  255. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +1 -1
  256. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +2 -2
  257. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +3 -3
  258. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +2 -2
  259. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +2 -2
  260. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverComputer.js +5 -4
  261. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.js +1 -1
  262. package/vscode/src/vs/editor/contrib/hover/browser/getHover.js +2 -2
  263. package/vscode/src/vs/editor/contrib/hover/browser/glyphHoverComputer.js +3 -3
  264. package/vscode/src/vs/editor/contrib/hover/browser/glyphHoverController.js +1 -1
  265. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +1 -1
  266. package/vscode/src/vs/editor/contrib/hover/browser/hoverContribution.js +1 -1
  267. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +2 -2
  268. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +2 -2
  269. package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +1 -1
  270. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +2 -2
  271. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHints.js +2 -2
  272. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +3 -3
  273. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js +3 -1
  274. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +1 -1
  275. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js +16 -16
  276. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +11 -9
  277. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +3 -3
  278. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/changeRecorder.js +3 -1
  279. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/editKind.js +3 -1
  280. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/ghostText.js +4 -4
  281. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js +49 -47
  282. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js +15 -12
  283. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineSuggestionItem.js +6 -6
  284. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.js +3 -3
  285. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/suggestWidgetAdapter.js +2 -2
  286. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/typingSpeed.js +14 -33
  287. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/structuredLogger.js +1 -1
  288. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/utils.js +4 -4
  289. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.js +14 -11
  290. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +9 -9
  291. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js +25 -25
  292. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsView.js +62 -41
  293. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewProducer.js +5 -5
  294. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCollapsedView.js +7 -7
  295. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCustomView.js +8 -8
  296. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsDeletionView.js +15 -13
  297. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsInsertionView.js +14 -14
  298. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsLineReplacementView.js +6 -6
  299. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsSideBySideView.js +29 -29
  300. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsWordReplacementView.js +15 -15
  301. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/jumpToView.js +7 -7
  302. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/inlineEditsLongDistanceHint.js +7 -5
  303. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/longDistancePreviewEditor.js +1 -1
  304. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/longDistnaceWidgetPlacement.js +3 -3
  305. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/originalEditorInlineDiffView.js +7 -3
  306. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js +8 -8
  307. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/utils/flexBoxLayout.js +5 -11
  308. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/utils/utils.js +2 -2
  309. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineSuggestionsView.js +3 -3
  310. package/vscode/src/vs/editor/contrib/inlineProgress/browser/inlineProgress.js +1 -1
  311. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +15 -15
  312. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +6 -6
  313. package/vscode/src/vs/editor/contrib/links/browser/getLinks.js +3 -3
  314. package/vscode/src/vs/editor/contrib/links/browser/links.js +1 -1
  315. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +2 -2
  316. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScrollController.js +8 -5
  317. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +8 -8
  318. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +1 -1
  319. package/vscode/src/vs/editor/contrib/parameterHints/browser/provideSignatureHelp.js +13 -17
  320. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +2 -2
  321. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +1 -1
  322. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +3 -3
  323. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +11 -8
  324. package/vscode/src/vs/editor/contrib/sectionHeaders/browser/sectionHeaders.js +2 -2
  325. package/vscode/src/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.js +1 -1
  326. package/vscode/src/vs/editor/contrib/semanticTokens/common/getSemanticTokens.js +4 -4
  327. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +21 -15
  328. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +5 -5
  329. package/vscode/src/vs/editor/contrib/snippet/browser/snippetParser.js +14 -14
  330. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +7 -7
  331. package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.js +4 -4
  332. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +11 -11
  333. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +2 -2
  334. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +15 -15
  335. package/vscode/src/vs/editor/contrib/suggest/browser/suggestAlternatives.js +1 -1
  336. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +33 -27
  337. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +19 -19
  338. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +3 -3
  339. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +2 -2
  340. package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +3 -3
  341. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +34 -34
  342. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +4 -4
  343. package/vscode/src/vs/editor/contrib/tokenization/browser/tokenization.js +1 -1
  344. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +2 -2
  345. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +29 -29
  346. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +5 -5
  347. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +10 -10
  348. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/textualHighlightProvider.js +4 -4
  349. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +8 -8
  350. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +14 -10
  351. package/vscode/src/vs/editor/contrib/zoneWidget/browser/zoneWidget.js +1 -1
  352. package/vscode/src/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js +1 -1
  353. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +3 -3
  354. package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +3 -1
  355. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +2 -2
  356. package/vscode/src/vs/platform/accessibility/common/accessibility.js +6 -5
  357. package/vscode/src/vs/platform/accessibility/common/accessibility.service.d.ts +1 -1
  358. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +72 -70
  359. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.service.d.ts +2 -1
  360. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +6 -6
  361. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +13 -13
  362. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +13 -13
  363. package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.js +1 -1
  364. package/vscode/src/vs/platform/actionWidget/browser/tabbedActionListWidget.css +74 -0
  365. package/vscode/src/vs/platform/actionWidget/browser/tabbedActionListWidget.d.ts +149 -0
  366. package/vscode/src/vs/platform/actionWidget/browser/tabbedActionListWidget.js +429 -0
  367. package/vscode/src/vs/platform/actions/browser/actionViewItemService.service.d.ts +1 -1
  368. package/vscode/src/vs/platform/actions/browser/actionWidgetDropdownActionViewItem.d.ts +31 -0
  369. package/vscode/src/vs/platform/actions/browser/actionWidgetDropdownActionViewItem.js +92 -0
  370. package/vscode/src/vs/platform/actions/browser/buttonbar.css +29 -0
  371. package/vscode/src/vs/platform/actions/browser/buttonbar.d.ts +66 -0
  372. package/vscode/src/vs/platform/actions/browser/buttonbar.js +253 -0
  373. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +20 -12
  374. package/vscode/src/vs/platform/actions/browser/toolbar.js +3 -3
  375. package/vscode/src/vs/platform/actions/common/menuResetAction.js +1 -1
  376. package/vscode/src/vs/platform/actions/common/menuService.js +3 -3
  377. package/vscode/src/vs/platform/agentHost/browser/agentHostProtocolClient.d.ts +603 -0
  378. package/vscode/src/vs/platform/agentHost/browser/agentHostProtocolClient.js +1911 -0
  379. package/vscode/src/vs/platform/agentHost/browser/agentHostSandboxToggle.d.ts +16 -0
  380. package/vscode/src/vs/platform/agentHost/browser/agentHostSandboxToggle.js +48 -0
  381. package/vscode/src/vs/platform/agentHost/browser/codexApprovalsPicker.d.ts +3 -0
  382. package/vscode/src/vs/platform/agentHost/browser/codexApprovalsPicker.js +18 -0
  383. package/vscode/src/vs/platform/agentHost/browser/media/codexApprovalsPicker.css +10 -0
  384. package/vscode/src/vs/platform/agentHost/browser/nullAgentHostService.d.ts +3 -3
  385. package/vscode/src/vs/platform/agentHost/browser/webPubSubRelayTransport.d.ts +106 -0
  386. package/vscode/src/vs/platform/agentHost/browser/webPubSubRelayTransport.js +207 -0
  387. package/vscode/src/vs/platform/agentHost/common/agent.d.ts +2 -2
  388. package/vscode/src/vs/platform/agentHost/common/agentHostByokLm.d.ts +146 -0
  389. package/vscode/src/vs/platform/agentHost/common/agentHostByokLm.js +13 -0
  390. package/vscode/src/vs/platform/agentHost/common/agentHostByokLm.service.d.ts +31 -0
  391. package/vscode/src/vs/platform/agentHost/common/agentHostByokLm.service.js +6 -0
  392. package/vscode/src/vs/platform/agentHost/common/agentHostChangesetOperationService.d.ts +112 -0
  393. package/vscode/src/vs/platform/agentHost/common/agentHostChangesetOperationService.js +20 -0
  394. package/vscode/src/vs/platform/agentHost/common/agentHostClientInfo.d.ts +9 -0
  395. package/vscode/src/vs/platform/agentHost/common/agentHostClientInfo.js +20 -0
  396. package/vscode/src/vs/platform/agentHost/common/agentHostConnectionsService.d.ts +1 -1
  397. package/vscode/src/vs/platform/agentHost/common/agentHostConnectionsService.service.d.ts +1 -2
  398. package/vscode/src/vs/platform/agentHost/common/agentHostEnablementService.d.ts +7 -0
  399. package/vscode/src/vs/platform/agentHost/common/agentHostEnablementService.js +92 -0
  400. package/vscode/src/vs/platform/agentHost/common/agentHostExtensionProtocol.d.ts +144 -0
  401. package/vscode/src/vs/platform/agentHost/common/agentHostExtensionProtocol.js +20 -0
  402. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.d.ts +204 -0
  403. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.js +443 -0
  404. package/vscode/src/vs/platform/agentHost/common/agentHostManagedRules.d.ts +47 -0
  405. package/vscode/src/vs/platform/agentHost/common/agentHostManagedRules.js +75 -0
  406. package/vscode/src/vs/platform/agentHost/common/agentHostManagedSettings.d.ts +68 -0
  407. package/vscode/src/vs/platform/agentHost/common/agentHostManagedSettings.js +161 -0
  408. package/vscode/src/vs/platform/agentHost/common/agentHostOperatingSystem.d.ts +6 -0
  409. package/vscode/src/vs/platform/agentHost/common/agentHostOperatingSystem.js +32 -0
  410. package/vscode/src/vs/platform/agentHost/common/agentHostPlanReview.d.ts +20 -0
  411. package/vscode/src/vs/platform/agentHost/common/agentHostResourceService.service.d.ts +1 -1
  412. package/vscode/src/vs/platform/agentHost/common/agentHostSchema.js +104 -104
  413. package/vscode/src/vs/platform/agentHost/common/agentHostTelemetry.d.ts +1 -1
  414. package/vscode/src/vs/platform/agentHost/common/agentHostWorkingDirectories.d.ts +16 -0
  415. package/vscode/src/vs/platform/agentHost/common/agentHostWorkingDirectories.js +17 -0
  416. package/vscode/src/vs/platform/agentHost/common/agentMerge.d.ts +261 -0
  417. package/vscode/src/vs/platform/agentHost/common/agentMerge.js +165 -0
  418. package/vscode/src/vs/platform/agentHost/common/agentMergePrompt.d.ts +1 -1
  419. package/vscode/src/vs/platform/agentHost/common/agentMergePrompt.js +7 -7
  420. package/vscode/src/vs/platform/agentHost/common/agentModelSource.d.ts +27 -0
  421. package/vscode/src/vs/platform/agentHost/common/agentModelSource.js +23 -0
  422. package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +3 -3
  423. package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +2 -3
  424. package/vscode/src/vs/platform/agentHost/common/ahpJsonlLogger.d.ts +39 -0
  425. package/vscode/src/vs/platform/agentHost/common/ahpJsonlLogger.js +169 -0
  426. package/vscode/src/vs/platform/agentHost/common/annotationsUri.d.ts +12 -0
  427. package/vscode/src/vs/platform/agentHost/common/annotationsUri.js +8 -0
  428. package/vscode/src/vs/platform/agentHost/common/automationMigration.d.ts +20 -0
  429. package/vscode/src/vs/platform/agentHost/common/automationMigration.js +58 -0
  430. package/vscode/src/vs/platform/agentHost/common/changesetUri.d.ts +130 -0
  431. package/vscode/src/vs/platform/agentHost/common/changesetUri.js +42 -0
  432. package/vscode/src/vs/platform/agentHost/common/claudeSessionConfigKeys.d.ts +30 -0
  433. package/vscode/src/vs/platform/agentHost/common/claudeSessionConfigKeys.js +8 -0
  434. package/vscode/src/vs/platform/agentHost/common/cloudSandboxAgentHost.d.ts +230 -0
  435. package/vscode/src/vs/platform/agentHost/common/cloudSandboxAgentHost.js +53 -0
  436. package/vscode/src/vs/platform/agentHost/common/cloudSandboxAgentHost.service.d.ts +67 -0
  437. package/vscode/src/vs/platform/agentHost/common/cloudSandboxAgentHost.service.js +7 -0
  438. package/vscode/src/vs/platform/agentHost/common/codexSessionConfigKeys.d.ts +72 -0
  439. package/vscode/src/vs/platform/agentHost/common/codexSessionConfigKeys.js +16 -0
  440. package/vscode/src/vs/platform/agentHost/common/copilotCliConfig.d.ts +104 -0
  441. package/vscode/src/vs/platform/agentHost/common/copilotCliConfig.js +237 -0
  442. package/vscode/src/vs/platform/agentHost/common/customAgents.d.ts +42 -0
  443. package/vscode/src/vs/platform/agentHost/common/customAgents.js +56 -0
  444. package/vscode/src/vs/platform/agentHost/common/customizationEnablement.js +32 -26
  445. package/vscode/src/vs/platform/agentHost/common/fileEditDiff.d.ts +37 -0
  446. package/vscode/src/vs/platform/agentHost/common/fileEditDiff.js +34 -0
  447. package/vscode/src/vs/platform/agentHost/common/githubEndpoints.d.ts +52 -0
  448. package/vscode/src/vs/platform/agentHost/common/githubEndpoints.js +38 -0
  449. package/vscode/src/vs/platform/agentHost/common/githubIssueReferences.d.ts +8 -0
  450. package/vscode/src/vs/platform/agentHost/common/githubIssueReferences.js +13 -0
  451. package/vscode/src/vs/platform/agentHost/common/meta/agentChangesetFileMeta.d.ts +6 -0
  452. package/vscode/src/vs/platform/agentHost/common/meta/agentChangesetFileMeta.js +15 -0
  453. package/vscode/src/vs/platform/agentHost/common/meta/agentCompletionAttachmentMeta.d.ts +110 -0
  454. package/vscode/src/vs/platform/agentHost/common/meta/agentCompletionAttachmentMeta.js +79 -0
  455. package/vscode/src/vs/platform/agentHost/common/meta/agentDevContainerWorktreeMeta.d.ts +9 -0
  456. package/vscode/src/vs/platform/agentHost/common/meta/agentDevContainerWorktreeMeta.js +24 -0
  457. package/vscode/src/vs/platform/agentHost/common/meta/agentElementAttachments.d.ts +9 -0
  458. package/vscode/src/vs/platform/agentHost/common/meta/agentElementAttachments.js +21 -0
  459. package/vscode/src/vs/platform/agentHost/common/meta/agentFeedbackAnnotations.d.ts +128 -0
  460. package/vscode/src/vs/platform/agentHost/common/meta/agentFeedbackAnnotations.js +83 -0
  461. package/vscode/src/vs/platform/agentHost/common/meta/agentFeedbackAttachments.d.ts +30 -0
  462. package/vscode/src/vs/platform/agentHost/common/meta/agentFeedbackAttachments.js +85 -0
  463. package/vscode/src/vs/platform/agentHost/common/meta/agentHostArtifactRemovalMeta.d.ts +4 -0
  464. package/vscode/src/vs/platform/agentHost/common/meta/agentHostArtifactRemovalMeta.js +8 -0
  465. package/vscode/src/vs/platform/agentHost/common/meta/agentMergeMessageMeta.d.ts +15 -0
  466. package/vscode/src/vs/platform/agentHost/common/meta/agentMergeMessageMeta.js +8 -0
  467. package/vscode/src/vs/platform/agentHost/common/meta/agentMessageDelegationMeta.d.ts +19 -0
  468. package/vscode/src/vs/platform/agentHost/common/meta/agentMessageDelegationMeta.js +27 -0
  469. package/vscode/src/vs/platform/agentHost/common/meta/agentPermissionRequestMeta.d.ts +41 -0
  470. package/vscode/src/vs/platform/agentHost/common/meta/agentPermissionRequestMeta.js +34 -0
  471. package/vscode/src/vs/platform/agentHost/common/meta/agentPullRequestOperationMeta.d.ts +45 -0
  472. package/vscode/src/vs/platform/agentHost/common/meta/agentPullRequestOperationMeta.js +144 -0
  473. package/vscode/src/vs/platform/agentHost/common/meta/agentSystemNotificationMeta.d.ts +49 -0
  474. package/vscode/src/vs/platform/agentHost/common/meta/agentSystemNotificationMeta.js +52 -0
  475. package/vscode/src/vs/platform/agentHost/common/meta/agentToolCallMeta.d.ts +81 -0
  476. package/vscode/src/vs/platform/agentHost/common/meta/agentToolCallMeta.js +92 -0
  477. package/vscode/src/vs/platform/agentHost/common/meta/automationMeta.d.ts +15 -0
  478. package/vscode/src/vs/platform/agentHost/common/meta/automationMeta.js +17 -0
  479. package/vscode/src/vs/platform/agentHost/common/meta/browserViewAttachments.d.ts +9 -0
  480. package/vscode/src/vs/platform/agentHost/common/meta/browserViewAttachments.js +31 -0
  481. package/vscode/src/vs/platform/agentHost/common/openSessionLink.d.ts +75 -0
  482. package/vscode/src/vs/platform/agentHost/common/openSessionLink.js +125 -0
  483. package/vscode/src/vs/platform/agentHost/common/partialToolInput.d.ts +2 -0
  484. package/vscode/src/vs/platform/agentHost/common/partialToolInput.js +24 -0
  485. package/vscode/src/vs/platform/agentHost/common/reasoningEffort.d.ts +61 -0
  486. package/vscode/src/vs/platform/agentHost/common/reasoningEffort.js +50 -0
  487. package/vscode/src/vs/platform/agentHost/common/reconnectingTransport.js +81 -0
  488. package/vscode/src/vs/platform/agentHost/common/relayTransport.d.ts +1 -1
  489. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostLocationPreference.service.d.ts +18 -0
  490. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostLocationPreference.service.js +6 -0
  491. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostLocationPreferenceDialog.d.ts +40 -0
  492. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostLocationPreferenceDialog.js +75 -0
  493. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.js +145 -11
  494. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.service.d.ts +1 -1
  495. package/vscode/src/vs/platform/agentHost/common/resourceReadLogging.d.ts +1 -0
  496. package/vscode/src/vs/platform/agentHost/common/resourceReadLogging.js +26 -0
  497. package/vscode/src/vs/platform/agentHost/common/serverToolNames.d.ts +36 -0
  498. package/vscode/src/vs/platform/agentHost/common/serverToolNames.js +22 -0
  499. package/vscode/src/vs/platform/agentHost/common/sessionArtifacts.d.ts +75 -0
  500. package/vscode/src/vs/platform/agentHost/common/sessionArtifacts.js +84 -0
  501. package/vscode/src/vs/platform/agentHost/common/sessionConfigKeys.js +39 -1
  502. package/vscode/src/vs/platform/agentHost/common/sessionDbUri.d.ts +39 -0
  503. package/vscode/src/vs/platform/agentHost/common/sessionDbUri.js +40 -0
  504. package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.d.ts +1 -1
  505. package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.js +14 -0
  506. package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.service.d.ts +2 -3
  507. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.d.ts +461 -0
  508. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +803 -0
  509. package/vscode/src/vs/platform/agentHost/common/state/legacyProtocolCompatibility.js +2 -2
  510. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-annotations/reducer.d.ts +18 -0
  511. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-annotations/reducer.js +89 -0
  512. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation/reducer.d.ts +4 -0
  513. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation/reducer.js +37 -0
  514. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation-run/reducer.d.ts +4 -0
  515. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation-run/reducer.js +45 -0
  516. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-changeset/reducer.d.ts +13 -0
  517. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-changeset/reducer.js +147 -0
  518. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-chat/reducer.d.ts +6 -0
  519. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-chat/reducer.js +837 -0
  520. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-resource-watch/reducer.d.ts +21 -0
  521. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-root/reducer.d.ts +6 -0
  522. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-root/reducer.js +30 -0
  523. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-session/reducer.d.ts +6 -0
  524. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-session/reducer.js +484 -0
  525. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-terminal/reducer.d.ts +6 -0
  526. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-terminal/reducer.js +79 -0
  527. package/vscode/src/vs/platform/agentHost/common/state/protocol/common/reducer-helpers.d.ts +17 -0
  528. package/vscode/src/vs/platform/agentHost/common/state/protocol/common/reducer-helpers.js +9 -0
  529. package/vscode/src/vs/platform/agentHost/common/state/protocol/common/timestamps.d.ts +1 -0
  530. package/vscode/src/vs/platform/agentHost/common/state/protocol/common/timestamps.js +7 -0
  531. package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.d.ts +10 -0
  532. package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.d.ts +67 -0
  533. package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.js +117 -0
  534. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +106 -0
  535. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.js +25 -0
  536. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +1 -1
  537. package/vscode/src/vs/platform/agentHost/common/state/sessionReducers.d.ts +16 -0
  538. package/vscode/src/vs/platform/agentHost/common/state/sessionReducers.js +23 -0
  539. package/vscode/src/vs/platform/agentHost/common/state/sessionState.js +219 -5
  540. package/vscode/src/vs/platform/agentHost/common/taskEventReplay.d.ts +51 -0
  541. package/vscode/src/vs/platform/agentHost/common/taskEventReplay.js +184 -0
  542. package/vscode/src/vs/platform/agentHost/common/transportConstants.d.ts +15 -0
  543. package/vscode/src/vs/platform/agentHost/common/transportConstants.js +6 -0
  544. package/vscode/src/vs/platform/agentHost/common/tunnelAgentHost.js +169 -1
  545. package/vscode/src/vs/platform/agentHost/common/tunnelAgentHost.service.d.ts +158 -0
  546. package/vscode/src/vs/platform/agentHost/common/tunnelAgentHost.service.js +6 -0
  547. package/vscode/src/vs/platform/agentHost/common/tunnelAgentHostConnector.d.ts +115 -0
  548. package/vscode/src/vs/platform/agentHost/common/tunnelAgentHostConnector.js +459 -0
  549. package/vscode/src/vs/platform/agentHost/common/tunnelGatewaySelection.d.ts +101 -0
  550. package/vscode/src/vs/platform/agentHost/common/tunnelGatewaySelection.js +82 -0
  551. package/vscode/src/vs/platform/agentHost/common/tunnelMessageSocket.d.ts +33 -0
  552. package/vscode/src/vs/platform/agentHost/common/webPubSub/chunking.d.ts +100 -0
  553. package/vscode/src/vs/platform/agentHost/common/webPubSub/chunking.js +256 -0
  554. package/vscode/src/vs/platform/agentHost/common/webPubSub/framing.d.ts +86 -0
  555. package/vscode/src/vs/platform/agentHost/common/webPubSub/framing.js +64 -0
  556. package/vscode/src/vs/platform/agentHost/common/webPubSub/groups.d.ts +46 -0
  557. package/vscode/src/vs/platform/agentHost/common/webPubSub/groups.js +92 -0
  558. package/vscode/src/vs/platform/agentHost/common/webSocketOverDuplex.d.ts +18 -0
  559. package/vscode/src/vs/platform/agentHost/common/webSocketOverDuplex.js +443 -0
  560. package/vscode/src/vs/platform/agentHost/common/worktreePaths.d.ts +24 -0
  561. package/vscode/src/vs/platform/agentHost/common/worktreePaths.js +15 -0
  562. package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.js +13 -11
  563. package/vscode/src/vs/platform/browserView/common/browserPermissions.js +16 -16
  564. package/vscode/src/vs/platform/chat/common/sessionArchiveActions.d.ts +26 -0
  565. package/vscode/src/vs/platform/chat/common/sessionArchiveActions.js +58 -0
  566. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +2 -2
  567. package/vscode/src/vs/platform/clipboard/common/clipboardService.service.d.ts +1 -1
  568. package/vscode/src/vs/platform/commands/common/commands.service.d.ts +1 -1
  569. package/vscode/src/vs/platform/configuration/common/configuration.service.d.ts +1 -1
  570. package/vscode/src/vs/platform/configuration/common/configurationModels.js +2 -2
  571. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +14 -14
  572. package/vscode/src/vs/platform/configuration/common/configurations.js +1 -1
  573. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +2 -2
  574. package/vscode/src/vs/platform/contextkey/common/contextkey.js +23 -23
  575. package/vscode/src/vs/platform/contextkey/common/contextkey.service.d.ts +1 -1
  576. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +11 -11
  577. package/vscode/src/vs/platform/contextkey/common/scanner.js +6 -6
  578. package/vscode/src/vs/platform/contextview/browser/contextView.service.d.ts +1 -1
  579. package/vscode/src/vs/platform/dataChannel/common/dataChannel.service.d.ts +1 -2
  580. package/vscode/src/vs/platform/debug/common/extensionHostDebug.service.d.ts +1 -1
  581. package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.service.d.ts +1 -1
  582. package/vscode/src/vs/platform/dialogs/common/dialogs.js +12 -12
  583. package/vscode/src/vs/platform/dialogs/common/dialogs.service.d.ts +1 -2
  584. package/vscode/src/vs/platform/dnd/browser/dnd.js +7 -4
  585. package/vscode/src/vs/platform/domWidget/browser/domWidget.d.ts +52 -0
  586. package/vscode/src/vs/platform/domWidget/browser/domWidget.js +53 -0
  587. package/vscode/src/vs/platform/download/common/download.service.d.ts +1 -1
  588. package/vscode/src/vs/platform/editor/browser/editor.d.ts +12 -0
  589. package/vscode/src/vs/platform/editor/browser/editor.js +61 -0
  590. package/vscode/src/vs/platform/endpoint/common/licenseAgreement.d.ts +7 -0
  591. package/vscode/src/vs/platform/endpoint/common/licenseAgreement.js +5 -0
  592. package/vscode/src/vs/platform/environment/common/environment.service.d.ts +1 -1
  593. package/vscode/src/vs/platform/extensionManagement/common/extensionEnablementService.js +2 -2
  594. package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryManifest.service.d.ts +1 -1
  595. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +15 -15
  596. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.service.d.ts +1 -2
  597. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +1 -1
  598. package/vscode/src/vs/platform/extensionManagement/common/extensionStorage.service.d.ts +1 -1
  599. package/vscode/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.js +2 -2
  600. package/vscode/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.service.d.ts +1 -2
  601. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +40 -35
  602. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.service.d.ts +1 -2
  603. package/vscode/src/vs/platform/extensionRecommendations/common/extensionRecommendations.service.d.ts +1 -1
  604. package/vscode/src/vs/platform/extensionResourceLoader/common/extensionResourceLoader.service.d.ts +1 -1
  605. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +19 -19
  606. package/vscode/src/vs/platform/extensions/common/extensions.js +1 -1
  607. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +3 -3
  608. package/vscode/src/vs/platform/files/common/files.js +9 -9
  609. package/vscode/src/vs/platform/files/common/files.service.d.ts +1 -2
  610. package/vscode/src/vs/platform/files/common/inMemoryFilesystemProvider.js +1 -1
  611. package/vscode/src/vs/platform/files/common/watcher.js +2 -2
  612. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +4 -4
  613. package/vscode/src/vs/platform/hover/browser/hoverWidget.js +3 -3
  614. package/vscode/src/vs/platform/hover/browser/updatableHoverWidget.js +1 -1
  615. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +18 -16
  616. package/vscode/src/vs/platform/keybinding/common/baseResolvedKeybinding.js +3 -3
  617. package/vscode/src/vs/platform/keybinding/common/keybinding.service.d.ts +1 -1
  618. package/vscode/src/vs/platform/keybinding/common/usLayoutResolvedKeybinding.js +1 -1
  619. package/vscode/src/vs/platform/keyboardLayout/common/keyboardLayout.service.d.ts +1 -1
  620. package/vscode/src/vs/platform/label/common/label.service.d.ts +1 -2
  621. package/vscode/src/vs/platform/languagePacks/common/languagePacks.js +3 -3
  622. package/vscode/src/vs/platform/languagePacks/common/languagePacks.service.d.ts +1 -1
  623. package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +3 -3
  624. package/vscode/src/vs/platform/layout/browser/layoutService.service.d.ts +1 -1
  625. package/vscode/src/vs/platform/layout/browser/zIndexRegistry.d.ts +12 -0
  626. package/vscode/src/vs/platform/layout/browser/zIndexRegistry.js +64 -0
  627. package/vscode/src/vs/platform/list/browser/listService.js +39 -39
  628. package/vscode/src/vs/platform/localTranscription/common/localTranscription.service.d.ts +1 -1
  629. package/vscode/src/vs/platform/log/common/log.js +7 -7
  630. package/vscode/src/vs/platform/log/common/log.service.d.ts +1 -2
  631. package/vscode/src/vs/platform/markers/common/markerService.js +3 -3
  632. package/vscode/src/vs/platform/markers/common/markers.js +6 -6
  633. package/vscode/src/vs/platform/markers/common/markers.service.d.ts +1 -2
  634. package/vscode/src/vs/platform/mcp/common/mcpGalleryManifest.service.d.ts +1 -1
  635. package/vscode/src/vs/platform/mcp/common/mcpManagement.service.d.ts +1 -2
  636. package/vscode/src/vs/platform/mcp/common/mcpManagementIpc.js +5 -5
  637. package/vscode/src/vs/platform/mcp/common/mcpManagementService.js +11 -9
  638. package/vscode/src/vs/platform/mcp/common/mcpResourceScannerService.service.d.ts +1 -1
  639. package/vscode/src/vs/platform/mcp/common/modelContextProtocolApps.d.ts +576 -0
  640. package/vscode/src/vs/platform/mcp/common/modelContextProtocolApps.js +24 -0
  641. package/vscode/src/vs/platform/meteredConnection/common/meteredConnection.service.d.ts +1 -1
  642. package/vscode/src/vs/platform/networkFilter/common/domainMatcher.d.ts +54 -0
  643. package/vscode/src/vs/platform/networkFilter/common/domainMatcher.js +210 -0
  644. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.service.d.ts +1 -2
  645. package/vscode/src/vs/platform/networkFilter/common/settings.d.ts +8 -0
  646. package/vscode/src/vs/platform/networkFilter/common/settings.js +10 -0
  647. package/vscode/src/vs/platform/notification/common/notification.js +3 -3
  648. package/vscode/src/vs/platform/notification/common/notification.service.d.ts +1 -1
  649. package/vscode/src/vs/platform/opener/browser/link.js +2 -2
  650. package/vscode/src/vs/platform/opener/common/opener.service.d.ts +1 -1
  651. package/vscode/src/vs/platform/policy/common/copilotManagedSettings.service.d.ts +1 -1
  652. package/vscode/src/vs/platform/policy/common/policy.service.d.ts +1 -1
  653. package/vscode/src/vs/platform/product/common/product.js +1 -1
  654. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +15 -15
  655. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +5 -5
  656. package/vscode/src/vs/platform/quickinput/browser/quickInputBox.d.ts +2 -2
  657. package/vscode/src/vs/platform/quickinput/browser/quickInputBox.js +1 -1
  658. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +6 -6
  659. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +17 -13
  660. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +1 -1
  661. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +2 -2
  662. package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +8 -3
  663. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +2 -2
  664. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeController.js +2 -2
  665. package/vscode/src/vs/platform/quickinput/browser/tree/quickTree.js +1 -1
  666. package/vscode/src/vs/platform/quickinput/common/quickInput.service.d.ts +1 -1
  667. package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.service.d.ts +1 -2
  668. package/vscode/src/vs/platform/remoteTunnel/common/remoteTunnel.service.d.ts +1 -1
  669. package/vscode/src/vs/platform/request/common/request.js +20 -20
  670. package/vscode/src/vs/platform/request/common/request.service.d.ts +1 -1
  671. package/vscode/src/vs/platform/sandbox/common/terminalSandboxMxcRuntime.service.d.ts +1 -1
  672. package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.service.d.ts +1 -1
  673. package/vscode/src/vs/platform/secrets/common/secrets.service.d.ts +1 -1
  674. package/vscode/src/vs/platform/storage/common/storage.service.d.ts +1 -1
  675. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -1
  676. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/promptInputModel.js +1 -1
  677. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetectionCapability.js +1 -1
  678. package/vscode/src/vs/platform/terminal/common/capabilities/naiveCwdDetectionCapability.d.ts +11 -0
  679. package/vscode/src/vs/platform/terminal/common/capabilities/naiveCwdDetectionCapability.js +26 -0
  680. package/vscode/src/vs/platform/terminal/common/capabilities/terminalCapabilityStore.js +28 -28
  681. package/vscode/src/vs/platform/terminal/common/environmentVariable.d.ts +86 -0
  682. package/vscode/src/vs/platform/terminal/common/environmentVariable.js +10 -0
  683. package/vscode/src/vs/platform/terminal/common/environmentVariableCollection.d.ts +17 -0
  684. package/vscode/src/vs/platform/terminal/common/environmentVariableCollection.js +218 -0
  685. package/vscode/src/vs/platform/terminal/common/environmentVariableShared.d.ts +1 -1
  686. package/vscode/src/vs/platform/terminal/common/environmentVariableShared.js +4 -4
  687. package/vscode/src/vs/platform/terminal/common/terminal.d.ts +1 -1
  688. package/vscode/src/vs/platform/terminal/common/terminal.service.d.ts +1 -1
  689. package/vscode/src/vs/platform/terminal/common/terminalPlatformConfiguration.js +34 -34
  690. package/vscode/src/vs/platform/terminal/common/terminalProcess.d.ts +1 -1
  691. package/vscode/src/vs/platform/terminal/common/terminalProfiles.js +7 -7
  692. package/vscode/src/vs/platform/terminal/common/terminalRecorder.d.ts +14 -0
  693. package/vscode/src/vs/platform/terminal/common/terminalRecorder.js +73 -0
  694. package/vscode/src/vs/platform/theme/common/colorUtils.js +4 -4
  695. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +19 -19
  696. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +9 -9
  697. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +95 -95
  698. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +48 -48
  699. package/vscode/src/vs/platform/theme/common/colors/listColors.js +36 -36
  700. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +7 -7
  701. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +11 -11
  702. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +16 -16
  703. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +10 -10
  704. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +3 -3
  705. package/vscode/src/vs/platform/theme/common/iconRegistry.js +12 -12
  706. package/vscode/src/vs/platform/theme/common/sizeUtils.js +2 -2
  707. package/vscode/src/vs/platform/theme/common/sizes/baseSizes.js +37 -37
  708. package/vscode/src/vs/platform/theme/common/themeService.service.d.ts +1 -1
  709. package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +45 -45
  710. package/vscode/src/vs/platform/tunnel/common/tunnel.js +1 -1
  711. package/vscode/src/vs/platform/tunnel/common/tunnel.service.d.ts +1 -2
  712. package/vscode/src/vs/platform/undoRedo/common/undoRedo.service.d.ts +1 -1
  713. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +20 -20
  714. package/vscode/src/vs/platform/update/common/update.service.d.ts +1 -1
  715. package/vscode/src/vs/platform/uriIdentity/common/uriIdentity.service.d.ts +1 -1
  716. package/vscode/src/vs/platform/uriIdentity/common/uriIdentityService.js +1 -1
  717. package/vscode/src/vs/platform/url/common/trustedDomains.js +1 -1
  718. package/vscode/src/vs/platform/url/common/url.service.d.ts +2 -1
  719. package/vscode/src/vs/platform/url/common/urlGlob.js +3 -3
  720. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +4 -4
  721. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.service.d.ts +1 -2
  722. package/vscode/src/vs/platform/userDataProfile/common/userDataProfileStorageService.service.d.ts +1 -1
  723. package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +8 -3
  724. package/vscode/src/vs/platform/userDataSync/common/extensionsMerge.js +6 -6
  725. package/vscode/src/vs/platform/userDataSync/common/extensionsSync.js +8 -8
  726. package/vscode/src/vs/platform/userDataSync/common/globalStateSync.js +4 -1
  727. package/vscode/src/vs/platform/userDataSync/common/keybindingsMerge.js +9 -9
  728. package/vscode/src/vs/platform/userDataSync/common/keybindingsSync.js +2 -2
  729. package/vscode/src/vs/platform/userDataSync/common/settingsMerge.js +1 -1
  730. package/vscode/src/vs/platform/userDataSync/common/settingsSync.js +5 -3
  731. package/vscode/src/vs/platform/userDataSync/common/snippetsSync.js +2 -2
  732. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +6 -6
  733. package/vscode/src/vs/platform/userDataSync/common/userDataSync.service.d.ts +1 -2
  734. package/vscode/src/vs/platform/userDataSync/common/userDataSyncAccount.service.d.ts +1 -1
  735. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +3 -3
  736. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.service.d.ts +1 -1
  737. package/vscode/src/vs/platform/userDataSync/common/userDataSyncStoreService.js +2 -2
  738. package/vscode/src/vs/platform/webContentExtractor/common/webContentExtractor.service.d.ts +1 -1
  739. package/vscode/src/vs/platform/workspace/common/workspace.js +1 -1
  740. package/vscode/src/vs/platform/workspace/common/workspace.service.d.ts +1 -2
  741. package/vscode/src/vs/platform/workspace/common/workspaceTrust.service.d.ts +1 -2
  742. package/vscode/src/vs/platform/workspaces/common/workspaces.service.d.ts +1 -2
  743. package/vscode/src/vs/sessions/browser/accountTitleBarState.d.ts +55 -0
  744. package/vscode/src/vs/sessions/browser/accountTitleBarState.js +178 -0
  745. package/vscode/src/vs/sessions/browser/chatDashboardService.service.d.ts +10 -0
  746. package/vscode/src/vs/sessions/browser/chatDashboardService.service.js +6 -0
  747. package/vscode/src/vs/sessions/browser/dnd.d.ts +79 -0
  748. package/vscode/src/vs/sessions/browser/dnd.js +61 -0
  749. package/vscode/src/vs/sessions/browser/layoutPolicy.d.ts +71 -0
  750. package/vscode/src/vs/sessions/browser/layoutPolicy.js +82 -0
  751. package/vscode/src/vs/sessions/browser/media/phoneLayout.css +220 -0
  752. package/vscode/src/vs/sessions/browser/media/sessions-logo-dark.svg +6 -0
  753. package/vscode/src/vs/sessions/browser/media/sessions-logo-light.svg +6 -0
  754. package/vscode/src/vs/sessions/browser/media/sidebarActionButton.css +50 -0
  755. package/vscode/src/vs/sessions/browser/media/style.css +106 -0
  756. package/vscode/src/vs/sessions/browser/media/workbench.css +381 -0
  757. package/vscode/src/vs/sessions/browser/menus.d.ts +76 -0
  758. package/vscode/src/vs/sessions/browser/menus.js +56 -0
  759. package/vscode/src/vs/sessions/browser/mobileNavigationStack.d.ts +35 -0
  760. package/vscode/src/vs/sessions/browser/mobileNavigationStack.js +72 -0
  761. package/vscode/src/vs/sessions/browser/parts/agentsPartCard.d.ts +28 -0
  762. package/vscode/src/vs/sessions/browser/parts/agentsPartCard.js +35 -0
  763. package/vscode/src/vs/sessions/browser/parts/auxiliaryBarPart.d.ts +62 -0
  764. package/vscode/src/vs/sessions/browser/parts/auxiliaryBarPart.js +286 -0
  765. package/vscode/src/vs/sessions/browser/parts/chatView.d.ts +135 -0
  766. package/vscode/src/vs/sessions/browser/parts/chatView.js +56 -0
  767. package/vscode/src/vs/sessions/browser/parts/editorPartSizing.d.ts +9 -0
  768. package/vscode/src/vs/sessions/browser/parts/editorPartSizing.js +6 -0
  769. package/vscode/src/vs/sessions/browser/parts/media/auxiliaryBarPart.css +17 -0
  770. package/vscode/src/vs/sessions/browser/parts/media/sessionsEmptyState.css +31 -0
  771. package/vscode/src/vs/sessions/browser/parts/media/sidebarPart.css +127 -0
  772. package/vscode/src/vs/sessions/browser/parts/media/titlebarpart.css +231 -0
  773. package/vscode/src/vs/sessions/browser/parts/mobile/contributions/media/mobileOverlayViews.css +582 -0
  774. package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileChangesView.d.ts +87 -0
  775. package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileChangesView.js +46 -0
  776. package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileDiffColors.d.ts +3 -0
  777. package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileDiffColors.js +31 -0
  778. package/vscode/src/vs/sessions/browser/parts/mobile/media/mobilePickerSheet.css +581 -0
  779. package/vscode/src/vs/sessions/browser/parts/mobile/media/mobileSessionFilterChips.css +84 -0
  780. package/vscode/src/vs/sessions/browser/parts/mobile/media/mobileSortGroupSheet.css +216 -0
  781. package/vscode/src/vs/sessions/browser/parts/mobile/mobileChatShell.css +973 -0
  782. package/vscode/src/vs/sessions/browser/parts/mobile/mobileChipLaneScroll.d.ts +26 -0
  783. package/vscode/src/vs/sessions/browser/parts/mobile/mobileChipLaneScroll.js +66 -0
  784. package/vscode/src/vs/sessions/browser/parts/mobile/mobileLayout.d.ts +18 -0
  785. package/vscode/src/vs/sessions/browser/parts/mobile/mobileLayout.js +8 -0
  786. package/vscode/src/vs/sessions/browser/parts/mobile/mobilePickerSheet.d.ts +253 -0
  787. package/vscode/src/vs/sessions/browser/parts/mobile/mobilePickerSheet.js +441 -0
  788. package/vscode/src/vs/sessions/browser/parts/mobile/mobileSessionFilterChips.d.ts +73 -0
  789. package/vscode/src/vs/sessions/browser/parts/mobile/mobileSessionFilterChips.js +190 -0
  790. package/vscode/src/vs/sessions/browser/parts/mobile/mobileSortGroupSheet.d.ts +40 -0
  791. package/vscode/src/vs/sessions/browser/parts/mobile/mobileSortGroupSheet.js +117 -0
  792. package/vscode/src/vs/sessions/browser/parts/mobile/mobileTitlebarPart.d.ts +104 -0
  793. package/vscode/src/vs/sessions/browser/parts/mobile/mobileTitlebarPart.js +457 -0
  794. package/vscode/src/vs/sessions/browser/parts/mobile/mobileVisualViewport.d.ts +67 -0
  795. package/vscode/src/vs/sessions/browser/parts/mobile/mobileVisualViewport.js +61 -0
  796. package/vscode/src/vs/sessions/browser/parts/mobile/mobileVisualViewport.service.d.ts +30 -0
  797. package/vscode/src/vs/sessions/browser/parts/mobile/mobileVisualViewport.service.js +6 -0
  798. package/vscode/src/vs/sessions/browser/parts/sessionsEmptyState.d.ts +4 -0
  799. package/vscode/src/vs/sessions/browser/parts/sessionsEmptyState.js +16 -0
  800. package/vscode/src/vs/sessions/browser/parts/sidebarPart.d.ts +65 -0
  801. package/vscode/src/vs/sessions/browser/parts/sidebarPart.js +289 -0
  802. package/vscode/src/vs/sessions/browser/parts/titlebarPart.d.ts +110 -0
  803. package/vscode/src/vs/sessions/browser/parts/titlebarPart.js +481 -0
  804. package/vscode/src/vs/sessions/browser/sessionActionRunner.d.ts +10 -0
  805. package/vscode/src/vs/sessions/browser/sessionActionRunner.js +19 -0
  806. package/vscode/src/vs/sessions/browser/sessionActionViewItem.d.ts +7 -0
  807. package/vscode/src/vs/sessions/browser/sessionActionViewItem.js +27 -0
  808. package/vscode/src/vs/sessions/browser/sessionAgentMerge.d.ts +26 -0
  809. package/vscode/src/vs/sessions/browser/sessionAgentMerge.js +92 -0
  810. package/vscode/src/vs/sessions/browser/sessionConversationGroups.d.ts +8 -0
  811. package/vscode/src/vs/sessions/browser/sessionConversationGroups.js +31 -0
  812. package/vscode/src/vs/sessions/browser/sessionStatusIcon.d.ts +54 -0
  813. package/vscode/src/vs/sessions/browser/sessionStatusIcon.js +153 -0
  814. package/vscode/src/vs/sessions/browser/sessionsAuthGate.d.ts +77 -0
  815. package/vscode/src/vs/sessions/browser/sessionsAuthGate.js +49 -0
  816. package/vscode/src/vs/sessions/browser/sessionsSetUpService.service.d.ts +11 -0
  817. package/vscode/src/vs/sessions/browser/sessionsSetUpService.service.js +6 -0
  818. package/vscode/src/vs/sessions/browser/web.factory.d.ts +6 -0
  819. package/vscode/src/vs/sessions/browser/workbench.d.ts +456 -0
  820. package/vscode/src/vs/sessions/browser/workbench.js +2106 -0
  821. package/vscode/src/vs/sessions/browser/workbench.service.d.ts +48 -0
  822. package/vscode/src/vs/sessions/browser/workbench.service.js +7 -0
  823. package/vscode/src/vs/sessions/common/agentHostSessionWorkspace.d.ts +46 -0
  824. package/vscode/src/vs/sessions/common/agentHostSessionWorkspace.js +111 -0
  825. package/vscode/src/vs/sessions/common/agentHostSessionsProvider.d.ts +343 -0
  826. package/vscode/src/vs/sessions/common/agentHostSessionsProvider.js +88 -0
  827. package/vscode/src/vs/sessions/common/categories.d.ts +3 -0
  828. package/vscode/src/vs/sessions/common/categories.js +8 -0
  829. package/vscode/src/vs/sessions/common/contextkeys.d.ts +89 -0
  830. package/vscode/src/vs/sessions/common/contextkeys.js +196 -0
  831. package/vscode/src/vs/sessions/common/devContainerAgentHostService.d.ts +34 -0
  832. package/vscode/src/vs/sessions/common/devContainerAgentHostService.js +5 -0
  833. package/vscode/src/vs/sessions/common/devContainerAgentHostService.service.d.ts +15 -0
  834. package/vscode/src/vs/sessions/common/devContainerAgentHostService.service.js +6 -0
  835. package/vscode/src/vs/sessions/common/dockedEditorInput.d.ts +13 -0
  836. package/vscode/src/vs/sessions/common/dockedEditorInput.js +11 -0
  837. package/vscode/src/vs/sessions/common/layoutConstants.d.ts +2 -0
  838. package/vscode/src/vs/sessions/common/layoutConstants.js +6 -0
  839. package/vscode/src/vs/sessions/common/sessionCommands.d.ts +42 -0
  840. package/vscode/src/vs/sessions/common/sessionCommands.js +23 -0
  841. package/vscode/src/vs/sessions/common/sessionConfig.d.ts +11 -0
  842. package/vscode/src/vs/sessions/common/sessionConfig.js +10 -0
  843. package/vscode/src/vs/sessions/common/sessionLinks.d.ts +2 -0
  844. package/vscode/src/vs/sessions/common/sessionLinks.js +7 -0
  845. package/vscode/src/vs/sessions/common/sessionsTelemetry.d.ts +96 -0
  846. package/vscode/src/vs/sessions/common/sessionsTelemetry.js +117 -0
  847. package/vscode/src/vs/sessions/common/theme.d.ts +29 -0
  848. package/vscode/src/vs/sessions/common/theme.js +162 -0
  849. package/vscode/src/vs/sessions/common/workspaceSelection.d.ts +28 -0
  850. package/vscode/src/vs/sessions/common/workspaceSelection.js +19 -0
  851. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackAttachmentEntry.d.ts +29 -0
  852. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackAttachmentEntry.js +37 -0
  853. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackEditorUtils.d.ts +30 -0
  854. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackItemsBackend.d.ts +132 -0
  855. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackItemsBackend.js +394 -0
  856. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackModel.d.ts +93 -0
  857. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackModel.js +17 -0
  858. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.d.ts +212 -0
  859. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.js +29 -0
  860. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.service.d.ts +158 -0
  861. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.service.js +6 -0
  862. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/feedbackInputWidget.d.ts +73 -0
  863. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/feedbackInputWidget.js +210 -0
  864. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/media/agentFeedbackEditorInput.css +137 -0
  865. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/sessionEditorComments.d.ts +49 -0
  866. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/sessionEditorComments.js +11 -0
  867. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeView.d.ts +23 -0
  868. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeView.js +10 -0
  869. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.service.d.ts +31 -0
  870. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.service.js +6 -0
  871. package/vscode/src/vs/sessions/contrib/automations/browser/automationModelConfiguration.d.ts +21 -0
  872. package/vscode/src/vs/sessions/contrib/automations/browser/automationModelConfiguration.js +88 -0
  873. package/vscode/src/vs/sessions/contrib/automations/browser/automationService.d.ts +53 -0
  874. package/vscode/src/vs/sessions/contrib/automations/browser/automationService.js +893 -0
  875. package/vscode/src/vs/sessions/contrib/automations/common/automationStorageService.d.ts +6 -0
  876. package/vscode/src/vs/sessions/contrib/automations/common/automationStorageService.js +8 -0
  877. package/vscode/src/vs/sessions/contrib/automations/common/automationStorageService.service.d.ts +10 -0
  878. package/vscode/src/vs/sessions/contrib/automations/common/automationStorageService.service.js +6 -0
  879. package/vscode/src/vs/sessions/contrib/changes/browser/changesEditorLabels.d.ts +14 -0
  880. package/vscode/src/vs/sessions/contrib/changes/browser/changesEditorLabels.js +34 -0
  881. package/vscode/src/vs/sessions/contrib/changes/browser/changesSummaryWidget.d.ts +12 -0
  882. package/vscode/src/vs/sessions/contrib/changes/browser/changesSummaryWidget.js +74 -0
  883. package/vscode/src/vs/sessions/contrib/changes/browser/changesView.d.ts +198 -0
  884. package/vscode/src/vs/sessions/contrib/changes/browser/changesView.js +1969 -0
  885. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewRenderer.d.ts +79 -0
  886. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewRenderer.js +344 -0
  887. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewService.d.ts +63 -0
  888. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewService.js +426 -0
  889. package/vscode/src/vs/sessions/contrib/changes/browser/checksActions.d.ts +50 -0
  890. package/vscode/src/vs/sessions/contrib/changes/browser/checksActions.js +196 -0
  891. package/vscode/src/vs/sessions/contrib/changes/browser/checksViewModel.d.ts +8 -0
  892. package/vscode/src/vs/sessions/contrib/changes/browser/checksViewModel.js +18 -0
  893. package/vscode/src/vs/sessions/contrib/changes/browser/checksWidget.d.ts +63 -0
  894. package/vscode/src/vs/sessions/contrib/changes/browser/checksWidget.js +377 -0
  895. package/vscode/src/vs/sessions/contrib/changes/browser/createPullRequestChatRequest.d.ts +9 -0
  896. package/vscode/src/vs/sessions/contrib/changes/browser/createPullRequestChatRequest.js +59 -0
  897. package/vscode/src/vs/sessions/contrib/changes/browser/createPullRequestContextView.d.ts +27 -0
  898. package/vscode/src/vs/sessions/contrib/changes/browser/createPullRequestContextView.js +117 -0
  899. package/vscode/src/vs/sessions/contrib/changes/browser/createPullRequestWidget.d.ts +86 -0
  900. package/vscode/src/vs/sessions/contrib/changes/browser/createPullRequestWidget.js +682 -0
  901. package/vscode/src/vs/sessions/contrib/changes/browser/media/changesSummaryWidget.css +17 -0
  902. package/vscode/src/vs/sessions/contrib/changes/browser/media/changesView.css +358 -0
  903. package/vscode/src/vs/sessions/contrib/changes/browser/media/checksWidget.css +263 -0
  904. package/vscode/src/vs/sessions/contrib/changes/browser/media/createPullRequest.css +301 -0
  905. package/vscode/src/vs/sessions/contrib/changes/browser/media/sessionChangesEditor.css +349 -0
  906. package/vscode/src/vs/sessions/contrib/changes/browser/media/sessionChangesEditorInput.css +22 -0
  907. package/vscode/src/vs/sessions/contrib/changes/browser/sessionChangesEditor.d.ts +88 -0
  908. package/vscode/src/vs/sessions/contrib/changes/browser/sessionChangesEditor.js +418 -0
  909. package/vscode/src/vs/sessions/contrib/changes/browser/sessionChangesEditorInput.d.ts +49 -0
  910. package/vscode/src/vs/sessions/contrib/changes/browser/sessionChangesEditorInput.js +135 -0
  911. package/vscode/src/vs/sessions/contrib/changes/browser/sessionChangesService.d.ts +31 -0
  912. package/vscode/src/vs/sessions/contrib/changes/browser/sessionChangesService.js +155 -0
  913. package/vscode/src/vs/sessions/contrib/changes/common/changes.d.ts +48 -0
  914. package/vscode/src/vs/sessions/contrib/changes/common/changes.js +45 -0
  915. package/vscode/src/vs/sessions/contrib/changes/common/changesViewService.d.ts +32 -0
  916. package/vscode/src/vs/sessions/contrib/changes/common/changesViewService.service.d.ts +33 -0
  917. package/vscode/src/vs/sessions/contrib/changes/common/changesViewService.service.js +6 -0
  918. package/vscode/src/vs/sessions/contrib/changes/common/createPullRequestPreferences.d.ts +22 -0
  919. package/vscode/src/vs/sessions/contrib/changes/common/createPullRequestPreferences.js +47 -0
  920. package/vscode/src/vs/sessions/contrib/changes/common/pullRequestCreation.d.ts +56 -0
  921. package/vscode/src/vs/sessions/contrib/changes/common/pullRequestCreation.js +7 -0
  922. package/vscode/src/vs/sessions/contrib/changes/common/sessionChangesService.d.ts +12 -0
  923. package/vscode/src/vs/sessions/contrib/changes/common/sessionChangesService.service.d.ts +17 -0
  924. package/vscode/src/vs/sessions/contrib/changes/common/sessionChangesService.service.js +6 -0
  925. package/vscode/src/vs/sessions/contrib/chat/browser/agentHostInputCompletions.d.ts +125 -0
  926. package/vscode/src/vs/sessions/contrib/chat/browser/agentHostInputCompletions.js +520 -0
  927. package/vscode/src/vs/sessions/contrib/chat/browser/branchPicker.d.ts +71 -0
  928. package/vscode/src/vs/sessions/contrib/chat/browser/branchPicker.js +254 -0
  929. package/vscode/src/vs/sessions/contrib/chat/browser/chatViewStateService.service.d.ts +8 -0
  930. package/vscode/src/vs/sessions/contrib/chat/browser/chatViewStateService.service.js +6 -0
  931. package/vscode/src/vs/sessions/contrib/chat/browser/chatWidgetUtils.d.ts +7 -0
  932. package/vscode/src/vs/sessions/contrib/chat/browser/chatWidgetUtils.js +38 -0
  933. package/vscode/src/vs/sessions/contrib/chat/browser/checkboxChip.d.ts +38 -0
  934. package/vscode/src/vs/sessions/contrib/chat/browser/checkboxChip.js +100 -0
  935. package/vscode/src/vs/sessions/contrib/chat/browser/customizationHarnessService.d.ts +12 -0
  936. package/vscode/src/vs/sessions/contrib/chat/browser/customizationHarnessService.js +20 -0
  937. package/vscode/src/vs/sessions/contrib/chat/browser/externalSessionBanner.d.ts +48 -0
  938. package/vscode/src/vs/sessions/contrib/chat/browser/externalSessionBanner.js +321 -0
  939. package/vscode/src/vs/sessions/contrib/chat/browser/media/branchPicker.css +23 -0
  940. package/vscode/src/vs/sessions/contrib/chat/browser/media/chatInput.css +764 -0
  941. package/vscode/src/vs/sessions/contrib/chat/browser/media/chatInputMobile.css +52 -0
  942. package/vscode/src/vs/sessions/contrib/chat/browser/media/chatView.css +327 -0
  943. package/vscode/src/vs/sessions/contrib/chat/browser/media/chatWidget.css +547 -0
  944. package/vscode/src/vs/sessions/contrib/chat/browser/media/checkboxChip.css +30 -0
  945. package/vscode/src/vs/sessions/contrib/chat/browser/media/externalSessionBanner.css +78 -0
  946. package/vscode/src/vs/sessions/contrib/chat/browser/media/newChatInSession.css +130 -0
  947. package/vscode/src/vs/sessions/contrib/chat/browser/media/newSessionPromptOptions.css +218 -0
  948. package/vscode/src/vs/sessions/contrib/chat/browser/media/noAgentHostEmptyState.css +98 -0
  949. package/vscode/src/vs/sessions/contrib/chat/browser/media/voiceChatView.css +33 -0
  950. package/vscode/src/vs/sessions/contrib/chat/browser/mobile/mobileSessionTypePicker.d.ts +36 -0
  951. package/vscode/src/vs/sessions/contrib/chat/browser/mobile/mobileSessionTypePicker.js +137 -0
  952. package/vscode/src/vs/sessions/contrib/chat/browser/mobile/mobileWorkspacePickerSheet.d.ts +47 -0
  953. package/vscode/src/vs/sessions/contrib/chat/browser/mobile/mobileWorkspacePickerSheet.js +305 -0
  954. package/vscode/src/vs/sessions/contrib/chat/browser/modelPicker.d.ts +53 -0
  955. package/vscode/src/vs/sessions/contrib/chat/browser/modelPicker.js +189 -0
  956. package/vscode/src/vs/sessions/contrib/chat/browser/newChatContextAttachments.d.ts +81 -0
  957. package/vscode/src/vs/sessions/contrib/chat/browser/newChatContextAttachments.js +555 -0
  958. package/vscode/src/vs/sessions/contrib/chat/browser/newChatInSessionWidget.d.ts +37 -0
  959. package/vscode/src/vs/sessions/contrib/chat/browser/newChatInSessionWidget.js +195 -0
  960. package/vscode/src/vs/sessions/contrib/chat/browser/newChatInput.d.ts +247 -0
  961. package/vscode/src/vs/sessions/contrib/chat/browser/newChatInput.js +1806 -0
  962. package/vscode/src/vs/sessions/contrib/chat/browser/newChatInputPasteTarget.d.ts +31 -0
  963. package/vscode/src/vs/sessions/contrib/chat/browser/newChatInputPasteTarget.js +69 -0
  964. package/vscode/src/vs/sessions/contrib/chat/browser/newChatModelPicker.d.ts +14 -0
  965. package/vscode/src/vs/sessions/contrib/chat/browser/newChatModelPicker.js +27 -0
  966. package/vscode/src/vs/sessions/contrib/chat/browser/newChatModelPicker.service.d.ts +9 -0
  967. package/vscode/src/vs/sessions/contrib/chat/browser/newChatModelPicker.service.js +6 -0
  968. package/vscode/src/vs/sessions/contrib/chat/browser/newChatPickerTelemetry.d.ts +30 -0
  969. package/vscode/src/vs/sessions/contrib/chat/browser/newChatPickerTelemetry.js +15 -0
  970. package/vscode/src/vs/sessions/contrib/chat/browser/newChatVoice.d.ts +87 -0
  971. package/vscode/src/vs/sessions/contrib/chat/browser/newChatVoice.js +293 -0
  972. package/vscode/src/vs/sessions/contrib/chat/browser/newChatVoice.service.d.ts +23 -0
  973. package/vscode/src/vs/sessions/contrib/chat/browser/newChatVoice.service.js +6 -0
  974. package/vscode/src/vs/sessions/contrib/chat/browser/newChatWidget.d.ts +165 -0
  975. package/vscode/src/vs/sessions/contrib/chat/browser/newChatWidget.js +1006 -0
  976. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionComposerService.d.ts +84 -0
  977. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionComposerService.js +69 -0
  978. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionComposerService.service.d.ts +22 -0
  979. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionComposerService.service.js +6 -0
  980. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionConfigToolbars.d.ts +7 -0
  981. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionConfigToolbars.js +26 -0
  982. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionPromptOptions.d.ts +36 -0
  983. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionPromptOptions.js +217 -0
  984. package/vscode/src/vs/sessions/contrib/chat/browser/noAgentHostEmptyState.d.ts +20 -0
  985. package/vscode/src/vs/sessions/contrib/chat/browser/noAgentHostEmptyState.js +66 -0
  986. package/vscode/src/vs/sessions/contrib/chat/browser/promptTemplatePlaceholder.d.ts +21 -0
  987. package/vscode/src/vs/sessions/contrib/chat/browser/promptTemplatePlaceholder.js +134 -0
  988. package/vscode/src/vs/sessions/contrib/chat/browser/promptTypingAnimation.d.ts +22 -0
  989. package/vscode/src/vs/sessions/contrib/chat/browser/promptTypingAnimation.js +76 -0
  990. package/vscode/src/vs/sessions/contrib/chat/browser/responseSelectionResolver.d.ts +16 -0
  991. package/vscode/src/vs/sessions/contrib/chat/browser/responseSelectionResolver.js +84 -0
  992. package/vscode/src/vs/sessions/contrib/chat/browser/responseSelectionSideChatController.d.ts +79 -0
  993. package/vscode/src/vs/sessions/contrib/chat/browser/responseSelectionSideChatController.js +323 -0
  994. package/vscode/src/vs/sessions/contrib/chat/browser/sessionArchiveNudge.d.ts +55 -0
  995. package/vscode/src/vs/sessions/contrib/chat/browser/sessionArchiveNudge.js +333 -0
  996. package/vscode/src/vs/sessions/contrib/chat/browser/sessionArchiveNudge.service.d.ts +12 -0
  997. package/vscode/src/vs/sessions/contrib/chat/browser/sessionArchiveNudge.service.js +6 -0
  998. package/vscode/src/vs/sessions/contrib/chat/browser/sessionArtifacts.d.ts +64 -0
  999. package/vscode/src/vs/sessions/contrib/chat/browser/sessionArtifacts.js +347 -0
  1000. package/vscode/src/vs/sessions/contrib/chat/browser/sessionBackgroundActivitiesControl.d.ts +26 -0
  1001. package/vscode/src/vs/sessions/contrib/chat/browser/sessionBackgroundActivitiesControl.js +59 -0
  1002. package/vscode/src/vs/sessions/contrib/chat/browser/sessionBrowsersControl.d.ts +30 -0
  1003. package/vscode/src/vs/sessions/contrib/chat/browser/sessionBrowsersControl.js +141 -0
  1004. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbar.d.ts +95 -0
  1005. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbar.js +501 -0
  1006. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbarDebug.service.d.ts +11 -0
  1007. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbarDebug.service.js +6 -0
  1008. package/vscode/src/vs/sessions/contrib/chat/browser/sessionCustomizations.d.ts +17 -0
  1009. package/vscode/src/vs/sessions/contrib/chat/browser/sessionCustomizations.js +148 -0
  1010. package/vscode/src/vs/sessions/contrib/chat/browser/sessionModelPickerState.d.ts +26 -0
  1011. package/vscode/src/vs/sessions/contrib/chat/browser/sessionModelPickerState.js +41 -0
  1012. package/vscode/src/vs/sessions/contrib/chat/browser/sessionModelSelection.d.ts +84 -0
  1013. package/vscode/src/vs/sessions/contrib/chat/browser/sessionModelSelection.js +410 -0
  1014. package/vscode/src/vs/sessions/contrib/chat/browser/sessionModelSelection.service.d.ts +10 -0
  1015. package/vscode/src/vs/sessions/contrib/chat/browser/sessionModelSelection.service.js +6 -0
  1016. package/vscode/src/vs/sessions/contrib/chat/browser/sessionReferenceCompletions.d.ts +34 -0
  1017. package/vscode/src/vs/sessions/contrib/chat/browser/sessionReferenceCompletions.js +182 -0
  1018. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTaskRunner.service.d.ts +24 -0
  1019. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTaskRunner.service.js +6 -0
  1020. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTypePicker.d.ts +212 -0
  1021. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTypePicker.js +558 -0
  1022. package/vscode/src/vs/sessions/contrib/chat/browser/sessionWorkspaceFallback.d.ts +34 -0
  1023. package/vscode/src/vs/sessions/contrib/chat/browser/sessionWorkspaceFallback.js +81 -0
  1024. package/vscode/src/vs/sessions/contrib/chat/browser/sessionWorkspacePicker.d.ts +423 -0
  1025. package/vscode/src/vs/sessions/contrib/chat/browser/sessionWorkspacePicker.js +1926 -0
  1026. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsChatHistory.d.ts +1 -0
  1027. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsChatHistory.js +5 -0
  1028. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsTasksService.d.ts +126 -0
  1029. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsTasksService.js +454 -0
  1030. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsTasksService.service.d.ts +101 -0
  1031. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsTasksService.service.js +6 -0
  1032. package/vscode/src/vs/sessions/contrib/chat/browser/sideChatOrchestration.d.ts +13 -0
  1033. package/vscode/src/vs/sessions/contrib/chat/browser/sideChatOrchestration.js +14 -0
  1034. package/vscode/src/vs/sessions/contrib/chat/browser/slashCommands.d.ts +50 -0
  1035. package/vscode/src/vs/sessions/contrib/chat/browser/slashCommands.js +353 -0
  1036. package/vscode/src/vs/sessions/contrib/chat/browser/variableCompletions.d.ts +49 -0
  1037. package/vscode/src/vs/sessions/contrib/chat/browser/variableCompletions.js +326 -0
  1038. package/vscode/src/vs/sessions/contrib/chat/browser/voiceInputDecorations.d.ts +2 -0
  1039. package/vscode/src/vs/sessions/contrib/chat/browser/voiceInputDecorations.js +6 -0
  1040. package/vscode/src/vs/sessions/contrib/chat/browser/webWorkspacePicker.d.ts +47 -0
  1041. package/vscode/src/vs/sessions/contrib/chat/browser/webWorkspacePicker.js +197 -0
  1042. package/vscode/src/vs/sessions/contrib/chat/common/constants.d.ts +3 -0
  1043. package/vscode/src/vs/sessions/contrib/chat/common/constants.js +7 -0
  1044. package/vscode/src/vs/sessions/contrib/chat/common/newChatContextIds.d.ts +12 -0
  1045. package/vscode/src/vs/sessions/contrib/chat/common/newChatContextIds.js +21 -0
  1046. package/vscode/src/vs/sessions/contrib/codeReview/browser/codeReviewService.d.ts +73 -0
  1047. package/vscode/src/vs/sessions/contrib/codeReview/browser/codeReviewService.js +216 -0
  1048. package/vscode/src/vs/sessions/contrib/codeReview/browser/codeReviewService.service.d.ts +32 -0
  1049. package/vscode/src/vs/sessions/contrib/codeReview/browser/codeReviewService.service.js +6 -0
  1050. package/vscode/src/vs/sessions/contrib/editor/browser/diffEditor.sessions.contribution.d.ts +54 -0
  1051. package/vscode/src/vs/sessions/contrib/editor/browser/diffEditor.sessions.contribution.js +211 -0
  1052. package/vscode/src/vs/sessions/contrib/editor/browser/diffEditorOptionsService.d.ts +23 -0
  1053. package/vscode/src/vs/sessions/contrib/editor/browser/diffEditorOptionsService.js +62 -0
  1054. package/vscode/src/vs/sessions/contrib/editor/common/diffEditorOptionsService.d.ts +6 -0
  1055. package/vscode/src/vs/sessions/contrib/editor/common/diffEditorOptionsService.js +9 -0
  1056. package/vscode/src/vs/sessions/contrib/editor/common/diffEditorOptionsService.service.d.ts +15 -0
  1057. package/vscode/src/vs/sessions/contrib/editor/common/diffEditorOptionsService.service.js +6 -0
  1058. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubChangesFetcher.d.ts +10 -0
  1059. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubChangesFetcher.js +20 -0
  1060. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubIssueFetcher.d.ts +7 -0
  1061. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubIssueFetcher.js +39 -0
  1062. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPRCIFetcher.d.ts +29 -0
  1063. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPRCIFetcher.js +113 -0
  1064. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPRFetcher.d.ts +21 -0
  1065. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPRFetcher.js +276 -0
  1066. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPullRequestContextFetcher.d.ts +8 -0
  1067. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPullRequestContextFetcher.js +80 -0
  1068. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPullRequestsFetcher.d.ts +10 -0
  1069. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPullRequestsFetcher.js +109 -0
  1070. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubRecentUserWorkFetcher.d.ts +34 -0
  1071. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubRecentUserWorkFetcher.js +160 -0
  1072. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubRepositoryFetcher.d.ts +11 -0
  1073. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubRepositoryFetcher.js +25 -0
  1074. package/vscode/src/vs/sessions/contrib/github/browser/githubApiClient.d.ts +45 -0
  1075. package/vscode/src/vs/sessions/contrib/github/browser/githubApiClient.js +189 -0
  1076. package/vscode/src/vs/sessions/contrib/github/browser/githubService.d.ts +57 -0
  1077. package/vscode/src/vs/sessions/contrib/github/browser/githubService.js +200 -0
  1078. package/vscode/src/vs/sessions/contrib/github/browser/githubService.service.d.ts +61 -0
  1079. package/vscode/src/vs/sessions/contrib/github/browser/githubService.service.js +6 -0
  1080. package/vscode/src/vs/sessions/contrib/github/browser/issueHover.d.ts +10 -0
  1081. package/vscode/src/vs/sessions/contrib/github/browser/issueHover.js +57 -0
  1082. package/vscode/src/vs/sessions/contrib/github/browser/media/issueHover.css +59 -0
  1083. package/vscode/src/vs/sessions/contrib/github/browser/media/pullRequestHover.css +88 -0
  1084. package/vscode/src/vs/sessions/contrib/github/browser/models/githubIssueModel.d.ts +77 -0
  1085. package/vscode/src/vs/sessions/contrib/github/browser/models/githubIssueModel.js +119 -0
  1086. package/vscode/src/vs/sessions/contrib/github/browser/models/githubPullRequestCIModel.d.ts +78 -0
  1087. package/vscode/src/vs/sessions/contrib/github/browser/models/githubPullRequestCIModel.js +188 -0
  1088. package/vscode/src/vs/sessions/contrib/github/browser/models/githubPullRequestModel.d.ts +51 -0
  1089. package/vscode/src/vs/sessions/contrib/github/browser/models/githubPullRequestModel.js +133 -0
  1090. package/vscode/src/vs/sessions/contrib/github/browser/models/githubPullRequestReviewThreadsModel.d.ts +54 -0
  1091. package/vscode/src/vs/sessions/contrib/github/browser/models/githubPullRequestReviewThreadsModel.js +128 -0
  1092. package/vscode/src/vs/sessions/contrib/github/browser/models/githubRepositoryModel.d.ts +30 -0
  1093. package/vscode/src/vs/sessions/contrib/github/browser/models/githubRepositoryModel.js +66 -0
  1094. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestHover.d.ts +10 -0
  1095. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestHover.js +62 -0
  1096. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestIconCache.d.ts +18 -0
  1097. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestIconCache.js +72 -0
  1098. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestIconCache.service.d.ts +26 -0
  1099. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestIconCache.service.js +6 -0
  1100. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestIconStatus.d.ts +38 -0
  1101. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestIconStatus.js +82 -0
  1102. package/vscode/src/vs/sessions/contrib/github/common/sessionLifecycleSettings.d.ts +5 -0
  1103. package/vscode/src/vs/sessions/contrib/github/common/sessionLifecycleSettings.js +7 -0
  1104. package/vscode/src/vs/sessions/contrib/github/common/types.d.ts +215 -0
  1105. package/vscode/src/vs/sessions/contrib/github/common/types.js +105 -0
  1106. package/vscode/src/vs/sessions/contrib/github/common/utils.d.ts +23 -0
  1107. package/vscode/src/vs/sessions/contrib/github/common/utils.js +46 -0
  1108. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/sessionArchiveTour.d.ts +5 -0
  1109. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/sessionArchiveTour.js +43 -0
  1110. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostAutomationStore.d.ts +104 -0
  1111. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostAutomationStore.js +1413 -0
  1112. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostDiffs.d.ts +51 -0
  1113. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostDiffs.js +59 -0
  1114. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPullRequestCreation.d.ts +19 -0
  1115. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPullRequestCreation.js +70 -0
  1116. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionArtifacts.d.ts +25 -0
  1117. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionArtifacts.js +123 -0
  1118. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionChangesets.d.ts +32 -0
  1119. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionChangesets.js +470 -0
  1120. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionCustomizations.d.ts +65 -0
  1121. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionCustomizations.js +240 -0
  1122. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionFiles.d.ts +127 -0
  1123. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionFiles.js +315 -0
  1124. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSkillButtons.d.ts +33 -0
  1125. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSkillButtons.js +151 -0
  1126. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/baseAgentHostSessionsProvider.d.ts +1416 -0
  1127. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/baseAgentHostSessionsProvider.js +5017 -0
  1128. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/reconnectableAgentHostAutomationStore.d.ts +56 -0
  1129. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/reconnectableAgentHostAutomationStore.js +300 -0
  1130. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/browserTunnelAgentHostService.d.ts +102 -0
  1131. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/browserTunnelAgentHostService.js +543 -0
  1132. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxAgentHostService.d.ts +43 -0
  1133. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxAgentHostService.js +264 -0
  1134. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxApiService.d.ts +114 -0
  1135. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxApiService.js +593 -0
  1136. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxCredentialRefresh.d.ts +71 -0
  1137. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxCredentialRefresh.js +147 -0
  1138. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxTelemetry.d.ts +43 -0
  1139. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxTelemetry.js +91 -0
  1140. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxTelemetry.service.d.ts +28 -0
  1141. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxTelemetry.service.js +6 -0
  1142. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devTunnelsModule.js +27377 -0
  1143. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devTunnelsWebLoader.js +10 -0
  1144. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.service.d.ts +20 -0
  1145. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.service.js +6 -0
  1146. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostSessionsProvider.d.ts +290 -0
  1147. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostSessionsProvider.js +700 -0
  1148. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteHostOptions.d.ts +156 -0
  1149. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteHostOptions.js +421 -0
  1150. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/tunnelAgentHostStorage.d.ts +29 -0
  1151. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/tunnelAgentHostStorage.js +117 -0
  1152. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/webTunnelAgentHostService.contribution.d.ts +45 -0
  1153. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/webTunnelAgentHostService.contribution.js +104 -0
  1154. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/webTunnelAgentHostService.d.ts +61 -0
  1155. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/webTunnelAgentHostService.js +351 -0
  1156. package/vscode/src/vs/sessions/contrib/sessionInputBanners/browser/media/sessionInputBanners.css +269 -0
  1157. package/vscode/src/vs/sessions/contrib/sessionInputBanners/browser/sessionInputBannerWidget.d.ts +73 -0
  1158. package/vscode/src/vs/sessions/contrib/sessionInputBanners/browser/sessionInputBannerWidget.js +356 -0
  1159. package/vscode/src/vs/sessions/contrib/sessionInputBanners/browser/sessionInputBanners.d.ts +63 -0
  1160. package/vscode/src/vs/sessions/contrib/sessionInputBanners/browser/sessionInputBanners.js +550 -0
  1161. package/vscode/src/vs/sessions/contrib/sessions/browser/agentHostShortcutsWidget.d.ts +18 -0
  1162. package/vscode/src/vs/sessions/contrib/sessions/browser/agentHostShortcutsWidget.js +39 -0
  1163. package/vscode/src/vs/sessions/contrib/sessions/browser/aiCustomizationShortcutsWidget.d.ts +47 -0
  1164. package/vscode/src/vs/sessions/contrib/sessions/browser/aiCustomizationShortcutsWidget.js +237 -0
  1165. package/vscode/src/vs/sessions/contrib/sessions/browser/automationsConstants.d.ts +1 -0
  1166. package/vscode/src/vs/sessions/contrib/sessions/browser/automationsConstants.js +5 -0
  1167. package/vscode/src/vs/sessions/contrib/sessions/browser/automationsNewBadge.d.ts +42 -0
  1168. package/vscode/src/vs/sessions/contrib/sessions/browser/automationsNewBadge.js +196 -0
  1169. package/vscode/src/vs/sessions/contrib/sessions/browser/customizationsToolbar.contribution.d.ts +85 -0
  1170. package/vscode/src/vs/sessions/contrib/sessions/browser/customizationsToolbar.contribution.js +335 -0
  1171. package/vscode/src/vs/sessions/contrib/sessions/browser/media/agentHostToolbar.css +42 -0
  1172. package/vscode/src/vs/sessions/contrib/sessions/browser/media/customizationsToolbar.css +192 -0
  1173. package/vscode/src/vs/sessions/contrib/sessions/browser/media/sessionsList.css +1111 -0
  1174. package/vscode/src/vs/sessions/contrib/sessions/browser/media/sessionsViewPane.css +242 -0
  1175. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionHoverContent.d.ts +23 -0
  1176. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionHoverContent.js +76 -0
  1177. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsLifecycleTracker.d.ts +191 -0
  1178. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsLifecycleTracker.js +514 -0
  1179. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsList.d.ts +641 -0
  1180. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsList.js +3939 -0
  1181. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsView.d.ts +88 -0
  1182. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsView.js +721 -0
  1183. package/vscode/src/vs/sessions/services/agentHostFilter/common/agentHostFilter.d.ts +47 -0
  1184. package/vscode/src/vs/sessions/services/agentHostFilter/common/agentHostFilter.js +10 -0
  1185. package/vscode/src/vs/sessions/services/agentHostFilter/common/agentHostFilter.service.d.ts +71 -0
  1186. package/vscode/src/vs/sessions/services/agentHostFilter/common/agentHostFilter.service.js +6 -0
  1187. package/vscode/src/vs/sessions/services/chatBackground/browser/chatBackgroundRenderer.d.ts +23 -0
  1188. package/vscode/src/vs/sessions/services/chatBackground/browser/chatBackgroundRenderer.js +192 -0
  1189. package/vscode/src/vs/sessions/services/chatBackground/browser/chatBackgroundService.d.ts +108 -0
  1190. package/vscode/src/vs/sessions/services/chatBackground/browser/chatBackgroundService.js +258 -0
  1191. package/vscode/src/vs/sessions/services/chatBackground/browser/chatBackgroundService.service.d.ts +14 -0
  1192. package/vscode/src/vs/sessions/services/chatBackground/browser/chatBackgroundService.service.js +6 -0
  1193. package/vscode/src/vs/sessions/services/chatBackground/browser/media/chatBackground.css +47 -0
  1194. package/vscode/src/vs/sessions/services/chatView/browser/chatViewFactory.service.d.ts +21 -0
  1195. package/vscode/src/vs/sessions/services/chatView/browser/chatViewFactory.service.js +6 -0
  1196. package/vscode/src/vs/sessions/services/customView/browser/customViewGridPartService.service.d.ts +14 -0
  1197. package/vscode/src/vs/sessions/services/customView/browser/customViewGridPartService.service.js +6 -0
  1198. package/vscode/src/vs/sessions/services/customView/browser/customViewService.service.d.ts +21 -0
  1199. package/vscode/src/vs/sessions/services/customView/browser/customViewService.service.js +6 -0
  1200. package/vscode/src/vs/sessions/services/sessions/browser/gitHubRepositoryResolver.d.ts +9 -0
  1201. package/vscode/src/vs/sessions/services/sessions/browser/gitHubRepositoryResolver.js +115 -0
  1202. package/vscode/src/vs/sessions/services/sessions/browser/sessionContext.d.ts +23 -0
  1203. package/vscode/src/vs/sessions/services/sessions/browser/sessionContext.js +19 -0
  1204. package/vscode/src/vs/sessions/services/sessions/browser/sessionContext.service.d.ts +26 -0
  1205. package/vscode/src/vs/sessions/services/sessions/browser/sessionContext.service.js +6 -0
  1206. package/vscode/src/vs/sessions/services/sessions/browser/sessionGroupsService.service.d.ts +51 -0
  1207. package/vscode/src/vs/sessions/services/sessions/browser/sessionGroupsService.service.js +6 -0
  1208. package/vscode/src/vs/sessions/services/sessions/browser/sessionOpenTelemetryService.service.d.ts +14 -0
  1209. package/vscode/src/vs/sessions/services/sessions/browser/sessionOpenTelemetryService.service.js +6 -0
  1210. package/vscode/src/vs/sessions/services/sessions/browser/sessionReference.d.ts +20 -0
  1211. package/vscode/src/vs/sessions/services/sessions/browser/sessionReference.js +30 -0
  1212. package/vscode/src/vs/sessions/services/sessions/browser/sessionSectionOrderService.service.d.ts +48 -0
  1213. package/vscode/src/vs/sessions/services/sessions/browser/sessionSectionOrderService.service.js +6 -0
  1214. package/vscode/src/vs/sessions/services/sessions/browser/sessionsListModelService.service.d.ts +56 -0
  1215. package/vscode/src/vs/sessions/services/sessions/browser/sessionsListModelService.service.js +6 -0
  1216. package/vscode/src/vs/sessions/services/sessions/browser/sessionsPartService.d.ts +9 -0
  1217. package/vscode/src/vs/sessions/services/sessions/browser/sessionsPartService.service.d.ts +58 -0
  1218. package/vscode/src/vs/sessions/services/sessions/browser/sessionsPartService.service.js +6 -0
  1219. package/vscode/src/vs/sessions/services/sessions/browser/sessionsProvidersService.service.d.ts +17 -0
  1220. package/vscode/src/vs/sessions/services/sessions/browser/sessionsProvidersService.service.js +6 -0
  1221. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecentWorkspacesService.d.ts +53 -0
  1222. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecentWorkspacesService.js +411 -0
  1223. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecentWorkspacesService.service.d.ts +32 -0
  1224. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecentWorkspacesService.service.js +6 -0
  1225. package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.service.d.ts +184 -0
  1226. package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.service.js +6 -0
  1227. package/vscode/src/vs/sessions/services/sessions/browser/sessionsWindowUsageService.service.d.ts +6 -0
  1228. package/vscode/src/vs/sessions/services/sessions/browser/sessionsWindowUsageService.service.js +6 -0
  1229. package/vscode/src/vs/sessions/services/sessions/common/session.d.ts +868 -0
  1230. package/vscode/src/vs/sessions/services/sessions/common/session.js +265 -0
  1231. package/vscode/src/vs/sessions/services/sessions/common/sessionChangesStatsCache.d.ts +36 -0
  1232. package/vscode/src/vs/sessions/services/sessions/common/sessionChangesStatsCache.js +130 -0
  1233. package/vscode/src/vs/sessions/services/sessions/common/sessionChangesStatsCache.service.d.ts +22 -0
  1234. package/vscode/src/vs/sessions/services/sessions/common/sessionChangesStatsCache.service.js +6 -0
  1235. package/vscode/src/vs/sessions/services/sessions/common/sessionsManagement.d.ts +208 -0
  1236. package/vscode/src/vs/sessions/services/sessions/common/sessionsManagement.js +17 -0
  1237. package/vscode/src/vs/sessions/services/sessions/common/sessionsManagement.service.d.ts +316 -0
  1238. package/vscode/src/vs/sessions/services/sessions/common/sessionsManagement.service.js +6 -0
  1239. package/vscode/src/vs/sessions/services/sessions/common/sessionsProvider.d.ts +471 -0
  1240. package/vscode/src/vs/sessions/sessions.web.main.internal.d.ts +6 -0
  1241. package/vscode/src/vs/workbench/api/browser/mainThreadDocuments.js +1 -1
  1242. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDto.d.ts +17 -0
  1243. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDto.js +131 -0
  1244. package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +12 -12
  1245. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +9 -7
  1246. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +3 -3
  1247. package/vscode/src/vs/workbench/api/common/extHostAgentEditorComments.js +2 -2
  1248. package/vscode/src/vs/workbench/api/common/extHostApiCommands.js +24 -24
  1249. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +17 -14
  1250. package/vscode/src/vs/workbench/api/common/extHostBrowsers.js +1 -1
  1251. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +24 -22
  1252. package/vscode/src/vs/workbench/api/common/extHostChatDebug.js +14 -14
  1253. package/vscode/src/vs/workbench/api/common/extHostChatInputNotification.js +2 -2
  1254. package/vscode/src/vs/workbench/api/common/extHostChatSessions.js +20 -20
  1255. package/vscode/src/vs/workbench/api/common/extHostCodeMapper.js +4 -4
  1256. package/vscode/src/vs/workbench/api/common/extHostCommands.js +6 -6
  1257. package/vscode/src/vs/workbench/api/common/extHostComments.js +7 -7
  1258. package/vscode/src/vs/workbench/api/common/extHostDataChannels.js +2 -2
  1259. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +7 -7
  1260. package/vscode/src/vs/workbench/api/common/extHostDecorations.js +4 -4
  1261. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +5 -5
  1262. package/vscode/src/vs/workbench/api/common/extHostDialogs.js +1 -1
  1263. package/vscode/src/vs/workbench/api/common/extHostDocuments.js +4 -4
  1264. package/vscode/src/vs/workbench/api/common/extHostDocumentsAndEditors.js +3 -3
  1265. package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +10 -10
  1266. package/vscode/src/vs/workbench/api/common/extHostExtensionActivator.js +5 -5
  1267. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +15 -13
  1268. package/vscode/src/vs/workbench/api/common/extHostFileSystemEventService.js +11 -11
  1269. package/vscode/src/vs/workbench/api/common/extHostGitExtensionService.js +10 -10
  1270. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +67 -62
  1271. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +2 -2
  1272. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +22 -15
  1273. package/vscode/src/vs/workbench/api/common/extHostLogService.js +1 -1
  1274. package/vscode/src/vs/workbench/api/common/extHostLoggerService.js +5 -1
  1275. package/vscode/src/vs/workbench/api/common/extHostMcp.js +5 -5
  1276. package/vscode/src/vs/workbench/api/common/extHostMemento.js +1 -1
  1277. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +64 -54
  1278. package/vscode/src/vs/workbench/api/common/extHostNotebookDocument.js +8 -8
  1279. package/vscode/src/vs/workbench/api/common/extHostNotebookEditor.js +1 -1
  1280. package/vscode/src/vs/workbench/api/common/extHostNotebookEditors.js +2 -2
  1281. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +12 -12
  1282. package/vscode/src/vs/workbench/api/common/extHostQuickDiff.js +2 -2
  1283. package/vscode/src/vs/workbench/api/common/extHostQuickOpen.js +7 -7
  1284. package/vscode/src/vs/workbench/api/common/extHostSCM.js +16 -16
  1285. package/vscode/src/vs/workbench/api/common/extHostSearch.js +3 -3
  1286. package/vscode/src/vs/workbench/api/common/extHostSecrets.js +2 -2
  1287. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +2 -2
  1288. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -1
  1289. package/vscode/src/vs/workbench/api/common/extHostTerminalService.d.ts +1 -1
  1290. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +4 -4
  1291. package/vscode/src/vs/workbench/api/common/extHostTerminalShellIntegration.js +2 -2
  1292. package/vscode/src/vs/workbench/api/common/extHostTestItem.js +4 -4
  1293. package/vscode/src/vs/workbench/api/common/extHostTesting.js +28 -25
  1294. package/vscode/src/vs/workbench/api/common/extHostTextEditor.js +5 -5
  1295. package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +9 -9
  1296. package/vscode/src/vs/workbench/api/common/extHostTimeline.js +1 -1
  1297. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +21 -19
  1298. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +11 -9
  1299. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +112 -111
  1300. package/vscode/src/vs/workbench/api/common/extHostTypes/snippetString.js +1 -1
  1301. package/vscode/src/vs/workbench/api/common/extHostTypes.js +5 -5
  1302. package/vscode/src/vs/workbench/api/common/extHostWebview.js +4 -1
  1303. package/vscode/src/vs/workbench/api/common/extHostWebviewMessaging.js +4 -4
  1304. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +11 -11
  1305. package/vscode/src/vs/workbench/api/common/extHostXaaAuthProvider.js +1 -1
  1306. package/vscode/src/vs/workbench/api/common/extensionHostMain.js +2 -2
  1307. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +20 -20
  1308. package/vscode/src/vs/workbench/api/worker/extensionHostWorker.js +4 -2
  1309. package/vscode/src/vs/workbench/browser/actions/developerActions.js +69 -60
  1310. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +144 -144
  1311. package/vscode/src/vs/workbench/browser/actions/policyDiagnosticsMarkdown.js +5 -1
  1312. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +6 -6
  1313. package/vscode/src/vs/workbench/browser/actions/widgetNavigationCommands.js +16 -14
  1314. package/vscode/src/vs/workbench/browser/actions/windowActions.js +31 -31
  1315. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +23 -23
  1316. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +10 -10
  1317. package/vscode/src/vs/workbench/browser/animatedCounterWidget.d.ts +31 -0
  1318. package/vscode/src/vs/workbench/browser/animatedCounterWidget.js +102 -0
  1319. package/vscode/src/vs/workbench/browser/chatChangesPill.d.ts +29 -0
  1320. package/vscode/src/vs/workbench/browser/chatChangesPill.js +84 -0
  1321. package/vscode/src/vs/workbench/browser/chatDropdownPill.d.ts +95 -0
  1322. package/vscode/src/vs/workbench/browser/chatDropdownPill.js +315 -0
  1323. package/vscode/src/vs/workbench/browser/chatPills.d.ts +167 -0
  1324. package/vscode/src/vs/workbench/browser/chatPills.js +450 -0
  1325. package/vscode/src/vs/workbench/browser/chatResourcePill.d.ts +21 -0
  1326. package/vscode/src/vs/workbench/browser/chatResourcePill.js +67 -0
  1327. package/vscode/src/vs/workbench/browser/dnd.js +20 -18
  1328. package/vscode/src/vs/workbench/browser/editor.js +5 -5
  1329. package/vscode/src/vs/workbench/browser/labels.js +4 -4
  1330. package/vscode/src/vs/workbench/browser/media/animatedCounterWidget.css +21 -0
  1331. package/vscode/src/vs/workbench/browser/media/chatPills.css +268 -0
  1332. package/vscode/src/vs/workbench/browser/part.js +2 -2
  1333. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +25 -25
  1334. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +25 -25
  1335. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +5 -5
  1336. package/vscode/src/vs/workbench/browser/parts/compositeBar.js +13 -13
  1337. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +14 -14
  1338. package/vscode/src/vs/workbench/browser/parts/compositePart.js +4 -4
  1339. package/vscode/src/vs/workbench/browser/parts/dialogs/dialog.js +2 -2
  1340. package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +3 -3
  1341. package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +1 -1
  1342. package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +3 -3
  1343. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +38 -38
  1344. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +18 -18
  1345. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +2 -2
  1346. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +7 -7
  1347. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +157 -151
  1348. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +35 -35
  1349. package/vscode/src/vs/workbench/browser/parts/editor/editorCommandsContext.js +4 -4
  1350. package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +6 -6
  1351. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +15 -15
  1352. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +12 -12
  1353. package/vscode/src/vs/workbench/browser/parts/editor/editorHeaderControl.js +3 -3
  1354. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +2 -2
  1355. package/vscode/src/vs/workbench/browser/parts/editor/editorPart.js +9 -9
  1356. package/vscode/src/vs/workbench/browser/parts/editor/editorParts.js +15 -15
  1357. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +13 -13
  1358. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +11 -11
  1359. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +78 -76
  1360. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +8 -8
  1361. package/vscode/src/vs/workbench/browser/parts/editor/editorTitleControl.js +1 -1
  1362. package/vscode/src/vs/workbench/browser/parts/editor/editorTypePicker.js +12 -12
  1363. package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +10 -6
  1364. package/vscode/src/vs/workbench/browser/parts/editor/modalEditorPart.js +6 -6
  1365. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +10 -10
  1366. package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.js +1 -1
  1367. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +6 -3
  1368. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +1 -1
  1369. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +1 -1
  1370. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +3 -3
  1371. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +1 -1
  1372. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +21 -21
  1373. package/vscode/src/vs/workbench/browser/parts/notifications/notificationAccessibleView.js +3 -3
  1374. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsActions.js +23 -23
  1375. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +3 -3
  1376. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +11 -9
  1377. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +15 -15
  1378. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsList.js +7 -7
  1379. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +13 -13
  1380. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +4 -4
  1381. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +4 -4
  1382. package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.js +20 -20
  1383. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +5 -5
  1384. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +28 -28
  1385. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +4 -4
  1386. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarActions.js +3 -3
  1387. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +2 -2
  1388. package/vscode/src/vs/workbench/browser/parts/titlebar/media/titlebarpart.css +541 -0
  1389. package/vscode/src/vs/workbench/browser/parts/titlebar/menubar.contribution.js +78 -0
  1390. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +12 -12
  1391. package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarActions.js +15 -15
  1392. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +2 -2
  1393. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +1 -1
  1394. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +25 -23
  1395. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +5 -5
  1396. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +7 -7
  1397. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +17 -17
  1398. package/vscode/src/vs/workbench/browser/quickaccess.js +1 -1
  1399. package/vscode/src/vs/workbench/browser/style.js +1 -1
  1400. package/vscode/src/vs/workbench/browser/window.js +14 -14
  1401. package/vscode/src/vs/workbench/browser/workbench.contribution.js +232 -232
  1402. package/vscode/src/vs/workbench/browser/workbench.zenMode.contribution.d.ts +1 -0
  1403. package/vscode/src/vs/workbench/browser/workbench.zenMode.contribution.js +140 -0
  1404. package/vscode/src/vs/workbench/common/chatPullRequest.d.ts +19 -0
  1405. package/vscode/src/vs/workbench/common/chatPullRequest.js +65 -0
  1406. package/vscode/src/vs/workbench/common/configuration.js +17 -14
  1407. package/vscode/src/vs/workbench/common/contextkeys.js +140 -139
  1408. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +1 -1
  1409. package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +4 -4
  1410. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +1 -1
  1411. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +1 -1
  1412. package/vscode/src/vs/workbench/common/editor.js +6 -6
  1413. package/vscode/src/vs/workbench/common/notifications.js +1 -1
  1414. package/vscode/src/vs/workbench/common/resources.js +1 -1
  1415. package/vscode/src/vs/workbench/common/theme.js +199 -199
  1416. package/vscode/src/vs/workbench/common/views.js +4 -4
  1417. package/vscode/src/vs/workbench/common/views.service.d.ts +1 -1
  1418. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +232 -228
  1419. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +12 -12
  1420. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/voiceModeOnboarding.service.d.ts +1 -1
  1421. package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoice.js +5 -5
  1422. package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoice.service.d.ts +1 -1
  1423. package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoiceColors.js +2 -2
  1424. package/vscode/src/vs/workbench/contrib/browserView/common/browserEditorInput.js +1 -1
  1425. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.js +11 -11
  1426. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.service.d.ts +1 -1
  1427. package/vscode/src/vs/workbench/contrib/browserView/common/browserZoomService.service.d.ts +1 -1
  1428. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/bulkCellEdits.js +3 -3
  1429. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/conflicts.d.ts +16 -0
  1430. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/conflicts.js +73 -0
  1431. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEdit.contribution.d.ts +1 -0
  1432. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEdit.contribution.js +311 -0
  1433. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEdit.css +104 -0
  1434. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPane.d.ts +64 -0
  1435. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPane.js +391 -0
  1436. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPreview.d.ts +88 -0
  1437. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPreview.js +393 -0
  1438. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditTree.d.ts +132 -0
  1439. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditTree.js +630 -0
  1440. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.d.ts +17 -0
  1441. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +220 -0
  1442. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +65 -65
  1443. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.d.ts +59 -0
  1444. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.js +482 -0
  1445. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.d.ts +86 -0
  1446. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +600 -0
  1447. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.d.ts +2 -0
  1448. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +60 -0
  1449. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.d.ts +89 -0
  1450. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +928 -0
  1451. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.d.ts +20 -0
  1452. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +246 -0
  1453. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatModelFeedbackSurveyActions.d.ts +22 -0
  1454. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatModelFeedbackSurveyActions.js +119 -0
  1455. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSpeechToTextActions.d.ts +58 -0
  1456. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSpeechToTextActions.js +341 -0
  1457. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.d.ts +3 -0
  1458. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +368 -0
  1459. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.d.ts +15 -0
  1460. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +211 -0
  1461. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +22 -0
  1462. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +712 -0
  1463. package/vscode/src/vs/workbench/contrib/chat/browser/actions/configureVoiceInstructionsAction.d.ts +3 -0
  1464. package/vscode/src/vs/workbench/contrib/chat/browser/actions/configureVoiceInstructionsAction.js +89 -0
  1465. package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.service.d.ts +1 -1
  1466. package/vscode/src/vs/workbench/contrib/chat/browser/agentHostCompletionAction.d.ts +30 -0
  1467. package/vscode/src/vs/workbench/contrib/chat/browser/agentHostCompletionAction.js +37 -0
  1468. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.d.ts +3 -3
  1469. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +12 -12
  1470. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +30 -0
  1471. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.js +9 -0
  1472. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.service.d.ts +2 -2
  1473. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostByokLmHandler.d.ts +50 -0
  1474. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostByokLmHandler.js +479 -0
  1475. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.contribution.d.ts +45 -0
  1476. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.contribution.js +137 -0
  1477. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.d.ts +156 -0
  1478. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.js +1053 -0
  1479. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatReferenceAttachment.d.ts +20 -0
  1480. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatReferenceAttachment.js +35 -0
  1481. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.service.d.ts +2 -3
  1482. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostDownloadProgress.d.ts +35 -0
  1483. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostDownloadProgress.js +73 -0
  1484. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostFolderPickerActionItem.d.ts +50 -0
  1485. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostFolderPickerActionItem.js +189 -0
  1486. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostFolderPickerTip.d.ts +7 -0
  1487. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostFolderPickerTip.js +55 -0
  1488. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostGenericConfigChips.d.ts +47 -0
  1489. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostGenericConfigChips.js +183 -0
  1490. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostImportConversationStore.service.d.ts +1 -1
  1491. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostModePickerPresentation.d.ts +37 -0
  1492. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostModePickerPresentation.js +230 -0
  1493. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.d.ts +101 -0
  1494. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.js +164 -0
  1495. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.service.d.ts +1 -2
  1496. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostProtectedResourcesService.service.d.ts +1 -1
  1497. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSdkSetupNotification.d.ts +110 -0
  1498. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSdkSetupNotification.js +279 -0
  1499. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionReferenceAttachment.d.ts +12 -0
  1500. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionReferenceAttachment.js +76 -0
  1501. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionUri.d.ts +2 -0
  1502. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionUri.js +21 -0
  1503. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.service.d.ts +1 -1
  1504. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectorySynchronizer.service.d.ts +1 -1
  1505. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostShellInitSynchronizer.service.d.ts +2 -2
  1506. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSnapshotController.d.ts +116 -0
  1507. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSnapshotController.js +348 -0
  1508. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.d.ts +51 -0
  1509. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.js +167 -0
  1510. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.service.d.ts +1 -1
  1511. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.service.d.ts +1 -2
  1512. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/importLocalConversationToAgentSession.d.ts +14 -0
  1513. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/importLocalConversationToAgentSession.js +218 -0
  1514. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/media/agentHostChatInputPicker.css +171 -0
  1515. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/media/agentHostModePicker.css +193 -0
  1516. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/stateToProgressAdapter.d.ts +273 -0
  1517. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/stateToProgressAdapter.js +2478 -0
  1518. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.d.ts +45 -0
  1519. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.js +122 -0
  1520. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +15 -15
  1521. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsBanner.js +1 -1
  1522. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +72 -0
  1523. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +393 -0
  1524. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.d.ts +262 -0
  1525. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.js +865 -0
  1526. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.d.ts +23 -0
  1527. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +160 -0
  1528. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.service.d.ts +2 -3
  1529. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.service.d.ts +2 -2
  1530. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusService.service.d.ts +1 -2
  1531. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/externalSessionsFilterMenu.d.ts +3 -0
  1532. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/externalSessionsFilterMenu.js +62 -0
  1533. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentSessionHoverWidget.css +98 -0
  1534. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +471 -0
  1535. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/sessionSummaryHover.css +104 -0
  1536. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHover.d.ts +115 -0
  1537. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHover.js +168 -0
  1538. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHoverService.service.d.ts +1 -1
  1539. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionTypeAvailability.d.ts +83 -0
  1540. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionTypeAvailability.js +134 -0
  1541. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +35 -0
  1542. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +294 -0
  1543. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +66 -0
  1544. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +39 -0
  1545. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +147 -0
  1546. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.js +349 -0
  1547. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.d.ts +83 -0
  1548. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.js +264 -0
  1549. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.service.d.ts +2 -2
  1550. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +278 -0
  1551. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +2036 -0
  1552. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.d.ts +22 -0
  1553. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.js +18 -0
  1554. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +1 -1
  1555. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +7 -7
  1556. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +397 -0
  1557. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +4132 -0
  1558. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.d.ts +37 -0
  1559. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +93 -0
  1560. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementSectionRegistry.d.ts +26 -0
  1561. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementSectionRegistry.js +34 -0
  1562. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationPresentation.d.ts +2 -0
  1563. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationPresentation.js +23 -0
  1564. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.d.ts +57 -0
  1565. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.js +48 -0
  1566. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.d.ts +40 -0
  1567. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +369 -0
  1568. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCardList.d.ts +40 -0
  1569. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCardList.js +302 -0
  1570. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.d.ts +70 -0
  1571. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +220 -0
  1572. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationGroupHeaderRenderer.d.ts +43 -0
  1573. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationGroupHeaderRenderer.js +63 -0
  1574. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigration.d.ts +38 -0
  1575. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigration.js +240 -0
  1576. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationCategories.d.ts +82 -0
  1577. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationCategories.js +765 -0
  1578. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationDashboard.d.ts +80 -0
  1579. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationDashboard.js +279 -0
  1580. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.d.ts +109 -0
  1581. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.js +743 -0
  1582. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedExtensionToolsDetail.d.ts +42 -0
  1583. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedExtensionToolsDetail.js +130 -0
  1584. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.d.ts +62 -0
  1585. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.js +217 -0
  1586. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/galleryItemRenderer.d.ts +46 -0
  1587. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/galleryItemRenderer.js +91 -0
  1588. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +357 -0
  1589. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +2661 -0
  1590. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +3742 -0
  1591. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationWelcomePromptLaunchers.css +301 -0
  1592. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/customizationMigrationDashboard.css +354 -0
  1593. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +197 -0
  1594. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +2205 -0
  1595. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.d.ts +27 -0
  1596. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.js +317 -0
  1597. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.d.ts +132 -0
  1598. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.js +1216 -0
  1599. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.d.ts +37 -0
  1600. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.js +197 -0
  1601. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.service.d.ts +1 -1
  1602. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.d.ts +275 -0
  1603. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +2252 -0
  1604. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatContextPickService.js +2 -2
  1605. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatDynamicVariables.d.ts +57 -0
  1606. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatDynamicVariables.js +311 -0
  1607. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.d.ts +76 -0
  1608. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.js +485 -0
  1609. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatScreenshotContext.js +1 -1
  1610. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.d.ts +15 -0
  1611. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.js +80 -0
  1612. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatWidgetPasteTarget.d.ts +18 -0
  1613. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatWidgetPasteTarget.js +40 -0
  1614. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.d.ts +53 -0
  1615. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +363 -0
  1616. package/vscode/src/vs/workbench/contrib/chat/browser/chat.d.ts +4 -4
  1617. package/vscode/src/vs/workbench/contrib/chat/browser/chat.js +9 -9
  1618. package/vscode/src/vs/workbench/contrib/chat/browser/chat.service.d.ts +1 -2
  1619. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.d.ts +52 -0
  1620. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +788 -0
  1621. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +11 -11
  1622. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.service.d.ts +1 -1
  1623. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.d.ts +28 -0
  1624. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +98 -0
  1625. package/vscode/src/vs/workbench/contrib/chat/browser/chatIcons.d.ts +9 -0
  1626. package/vscode/src/vs/workbench/contrib/chat/browser/chatIcons.js +36 -0
  1627. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.service.d.ts +1 -1
  1628. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageUtils.js +3 -3
  1629. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPills.d.ts +86 -0
  1630. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPills.js +289 -0
  1631. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.d.ts +118 -0
  1632. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +543 -0
  1633. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +82 -0
  1634. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +1452 -0
  1635. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +329 -0
  1636. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutline.js +6 -6
  1637. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementPreview.d.ts +7 -0
  1638. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementPreview.js +114 -0
  1639. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievements.d.ts +99 -0
  1640. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievements.js +329 -0
  1641. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetService.d.ts +66 -0
  1642. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetService.js +504 -0
  1643. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetService.service.d.ts +3 -3
  1644. package/vscode/src/vs/workbench/contrib/chat/browser/chatRequestText.d.ts +9 -0
  1645. package/vscode/src/vs/workbench/contrib/chat/browser/chatRequestText.js +12 -0
  1646. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseFileChangesService.d.ts +55 -0
  1647. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseFileChangesService.js +37 -0
  1648. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseFileChangesService.service.d.ts +2 -2
  1649. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.d.ts +60 -0
  1650. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +259 -0
  1651. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +231 -0
  1652. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +1852 -0
  1653. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/media/chatSessionPickerActionItem.css +58 -0
  1654. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.d.ts +109 -0
  1655. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +85 -0
  1656. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.d.ts +2 -0
  1657. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.js +9 -0
  1658. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +99 -0
  1659. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +1268 -0
  1660. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusItemService.service.d.ts +1 -1
  1661. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +552 -0
  1662. package/vscode/src/vs/workbench/contrib/chat/browser/chatTerminalCommandPaste.d.ts +35 -0
  1663. package/vscode/src/vs/workbench/contrib/chat/browser/chatTerminalCommandPaste.js +94 -0
  1664. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.service.d.ts +1 -1
  1665. package/vscode/src/vs/workbench/contrib/chat/browser/editorChatResponseFileChangesService.d.ts +21 -0
  1666. package/vscode/src/vs/workbench/contrib/chat/browser/editorChatResponseFileChangesService.js +45 -0
  1667. package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
  1668. package/vscode/src/vs/workbench/contrib/chat/browser/feedbackSurvey/chatModelFeedbackSurveyService.d.ts +123 -0
  1669. package/vscode/src/vs/workbench/contrib/chat/browser/feedbackSurvey/chatModelFeedbackSurveyService.js +484 -0
  1670. package/vscode/src/vs/workbench/contrib/chat/browser/feedbackSurvey/chatModelFeedbackSurveyService.service.d.ts +2 -3
  1671. package/vscode/src/vs/workbench/contrib/chat/browser/feedbackSurvey/chatModelFeedbackSurveyWidget.d.ts +39 -0
  1672. package/vscode/src/vs/workbench/contrib/chat/browser/feedbackSurvey/chatModelFeedbackSurveyWidget.js +230 -0
  1673. package/vscode/src/vs/workbench/contrib/chat/browser/feedbackSurvey/media/chatModelFeedbackSurvey.css +108 -0
  1674. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.service.d.ts +1 -2
  1675. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.d.ts +25 -0
  1676. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.js +95 -0
  1677. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.d.ts +31 -0
  1678. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +676 -0
  1679. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.d.ts +68 -0
  1680. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +225 -0
  1681. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.d.ts +24 -0
  1682. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.js +355 -0
  1683. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.d.ts +7 -0
  1684. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.js +81 -0
  1685. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.d.ts +15 -0
  1686. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.js +181 -0
  1687. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.d.ts +75 -0
  1688. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.js +632 -0
  1689. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileRewriter.js +1 -1
  1690. package/vscode/src/vs/workbench/contrib/chat/browser/sessionChatPillOptions.d.ts +13 -0
  1691. package/vscode/src/vs/workbench/contrib/chat/browser/sessionChatPillOptions.js +52 -0
  1692. package/vscode/src/vs/workbench/contrib/chat/browser/sessionPullRequestPill.d.ts +22 -0
  1693. package/vscode/src/vs/workbench/contrib/chat/browser/sessionPullRequestPill.js +58 -0
  1694. package/vscode/src/vs/workbench/contrib/chat/browser/sessionResourceMatching.d.ts +5 -0
  1695. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/chatSpeechToTextService.js +19 -19
  1696. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/chatSpeechToTextService.service.d.ts +1 -1
  1697. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationActionViewItem.d.ts +32 -0
  1698. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationActionViewItem.js +77 -0
  1699. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationDownloadActionViewItem.d.ts +30 -0
  1700. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationDownloadActionViewItem.js +91 -0
  1701. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationDownloadRing.js +7 -7
  1702. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationMicGlow.d.ts +36 -0
  1703. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationMicGlow.js +121 -0
  1704. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationOnboarding.d.ts +124 -0
  1705. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationOnboarding.js +622 -0
  1706. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationOnboarding.service.d.ts +2 -2
  1707. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationSession.js +3 -3
  1708. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/media/dictationMicGlow.css +99 -0
  1709. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/media/dictationOnboarding.css +128 -0
  1710. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/micButtonHovers.d.ts +9 -0
  1711. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/micButtonHovers.js +60 -0
  1712. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/micButtonMenuActions.d.ts +27 -0
  1713. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/micButtonMenuActions.js +161 -0
  1714. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/voiceCodeTranscriptionClient.service.d.ts +1 -1
  1715. package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.d.ts +35 -0
  1716. package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.js +321 -0
  1717. package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.service.d.ts +1 -1
  1718. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.d.ts +45 -0
  1719. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +509 -0
  1720. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController.d.ts +58 -0
  1721. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController.js +177 -0
  1722. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcome.d.ts +28 -0
  1723. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcome.js +31 -0
  1724. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/media/voiceGlow.css +264 -0
  1725. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/media/voiceInputDecorations.css +50 -0
  1726. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/micCaptureService.js +2 -2
  1727. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/micCaptureService.service.d.ts +1 -1
  1728. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/ttsPlaybackService.service.d.ts +1 -1
  1729. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceGlow.d.ts +82 -0
  1730. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceGlow.js +101 -0
  1731. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceGlowController.d.ts +36 -0
  1732. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceGlowController.js +459 -0
  1733. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceInputDecorations.d.ts +47 -0
  1734. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceInputDecorations.js +193 -0
  1735. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceInputUtils.d.ts +11 -0
  1736. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceInputUtils.js +13 -0
  1737. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceModeActionViewItem.d.ts +27 -0
  1738. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceModeActionViewItem.js +59 -0
  1739. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.d.ts +1174 -0
  1740. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.js +5599 -0
  1741. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.service.d.ts +2 -2
  1742. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.d.ts +99 -0
  1743. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.js +691 -0
  1744. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.service.d.ts +2 -2
  1745. package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/media/voiceInputMode.css +201 -0
  1746. package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/voiceInputModeActionViewItem.d.ts +137 -0
  1747. package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/voiceInputModeActionViewItem.js +777 -0
  1748. package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/voiceInputModeContextKeys.d.ts +13 -0
  1749. package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/voiceInputModeContextKeys.js +14 -0
  1750. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.d.ts +24 -0
  1751. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +112 -0
  1752. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.d.ts +41 -0
  1753. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +533 -0
  1754. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatCard.d.ts +37 -0
  1755. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatCard.js +44 -0
  1756. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatCardListbox.d.ts +35 -0
  1757. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatCardListbox.js +55 -0
  1758. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatClipboard.d.ts +15 -0
  1759. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatClipboard.js +92 -0
  1760. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.d.ts +22 -0
  1761. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.js +175 -0
  1762. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.d.ts +12 -0
  1763. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +51 -0
  1764. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentMergeContentPart.d.ts +72 -0
  1765. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentMergeContentPart.js +418 -0
  1766. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.d.ts +13 -0
  1767. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +51 -0
  1768. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.d.ts +51 -0
  1769. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.js +321 -0
  1770. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAutoModeResolutionContentPart.d.ts +21 -0
  1771. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAutoModeResolutionContentPart.js +48 -0
  1772. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.d.ts +52 -0
  1773. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +354 -0
  1774. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.d.ts +13 -0
  1775. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +50 -0
  1776. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleContentPart.d.ts +69 -0
  1777. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleContentPart.js +272 -0
  1778. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleMarkdownContentPart.d.ts +21 -0
  1779. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleMarkdownContentPart.js +52 -0
  1780. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollections.d.ts +61 -0
  1781. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollections.js +186 -0
  1782. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.d.ts +12 -0
  1783. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +45 -0
  1784. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.d.ts +22 -0
  1785. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.js +97 -0
  1786. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.d.ts +70 -0
  1787. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.js +29 -0
  1788. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDiffBlockPart.d.ts +40 -0
  1789. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDiffBlockPart.js +155 -0
  1790. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.d.ts +13 -0
  1791. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +56 -0
  1792. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatEditPillElement.d.ts +104 -0
  1793. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatEditPillElement.js +153 -0
  1794. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorConfirmationPart.d.ts +18 -0
  1795. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorConfirmationPart.js +92 -0
  1796. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorContentPart.d.ts +16 -0
  1797. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorContentPart.js +46 -0
  1798. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.d.ts +16 -0
  1799. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +63 -0
  1800. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExternalEditContentPart.d.ts +49 -0
  1801. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExternalEditContentPart.js +149 -0
  1802. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.d.ts +15 -0
  1803. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +67 -0
  1804. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animation.d.ts +18 -0
  1805. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animationRegistry.d.ts +15 -0
  1806. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animationRegistry.js +16 -0
  1807. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/blockAnimations.d.ts +13 -0
  1808. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/blockAnimations.js +33 -0
  1809. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/buffer.d.ts +46 -0
  1810. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/bufferRegistry.d.ts +11 -0
  1811. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/bufferRegistry.js +12 -0
  1812. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/offBuffer.d.ts +9 -0
  1813. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/offBuffer.js +12 -0
  1814. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/paragraphBuffer.d.ts +23 -0
  1815. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/paragraphBuffer.js +37 -0
  1816. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/wordBuffer.d.ts +34 -0
  1817. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/wordBuffer.js +68 -0
  1818. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/chatIncrementalRendering.d.ts +84 -0
  1819. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/chatIncrementalRendering.js +187 -0
  1820. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/media/chatIncrementalRendering.css +112 -0
  1821. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.d.ts +63 -0
  1822. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +584 -0
  1823. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownAnchorService.service.d.ts +1 -1
  1824. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownDecorationsRenderer.d.ts +48 -0
  1825. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownDecorationsRenderer.js +257 -0
  1826. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownTableScrolling.d.ts +15 -0
  1827. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownTableScrolling.js +55 -0
  1828. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpAuthenticationContentPart.d.ts +35 -0
  1829. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpAuthenticationContentPart.js +143 -0
  1830. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.d.ts +32 -0
  1831. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +228 -0
  1832. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersStartingContentPart.d.ts +32 -0
  1833. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersStartingContentPart.js +67 -0
  1834. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.d.ts +31 -0
  1835. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +302 -0
  1836. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.d.ts +101 -0
  1837. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.js +904 -0
  1838. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.d.ts +55 -0
  1839. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +291 -0
  1840. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPullRequestContentPart.d.ts +14 -0
  1841. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPullRequestContentPart.js +46 -0
  1842. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +212 -0
  1843. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +1656 -0
  1844. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.d.ts +14 -0
  1845. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +75 -0
  1846. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.d.ts +69 -0
  1847. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +586 -0
  1848. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatRequestOriginPart.d.ts +28 -0
  1849. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatRequestOriginPart.js +192 -0
  1850. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.d.ts +27 -0
  1851. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +280 -0
  1852. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatRichLink.d.ts +35 -0
  1853. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatRichLink.js +364 -0
  1854. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.d.ts +37 -0
  1855. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +250 -0
  1856. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSystemNotificationContentPart.d.ts +18 -0
  1857. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSystemNotificationContentPart.js +141 -0
  1858. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTaskContentPart.d.ts +15 -0
  1859. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTaskContentPart.js +61 -0
  1860. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.d.ts +32 -0
  1861. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +163 -0
  1862. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.d.ts +251 -0
  1863. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +2187 -0
  1864. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingExternalResourcesWidget.d.ts +18 -0
  1865. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingExternalResourcesWidget.js +70 -0
  1866. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingStyleContentPart.d.ts +50 -0
  1867. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingStyleContentPart.js +78 -0
  1868. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.d.ts +36 -0
  1869. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +267 -0
  1870. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.d.ts +47 -0
  1871. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +388 -0
  1872. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.d.ts +27 -0
  1873. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.js +113 -0
  1874. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.d.ts +37 -0
  1875. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +190 -0
  1876. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTurnPillsPart.d.ts +29 -0
  1877. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTurnPillsPart.js +156 -0
  1878. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.d.ts +18 -0
  1879. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +83 -0
  1880. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.d.ts +180 -0
  1881. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +945 -0
  1882. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatAgentFeedbackReviewConfirmation.css +140 -0
  1883. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatAgentMergeContent.css +385 -0
  1884. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatCodeBlockPill.css +158 -0
  1885. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatCollapsibleContentPart.css +62 -0
  1886. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatConfirmationWidget.css +602 -0
  1887. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatDisabledClaudeHooksContent.css +18 -0
  1888. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatExtensionsContent.css +31 -0
  1889. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatHookContentPart.css +47 -0
  1890. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatInlineAnchorWidget.css +87 -0
  1891. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatMarkdownPart.css +23 -0
  1892. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatMcpServersInteractionContent.css +18 -0
  1893. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatPlanReview.css +384 -0
  1894. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatPullRequestContent.css +39 -0
  1895. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatQuestionCarousel.css +618 -0
  1896. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatRequestOrigin.css +80 -0
  1897. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatRichLink.css +471 -0
  1898. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatSessionCreatedResult.css +18 -0
  1899. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatSubagentContent.css +124 -0
  1900. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatSystemNotificationContentPart.css +145 -0
  1901. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTerminalToolProgressPart.css +310 -0
  1902. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +567 -0
  1903. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTipContent.css +70 -0
  1904. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatToolConfirmationCarousel.css +244 -0
  1905. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/codeBlockPart.css +204 -0
  1906. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatAutomationConfiguredResultSubPart.d.ts +16 -0
  1907. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatAutomationConfiguredResultSubPart.js +36 -0
  1908. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatGeneratedImageResultSubPart.d.ts +20 -0
  1909. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatGeneratedImageResultSubPart.js +102 -0
  1910. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.d.ts +159 -0
  1911. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +752 -0
  1912. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.d.ts +51 -0
  1913. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +148 -0
  1914. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatOtherClientToolProgressPart.d.ts +11 -0
  1915. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatOtherClientToolProgressPart.js +55 -0
  1916. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatResultListSubPart.d.ts +14 -0
  1917. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatResultListSubPart.js +32 -0
  1918. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatSessionCreatedResultSubPart.d.ts +20 -0
  1919. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatSessionCreatedResultSubPart.js +70 -0
  1920. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.d.ts +71 -0
  1921. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.js +533 -0
  1922. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationSubPart.d.ts +22 -0
  1923. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationSubPart.js +37 -0
  1924. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.d.ts +21 -0
  1925. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +125 -0
  1926. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.d.ts +20 -0
  1927. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +65 -0
  1928. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.d.ts +24 -0
  1929. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.js +137 -0
  1930. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolStreamingSubPart.d.ts +19 -0
  1931. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolStreamingSubPart.js +69 -0
  1932. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/media/toolRiskBadge.css +76 -0
  1933. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/terminalToolAutoExpand.d.ts +60 -0
  1934. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/terminalToolAutoExpand.js +66 -0
  1935. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeHelper.d.ts +21 -0
  1936. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeHelper.js +78 -0
  1937. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeWidget.d.ts +38 -0
  1938. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeWidget.js +142 -0
  1939. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.d.ts +84 -0
  1940. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +470 -0
  1941. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatEditorAssociations.d.ts +6 -0
  1942. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatEditorAssociations.js +16 -0
  1943. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindCommandIds.d.ts +9 -0
  1944. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindCommandIds.js +14 -0
  1945. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindContent.d.ts +23 -0
  1946. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindContent.js +92 -0
  1947. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindHighlights.d.ts +25 -0
  1948. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindHighlights.js +77 -0
  1949. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindWidget.css +23 -0
  1950. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatForkActionViewItem.d.ts +16 -0
  1951. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatForkActionViewItem.js +87 -0
  1952. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatOptions.d.ts +51 -0
  1953. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatOptions.js +100 -0
  1954. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPendingDragAndDrop.d.ts +27 -0
  1955. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPendingDragAndDrop.js +148 -0
  1956. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetAccessoryRenderer.d.ts +34 -0
  1957. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetAccessoryRenderer.js +278 -0
  1958. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetAccessoryRig.d.ts +26 -0
  1959. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetAccessoryRig.js +183 -0
  1960. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetWidget.d.ts +372 -0
  1961. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetWidget.js +3435 -0
  1962. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetWidgetService.service.d.ts +2 -2
  1963. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatReadOnlyBanner.d.ts +10 -0
  1964. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatReadOnlyBanner.js +44 -0
  1965. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatReferenceDrop.d.ts +56 -0
  1966. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatReferenceDrop.js +43 -0
  1967. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatRestoreCheckpointActionViewItem.d.ts +30 -0
  1968. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatRestoreCheckpointActionViewItem.js +138 -0
  1969. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatTurnPills.d.ts +79 -0
  1970. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatTurnPills.js +56 -0
  1971. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.d.ts +13 -0
  1972. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +57 -0
  1973. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatGoalBannerWidget.d.ts +26 -0
  1974. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatGoalBannerWidget.js +74 -0
  1975. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputModelSelectionController.d.ts +130 -0
  1976. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputModelSelectionController.js +432 -0
  1977. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputModelUtils.d.ts +156 -0
  1978. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputModelUtils.js +159 -0
  1979. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNoticeHost.d.ts +115 -0
  1980. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNoticeHost.js +146 -0
  1981. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNoticeHub.service.d.ts +1 -1
  1982. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNoticeWidget.d.ts +115 -0
  1983. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNoticeWidget.js +130 -0
  1984. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.d.ts +140 -0
  1985. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.js +186 -0
  1986. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.service.d.ts +2 -2
  1987. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.d.ts +96 -0
  1988. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.js +364 -0
  1989. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputOnboarding.d.ts +83 -0
  1990. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputOnboarding.js +178 -0
  1991. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputOnboardingHosts.d.ts +17 -0
  1992. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputOnboardingHosts.js +30 -0
  1993. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +895 -0
  1994. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +4571 -0
  1995. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerActionItem.d.ts +42 -0
  1996. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerActionItem.js +97 -0
  1997. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerResponsiveLayout.d.ts +38 -0
  1998. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerResponsiveLayout.js +212 -0
  1999. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStack.d.ts +63 -0
  2000. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStack.js +62 -0
  2001. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStatePersistence.d.ts +6 -0
  2002. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStatePersistence.js +18 -0
  2003. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputTipPresenter.d.ts +51 -0
  2004. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputTipPresenter.js +102 -0
  2005. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationLogic.d.ts +52 -0
  2006. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationLogic.js +118 -0
  2007. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationStore.d.ts +79 -0
  2008. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationStore.js +127 -0
  2009. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionDiagnostics.d.ts +26 -0
  2010. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionDiagnostics.js +60 -0
  2011. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.d.ts +76 -0
  2012. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.js +126 -0
  2013. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.service.d.ts +1 -1
  2014. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatSelectedTools.d.ts +36 -0
  2015. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatSelectedTools.js +192 -0
  2016. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatSessionArchiveNudge.d.ts +49 -0
  2017. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatSessionArchiveNudge.js +238 -0
  2018. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.d.ts +44 -0
  2019. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +193 -0
  2020. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletionsBase.d.ts +73 -0
  2021. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletionsBase.js +65 -0
  2022. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatDynamicVariablesConstant.d.ts +1 -0
  2023. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatDynamicVariablesConstant.js +5 -0
  2024. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.d.ts +31 -0
  2025. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.js +110 -0
  2026. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputPlaceholderDecoration.d.ts +11 -0
  2027. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputPlaceholderDecoration.js +28 -0
  2028. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputReferenceDecorations.d.ts +3 -0
  2029. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputReferenceDecorations.js +16 -0
  2030. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatPasteProviders.d.ts +71 -0
  2031. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatPasteProviders.js +800 -0
  2032. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatGoalBannerWidget.css +72 -0
  2033. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatInputNotice.css +245 -0
  2034. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatInputNotificationWidget.css +162 -0
  2035. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatInputStack.css +86 -0
  2036. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatPhoneInputPresenter.css +22 -0
  2037. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatSessionArchiveNudge.css +128 -0
  2038. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.d.ts +41 -0
  2039. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +337 -0
  2040. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/media/modelPicker.css +1120 -0
  2041. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerActionItem.d.ts +82 -0
  2042. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerActionItem.js +130 -0
  2043. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerAutoRow.d.ts +30 -0
  2044. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerAutoRow.js +140 -0
  2045. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerBadges.d.ts +29 -0
  2046. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerBadges.js +44 -0
  2047. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerCard.d.ts +91 -0
  2048. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerCard.js +428 -0
  2049. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerConfiguration.d.ts +23 -0
  2050. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerConfiguration.js +175 -0
  2051. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerDetails.d.ts +19 -0
  2052. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerDetails.js +51 -0
  2053. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerHover.d.ts +14 -0
  2054. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerHover.js +226 -0
  2055. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerItemPrimitives.d.ts +29 -0
  2056. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerItemPrimitives.js +251 -0
  2057. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerItemSections.d.ts +11 -0
  2058. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerItemSections.js +580 -0
  2059. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerItemTypes.d.ts +38 -0
  2060. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerItems.d.ts +22 -0
  2061. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerItems.js +101 -0
  2062. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerLineage.d.ts +22 -0
  2063. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerLineage.js +52 -0
  2064. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerModelConfig.d.ts +36 -0
  2065. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerModelConfig.js +45 -0
  2066. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerPresentation.d.ts +30 -0
  2067. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerPresentation.js +79 -0
  2068. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerTabbedWidget.d.ts +102 -0
  2069. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerTabbedWidget.js +501 -0
  2070. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerTabs.d.ts +95 -0
  2071. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerTabs.js +193 -0
  2072. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerTelemetry.d.ts +7 -0
  2073. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerTelemetry.js +27 -0
  2074. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerVariants.d.ts +16 -0
  2075. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerVariants.js +47 -0
  2076. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerWelcome.d.ts +10 -0
  2077. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerWelcome.js +40 -0
  2078. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerWidget.d.ts +140 -0
  2079. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerWidget.js +615 -0
  2080. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelProviderIcons.d.ts +10 -0
  2081. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelProviderIcons.js +67 -0
  2082. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.d.ts +99 -0
  2083. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +371 -0
  2084. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.d.ts +79 -0
  2085. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +375 -0
  2086. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.d.ts +20 -0
  2087. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +115 -0
  2088. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +4959 -0
  2089. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chatAgentHover.css +87 -0
  2090. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chatCard.css +117 -0
  2091. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chatPet.css +573 -0
  2092. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chatReadOnlyBanner.css +47 -0
  2093. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chatViewWelcome.css +233 -0
  2094. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.js +10 -10
  2095. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.d.ts +50 -0
  2096. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +213 -0
  2097. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.d.ts +144 -0
  2098. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +362 -0
  2099. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatContextUsageDetails.css +242 -0
  2100. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatContextUsageWidget.css +87 -0
  2101. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.js +325 -325
  2102. package/vscode/src/vs/workbench/contrib/chat/common/agentHostConfigPolicy.d.ts +9 -0
  2103. package/vscode/src/vs/workbench/contrib/chat/common/agentHostConfigPolicy.js +28 -0
  2104. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.service.d.ts +1 -1
  2105. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.d.ts +2 -2
  2106. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.js +20 -6
  2107. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariables.d.ts +46 -0
  2108. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariables.js +17 -0
  2109. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariables.service.d.ts +2 -2
  2110. package/vscode/src/vs/workbench/contrib/chat/common/automations/automation.js +20 -0
  2111. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationBlueprint.d.ts +22 -0
  2112. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationBlueprint.js +251 -0
  2113. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationDialogService.d.ts +20 -0
  2114. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationDialogService.service.d.ts +11 -0
  2115. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationDialogService.service.js +6 -0
  2116. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationRunner.d.ts +37 -0
  2117. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationRunner.service.d.ts +17 -0
  2118. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationRunner.service.js +6 -0
  2119. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationService.d.ts +137 -0
  2120. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationService.js +77 -0
  2121. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationService.service.d.ts +14 -0
  2122. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationService.service.js +6 -0
  2123. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationsEnabled.d.ts +12 -0
  2124. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationsEnabled.js +12 -0
  2125. package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.d.ts +9 -0
  2126. package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.js +83 -0
  2127. package/vscode/src/vs/workbench/contrib/chat/common/chat.js +1 -1
  2128. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.d.ts +16 -0
  2129. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.js +236 -0
  2130. package/vscode/src/vs/workbench/contrib/chat/common/chatAutoModeExplainability.d.ts +10 -0
  2131. package/vscode/src/vs/workbench/contrib/chat/common/chatAutoModeExplainability.js +9 -0
  2132. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.service.d.ts +1 -2
  2133. package/vscode/src/vs/workbench/contrib/chat/common/chatErrorMessages.d.ts +110 -0
  2134. package/vscode/src/vs/workbench/contrib/chat/common/chatErrorMessages.js +511 -0
  2135. package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.d.ts +35 -0
  2136. package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +170 -0
  2137. package/vscode/src/vs/workbench/contrib/chat/common/chatModeTelemetry.d.ts +3 -0
  2138. package/vscode/src/vs/workbench/contrib/chat/common/chatModeTelemetry.js +24 -0
  2139. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.js +7 -7
  2140. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.service.d.ts +1 -1
  2141. package/vscode/src/vs/workbench/contrib/chat/common/chatNotification.d.ts +6 -0
  2142. package/vscode/src/vs/workbench/contrib/chat/common/chatNotification.js +12 -0
  2143. package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionStorageKeys.d.ts +3 -0
  2144. package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionStorageKeys.js +7 -0
  2145. package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionWarnings.d.ts +35 -0
  2146. package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionWarnings.js +141 -0
  2147. package/vscode/src/vs/workbench/contrib/chat/common/chatProgressFormatting.d.ts +14 -0
  2148. package/vscode/src/vs/workbench/contrib/chat/common/chatProgressFormatting.js +52 -0
  2149. package/vscode/src/vs/workbench/contrib/chat/common/chatSelectedModel.d.ts +87 -0
  2150. package/vscode/src/vs/workbench/contrib/chat/common/chatSelectedModel.js +69 -0
  2151. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatQuestionCarouselHelpers.d.ts +42 -0
  2152. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatQuestionCarouselHelpers.js +99 -0
  2153. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.d.ts +2 -2
  2154. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.js +1 -1
  2155. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.service.d.ts +2 -3
  2156. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.d.ts +1 -2
  2157. package/vscode/src/vs/workbench/contrib/chat/common/chatSideChatService.service.d.ts +1 -1
  2158. package/vscode/src/vs/workbench/contrib/chat/common/constants.js +2 -2
  2159. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.d.ts +300 -0
  2160. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.js +272 -0
  2161. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.service.d.ts +2 -3
  2162. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.js +10 -10
  2163. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.service.d.ts +1 -1
  2164. package/vscode/src/vs/workbench/contrib/chat/common/expPayload.d.ts +27 -0
  2165. package/vscode/src/vs/workbench/contrib/chat/common/expPayload.js +86 -0
  2166. package/vscode/src/vs/workbench/contrib/chat/common/feedbackSurvey/chatModelFeedbackSurveyConfig.d.ts +115 -0
  2167. package/vscode/src/vs/workbench/contrib/chat/common/feedbackSurvey/chatModelFeedbackSurveyConfig.js +334 -0
  2168. package/vscode/src/vs/workbench/contrib/chat/common/feedbackSurvey/chatModelFeedbackSurveyTelemetry.d.ts +42 -0
  2169. package/vscode/src/vs/workbench/contrib/chat/common/feedbackSurvey/chatModelFeedbackSurveyTelemetry.js +5 -0
  2170. package/vscode/src/vs/workbench/contrib/chat/common/ignoredFiles.service.d.ts +1 -1
  2171. package/vscode/src/vs/workbench/contrib/chat/common/languageModelSourcePresentation.d.ts +21 -0
  2172. package/vscode/src/vs/workbench/contrib/chat/common/languageModelSourcePresentation.js +41 -0
  2173. package/vscode/src/vs/workbench/contrib/chat/common/languageModelStats.js +3 -3
  2174. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +44 -42
  2175. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.service.d.ts +1 -1
  2176. package/vscode/src/vs/workbench/contrib/chat/common/languageModelsConfiguration.service.d.ts +1 -2
  2177. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.d.ts +1 -1
  2178. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.js +42 -42
  2179. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelIdle.d.ts +16 -0
  2180. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelIdle.js +39 -0
  2181. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js +1 -1
  2182. package/vscode/src/vs/workbench/contrib/chat/common/model/chatTransferService.service.d.ts +1 -1
  2183. package/vscode/src/vs/workbench/contrib/chat/common/modelSelection.d.ts +94 -0
  2184. package/vscode/src/vs/workbench/contrib/chat/common/modelSelection.js +139 -0
  2185. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.js +5 -5
  2186. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.service.d.ts +1 -1
  2187. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.service.d.ts +1 -2
  2188. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.d.ts +25 -0
  2189. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.js +178 -0
  2190. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginRepositoryService.d.ts +1 -1
  2191. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginRepositoryService.service.d.ts +3 -3
  2192. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +78 -0
  2193. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.js +51 -0
  2194. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.service.d.ts +1 -1
  2195. package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.d.ts +67 -0
  2196. package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.js +195 -0
  2197. package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.d.ts +67 -0
  2198. package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.js +294 -0
  2199. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginGitService.service.d.ts +1 -1
  2200. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginInstallService.d.ts +1 -1
  2201. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginInstallService.service.d.ts +2 -2
  2202. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +212 -0
  2203. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +955 -0
  2204. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.service.d.ts +3 -4
  2205. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginSource.d.ts +1 -1
  2206. package/vscode/src/vs/workbench/contrib/chat/common/plugins/strictKnownMarketplaces.d.ts +31 -0
  2207. package/vscode/src/vs/workbench/contrib/chat/common/plugins/strictKnownMarketplaces.js +122 -0
  2208. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.d.ts +150 -0
  2209. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.js +142 -0
  2210. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +50 -0
  2211. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +77 -0
  2212. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +77 -0
  2213. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +120 -0
  2214. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +10 -0
  2215. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +23 -0
  2216. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookSchema.js +21 -21
  2217. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookTypes.js +21 -21
  2218. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptFileAttributes.js +80 -80
  2219. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.js +5 -5
  2220. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.js +10 -10
  2221. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/customizationMigrationService.d.ts +115 -0
  2222. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/customizationMigrationService.js +69 -0
  2223. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/customizationMigrationService.service.d.ts +2 -2
  2224. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/extensionPromptFileService.d.ts +92 -0
  2225. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/extensionPromptFileService.js +335 -0
  2226. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service.d.ts +1 -2
  2227. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +235 -0
  2228. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +1675 -0
  2229. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +202 -0
  2230. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +874 -0
  2231. package/vscode/src/vs/workbench/contrib/chat/common/promptTimeline.d.ts +17 -0
  2232. package/vscode/src/vs/workbench/contrib/chat/common/promptTimeline.js +9 -0
  2233. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatParserTypes.d.ts +1 -1
  2234. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatParserTypes.js +3 -3
  2235. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.d.ts +35 -0
  2236. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.js +289 -0
  2237. package/vscode/src/vs/workbench/contrib/chat/common/sessionChatPills.d.ts +60 -0
  2238. package/vscode/src/vs/workbench/contrib/chat/common/sessionChatPills.js +139 -0
  2239. package/vscode/src/vs/workbench/contrib/chat/common/sessionChatPills.service.d.ts +2 -2
  2240. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.d.ts +72 -0
  2241. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.js +602 -0
  2242. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.service.d.ts +1 -1
  2243. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.service.d.ts +1 -2
  2244. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.js +1 -1
  2245. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.js +6 -6
  2246. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service.d.ts +1 -2
  2247. package/vscode/src/vs/workbench/contrib/chat/common/tools/terminalToolIds.d.ts +20 -0
  2248. package/vscode/src/vs/workbench/contrib/chat/common/tools/terminalToolIds.js +17 -0
  2249. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceClientService.d.ts +305 -0
  2250. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceClientService.js +227 -0
  2251. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceClientService.service.d.ts +2 -2
  2252. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceCloseCodes.d.ts +25 -0
  2253. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceCloseCodes.js +46 -0
  2254. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceConfirmation.d.ts +6 -0
  2255. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceConfirmation.js +50 -0
  2256. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voicePendingNarration.d.ts +13 -0
  2257. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voicePendingNarration.js +22 -0
  2258. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceQuestionAnswers.d.ts +24 -0
  2259. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceQuestionAnswers.js +74 -0
  2260. package/vscode/src/vs/workbench/contrib/chat/common/voicePlaybackService.service.d.ts +1 -1
  2261. package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.d.ts +34 -0
  2262. package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.js +316 -0
  2263. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.d.ts +28 -0
  2264. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +202 -0
  2265. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatWidgetHistoryService.d.ts +65 -0
  2266. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatWidgetHistoryService.js +211 -0
  2267. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatWidgetHistoryService.service.d.ts +2 -2
  2268. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +11 -11
  2269. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +6 -6
  2270. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +6 -6
  2271. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +4 -4
  2272. package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorLineNumberMenu.js +1 -1
  2273. package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorSettingsMigration.d.ts +1 -0
  2274. package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorSettingsMigration.js +16 -0
  2275. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +11 -11
  2276. package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js +12 -10
  2277. package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectKeybindings.d.ts +1 -0
  2278. package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectKeybindings.js +51 -0
  2279. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
  2280. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +12 -11
  2281. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +8 -8
  2282. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +3 -3
  2283. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleColumnSelection.d.ts +8 -0
  2284. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleColumnSelection.js +92 -0
  2285. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
  2286. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +4 -4
  2287. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleOvertype.d.ts +6 -0
  2288. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleOvertype.js +39 -0
  2289. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
  2290. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +12 -12
  2291. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +6 -6
  2292. package/vscode/src/vs/workbench/contrib/codeEditor/common/languageConfigurationExtensionPoint.js +74 -74
  2293. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +7 -7
  2294. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +7 -7
  2295. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +32 -4
  2296. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +3 -3
  2297. package/vscode/src/vs/workbench/contrib/comments/browser/commentService.service.d.ts +1 -2
  2298. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +3 -3
  2299. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +3 -3
  2300. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +4 -4
  2301. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +3 -3
  2302. package/vscode/src/vs/workbench/contrib/comments/browser/comments.js +1 -1
  2303. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +12 -12
  2304. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +12 -12
  2305. package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +5 -5
  2306. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +11 -11
  2307. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.d.ts +1 -1
  2308. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +20 -20
  2309. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +19 -19
  2310. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +7 -7
  2311. package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +1 -1
  2312. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +36 -36
  2313. package/vscode/src/vs/workbench/contrib/comments/common/commentModel.js +3 -3
  2314. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorDiffInput.js +3 -3
  2315. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +3 -3
  2316. package/vscode/src/vs/workbench/contrib/customEditor/common/customEditor.service.d.ts +1 -1
  2317. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +3 -3
  2318. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +57 -47
  2319. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +21 -21
  2320. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +85 -85
  2321. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +3 -3
  2322. package/vscode/src/vs/workbench/contrib/debug/browser/debugANSIHandling.js +4 -4
  2323. package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +13 -13
  2324. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +12 -12
  2325. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +43 -43
  2326. package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +18 -18
  2327. package/vscode/src/vs/workbench/contrib/debug/browser/debugExpressionRenderer.js +2 -2
  2328. package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +10 -5
  2329. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +57 -57
  2330. package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +3 -3
  2331. package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +8 -8
  2332. package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +4 -4
  2333. package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +19 -19
  2334. package/vscode/src/vs/workbench/contrib/debug/browser/replFilter.js +1 -1
  2335. package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +5 -5
  2336. package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +18 -16
  2337. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +1 -1
  2338. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +191 -191
  2339. package/vscode/src/vs/workbench/contrib/debug/common/debug.service.d.ts +1 -2
  2340. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +15 -15
  2341. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  2342. package/vscode/src/vs/workbench/contrib/debug/common/debugUtils.js +2 -2
  2343. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +2 -2
  2344. package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +3 -3
  2345. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +3 -3
  2346. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/commands.js +2 -2
  2347. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/configurationSchema.js +6 -6
  2348. package/vscode/src/vs/workbench/contrib/editSessions/common/editSessions.service.d.ts +1 -1
  2349. package/vscode/src/vs/workbench/contrib/extensions/browser/configBasedRecommendations.js +3 -3
  2350. package/vscode/src/vs/workbench/contrib/extensions/browser/exeBasedRecommendations.js +5 -5
  2351. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEditor.js +48 -46
  2352. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEnablementWorkspaceTrustTransitionParticipant.js +1 -1
  2353. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionFeaturesTab.js +26 -22
  2354. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.js +25 -23
  2355. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationsService.js +2 -2
  2356. package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.contribution.js +227 -174
  2357. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +212 -207
  2358. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActivationProgress.js +1 -1
  2359. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsCompletionItemsProvider.js +3 -3
  2360. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsDependencyChecker.js +10 -8
  2361. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +25 -25
  2362. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsList.js +2 -2
  2363. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsQuickAccess.js +4 -4
  2364. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewer.js +11 -11
  2365. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewlet.js +82 -80
  2366. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViews.js +22 -22
  2367. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWidgets.js +31 -31
  2368. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.js +121 -118
  2369. package/vscode/src/vs/workbench/contrib/extensions/browser/fileBasedRecommendations.js +8 -3
  2370. package/vscode/src/vs/workbench/contrib/extensions/browser/keymapRecommendations.js +2 -2
  2371. package/vscode/src/vs/workbench/contrib/extensions/browser/languageRecommendations.js +2 -2
  2372. package/vscode/src/vs/workbench/contrib/extensions/browser/remoteRecommendations.js +2 -2
  2373. package/vscode/src/vs/workbench/contrib/extensions/browser/webRecommendations.js +3 -3
  2374. package/vscode/src/vs/workbench/contrib/extensions/browser/workspaceRecommendations.js +3 -3
  2375. package/vscode/src/vs/workbench/contrib/extensions/common/extensionQuery.js +2 -2
  2376. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +8 -8
  2377. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.service.d.ts +1 -2
  2378. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +5 -5
  2379. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +2 -2
  2380. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +17 -14
  2381. package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +6 -6
  2382. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +4 -4
  2383. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +10 -10
  2384. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.service.d.ts +1 -1
  2385. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +1 -1
  2386. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +8 -8
  2387. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditorTracker.js +4 -4
  2388. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +19 -19
  2389. package/vscode/src/vs/workbench/contrib/files/browser/explorerFileContrib.js +2 -2
  2390. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +15 -15
  2391. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +39 -39
  2392. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +113 -110
  2393. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +10 -10
  2394. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +13 -13
  2395. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +11 -11
  2396. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +48 -44
  2397. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +53 -53
  2398. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +2 -2
  2399. package/vscode/src/vs/workbench/contrib/files/browser/files.js +5 -3
  2400. package/vscode/src/vs/workbench/contrib/files/browser/files.service.d.ts +1 -1
  2401. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +1 -1
  2402. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +12 -12
  2403. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +37 -33
  2404. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +12 -12
  2405. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +4 -4
  2406. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +1 -1
  2407. package/vscode/src/vs/workbench/contrib/files/common/explorerFileNestingTrie.js +8 -6
  2408. package/vscode/src/vs/workbench/contrib/files/common/explorerModel.js +9 -8
  2409. package/vscode/src/vs/workbench/contrib/files/common/files.js +49 -49
  2410. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
  2411. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +24 -24
  2412. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +4 -4
  2413. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  2414. package/vscode/src/vs/workbench/contrib/git/common/gitService.service.d.ts +1 -1
  2415. package/vscode/src/vs/workbench/contrib/git/common/utils.d.ts +8 -0
  2416. package/vscode/src/vs/workbench/contrib/git/common/utils.js +105 -0
  2417. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +6 -6
  2418. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.d.ts +13 -0
  2419. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.js +133 -0
  2420. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordanceWidget.d.ts +23 -0
  2421. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordanceWidget.js +312 -0
  2422. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionResolver.service.d.ts +1 -1
  2423. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +23 -0
  2424. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +44 -0
  2425. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.service.d.ts +2 -3
  2426. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css +424 -0
  2427. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatEditorAffordance.css +46 -0
  2428. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.d.ts +44 -0
  2429. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +143 -0
  2430. package/vscode/src/vs/workbench/contrib/inlineCompletions/browser/inlineCompletionLanguageStatusBarContribution.js +6 -6
  2431. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveCommon.d.ts +7 -0
  2432. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveCommon.js +11 -0
  2433. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveDocumentService.service.d.ts +1 -2
  2434. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveHistoryService.service.d.ts +1 -1
  2435. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.d.ts +20 -0
  2436. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +150 -0
  2437. package/vscode/src/vs/workbench/contrib/issue/browser/recordingService.service.d.ts +1 -1
  2438. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.contribution.d.ts +1 -0
  2439. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.contribution.js +7 -0
  2440. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.d.ts +15 -0
  2441. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.js +444 -0
  2442. package/vscode/src/vs/workbench/contrib/languageStatus/browser/media/languageStatus.css +125 -0
  2443. package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +2 -2
  2444. package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +5 -5
  2445. package/vscode/src/vs/workbench/contrib/markdown/browser/markdownSettingRenderer.d.ts +43 -0
  2446. package/vscode/src/vs/workbench/contrib/markdown/browser/markdownSettingRenderer.js +330 -0
  2447. package/vscode/src/vs/workbench/contrib/markdown/common/markdownColors.d.ts +5 -0
  2448. package/vscode/src/vs/workbench/contrib/markdown/common/markdownColors.js +23 -0
  2449. package/vscode/src/vs/workbench/contrib/markers/common/markers.js +29 -29
  2450. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommandsAddConfiguration.js +73 -73
  2451. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerActions.js +44 -42
  2452. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpToolCallUI.d.ts +96 -0
  2453. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpToolCallUI.js +316 -0
  2454. package/vscode/src/vs/workbench/contrib/mcp/common/discovery/pluginMcpDiscovery.js +3 -1
  2455. package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfiguration.js +47 -47
  2456. package/vscode/src/vs/workbench/contrib/mcp/common/mcpDevMode.d.ts +1 -1
  2457. package/vscode/src/vs/workbench/contrib/mcp/common/mcpDevMode.js +116 -13
  2458. package/vscode/src/vs/workbench/contrib/mcp/common/mcpDevMode.service.d.ts +6 -0
  2459. package/vscode/src/vs/workbench/contrib/mcp/common/mcpDevMode.service.js +6 -0
  2460. package/vscode/src/vs/workbench/contrib/mcp/common/mcpGatewayService.service.d.ts +1 -1
  2461. package/vscode/src/vs/workbench/contrib/mcp/common/mcpIcons.js +2 -2
  2462. package/vscode/src/vs/workbench/contrib/mcp/common/mcpRegistryTypes.service.d.ts +1 -1
  2463. package/vscode/src/vs/workbench/contrib/mcp/common/mcpSandboxService.service.d.ts +1 -1
  2464. package/vscode/src/vs/workbench/contrib/mcp/common/mcpServer.js +39 -37
  2465. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +6 -6
  2466. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.service.d.ts +1 -2
  2467. package/vscode/src/vs/workbench/contrib/mcp/common/modelContextProtocolApps.d.ts +1 -0
  2468. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +5 -5
  2469. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +25 -25
  2470. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/diffComputer.js +3 -3
  2471. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/editing.js +4 -4
  2472. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mapping.js +8 -8
  2473. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +19 -13
  2474. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/modifiedBaseRange.js +7 -7
  2475. package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +24 -24
  2476. package/vscode/src/vs/workbench/contrib/modernUI/browser/media/tabs.css +1044 -0
  2477. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/actions.d.ts +28 -0
  2478. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/actions.js +274 -0
  2479. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +1 -1
  2480. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +6 -6
  2481. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorLayoutDebug.d.ts +24 -0
  2482. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorLayoutDebug.js +128 -0
  2483. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService.service.d.ts +1 -1
  2484. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +8 -5
  2485. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.d.ts +22 -0
  2486. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +338 -0
  2487. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/notebookVisibleCellObserver.d.ts +18 -0
  2488. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/notebookVisibleCellObserver.js +58 -0
  2489. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findMatchDecorationModel.js +5 -5
  2490. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +5 -2
  2491. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.d.ts +1 -1
  2492. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +18 -18
  2493. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.d.ts +75 -0
  2494. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +364 -0
  2495. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.d.ts +26 -0
  2496. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +746 -0
  2497. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.d.ts +6 -0
  2498. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +283 -0
  2499. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.d.ts +91 -0
  2500. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +340 -0
  2501. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.d.ts +17 -0
  2502. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +272 -0
  2503. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.d.ts +13 -0
  2504. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +300 -0
  2505. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.d.ts +8 -0
  2506. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.js +55 -0
  2507. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.d.ts +273 -0
  2508. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +1963 -0
  2509. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.d.ts +50 -0
  2510. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +314 -0
  2511. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.d.ts +258 -0
  2512. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.js +886 -0
  2513. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.d.ts +41 -0
  2514. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.js +122 -0
  2515. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/editorHeightCalculator.d.ts +17 -0
  2516. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/editorHeightCalculator.js +71 -0
  2517. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.d.ts +27 -0
  2518. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.js +40 -0
  2519. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookCellDiffDecorator.d.ts +23 -0
  2520. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookCellDiffDecorator.js +313 -0
  2521. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator.d.ts +51 -0
  2522. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator.js +265 -0
  2523. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiff.d.ts +24 -0
  2524. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiff.js +185 -0
  2525. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiffWidget.d.ts +28 -0
  2526. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiffWidget.js +104 -0
  2527. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator.d.ts +10 -0
  2528. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator.js +43 -0
  2529. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.d.ts +21 -0
  2530. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.js +41 -0
  2531. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.service.d.ts +1 -1
  2532. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.d.ts +25 -0
  2533. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.js +69 -0
  2534. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiff.css +469 -0
  2535. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.d.ts +149 -0
  2536. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +933 -0
  2537. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.d.ts +180 -0
  2538. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +32 -0
  2539. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.d.ts +102 -0
  2540. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +643 -0
  2541. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.d.ts +30 -0
  2542. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.js +197 -0
  2543. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel.d.ts +75 -0
  2544. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel.js +539 -0
  2545. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/unchangedEditorRegions.d.ts +13 -0
  2546. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/unchangedEditorRegions.js +39 -0
  2547. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebook.css +686 -0
  2548. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellChat.css +348 -0
  2549. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellEditorHint.css +8 -0
  2550. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellInsertToolbar.css +92 -0
  2551. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellOutput.css +119 -0
  2552. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellStatusBar.css +79 -0
  2553. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellTitleToolbar.css +61 -0
  2554. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookChatEditController.css +55 -0
  2555. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookChatEditorOverlay.css +63 -0
  2556. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookDnd.css +79 -0
  2557. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookEditorStickyScroll.css +63 -0
  2558. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookFocusIndicator.css +92 -0
  2559. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookFolding.css +79 -0
  2560. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookKernelActionViewItem.css +24 -0
  2561. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookOutline.css +61 -0
  2562. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookToolbar.css +102 -0
  2563. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.d.ts +27 -0
  2564. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +131 -0
  2565. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookBrowser.d.ts +3 -3
  2566. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookCellLayoutManager.d.ts +18 -0
  2567. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookCellLayoutManager.js +92 -0
  2568. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.d.ts +105 -0
  2569. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +673 -0
  2570. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorExtensions.d.ts +9 -0
  2571. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorExtensions.js +37 -0
  2572. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.d.ts +354 -0
  2573. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +2932 -0
  2574. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.d.ts +29 -0
  2575. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +36 -0
  2576. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookLogger.d.ts +1 -0
  2577. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookLogger.js +19 -0
  2578. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.d.ts +200 -0
  2579. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +591 -0
  2580. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookViewEvents.d.ts +56 -0
  2581. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookViewEvents.js +30 -0
  2582. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookEditorService.service.d.ts +2 -3
  2583. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellPart.d.ts +99 -0
  2584. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellPart.js +131 -0
  2585. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView.d.ts +30 -0
  2586. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView.js +115 -0
  2587. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.d.ts +28 -0
  2588. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.js +158 -0
  2589. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellContextKeys.d.ts +40 -0
  2590. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellContextKeys.js +183 -0
  2591. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDecorations.d.ts +10 -0
  2592. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDecorations.js +66 -0
  2593. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDnd.d.ts +52 -0
  2594. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDnd.js +429 -0
  2595. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDragRenderer.d.ts +6 -0
  2596. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDragRenderer.js +108 -0
  2597. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.d.ts +36 -0
  2598. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +221 -0
  2599. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellExecution.d.ts +17 -0
  2600. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellExecution.js +142 -0
  2601. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellFocus.d.ts +5 -0
  2602. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellFocus.js +23 -0
  2603. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellFocusIndicator.d.ts +18 -0
  2604. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellFocusIndicator.js +104 -0
  2605. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.d.ts +92 -0
  2606. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +767 -0
  2607. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellProgressBar.d.ts +15 -0
  2608. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellProgressBar.js +58 -0
  2609. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.d.ts +36 -0
  2610. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +357 -0
  2611. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbarStickyScroll.d.ts +6 -0
  2612. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbarStickyScroll.js +32 -0
  2613. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.d.ts +47 -0
  2614. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +260 -0
  2615. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellWidgets.d.ts +9 -0
  2616. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellWidgets.js +10 -0
  2617. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatPart.d.ts +10 -0
  2618. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatPart.js +24 -0
  2619. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.d.ts +182 -0
  2620. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +796 -0
  2621. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.d.ts +13 -0
  2622. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +79 -0
  2623. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.d.ts +30 -0
  2624. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +126 -0
  2625. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellInput.d.ts +6 -0
  2626. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellInput.js +32 -0
  2627. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.d.ts +8 -0
  2628. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.js +50 -0
  2629. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.d.ts +18 -0
  2630. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +119 -0
  2631. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.d.ts +57 -0
  2632. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +443 -0
  2633. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellAnchor.d.ts +20 -0
  2634. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellAnchor.js +56 -0
  2635. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellEditorPool.d.ts +24 -0
  2636. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellEditorPool.js +121 -0
  2637. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.d.ts +152 -0
  2638. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +1288 -0
  2639. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.d.ts +59 -0
  2640. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.js +287 -0
  2641. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookRenderingCommon.d.ts +117 -0
  2642. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookRenderingCommon.js +6 -0
  2643. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.d.ts +222 -0
  2644. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +1847 -0
  2645. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.d.ts +63 -0
  2646. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +449 -0
  2647. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewMessages.d.ts +432 -0
  2648. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.d.ts +18 -0
  2649. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +2548 -0
  2650. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewThemeMapping.d.ts +8 -0
  2651. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewThemeMapping.js +105 -0
  2652. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.d.ts +137 -0
  2653. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +646 -0
  2654. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellEditorOptions.d.ts +21 -0
  2655. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellEditorOptions.js +101 -0
  2656. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellOutputTextHelper.d.ts +13 -0
  2657. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellOutputTextHelper.js +111 -0
  2658. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellOutputViewModel.d.ts +30 -0
  2659. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellOutputViewModel.js +65 -0
  2660. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellSelectionCollection.d.ts +13 -0
  2661. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellSelectionCollection.js +49 -0
  2662. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.d.ts +89 -0
  2663. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +474 -0
  2664. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/eventDispatcher.d.ts +11 -0
  2665. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/eventDispatcher.js +34 -0
  2666. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/foldingModel.d.ts +33 -0
  2667. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/foldingModel.js +275 -0
  2668. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/markupCellViewModel.d.ts +69 -0
  2669. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/markupCellViewModel.js +269 -0
  2670. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.d.ts +125 -0
  2671. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +960 -0
  2672. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/viewContext.d.ts +9 -0
  2673. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/viewContext.js +11 -0
  2674. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookCellOverlays.d.ts +20 -0
  2675. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookCellOverlays.js +101 -0
  2676. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.d.ts +65 -0
  2677. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +458 -0
  2678. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.d.ts +80 -0
  2679. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +708 -0
  2680. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorWidgetContextKeys.d.ts +37 -0
  2681. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorWidgetContextKeys.js +193 -0
  2682. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookHorizontalTracker.d.ts +7 -0
  2683. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookHorizontalTracker.js +62 -0
  2684. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.d.ts +108 -0
  2685. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +719 -0
  2686. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.d.ts +23 -0
  2687. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +183 -0
  2688. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookOverviewRuler.d.ts +11 -0
  2689. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookOverviewRuler.js +134 -0
  2690. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.d.ts +20 -0
  2691. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +135 -0
  2692. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.d.ts +27 -0
  2693. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +213 -0
  2694. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellOutputTextModel.d.ts +27 -0
  2695. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellOutputTextModel.js +104 -0
  2696. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.d.ts +115 -0
  2697. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.js +480 -0
  2698. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookMetadataTextModel.d.ts +19 -0
  2699. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookMetadataTextModel.js +90 -0
  2700. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCellStatusBarService.service.d.ts +1 -2
  2701. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.d.ts +1 -1
  2702. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +10 -10
  2703. package/vscode/src/vs/workbench/contrib/notebook/common/notebookContextKeys.js +43 -42
  2704. package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiff.d.ts +26 -0
  2705. package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiff.js +92 -0
  2706. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.d.ts +1 -1
  2707. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +4 -4
  2708. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModelResolverService.service.d.ts +1 -2
  2709. package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionService.d.ts +1 -1
  2710. package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionService.service.d.ts +1 -1
  2711. package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionStateService.d.ts +81 -0
  2712. package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionStateService.js +9 -0
  2713. package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionStateService.service.d.ts +2 -3
  2714. package/vscode/src/vs/workbench/contrib/notebook/common/notebookKernelService.service.d.ts +1 -2
  2715. package/vscode/src/vs/workbench/contrib/notebook/common/notebookPerformance.d.ts +10 -0
  2716. package/vscode/src/vs/workbench/contrib/notebook/common/notebookPerformance.js +19 -0
  2717. package/vscode/src/vs/workbench/contrib/notebook/common/notebookRange.js +9 -9
  2718. package/vscode/src/vs/workbench/contrib/notebook/common/notebookRendererMessagingService.service.d.ts +1 -1
  2719. package/vscode/src/vs/workbench/contrib/notebook/common/notebookService.service.d.ts +2 -3
  2720. package/vscode/src/vs/workbench/contrib/notebook/common/services/notebookWorkerService.service.d.ts +1 -1
  2721. package/vscode/src/vs/workbench/contrib/onboarding/browser/media/onboardingTarget.css +28 -0
  2722. package/vscode/src/vs/workbench/contrib/onboarding/browser/sequence/runOnboardingStep.d.ts +17 -0
  2723. package/vscode/src/vs/workbench/contrib/onboarding/browser/sequence/runOnboardingStep.js +32 -0
  2724. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/onboardingTarget.d.ts +37 -0
  2725. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/onboardingTarget.js +48 -0
  2726. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes.d.ts +67 -0
  2727. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes.js +5 -0
  2728. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingRegistry.d.ts +21 -0
  2729. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingRegistry.js +35 -0
  2730. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenario.d.ts +172 -0
  2731. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenario.js +20 -0
  2732. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenarioService.d.ts +48 -0
  2733. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenarioService.js +19 -0
  2734. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenarioService.service.d.ts +1 -1
  2735. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingSequence.d.ts +45 -0
  2736. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingSequence.js +29 -0
  2737. package/vscode/src/vs/workbench/contrib/outline/browser/outline.js +8 -8
  2738. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +6 -6
  2739. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +13 -13
  2740. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +12 -12
  2741. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +60 -60
  2742. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +10 -8
  2743. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +16 -16
  2744. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +21 -21
  2745. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +17 -17
  2746. package/vscode/src/vs/workbench/contrib/remote/browser/remoteIcons.js +17 -17
  2747. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +83 -81
  2748. package/vscode/src/vs/workbench/contrib/replNotebook/browser/interactiveEditor.css +21 -0
  2749. package/vscode/src/vs/workbench/contrib/replNotebook/browser/media/interactive.css +36 -0
  2750. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.d.ts +110 -0
  2751. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +692 -0
  2752. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.d.ts +40 -0
  2753. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +158 -0
  2754. package/vscode/src/vs/workbench/contrib/scm/browser/quickDiffModel.service.d.ts +1 -1
  2755. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistory.js +20 -20
  2756. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.js +10 -10
  2757. package/vscode/src/vs/workbench/contrib/scm/browser/util.js +2 -2
  2758. package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.js +14 -14
  2759. package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.service.d.ts +1 -2
  2760. package/vscode/src/vs/workbench/contrib/scm/common/quickDiffService.js +2 -2
  2761. package/vscode/src/vs/workbench/contrib/scm/common/scm.service.d.ts +1 -2
  2762. package/vscode/src/vs/workbench/contrib/search/browser/AISearch/aiSearchModel.d.ts +1 -1
  2763. package/vscode/src/vs/workbench/contrib/search/browser/AISearch/aiSearchModel.js +1 -1
  2764. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +36 -34
  2765. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchContributions.d.ts +1 -0
  2766. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchModel.d.ts +1 -1
  2767. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchModel.js +22 -11
  2768. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchModelBase.d.ts +1 -1
  2769. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchService.js +9 -9
  2770. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/searchNotebookHelpers.js +2 -2
  2771. package/vscode/src/vs/workbench/contrib/search/browser/patternInputWidget.js +4 -4
  2772. package/vscode/src/vs/workbench/contrib/search/browser/replaceContributions.d.ts +1 -0
  2773. package/vscode/src/vs/workbench/contrib/search/browser/replaceContributions.js +15 -0
  2774. package/vscode/src/vs/workbench/contrib/search/browser/replaceService.d.ts +40 -0
  2775. package/vscode/src/vs/workbench/contrib/search/browser/replaceService.js +264 -0
  2776. package/vscode/src/vs/workbench/contrib/search/browser/search.common.contribution.d.ts +1 -0
  2777. package/vscode/src/vs/workbench/contrib/search/browser/search.common.contribution.js +148 -0
  2778. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +1 -1
  2779. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsSymbol.d.ts +1 -0
  2780. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsSymbol.js +41 -0
  2781. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsTopBar.js +9 -9
  2782. package/vscode/src/vs/workbench/contrib/search/browser/searchChatContext.js +11 -11
  2783. package/vscode/src/vs/workbench/contrib/search/browser/searchFindInput.js +1 -1
  2784. package/vscode/src/vs/workbench/contrib/search/browser/searchIcons.js +20 -20
  2785. package/vscode/src/vs/workbench/contrib/search/browser/searchMessage.js +2 -2
  2786. package/vscode/src/vs/workbench/contrib/search/browser/searchQuickAccess.contribution.js +38 -0
  2787. package/vscode/src/vs/workbench/contrib/search/browser/searchResultsView.js +15 -15
  2788. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/fileMatch.js +2 -2
  2789. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/folderMatch.d.ts +1 -1
  2790. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/match.js +2 -2
  2791. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/searchTreeCommon.d.ts +1 -1
  2792. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/searchTreeCommon.js +43 -24
  2793. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/textSearchHeading.js +1 -1
  2794. package/vscode/src/vs/workbench/contrib/search/browser/searchView.js +67 -67
  2795. package/vscode/src/vs/workbench/contrib/search/browser/searchWidget.js +11 -11
  2796. package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +2 -2
  2797. package/vscode/src/vs/workbench/contrib/search/common/cellSearchModel.js +4 -4
  2798. package/vscode/src/vs/workbench/contrib/search/common/constants.js +29 -29
  2799. package/vscode/src/vs/workbench/contrib/search/common/search.js +7 -7
  2800. package/vscode/src/vs/workbench/contrib/search/common/searchHistoryService.service.d.ts +1 -1
  2801. package/vscode/src/vs/workbench/contrib/search/common/searchNotebookHelpers.js +4 -4
  2802. package/vscode/src/vs/workbench/contrib/searchEditor/browser/constants.js +9 -9
  2803. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorActions.js +1 -1
  2804. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorInput.js +9 -9
  2805. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorSerialization.js +15 -13
  2806. package/vscode/src/vs/workbench/contrib/share/common/share.service.d.ts +1 -1
  2807. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
  2808. package/vscode/src/vs/workbench/contrib/snippets/browser/snippets.service.d.ts +1 -1
  2809. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +4 -4
  2810. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +11 -11
  2811. package/vscode/src/vs/workbench/contrib/snippets/browser/tabCompletion.js +3 -3
  2812. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +35 -35
  2813. package/vscode/src/vs/workbench/contrib/speech/common/speechService.service.d.ts +1 -1
  2814. package/vscode/src/vs/workbench/contrib/splash/browser/splash.service.d.ts +6 -0
  2815. package/vscode/src/vs/workbench/contrib/splash/browser/splash.service.js +6 -0
  2816. package/vscode/src/vs/workbench/contrib/tags/common/workspaceTags.service.d.ts +1 -1
  2817. package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +1 -1
  2818. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +7 -7
  2819. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +12 -12
  2820. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.service.d.ts +1 -2
  2821. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +4 -4
  2822. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostOutputChannel.d.ts +22 -0
  2823. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostOutputChannel.js +48 -0
  2824. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostPty.d.ts +129 -0
  2825. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostPty.js +439 -0
  2826. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostTerminalService.d.ts +77 -0
  2827. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostTerminalService.js +345 -0
  2828. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostTerminalService.service.d.ts +2 -2
  2829. package/vscode/src/vs/workbench/contrib/terminal/browser/ahpTerminalCommandSource.d.ts +111 -0
  2830. package/vscode/src/vs/workbench/contrib/terminal/browser/ahpTerminalCommandSource.js +138 -0
  2831. package/vscode/src/vs/workbench/contrib/terminal/browser/chatTerminalCommandMirror.d.ts +195 -0
  2832. package/vscode/src/vs/workbench/contrib/terminal/browser/chatTerminalCommandMirror.js +788 -0
  2833. package/vscode/src/vs/workbench/contrib/terminal/browser/detachedTerminal.d.ts +1 -1
  2834. package/vscode/src/vs/workbench/contrib/terminal/browser/environmentVariableInfo.d.ts +28 -0
  2835. package/vscode/src/vs/workbench/contrib/terminal/browser/environmentVariableInfo.js +119 -0
  2836. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +3 -3
  2837. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.d.ts +2 -2
  2838. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalActions.d.ts +104 -0
  2839. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalActions.js +1643 -0
  2840. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalContextMenu.d.ts +19 -0
  2841. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalContextMenu.js +54 -0
  2842. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +3 -3
  2843. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIconPicker.d.ts +12 -0
  2844. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIconPicker.js +78 -0
  2845. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcons.js +13 -13
  2846. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +43 -43
  2847. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessManager.d.ts +144 -0
  2848. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessManager.js +806 -0
  2849. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalResizeDebouncer.d.ts +17 -0
  2850. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalResizeDebouncer.js +83 -0
  2851. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalStatusList.d.ts +57 -0
  2852. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalStatusList.js +139 -0
  2853. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalTabsList.d.ts +45 -0
  2854. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalTabsList.js +807 -0
  2855. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalTooltip.d.ts +9 -0
  2856. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalTooltip.js +75 -0
  2857. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalUri.d.ts +18 -0
  2858. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalUri.js +51 -0
  2859. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.d.ts +79 -0
  2860. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +652 -0
  2861. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +15 -15
  2862. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/lineDataEventAddon.d.ts +17 -0
  2863. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/lineDataEventAddon.js +61 -0
  2864. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.d.ts +64 -0
  2865. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +566 -0
  2866. package/vscode/src/vs/workbench/contrib/terminal/common/basePty.d.ts +38 -0
  2867. package/vscode/src/vs/workbench/contrib/terminal/common/basePty.js +127 -0
  2868. package/vscode/src/vs/workbench/contrib/terminal/common/environmentVariable.d.ts +1 -1
  2869. package/vscode/src/vs/workbench/contrib/terminal/common/environmentVariable.service.d.ts +2 -2
  2870. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +1 -1
  2871. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +10 -10
  2872. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.service.d.ts +1 -1
  2873. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +23 -23
  2874. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +39 -39
  2875. package/vscode/src/vs/workbench/contrib/terminal/common/terminalEnvironment.d.ts +38 -0
  2876. package/vscode/src/vs/workbench/contrib/terminal/common/terminalEnvironment.js +321 -0
  2877. package/vscode/src/vs/workbench/contrib/terminal/common/terminalExtensionPoints.service.d.ts +1 -1
  2878. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStorageKeys.d.ts +12 -0
  2879. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStorageKeys.js +17 -0
  2880. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +26 -26
  2881. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/common/terminalAccessibilityConfiguration.js +5 -5
  2882. package/vscode/src/vs/workbench/contrib/terminalContrib/autoReplies/common/terminalAutoRepliesConfiguration.js +2 -2
  2883. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.js +77 -77
  2884. package/vscode/src/vs/workbench/contrib/terminalContrib/commandGuide/common/terminalCommandGuideConfiguration.js +1 -1
  2885. package/vscode/src/vs/workbench/contrib/terminalContrib/history/common/terminal.history.js +1 -1
  2886. package/vscode/src/vs/workbench/contrib/terminalContrib/inlineHint/common/terminalInitialHintConfiguration.js +1 -1
  2887. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/links.service.d.ts +1 -1
  2888. package/vscode/src/vs/workbench/contrib/terminalContrib/notification/common/terminalNotificationConfiguration.js +1 -1
  2889. package/vscode/src/vs/workbench/contrib/terminalContrib/quickFix/browser/quickFix.service.d.ts +1 -1
  2890. package/vscode/src/vs/workbench/contrib/terminalContrib/resizeDimensionsOverlay/common/terminalResizeDimensionsOverlayConfiguration.js +1 -1
  2891. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/media/stickyScroll.css +49 -0
  2892. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollColorRegistry.d.ts +2 -0
  2893. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollColorRegistry.js +25 -0
  2894. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/common/terminalStickyScrollConfiguration.js +3 -3
  2895. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/browser/terminalCompletionService.service.d.ts +1 -1
  2896. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.js +31 -31
  2897. package/vscode/src/vs/workbench/contrib/terminalContrib/typeAhead/common/terminalTypeAheadConfiguration.js +5 -5
  2898. package/vscode/src/vs/workbench/contrib/terminalContrib/zoom/common/terminal.zoom.js +2 -2
  2899. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +11 -11
  2900. package/vscode/src/vs/workbench/contrib/testing/common/testExplorerFilterState.service.d.ts +1 -1
  2901. package/vscode/src/vs/workbench/contrib/testing/common/testItemCollection.js +2 -2
  2902. package/vscode/src/vs/workbench/contrib/testing/common/testProfileService.service.d.ts +1 -1
  2903. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +12 -12
  2904. package/vscode/src/vs/workbench/contrib/testing/common/testResultService.service.d.ts +1 -1
  2905. package/vscode/src/vs/workbench/contrib/testing/common/testService.service.d.ts +1 -2
  2906. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +9 -9
  2907. package/vscode/src/vs/workbench/contrib/testing/common/testingContinuousRunService.service.d.ts +1 -1
  2908. package/vscode/src/vs/workbench/contrib/testing/common/testingDecorations.service.d.ts +1 -2
  2909. package/vscode/src/vs/workbench/contrib/testing/common/testingPeekOpener.service.d.ts +1 -1
  2910. package/vscode/src/vs/workbench/contrib/testing/common/testingStates.js +1 -1
  2911. package/vscode/src/vs/workbench/contrib/timeline/common/timeline.service.d.ts +1 -2
  2912. package/vscode/src/vs/workbench/contrib/update/browser/media/updateTitleBarEntry.css +91 -0
  2913. package/vscode/src/vs/workbench/contrib/update/browser/media/updateTooltip.css +165 -0
  2914. package/vscode/src/vs/workbench/contrib/update/browser/releaseNotesEditor.d.ts +67 -0
  2915. package/vscode/src/vs/workbench/contrib/update/browser/releaseNotesEditor.js +646 -0
  2916. package/vscode/src/vs/workbench/contrib/update/browser/update.d.ts +65 -0
  2917. package/vscode/src/vs/workbench/contrib/update/browser/update.js +498 -0
  2918. package/vscode/src/vs/workbench/contrib/update/browser/updateTitleBarEntry.d.ts +64 -0
  2919. package/vscode/src/vs/workbench/contrib/update/browser/updateTitleBarEntry.js +396 -0
  2920. package/vscode/src/vs/workbench/contrib/update/browser/updateTooltip.d.ts +61 -0
  2921. package/vscode/src/vs/workbench/contrib/update/browser/updateTooltip.js +395 -0
  2922. package/vscode/src/vs/workbench/contrib/update/common/update.js +2 -2
  2923. package/vscode/src/vs/workbench/contrib/update/common/updateUtils.d.ts +61 -0
  2924. package/vscode/src/vs/workbench/contrib/update/common/updateUtils.js +129 -0
  2925. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +6 -6
  2926. package/vscode/src/vs/workbench/contrib/url/common/trustedDomainService.service.d.ts +1 -2
  2927. package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +3 -3
  2928. package/vscode/src/vs/workbench/contrib/webview/browser/webview.js +3 -3
  2929. package/vscode/src/vs/workbench/contrib/webview/browser/webview.service.d.ts +1 -1
  2930. package/vscode/src/vs/workbench/contrib/webview/browser/webviewFindAccessibilityHelp.js +30 -30
  2931. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +3 -3
  2932. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.service.d.ts +1 -1
  2933. package/vscode/src/vs/workbench/contrib/webviewView/browser/webviewViewService.service.d.ts +1 -1
  2934. package/vscode/src/vs/workbench/contrib/welcomeAgentSessions/browser/agentSessionsWelcomeInput.js +1 -1
  2935. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedInput.js +2 -2
  2936. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.service.d.ts +1 -1
  2937. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingService.service.d.ts +1 -1
  2938. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingTypes.js +12 -12
  2939. package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +2 -2
  2940. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.js +2 -2
  2941. package/vscode/src/vs/workbench/services/activity/common/activity.service.d.ts +1 -1
  2942. package/vscode/src/vs/workbench/services/agentEditorComments/common/agentEditorComments.service.d.ts +1 -2
  2943. package/vscode/src/vs/workbench/services/agentHost/browser/agentSdkSetupService.service.d.ts +1 -1
  2944. package/vscode/src/vs/workbench/services/agentHost/browser/codexAccountService.js +8 -5
  2945. package/vscode/src/vs/workbench/services/agentHost/browser/codexAccountService.service.d.ts +1 -1
  2946. package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.service.d.ts +1 -1
  2947. package/vscode/src/vs/workbench/services/aiSettingsSearch/common/aiSettingsSearch.service.d.ts +1 -1
  2948. package/vscode/src/vs/workbench/services/authentication/browser/authenticationAccessService.service.d.ts +1 -1
  2949. package/vscode/src/vs/workbench/services/authentication/browser/authenticationMcpAccessService.service.d.ts +1 -1
  2950. package/vscode/src/vs/workbench/services/authentication/browser/authenticationMcpService.service.d.ts +1 -1
  2951. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +11 -11
  2952. package/vscode/src/vs/workbench/services/authentication/common/authentication.service.d.ts +1 -2
  2953. package/vscode/src/vs/workbench/services/authentication/common/authenticationQuery.service.d.ts +1 -1
  2954. package/vscode/src/vs/workbench/services/authentication/common/dynamicAuthenticationProviderStorage.service.d.ts +1 -1
  2955. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +7 -7
  2956. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.service.d.ts +1 -1
  2957. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.js +45 -45
  2958. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.service.d.ts +1 -1
  2959. package/vscode/src/vs/workbench/services/configuration/common/configuration.service.d.ts +1 -1
  2960. package/vscode/src/vs/workbench/services/configuration/common/jsonEditing.service.d.ts +1 -1
  2961. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverExpression.js +1 -1
  2962. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +16 -16
  2963. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +1 -1
  2964. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +16 -16
  2965. package/vscode/src/vs/workbench/services/dataChannel/browser/dataChannelService.js +15 -15
  2966. package/vscode/src/vs/workbench/services/decorations/common/decorations.service.d.ts +1 -2
  2967. package/vscode/src/vs/workbench/services/driver/browser/driver.js +1 -1
  2968. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +17 -17
  2969. package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.service.d.ts +1 -2
  2970. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.service.d.ts +1 -1
  2971. package/vscode/src/vs/workbench/services/editor/common/editorPaneService.service.d.ts +1 -1
  2972. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +6 -6
  2973. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.service.d.ts +1 -2
  2974. package/vscode/src/vs/workbench/services/editor/common/editorService.service.d.ts +1 -2
  2975. package/vscode/src/vs/workbench/services/environment/browser/environmentService.js +1 -1
  2976. package/vscode/src/vs/workbench/services/environment/common/environmentService.service.d.ts +1 -1
  2977. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionFeatures.service.d.ts +1 -1
  2978. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionGalleryAccount.service.d.ts +1 -1
  2979. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.service.d.ts +1 -2
  2980. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionsIcons.js +3 -3
  2981. package/vscode/src/vs/workbench/services/extensionRecommendations/common/extensionRecommendations.service.d.ts +1 -2
  2982. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +25 -19
  2983. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.service.d.ts +1 -1
  2984. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +13 -13
  2985. package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.js +2 -2
  2986. package/vscode/src/vs/workbench/services/extensions/common/extensions.service.d.ts +1 -1
  2987. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +93 -93
  2988. package/vscode/src/vs/workbench/services/extensions/common/workspaceContains.js +2 -2
  2989. package/vscode/src/vs/workbench/services/files/common/elevatedFileService.service.d.ts +1 -1
  2990. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +6 -6
  2991. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service.d.ts +1 -2
  2992. package/vscode/src/vs/workbench/services/history/common/history.service.d.ts +1 -1
  2993. package/vscode/src/vs/workbench/services/host/browser/host.service.d.ts +1 -1
  2994. package/vscode/src/vs/workbench/services/inlineCompletions/common/inlineCompletionsUnification.service.d.ts +1 -1
  2995. package/vscode/src/vs/workbench/services/language/common/languageService.js +27 -27
  2996. package/vscode/src/vs/workbench/services/languageDetection/common/languageDetectionWorkerService.service.d.ts +1 -1
  2997. package/vscode/src/vs/workbench/services/languageStatus/common/languageStatusService.service.d.ts +1 -1
  2998. package/vscode/src/vs/workbench/services/layout/browser/layoutService.service.d.ts +1 -1
  2999. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycle.service.d.ts +1 -1
  3000. package/vscode/src/vs/workbench/services/log/common/defaultLogLevels.service.d.ts +1 -2
  3001. package/vscode/src/vs/workbench/services/log/common/logConstants.js +1 -1
  3002. package/vscode/src/vs/workbench/services/mcp/common/mcpWorkbenchManagementService.js +6 -6
  3003. package/vscode/src/vs/workbench/services/mcp/common/mcpWorkbenchManagementService.service.d.ts +1 -2
  3004. package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.service.d.ts +1 -1
  3005. package/vscode/src/vs/workbench/services/outline/browser/outline.service.d.ts +1 -1
  3006. package/vscode/src/vs/workbench/services/output/common/output.js +15 -15
  3007. package/vscode/src/vs/workbench/services/output/common/output.service.d.ts +1 -3
  3008. package/vscode/src/vs/workbench/services/panecomposite/browser/panecomposite.service.d.ts +1 -1
  3009. package/vscode/src/vs/workbench/services/path/common/pathService.service.d.ts +1 -1
  3010. package/vscode/src/vs/workbench/services/policies/common/accountPolicyService.js +3 -3
  3011. package/vscode/src/vs/workbench/services/policies/common/accountPolicyService.service.d.ts +1 -1
  3012. package/vscode/src/vs/workbench/services/power/common/powerService.service.d.ts +1 -1
  3013. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +2 -2
  3014. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +12 -12
  3015. package/vscode/src/vs/workbench/services/preferences/common/preferences.service.d.ts +1 -2
  3016. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +4 -4
  3017. package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +15 -15
  3018. package/vscode/src/vs/workbench/services/preferences/common/preferencesValidation.js +38 -34
  3019. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +8 -8
  3020. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.service.d.ts +1 -1
  3021. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +20 -16
  3022. package/vscode/src/vs/workbench/services/search/common/fileSearchManager.js +3 -3
  3023. package/vscode/src/vs/workbench/services/search/common/ignoreFile.js +31 -33
  3024. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +21 -19
  3025. package/vscode/src/vs/workbench/services/search/common/search.js +5 -5
  3026. package/vscode/src/vs/workbench/services/search/common/searchExtConversionTypes.js +15 -13
  3027. package/vscode/src/vs/workbench/services/search/common/searchHelpers.js +5 -5
  3028. package/vscode/src/vs/workbench/services/search/common/textSearchManager.js +3 -3
  3029. package/vscode/src/vs/workbench/services/terminal/common/embedderTerminalService.service.d.ts +1 -1
  3030. package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +9 -9
  3031. package/vscode/src/vs/workbench/services/textMate/common/TMHelper.js +1 -1
  3032. package/vscode/src/vs/workbench/services/textfile/common/encoding.js +1 -1
  3033. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +3 -3
  3034. package/vscode/src/vs/workbench/services/textfile/common/textfiles.service.d.ts +1 -1
  3035. package/vscode/src/vs/workbench/services/themes/browser/modernTabColorCustomizations.d.ts +1 -0
  3036. package/vscode/src/vs/workbench/services/themes/browser/modernTabColorCustomizations.js +255 -0
  3037. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +20 -20
  3038. package/vscode/src/vs/workbench/services/themes/common/colorThemeData.js +14 -14
  3039. package/vscode/src/vs/workbench/services/themes/common/hostColorSchemeService.service.d.ts +1 -1
  3040. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
  3041. package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +26 -26
  3042. package/vscode/src/vs/workbench/services/themes/common/workbenchThemeService.service.d.ts +1 -1
  3043. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.service.d.ts +1 -2
  3044. package/vscode/src/vs/workbench/services/userActivity/common/userActivityService.service.d.ts +1 -1
  3045. package/vscode/src/vs/workbench/services/userDataProfile/browser/iconSelectBox.js +3 -3
  3046. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +5 -5
  3047. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.service.d.ts +1 -2
  3048. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +1 -1
  3049. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +19 -19
  3050. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.service.d.ts +1 -2
  3051. package/vscode/src/vs/workbench/services/views/common/viewsService.service.d.ts +1 -1
  3052. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +16 -16
  3053. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyEditorService.service.d.ts +1 -1
  3054. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyFileService.service.d.ts +1 -2
  3055. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyHistory.service.d.ts +1 -2
  3056. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyService.service.d.ts +1 -2
  3057. package/vscode/src/vs/workbench/services/workspaces/common/workspaceEditing.service.d.ts +1 -2
  3058. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +13 -13
  3059. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostLocationPreference.d.ts +0 -7
  3060. package/vscode/src/vs/platform/meteredConnection/common/meteredConnection.config.contribution.js +0 -32
  3061. package/vscode/src/vs/platform/meteredConnection/common/meteredConnection.d.ts +0 -44
  3062. package/vscode/src/vs/platform/meteredConnection/common/meteredConnection.js +0 -62
  3063. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnection.contribution.js +0 -55
  3064. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnectionStatus.d.ts +0 -13
  3065. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnectionStatus.js +0 -63
  3066. /package/vscode/src/vs/{platform/meteredConnection/common/meteredConnection.config.contribution.d.ts → workbench/browser/parts/titlebar/menubar.contribution.d.ts} +0 -0
  3067. /package/vscode/src/vs/workbench/contrib/{meteredConnection/browser/meteredConnection.contribution.d.ts → search/browser/searchQuickAccess.contribution.d.ts} +0 -0
@@ -0,0 +1,4132 @@
1
+
2
+ import { registerCss } from '../../../../../../../../css.js';
3
+ import { __decorate, __param } from '../../../../../../../../external/tslib/tslib.es6.js';
4
+ import * as aiCustomizationManagement from './media/aiCustomizationManagement.css';
5
+ import { $ as $$1, append, clearNode, addDisposableListener, getWindow, EventType, DisposableResizeObserver, isHTMLElement, EventHelper, addStandardDisposableListener, scheduleAtNextAnimationFrame, isAncestorOfActiveElement } from '../../../../../base/browser/dom.js';
6
+ import { Button } from '../../../../../base/browser/ui/button/button.js';
7
+ import { Checkbox, TriStateCheckbox } from '../../../../../base/browser/ui/toggle/toggle.js';
8
+ import { defaultCheckboxStyles, defaultButtonStyles } from '../../../../../platform/theme/browser/defaultStyles.js';
9
+ import { IContextMenuService } from '../../../../../platform/contextview/browser/contextView.service.js';
10
+ import { dirname as dirname$1 } from '../../../../../base/common/path.js';
11
+ import { status } from '../../../../../base/browser/ui/aria/aria.js';
12
+ import { RunOnceScheduler, timeout } from '../../../../../base/common/async.js';
13
+ import { CancellationToken } from '../../../../../base/common/cancellation.js';
14
+ import { VSBuffer } from '../../../../../base/common/buffer.js';
15
+ import { onUnexpectedError, getErrorMessage } from '../../../../../base/common/errors.js';
16
+ import { DisposableStore, MutableDisposable, toDisposable } from '../../../../../base/common/lifecycle.js';
17
+ import { Action } from '../../../../../base/common/actions.js';
18
+ import { Event } from '../../../../../base/common/event.js';
19
+ import { isMarkdownString, MarkdownString } from '../../../../../base/common/htmlContent.js';
20
+ import { ResourceMap, ResourceSet } from '../../../../../base/common/map.js';
21
+ import '../../../../../base/common/observableInternal/index.js';
22
+ import { SplitView, Sizing } from '../../../../../base/browser/ui/splitview/splitview.js';
23
+ import { Color } from '../../../../../base/common/color.js';
24
+ import { localize } from '../../../../../nls.js';
25
+ import { generateUuid } from '../../../../../base/common/uuid.js';
26
+ import { StorageScope, StorageTarget } from '../../../../../platform/storage/common/storage.js';
27
+ import { IStorageService } from '../../../../../platform/storage/common/storage.service.js';
28
+ import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.service.js';
29
+ import { IThemeService } from '../../../../../platform/theme/common/themeService.service.js';
30
+ import { IFileDialogService, IDialogService } from '../../../../../platform/dialogs/common/dialogs.service.js';
31
+ import { EditorPane } from '../../../../browser/parts/editor/editorPane.js';
32
+ import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js';
33
+ import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.service.js';
34
+ import { WorkbenchList } from '../../../../../platform/list/browser/listService.js';
35
+ import { ThemeIcon } from '../../../../../base/common/themables.js';
36
+ import { Codicon } from '../../../../../base/common/codicons.js';
37
+ import { KeyCode } from '../../../../../base/common/keyCodes.js';
38
+ import { IOpenerService } from '../../../../../platform/opener/common/opener.service.js';
39
+ import { getComparisonKey, isEqual, basename, dirname } from '../../../../../base/common/resources.js';
40
+ import { URI } from '../../../../../base/common/uri.js';
41
+ import { AICustomizationManagementEditorInput } from './aiCustomizationManagementEditorInput.js';
42
+ import { aiCustomizationManagementSectionRegistry } from './aiCustomizationManagementSectionRegistry.js';
43
+ import { AICustomizationListWidget } from './aiCustomizationListWidget.js';
44
+ import { ITEMS_MODEL_SECTIONS } from './aiCustomizationItemsModel.js';
45
+ import { IAICustomizationItemsModel } from './aiCustomizationItemsModel.service.js';
46
+ import { McpListWidget } from './mcpListWidget.js';
47
+ import { PluginListWidget } from './pluginListWidget.js';
48
+ import { ToolsListWidget } from './toolsListWidget.js';
49
+ import { AGENT_HOST_COPILOT_CLI_SESSION_TYPE } from '../agentSessions/agentHost/agentHostToolSetEnablementService.js';
50
+ import { AI_CUSTOMIZATION_MANAGEMENT_EDITOR_ID, CONTEXT_AI_CUSTOMIZATION_MANAGEMENT_EDITOR, CONTEXT_AI_CUSTOMIZATION_MANAGEMENT_SECTION, CONTEXT_AI_CUSTOMIZATION_MANAGEMENT_HARNESS, AI_CUSTOMIZATION_MANAGEMENT_SELECTED_SECTION_KEY, AI_CUSTOMIZATION_MANAGEMENT_SIDEBAR_WIDTH_KEY, SIDEBAR_DEFAULT_WIDTH, SIDEBAR_MAX_WIDTH, SIDEBAR_MIN_WIDTH, CONTENT_MIN_WIDTH } from './aiCustomizationManagement.js';
51
+ import { toolsIcon, pluginIcon, hookIcon, promptIcon, instructionsIcon, skillIcon, agentIcon } from './aiCustomizationIcons.js';
52
+ import { ChatModelsWidget } from '../chatManagement/chatModelsWidget.js';
53
+ import { PromptsType, Target } from '../../common/promptSyntax/promptTypes.js';
54
+ import { CustomizationMigrationType, isMcpServerCustomizationMigrationCandidate, getCustomizationMigrationTargetType, getMcpServerCustomizationMigrationCandidateKey } from '../../common/promptSyntax/service/customizationMigrationService.js';
55
+ import { ICustomizationMigrationService } from '../../common/promptSyntax/service/customizationMigrationService.service.js';
56
+ import { PromptsStorage } from '../../common/promptSyntax/service/promptsService.js';
57
+ import { IPromptsService } from '../../common/promptSyntax/service/promptsService.service.js';
58
+ import { AGENT_MD_FILENAME } from '../../common/promptSyntax/config/promptFileLocations.js';
59
+ import { PromptsConfig } from '../../common/promptSyntax/config/config.js';
60
+ import { getTarget, getAttributeDefinition } from '../../common/promptSyntax/languageProviders/promptFileAttributes.js';
61
+ import { NEW_SKILL_COMMAND_ID, NEW_AGENT_COMMAND_ID, NEW_INSTRUCTIONS_COMMAND_ID, NEW_PROMPT_COMMAND_ID } from '../promptSyntax/newPromptFileActions.js';
62
+ import { showConfigureHooksQuickPick } from '../promptSyntax/hookActions.js';
63
+ import { CustomizationLocationPicker, resolveWorkspaceTargetDirectory, resolveUserTargetDirectory } from './customizationCreatorService.js';
64
+ import { ICommandService } from '../../../../../platform/commands/common/commands.service.js';
65
+ import { AICustomizationManagementSection, AICustomizationSources } from '../../common/aiCustomizationWorkspaceService.js';
66
+ import { IAICustomizationWorkspaceService } from '../../common/aiCustomizationWorkspaceService.service.js';
67
+ import { hasReadableCustomizationContent } from '../../../../../platform/agentHost/common/agentHostCustomizationUri.js';
68
+ import { CodeEditorWidget } from '../../../../../editor/browser/widget/codeEditor/codeEditorWidget.js';
69
+ import { DomScrollableElement } from '../../../../../base/browser/ui/scrollbar/scrollableElement.js';
70
+ import { createTextBufferFactoryFromSnapshot } from '../../../../../editor/common/model/textModel.js';
71
+ import { IModelService } from '../../../../../editor/common/services/model.service.js';
72
+ import { ITextModelService } from '../../../../../editor/common/services/resolverService.service.js';
73
+ import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.service.js';
74
+ import { getSimpleEditorOptions } from '../../../codeEditor/browser/simpleEditorOptions.js';
75
+ import { IWorkingCopyService } from '../../../../services/workingCopy/common/workingCopyService.service.js';
76
+ import { IHoverService } from '../../../../../platform/hover/browser/hover.service.js';
77
+ import { FileSystemProviderCapabilities } from '../../../../../platform/files/common/files.js';
78
+ import { IFileService } from '../../../../../platform/files/common/files.service.js';
79
+ import { IMarkdownRendererService } from '../../../../../platform/markdown/browser/markdownRenderer.service.js';
80
+ import { INotificationService } from '../../../../../platform/notification/common/notification.service.js';
81
+ import { IQuickInputService } from '../../../../../platform/quickinput/common/quickInput.service.js';
82
+ import { getDefaultHoverDelegate } from '../../../../../base/browser/ui/hover/hoverDelegateFactory.js';
83
+ import { ScrollbarVisibility } from '../../../../../base/common/scrollable.js';
84
+ import { EmbeddedMcpServerDetail } from './embeddedMcpServerDetail.js';
85
+ import { EmbeddedAgentPluginDetail } from './embeddedAgentPluginDetail.js';
86
+ import { layoutVirtualizedSections, getVirtualizedSectionMinimumHeight, layoutVirtualizedSectionList } from './customizationCardList.js';
87
+ import { IMcpService, IMcpWorkbenchService } from '../../../mcp/common/mcpTypes.service.js';
88
+ import { IAgentHostCustomizationService } from '../agentSessions/agentHost/agentHostCustomizationService.service.js';
89
+ import { EmbeddedExtensionToolsDetail } from './embeddedExtensionToolsDetail.js';
90
+ import { ICustomizationHarnessService } from '../../common/customizationHarnessService.service.js';
91
+ import { ChatConfiguration } from '../../common/constants.js';
92
+ import { AICustomizationWelcomePage } from './aiCustomizationWelcomePage.js';
93
+ import { migrateCustomizations } from './customizationMigration.js';
94
+ import { CustomizationMigrationCategoryId, CUSTOMIZATION_MIGRATION_CATEGORIES, getCustomizationMigrationCategory } from './customizationMigrationCategories.js';
95
+ import { CustomizationMigrationDashboard } from './customizationMigrationDashboard.js';
96
+ import { IViewsService } from '../../../../services/views/common/viewsService.service.js';
97
+ import { ILabelService } from '../../../../../platform/label/common/label.service.js';
98
+ import { showNoFoldersDialog } from '../promptSyntax/pickers/askForPromptSourceFolder.js';
99
+ import { isAgentHostTarget } from '../../common/chatSessionsService.js';
100
+ import { autorun } from '../../../../../base/common/observableInternal/reactions/autorun.js';
101
+ import { Orientation } from '../../../../../base/browser/ui/sash/sash.js';
102
+
103
+ var AICustomizationManagementEditor_1;
104
+ registerCss(aiCustomizationManagement, 1);
105
+ const $ = $$1;
106
+ const homepageMigrationCategories = [
107
+ CustomizationMigrationCategoryId.PromptFiles,
108
+ CustomizationMigrationCategoryId.UserData,
109
+ CustomizationMigrationCategoryId.McpServers
110
+ ];
111
+ function isCurrentPluginContributionNavigation(
112
+ requestGeneration,
113
+ currentGeneration,
114
+ requestedSection,
115
+ selectedSection,
116
+ isListView
117
+ ) {
118
+ return requestGeneration === currentGeneration && requestedSection === selectedSection && isListView;
119
+ }
120
+ class SectionItemDelegate {
121
+ getHeight() {
122
+ return 26;
123
+ }
124
+ getTemplateId() {
125
+ return "sectionItem";
126
+ }
127
+ }
128
+ class SectionItemRenderer {
129
+ constructor(hoverService) {
130
+ this.hoverService = hoverService;
131
+ this.templateId = "sectionItem";
132
+ }
133
+ renderTemplate(container) {
134
+ container.classList.add("section-list-item");
135
+ const icon = append(container, $(".section-icon"));
136
+ const label = append(container, $(".section-label"));
137
+ const count = append(container, $(".section-count"));
138
+ const templateDisposables = ( new DisposableStore());
139
+ return {
140
+ container,
141
+ icon,
142
+ label,
143
+ count,
144
+ templateDisposables
145
+ };
146
+ }
147
+ renderElement(element, index, templateData) {
148
+ templateData.templateDisposables.clear();
149
+ templateData.icon.className = "section-icon";
150
+ templateData.icon.classList.add(...ThemeIcon.asClassNameArray(element.icon));
151
+ templateData.label.textContent = element.label;
152
+ if (element.count > 0) {
153
+ templateData.count.textContent = String(element.count);
154
+ templateData.count.style.display = "";
155
+ } else {
156
+ templateData.count.textContent = "";
157
+ templateData.count.style.display = "none";
158
+ }
159
+ templateData.templateDisposables.add(this.hoverService.setupManagedHover(
160
+ getDefaultHoverDelegate("element"),
161
+ templateData.container,
162
+ element.description
163
+ ));
164
+ }
165
+ disposeTemplate(templateData) {
166
+ templateData.templateDisposables.dispose();
167
+ }
168
+ }
169
+ const MIGRATION_ITEM_HEIGHT = 56;
170
+ class MigrationItemDelegate {
171
+ getHeight() {
172
+ return MIGRATION_ITEM_HEIGHT;
173
+ }
174
+ getTemplateId() {
175
+ return "migrationItem";
176
+ }
177
+ }
178
+ class MigrationItemRenderer {
179
+ constructor(
180
+ isSelected,
181
+ getPresentation,
182
+ onSelectionChange,
183
+ onOpen,
184
+ onMore,
185
+ onFirstFocusable,
186
+ hoverService
187
+ ) {
188
+ this.isSelected = isSelected;
189
+ this.getPresentation = getPresentation;
190
+ this.onSelectionChange = onSelectionChange;
191
+ this.onOpen = onOpen;
192
+ this.onMore = onMore;
193
+ this.onFirstFocusable = onFirstFocusable;
194
+ this.hoverService = hoverService;
195
+ this.templateId = "migrationItem";
196
+ this.templates = ( new Set());
197
+ }
198
+ renderTemplate(container) {
199
+ container.classList.add("ai-customization-list-item", "prompt-migration-item");
200
+ const templateDisposables = ( new DisposableStore());
201
+ const elementDisposables = templateDisposables.add(( new DisposableStore()));
202
+ const checkboxContainer = append(container, $(".item-sync-checkbox.prompt-migration-checkbox"));
203
+ const checkbox = templateDisposables.add(( new Checkbox("", false, defaultCheckboxStyles)));
204
+ checkboxContainer.replaceChildren(checkbox.domNode);
205
+ const itemLeft = append(container, $("span.item-left"));
206
+ const openButton = templateDisposables.add(( new Button(itemLeft, {})));
207
+ clearNode(openButton.element);
208
+ openButton.element.classList.add("item-text", "prompt-migration-open-button");
209
+ const openNameRow = append(openButton.element, $("span.item-name-row"));
210
+ const openNameLabel = append(openNameRow, $("span.item-name.prompt-migration-item-name"));
211
+ const openPathLabel = append(
212
+ openButton.element,
213
+ $("span.item-description.is-filename.prompt-migration-item-path")
214
+ );
215
+ const staticText = append(itemLeft, $("span.item-text.prompt-migration-static-text"));
216
+ const staticNameRow = append(staticText, $("span.item-name-row"));
217
+ const staticNameLabel = append(staticNameRow, $("span.item-name.prompt-migration-item-name"));
218
+ const staticPathLabel = append(
219
+ staticText,
220
+ $("span.item-description.is-filename.prompt-migration-item-path")
221
+ );
222
+ const itemRight = append(container, $("span.item-right"));
223
+ const moreButton = append(itemRight, $("button.icon-button.prompt-migration-more-action", {
224
+ type: "button"
225
+ }));
226
+ moreButton.classList.add(...ThemeIcon.asClassNameArray(Codicon.ellipsis));
227
+ const template = {
228
+ container,
229
+ checkbox,
230
+ openButton,
231
+ openNameLabel,
232
+ openPathLabel,
233
+ staticText,
234
+ staticNameLabel,
235
+ staticPathLabel,
236
+ moreButton,
237
+ templateDisposables,
238
+ elementDisposables,
239
+ hasFileActions: false
240
+ };
241
+ this.templates.add(template);
242
+ return template;
243
+ }
244
+ renderElement(customization, index, templateData) {
245
+ templateData.elementDisposables.clear();
246
+ templateData.container.removeAttribute("aria-selected");
247
+ templateData.currentIndex = index;
248
+ templateData.currentElement = customization;
249
+ const presentation = this.getPresentation(customization);
250
+ const file = presentation.file;
251
+ templateData.hasFileActions = file !== undefined;
252
+ this.updateCheckboxState(templateData, customization);
253
+ templateData.checkbox.domNode.setAttribute("aria-label", presentation.selectionAriaLabel);
254
+ templateData.openNameLabel.textContent = presentation.name;
255
+ templateData.openPathLabel.textContent = presentation.pathLabel;
256
+ templateData.staticNameLabel.textContent = presentation.name;
257
+ templateData.staticPathLabel.textContent = presentation.pathLabel;
258
+ templateData.openButton.element.style.display = file ? "" : "none";
259
+ templateData.staticText.style.display = file ? "none" : "";
260
+ templateData.moreButton.style.display = file ? "" : "none";
261
+ if (index === 0) {
262
+ this.onFirstFocusable(templateData.checkbox.domNode);
263
+ }
264
+ templateData.elementDisposables.add(templateData.checkbox.onChange(() => {
265
+ this.onSelectionChange(customization, templateData.checkbox.checked);
266
+ }));
267
+ if (file) {
268
+ templateData.openButton.element.setAttribute("aria-label", ( localize(8511, "Open {0}, {1}", presentation.name, presentation.pathLabel)));
269
+ templateData.moreButton.setAttribute("aria-label", ( localize(8512, "More actions for {0}", presentation.name)));
270
+ templateData.elementDisposables.add(templateData.openButton.onDidClick(() => this.onOpen(file)));
271
+ templateData.elementDisposables.add(this.hoverService.setupManagedHover(
272
+ getDefaultHoverDelegate("element"),
273
+ templateData.moreButton,
274
+ ( localize(8513, "More Actions"))
275
+ ));
276
+ templateData.elementDisposables.add(addDisposableListener(templateData.moreButton, "click", event => {
277
+ event.stopPropagation();
278
+ this.onMore(file, templateData.moreButton);
279
+ }));
280
+ } else {
281
+ templateData.openButton.element.removeAttribute("aria-label");
282
+ templateData.moreButton.removeAttribute("aria-label");
283
+ }
284
+ }
285
+ refreshSelectionState() {
286
+ for (const template of this.templates) {
287
+ if (template.currentElement) {
288
+ this.updateCheckboxState(template, template.currentElement);
289
+ }
290
+ }
291
+ }
292
+ updateCheckboxState(templateData, customization) {
293
+ const selected = this.isSelected(customization);
294
+ templateData.checkbox.checked = selected;
295
+ templateData.checkbox.domNode.setAttribute("aria-checked", String(selected));
296
+ }
297
+ getIndex(target) {
298
+ for (const template of this.templates) {
299
+ if (template.container.contains(target)) {
300
+ return template.currentIndex;
301
+ }
302
+ }
303
+ return undefined;
304
+ }
305
+ getControls(index) {
306
+ for (const template of this.templates) {
307
+ if (template.currentIndex === index) {
308
+ return template.hasFileActions ? [
309
+ template.checkbox.domNode,
310
+ template.openButton.element,
311
+ template.moreButton
312
+ ] : [template.checkbox.domNode];
313
+ }
314
+ }
315
+ return [];
316
+ }
317
+ disposeElement(_customization, _index, templateData) {
318
+ templateData.elementDisposables.clear();
319
+ templateData.currentIndex = undefined;
320
+ templateData.currentElement = undefined;
321
+ templateData.hasFileActions = false;
322
+ }
323
+ disposeTemplate(templateData) {
324
+ this.templates.delete(templateData);
325
+ templateData.templateDisposables.dispose();
326
+ }
327
+ }
328
+ let AICustomizationManagementEditor = class AICustomizationManagementEditor extends EditorPane {
329
+ static {
330
+ AICustomizationManagementEditor_1 = this;
331
+ }
332
+ static {
333
+ this.ID = AI_CUSTOMIZATION_MANAGEMENT_EDITOR_ID;
334
+ }
335
+ constructor(
336
+ group,
337
+ telemetryService,
338
+ themeService,
339
+ storageService,
340
+ instantiationService,
341
+ contextKeyService,
342
+ openerService,
343
+ commandService,
344
+ workspaceService,
345
+ promptsService,
346
+ customizationMigrationService,
347
+ textModelService,
348
+ configurationService,
349
+ workingCopyService,
350
+ hoverService,
351
+ markdownRendererService,
352
+ modelService,
353
+ quickInputService,
354
+ fileService,
355
+ notificationService,
356
+ fileDialogService,
357
+ dialogService,
358
+ contextMenuService,
359
+ harnessService,
360
+ viewsService,
361
+ labelService,
362
+ itemsModel,
363
+ mcpService,
364
+ mcpWorkbenchService,
365
+ agentHostCustomizationService
366
+ ) {
367
+ super(
368
+ AICustomizationManagementEditor_1.ID,
369
+ group,
370
+ telemetryService,
371
+ themeService,
372
+ storageService
373
+ );
374
+ this.storageService = storageService;
375
+ this.instantiationService = instantiationService;
376
+ this.openerService = openerService;
377
+ this.commandService = commandService;
378
+ this.workspaceService = workspaceService;
379
+ this.promptsService = promptsService;
380
+ this.customizationMigrationService = customizationMigrationService;
381
+ this.textModelService = textModelService;
382
+ this.configurationService = configurationService;
383
+ this.workingCopyService = workingCopyService;
384
+ this.hoverService = hoverService;
385
+ this.markdownRendererService = markdownRendererService;
386
+ this.modelService = modelService;
387
+ this.quickInputService = quickInputService;
388
+ this.fileService = fileService;
389
+ this.notificationService = notificationService;
390
+ this.fileDialogService = fileDialogService;
391
+ this.dialogService = dialogService;
392
+ this.contextMenuService = contextMenuService;
393
+ this.harnessService = harnessService;
394
+ this.viewsService = viewsService;
395
+ this.labelService = labelService;
396
+ this.itemsModel = itemsModel;
397
+ this.mcpService = mcpService;
398
+ this.mcpWorkbenchService = mcpWorkbenchService;
399
+ this.agentHostCustomizationService = agentHostCustomizationService;
400
+ this.contributedSectionContainers = ( new Map());
401
+ this.contributedSectionWidgets = ( new Map());
402
+ this.editorActionButtonInProgress = false;
403
+ this.editorDisplayMode = "preview";
404
+ this.editorModelChangeDisposables = this._register(( new DisposableStore()));
405
+ this.editorPreviewDisposables = this._register(( new DisposableStore()));
406
+ this.editorPreviewRenderScheduler = this._register(( new RunOnceScheduler(() => {
407
+ if (this.viewMode === "editor" && this.editorDisplayMode === "preview") {
408
+ this.renderCurrentEditorPreview();
409
+ }
410
+ }, 200)));
411
+ this.builtinEditingSessions = ( new Map());
412
+ this.currentEditingReadOnly = false;
413
+ this.editorReturnViewMode = "list";
414
+ this.viewMode = "list";
415
+ this.migrationSectionLists = [];
416
+ this.migrationSectionScrollPositions = ( new Map());
417
+ this.migrationWorkspaceSkipped = false;
418
+ this.selectedCustomizationMigrationItems = ( new ResourceMap());
419
+ this.selectedMcpServerMigrationItems = ( new Set());
420
+ this.knownMcpServerMigrationItems = ( new Set());
421
+ this.migrationSelectionContextKey = "";
422
+ this.selectedCustomizationMigrationTargets = ( new Map());
423
+ this.explicitlySelectedCustomizationMigrationTargets = ( new Set());
424
+ this.migrationPageDisposables = this._register(( new DisposableStore()));
425
+ this.migrationBannerDisposables = this._register(( new DisposableStore()));
426
+ this.mcpDetailDisposables = this._register(( new DisposableStore()));
427
+ this.pluginDetailDisposables = this._register(( new DisposableStore()));
428
+ this.toolsDetailDisposables = this._register(( new DisposableStore()));
429
+ this.sections = [];
430
+ this.allSections = [];
431
+ this.contentNavigationGeneration = 0;
432
+ this.customizationsByMigrationCategory = ( new Map());
433
+ this.customizationMigrationTargetFoldersByType = ( new Map());
434
+ this.customizationMigrationRefreshSequence = 0;
435
+ this.customizationMigrationLoading = false;
436
+ this.customizationMigrationInProgress = false;
437
+ this.customizationMigrationWritesInProgress = false;
438
+ this.editorDisposables = this._register(( new DisposableStore()));
439
+ this.pendingMigrationLayout = this._register(( new MutableDisposable()));
440
+ this._editorContentChanged = false;
441
+ this.sidebarWidth = 0;
442
+ this.sidebarHeight = 0;
443
+ this.inEditorContextKey = CONTEXT_AI_CUSTOMIZATION_MANAGEMENT_EDITOR.bindTo(contextKeyService);
444
+ this.sectionContextKey = CONTEXT_AI_CUSTOMIZATION_MANAGEMENT_SECTION.bindTo(contextKeyService);
445
+ this.harnessContextKey = CONTEXT_AI_CUSTOMIZATION_MANAGEMENT_HARNESS.bindTo(contextKeyService);
446
+ this.updateTargetLabelPresentation();
447
+ this._register(autorun(reader => {
448
+ this.workspaceService.activeProjectRoot.read(reader);
449
+ this.workspaceService.activeProjectLabel.read(reader);
450
+ this.updateTargetLabelPresentation();
451
+ if (this.viewMode === "editor") {
452
+ this.currentEditingProjectRoot = this.workspaceService.getActiveProjectRoot();
453
+ }
454
+ }));
455
+ this._register(toDisposable(() => {
456
+ this.currentModelRef?.dispose();
457
+ this.currentModelRef = undefined;
458
+ }));
459
+ this._register(toDisposable(() => this.disposeBuiltinEditingSessions()));
460
+ const sectionInfo = {
461
+ [AICustomizationManagementSection.Agents]: {
462
+ label: ( localize(8514, "Agents")),
463
+ icon: agentIcon,
464
+ description: ( localize(
465
+ 8515,
466
+ "Define custom agents with specialized personas, tool access, and instructions for specific tasks."
467
+ ))
468
+ },
469
+ [AICustomizationManagementSection.Skills]: {
470
+ label: ( localize(8516, "Skills")),
471
+ icon: skillIcon,
472
+ description: ( localize(
473
+ 8517,
474
+ "Create reusable skill files that provide domain-specific knowledge and workflows."
475
+ ))
476
+ },
477
+ [AICustomizationManagementSection.Instructions]: {
478
+ label: ( localize(8518, "Instructions")),
479
+ icon: instructionsIcon,
480
+ description: ( localize(
481
+ 8519,
482
+ "Set always-on instructions that guide AI behavior across your workspace or user profile."
483
+ ))
484
+ },
485
+ [AICustomizationManagementSection.Prompts]: {
486
+ label: ( localize(8520, "Prompts")),
487
+ icon: promptIcon,
488
+ description: ( localize(8521, "Reusable prompt templates that can be invoked as slash commands."))
489
+ },
490
+ [AICustomizationManagementSection.Hooks]: {
491
+ label: ( localize(8522, "Hooks")),
492
+ icon: hookIcon,
493
+ description: ( localize(
494
+ 8523,
495
+ "Configure automated actions triggered by events like saving files or running tasks."
496
+ ))
497
+ },
498
+ [AICustomizationManagementSection.McpServers]: {
499
+ label: ( localize(8524, "MCP Servers")),
500
+ icon: Codicon.server,
501
+ description: ( localize(
502
+ 8525,
503
+ "Connect external tool servers that extend AI capabilities with custom tools and data sources."
504
+ ))
505
+ },
506
+ [AICustomizationManagementSection.Plugins]: {
507
+ label: ( localize(8526, "Plugins")),
508
+ icon: pluginIcon,
509
+ description: ( localize(
510
+ 8527,
511
+ "Install and manage agent plugins that add additional tools, skills, and integrations."
512
+ ))
513
+ },
514
+ [AICustomizationManagementSection.Models]: {
515
+ label: ( localize(8528, "Models")),
516
+ icon: Codicon.vm,
517
+ description: ( localize(8529, "Configure and manage language models available for use."))
518
+ },
519
+ [AICustomizationManagementSection.Tools]: {
520
+ label: ( localize(8530, "Tools")),
521
+ icon: toolsIcon,
522
+ description: ( localize(
523
+ 8531,
524
+ "Enable or disable groups of language model tools available to chat."
525
+ ))
526
+ }
527
+ };
528
+ const activeHarnessId = this.harnessService.activeHarness.get();
529
+ for (const id of this.workspaceService.managementSections) {
530
+ const contribution = aiCustomizationManagementSectionRegistry.get(id, activeHarnessId) ?? aiCustomizationManagementSectionRegistry.getDefault(id);
531
+ const info = contribution ?? sectionInfo[id];
532
+ if (info) {
533
+ this.allSections.push({
534
+ id,
535
+ label: info.label,
536
+ icon: info.icon,
537
+ description: info.description,
538
+ count: 0
539
+ });
540
+ }
541
+ }
542
+ this.rebuildVisibleSections();
543
+ const savedSection = this.storageService.get(AI_CUSTOMIZATION_MANAGEMENT_SELECTED_SECTION_KEY, StorageScope.PROFILE);
544
+ if (savedSection && ( this.sections.some(s => s.id === savedSection))) {
545
+ this.selectedSection = savedSection;
546
+ } else {
547
+ this.selectedSection = undefined;
548
+ }
549
+ }
550
+ createEditor(parent) {
551
+ this.pendingMigrationLayout.clear();
552
+ this.editorDisposables.clear();
553
+ this.contributedSectionContainers.clear();
554
+ this.contributedSectionWidgets.clear();
555
+ this.container = append(parent, $(".ai-customization-management-editor"));
556
+ this.createSplitView();
557
+ this.updateStyles();
558
+ }
559
+ createSplitView() {
560
+ this.splitViewContainer = append(this.container, $(".management-split-view"));
561
+ this.sidebarContainer = $(".management-sidebar");
562
+ this.contentContainer = $(".management-content");
563
+ this.createSidebar();
564
+ this.createContent();
565
+ this.splitView = this.editorDisposables.add(( new SplitView(this.splitViewContainer, {
566
+ orientation: Orientation.HORIZONTAL,
567
+ proportionalLayout: true
568
+ })));
569
+ const savedWidth = this.storageService.getNumber(
570
+ AI_CUSTOMIZATION_MANAGEMENT_SIDEBAR_WIDTH_KEY,
571
+ StorageScope.PROFILE,
572
+ SIDEBAR_DEFAULT_WIDTH
573
+ );
574
+ this.splitView.addView({
575
+ onDidChange: Event.None,
576
+ element: this.sidebarContainer,
577
+ minimumSize: SIDEBAR_MIN_WIDTH,
578
+ maximumSize: SIDEBAR_MAX_WIDTH,
579
+ layout: (width, _, height) => {
580
+ this.sidebarContainer.style.width = `${width}px`;
581
+ if (height !== undefined) {
582
+ this.layoutSidebar(width, height);
583
+ }
584
+ }
585
+ }, savedWidth, undefined, true);
586
+ this.splitView.addView({
587
+ onDidChange: Event.None,
588
+ element: this.contentContainer,
589
+ minimumSize: CONTENT_MIN_WIDTH,
590
+ maximumSize: Number.POSITIVE_INFINITY,
591
+ layout: (width, _, height) => {
592
+ this.contentContainer.style.width = `${width}px`;
593
+ if (height !== undefined) {
594
+ if (this.promptsContentContainer?.style.display !== "none") {
595
+ this.listWidget.layout(height - 16, width - 24);
596
+ }
597
+ if (this.mcpContentContainer?.style.display !== "none") {
598
+ this.mcpListWidget?.layout(height - 16, width - 24);
599
+ }
600
+ if (this.pluginContentContainer?.style.display !== "none") {
601
+ this.pluginListWidget?.layout(height - 16, width - 24);
602
+ }
603
+ if (this.toolsContentContainer?.style.display !== "none") {
604
+ this.toolsListWidget?.layout(height - 16, width - 24);
605
+ }
606
+ const modelsFooterHeight = this.modelsFooterElement?.offsetHeight || 80;
607
+ this.modelsWidget?.layout(height - 16 - modelsFooterHeight, width);
608
+ if (this.viewMode === "editor" && this.embeddedEditor && this.embeddedEditorContainer) {
609
+ const {
610
+ clientWidth,
611
+ clientHeight
612
+ } = this.embeddedEditorContainer;
613
+ if (clientWidth > 0 && clientHeight > 0) {
614
+ this.embeddedEditor.layout({
615
+ width: clientWidth,
616
+ height: clientHeight
617
+ });
618
+ } else if (this.dimension) {
619
+ getWindow(this.embeddedEditorContainer).requestAnimationFrame(() => {
620
+ if (this.embeddedEditor && this.embeddedEditorContainer) {
621
+ const {
622
+ clientWidth: w,
623
+ clientHeight: h
624
+ } = this.embeddedEditorContainer;
625
+ if (w > 0 && h > 0) {
626
+ this.embeddedEditor.layout({
627
+ width: w,
628
+ height: h
629
+ });
630
+ }
631
+ }
632
+ });
633
+ }
634
+ }
635
+ }
636
+ }
637
+ }, Sizing.Distribute, undefined, true);
638
+ this.editorDisposables.add(this.splitView.onDidSashChange(() => {
639
+ const width = this.splitView.getViewSize(0);
640
+ this.storageService.store(
641
+ AI_CUSTOMIZATION_MANAGEMENT_SIDEBAR_WIDTH_KEY,
642
+ width,
643
+ StorageScope.PROFILE,
644
+ StorageTarget.USER
645
+ );
646
+ }));
647
+ this.editorDisposables.add(this.splitView.onDidSashReset(() => {
648
+ const totalWidth = this.splitView.getViewSize(0) + this.splitView.getViewSize(1);
649
+ this.splitView.resizeView(0, SIDEBAR_DEFAULT_WIDTH);
650
+ this.splitView.resizeView(1, totalWidth - SIDEBAR_DEFAULT_WIDTH);
651
+ }));
652
+ }
653
+ getActiveHarnessLabel() {
654
+ const label = this.harnessService.getActiveDescriptor().label;
655
+ return label || (this.workspaceService.isSessionsWindow ? "" : ( localize(8532, "Local")));
656
+ }
657
+ updateTargetLabelPresentation() {
658
+ const harnessLabel = this.getActiveHarnessLabel();
659
+ const workspaceLabel = this.workspaceService.activeProjectLabel.get();
660
+ this.welcomePage?.setHarnessLabel(harnessLabel);
661
+ if (this.input instanceof AICustomizationManagementEditorInput) {
662
+ this.input.setTargetLabels(harnessLabel, workspaceLabel);
663
+ }
664
+ }
665
+ rebuildVisibleSections() {
666
+ const activeId = this.harnessService.activeHarness.get();
667
+ const descriptor = this.harnessService.findHarnessById(activeId);
668
+ const hidden = ( new Set(descriptor?.hiddenSections ?? []));
669
+ this.sections.length = 0;
670
+ for (const s of this.allSections) {
671
+ const contribution = aiCustomizationManagementSectionRegistry.get(s.id, activeId);
672
+ const contributed = ( aiCustomizationManagementSectionRegistry.has(s.id));
673
+ if (!( hidden.has(s.id)) && (!contributed || !!contribution)) {
674
+ this.sections.push(contribution ? {
675
+ ...s,
676
+ label: contribution.label,
677
+ icon: contribution.icon,
678
+ description: contribution.description
679
+ } : s);
680
+ }
681
+ }
682
+ if (this.sectionsList) {
683
+ this.sectionsList.splice(0, this.sectionsList.length, this.sections);
684
+ this.layoutSidebar(this.sidebarWidth, this.sidebarHeight);
685
+ }
686
+ this.welcomePage?.rebuildCards(( new Set(this.sections.map(s => s.id))));
687
+ if (this.selectedSection !== undefined && !( this.sections.some(s => s.id === this.selectedSection)) && this.sections.length > 0) {
688
+ this.showWelcomePage();
689
+ } else {
690
+ this.ensureSectionsListReflectsActiveSection();
691
+ }
692
+ }
693
+ createSidebar() {
694
+ const sidebarContent = append(this.sidebarContainer, $(".sidebar-content"));
695
+ this.createSidebarHeader(sidebarContent);
696
+ const sectionsListContainer = this.sectionsListContainer = append(sidebarContent, $(".sidebar-sections-list"));
697
+ this.sectionsList = this.editorDisposables.add(this.instantiationService.createInstance(
698
+ WorkbenchList,
699
+ "AICustomizationManagementSections",
700
+ sectionsListContainer,
701
+ ( new SectionItemDelegate()),
702
+ [( new SectionItemRenderer(this.hoverService))],
703
+ {
704
+ multipleSelectionSupport: false,
705
+ setRowLineHeight: false,
706
+ horizontalScrolling: false,
707
+ accessibilityProvider: {
708
+ getAriaLabel: item => item.count > 0 ? ( localize(8533, "{0}, {1} items", item.label, item.count)) : item.label,
709
+ getWidgetAriaLabel: () => ( localize(8534, "Agent Customization Sections"))
710
+ },
711
+ openOnSingleClick: true,
712
+ identityProvider: {
713
+ getId: item => item.id
714
+ }
715
+ }
716
+ ));
717
+ this.sectionsList.splice(0, this.sectionsList.length, this.sections);
718
+ this.ensureSectionsListReflectsActiveSection();
719
+ this.editorDisposables.add(this.sectionsList.onDidChangeSelection(e => {
720
+ if (e.elements.length === 0) {
721
+ if (this.selectedSection !== undefined) {
722
+ this.showWelcomePage();
723
+ }
724
+ return;
725
+ }
726
+ this.selectSection(e.elements[0].id);
727
+ }));
728
+ this.editorDisposables.add(autorun(reader => {
729
+ this.harnessService.availableHarnesses.read(reader);
730
+ const activeId = this.harnessService.activeHarness.read(reader);
731
+ this.harnessContextKey.set(activeId);
732
+ this.updateHomeButtonHarnessPresentation();
733
+ this.rebuildVisibleSections();
734
+ if (this._previousActiveHarnessId !== undefined && this._previousActiveHarnessId !== activeId) {
735
+ for (const [section, widget] of this.contributedSectionWidgets) {
736
+ this.editorDisposables.delete(widget);
737
+ this.contributedSectionContainers.get(section)?.replaceChildren();
738
+ }
739
+ this.contributedSectionWidgets.clear();
740
+ for (const section of this.sections) {
741
+ this.updateSectionCount(section.id, 0);
742
+ }
743
+ }
744
+ this._previousActiveHarnessId = activeId;
745
+ }));
746
+ this.editorDisposables.add(this.configurationService.onDidChangeConfiguration(e => {
747
+ if (e.affectsConfiguration(ChatConfiguration.ChatCustomizationsStructuredPreviewEnabled)) {
748
+ this.onStructuredPreviewSettingChanged();
749
+ }
750
+ if (( CUSTOMIZATION_MIGRATION_CATEGORIES.some(
751
+ category => e.affectsConfiguration(category.enablementSetting) || category.configurationSettingIds?.some(settingId => e.affectsConfiguration(settingId))
752
+ ))) {
753
+ void this.refreshCustomizationMigrationInfo();
754
+ }
755
+ }));
756
+ this.createSidebarMigrationShortcut(sidebarContent);
757
+ }
758
+ layoutSidebar(width, height) {
759
+ this.sidebarWidth = width;
760
+ this.sidebarHeight = height;
761
+ if (!this.sectionsListContainer) {
762
+ return;
763
+ }
764
+ const headerHeight = this.sidebarHeaderContainer?.offsetHeight ?? 0;
765
+ const migrationHeight = this.migrationShortcutContainer?.style.display !== "none" ? (this.migrationShortcutContainer?.offsetHeight ?? 0) : 0;
766
+ const availableListHeight = Math.max(0, height - 8 - headerHeight - migrationHeight);
767
+ const listHeight = Math.min(availableListHeight, this.sections.length * 26);
768
+ this.sectionsListContainer.style.height = `${listHeight}px`;
769
+ this.sectionsList.layout(listHeight, width);
770
+ }
771
+ createSidebarHeader(sidebarContent) {
772
+ const headerRow = this.sidebarHeaderContainer = append(sidebarContent, $(".sidebar-header-row"));
773
+ const homeButton = this.homeButton = append(headerRow, $("button.sidebar-home-button"));
774
+ homeButton.classList.add("sidebar-harness-home-button");
775
+ homeButton.setAttribute("aria-label", ( localize(8535, "Overview")));
776
+ this.editorDisposables.add(
777
+ this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), homeButton, ( localize(8536, "Back to overview")))
778
+ );
779
+ const homeIcon = this.homeButtonIcon = append(homeButton, $("span.sidebar-home-icon"));
780
+ homeIcon.classList.add(...ThemeIcon.asClassNameArray(Codicon.home));
781
+ homeIcon.setAttribute("aria-hidden", "true");
782
+ const homeLabel = this.homeButtonLabel = append(homeButton, $("span.sidebar-home-label"));
783
+ homeLabel.textContent = ( localize(8537, "Overview"));
784
+ this.editorDisposables.add(addDisposableListener(homeButton, "click", () => {
785
+ this.showWelcomePage();
786
+ }));
787
+ this.updateHomeButtonHarnessPresentation();
788
+ this.updateHomeButtonStyle();
789
+ }
790
+ updateHomeButtonStyle() {
791
+ if (!this.homeButtonLabel || !this.homeButton) {
792
+ return;
793
+ }
794
+ this.homeButtonLabel.style.display = "";
795
+ this.homeButton.style.flex = "1";
796
+ }
797
+ updateHomeButtonHarnessPresentation() {
798
+ this.updateTargetLabelPresentation();
799
+ if (!this.homeButton || !this.homeButtonIcon || !this.homeButtonLabel) {
800
+ return;
801
+ }
802
+ this.homeButtonIcon.className = "sidebar-home-icon";
803
+ this.homeButtonIcon.classList.add(...ThemeIcon.asClassNameArray(Codicon.home));
804
+ this.homeButtonLabel.textContent = ( localize(8537, "Overview"));
805
+ this.homeButton.setAttribute("aria-label", ( localize(8535, "Overview")));
806
+ this.homeButton.title = ( localize(8536, "Back to overview"));
807
+ }
808
+ createSidebarMigrationShortcut(sidebarContent) {
809
+ const container = this.migrationShortcutContainer = append(sidebarContent, $(".sidebar-migration-shortcut"));
810
+ container.style.display = "none";
811
+ append(container, $("div.sidebar-migration-separator"));
812
+ const button = this.migrationShortcutButton = append(container, $("button.sidebar-migration-button"));
813
+ button.type = "button";
814
+ button.setAttribute("aria-label", ( localize(8538, "Migrations")));
815
+ this.editorDisposables.add(
816
+ this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), button, ( localize(8539, "Review customizations that need migration")))
817
+ );
818
+ const icon = append(button, $("span.sidebar-migration-icon"));
819
+ icon.classList.add(...ThemeIcon.asClassNameArray(Codicon.warning));
820
+ icon.setAttribute("aria-hidden", "true");
821
+ append(button, $("span.sidebar-migration-label")).textContent = ( localize(8540, "Migrations"));
822
+ this.migrationShortcutCount = append(button, $("span.sidebar-migration-count"));
823
+ this.editorDisposables.add(
824
+ addDisposableListener(button, "click", () => this.showCustomizationMigrationDashboard())
825
+ );
826
+ }
827
+ createWelcomePage(parent) {
828
+ this.welcomePage = this.editorDisposables.add(( new AICustomizationWelcomePage(parent, this.workspaceService.welcomePageFeatures, {
829
+ selectSection: section => this.selectSection(section),
830
+ selectSectionWithMarketplace: section => this.selectSection(section, {
831
+ showMarketplace: true
832
+ }),
833
+ closeEditor: () => {
834
+ if (this.input) {
835
+ this.group.closeEditor(this.input);
836
+ }
837
+ },
838
+ reviewMigrations: () => {
839
+ this.showCustomizationMigrationDashboard();
840
+ },
841
+ prefillChat: async (query, options) => {
842
+ try {
843
+ if (this.workspaceService.isSessionsWindow) {
844
+ const sessionsViewId = "workbench.view.sessions.chat";
845
+ if (options?.newChat) {
846
+ await this.commandService.executeCommand("workbench.action.sessions.newChat");
847
+ }
848
+ const view = await this.viewsService.openView(sessionsViewId, true);
849
+ const chatView = view;
850
+ if (options?.isPartialQuery && chatView?.prefillInput) {
851
+ chatView.prefillInput(query);
852
+ } else if (chatView?.sendQuery) {
853
+ chatView.sendQuery(query);
854
+ }
855
+ } else {
856
+ if (options?.newChat) {
857
+ await this.commandService.executeCommand("workbench.action.chat.newChat");
858
+ }
859
+ await this.commandService.executeCommand("workbench.action.chat.open", {
860
+ query,
861
+ isPartialQuery: options?.isPartialQuery ?? false
862
+ });
863
+ }
864
+ } catch (err) {
865
+ onUnexpectedError(err);
866
+ }
867
+ }
868
+ }, this.commandService, this.workspaceService, this.hoverService, this.getActiveHarnessLabel())));
869
+ this.welcomePage.rebuildCards(( new Set(this.sections.map(s => s.id))));
870
+ this.welcomePage.setMigrationCategories(this.getMigrationCategorySummaries());
871
+ }
872
+ createBackArrowButton(
873
+ onClick,
874
+ ariaLabel = ( localize(8541, "Back to overview")),
875
+ tooltip = ( localize(8542, "Back to overview"))
876
+ ) {
877
+ const button = $("button.section-back-arrow-button");
878
+ button.type = "button";
879
+ button.setAttribute("aria-label", ariaLabel);
880
+ this.editorDisposables.add(
881
+ this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), button, tooltip)
882
+ );
883
+ const icon = append(button, $("span.section-back-arrow-icon"));
884
+ icon.classList.add(...ThemeIcon.asClassNameArray(Codicon.arrowLeft));
885
+ icon.setAttribute("aria-hidden", "true");
886
+ this.editorDisposables.add(addDisposableListener(button, "click", () => {
887
+ if (onClick) {
888
+ onClick();
889
+ } else {
890
+ this.showWelcomePage();
891
+ }
892
+ }));
893
+ return button;
894
+ }
895
+ createCustomizationMigrationContent(contentInner) {
896
+ this.migrationContentContainer = append(
897
+ contentInner,
898
+ $(".prompt-migration-content-container.ai-customization-list-widget")
899
+ );
900
+ const header = this.migrationHeader = append(this.migrationContentContainer, $(".section-title-header"));
901
+ const titleRow = append(header, $(".section-title-row"));
902
+ this.migrationBackButton = this.createBackArrowButton(() => this.showCustomizationMigrationDashboard(), ( localize(8543, "Back to customization migrations")), ( localize(8544, "Back to customization migrations")));
903
+ titleRow.appendChild(this.migrationBackButton);
904
+ this.migrationTitleElement = append(titleRow, $("h2.section-title"));
905
+ this.migrationDescriptionElement = append(header, $("p.section-title-description"));
906
+ this.migrationDescriptionTextElement = append(this.migrationDescriptionElement, $("span.section-title-description-text"));
907
+ const sectionLink = this.migrationLinkElement = append(
908
+ this.migrationDescriptionElement,
909
+ $("a.section-title-link.migration-learn-more-link")
910
+ );
911
+ this.editorDisposables.add(addDisposableListener(sectionLink, "click", e => {
912
+ e.preventDefault();
913
+ this.openerService.open(( URI.parse(sectionLink.href)));
914
+ }));
915
+ this.migrationBannerContainer = append(this.migrationContentContainer, $(".customization-migration-banner"));
916
+ this.migrationBannerContainer.style.display = "none";
917
+ const migrationScrollContainer = $(".prompt-migration-scroll-container");
918
+ this.migrationListContainer = append(
919
+ migrationScrollContainer,
920
+ $(".prompt-migration-list.list-container.distributed-section-layout")
921
+ );
922
+ const migrationListScrollable = this.editorDisposables.add(( new DomScrollableElement(migrationScrollContainer, {
923
+ horizontal: ScrollbarVisibility.Hidden,
924
+ vertical: ScrollbarVisibility.Auto,
925
+ useShadows: false
926
+ })));
927
+ this.migrationListScrollable = migrationListScrollable;
928
+ this.editorDisposables.add(
929
+ addDisposableListener(migrationScrollContainer, EventType.SCROLL, () => {
930
+ migrationListScrollable.setScrollPosition({
931
+ scrollTop: migrationScrollContainer.scrollTop
932
+ });
933
+ })
934
+ );
935
+ const migrationListScrollableNode = migrationListScrollable.getDomNode();
936
+ migrationListScrollableNode.classList.add("prompt-migration-list-scrollable");
937
+ this.migrationContentContainer.appendChild(migrationListScrollableNode);
938
+ const footer = this.migrationFooter = append(this.migrationContentContainer, $(".prompt-migration-footer"));
939
+ this.migrationSelectedCountElement = append(footer, $("span.prompt-migration-selected-count"));
940
+ this.migrationSelectedCountElement.setAttribute("aria-live", "polite");
941
+ const clearSettingsLabel = ( localize(8545, "Clear unused location settings after migration"));
942
+ this.migrationClearSettingsCheckbox = this.editorDisposables.add(( new Checkbox(clearSettingsLabel, true, defaultCheckboxStyles)));
943
+ const actionButtonContainer = append(footer, $(".list-add-button-container"));
944
+ this.migrationMigrateButton = this.editorDisposables.add(( new Button(actionButtonContainer, defaultButtonStyles)));
945
+ this.migrationMigrateButton.element.classList.add("list-add-button", "prompt-migration-button");
946
+ this.editorDisposables.add(this.hoverService.setupManagedHover(
947
+ getDefaultHoverDelegate("element"),
948
+ this.migrationMigrateButton.element,
949
+ () => this.getActiveMigrationCategory()?.migrateButtonTooltip ?? ( localize(8546, "Migrate all customizations"))
950
+ ));
951
+ this.editorDisposables.add(this.migrationMigrateButton.onDidClick(() => {
952
+ const category = this.getActiveMigrationCategory();
953
+ if (!category) {
954
+ return;
955
+ }
956
+ const selectedCustomizations = this.getMigrationCandidates(category, this.activeMigrationStorage).filter(customization => this.isCustomizationSelectedForMigration(customization));
957
+ void this.migrateSelectedCustomizations(category, selectedCustomizations);
958
+ }));
959
+ const targetWindow = getWindow(this.migrationContentContainer);
960
+ const migrationResizeObserver = this.editorDisposables.add(new DisposableResizeObserver(
961
+ "AICustomizationManagementEditor.promptMigrationListScrollable",
962
+ () => this.scheduleMigrationSectionLayout(),
963
+ targetWindow
964
+ ));
965
+ this.editorDisposables.add(migrationResizeObserver.observe(migrationListScrollableNode));
966
+ this.migrationDashboardContainer = $(".customization-migration-dashboard-container");
967
+ this.migrationDashboardScrollable = this.editorDisposables.add(( new DomScrollableElement(this.migrationDashboardContainer, {
968
+ horizontal: ScrollbarVisibility.Hidden,
969
+ vertical: ScrollbarVisibility.Auto,
970
+ useShadows: false
971
+ })));
972
+ const dashboardScrollableNode = this.migrationDashboardScrollable.getDomNode();
973
+ dashboardScrollableNode.classList.add("customization-migration-dashboard-scrollable");
974
+ this.migrationContentContainer.appendChild(dashboardScrollableNode);
975
+ const migrationDashboardResizeObserver = this.editorDisposables.add(new DisposableResizeObserver(
976
+ "AICustomizationManagementEditor.customizationMigrationDashboard",
977
+ () => this.migrationDashboardScrollable?.scanDomNode(),
978
+ targetWindow
979
+ ));
980
+ this.editorDisposables.add(migrationDashboardResizeObserver.observe(dashboardScrollableNode));
981
+ this.editorDisposables.add(migrationDashboardResizeObserver.observe(this.migrationDashboardContainer));
982
+ this.migrationDashboard = this.editorDisposables.add(
983
+ this.instantiationService.createInstance(CustomizationMigrationDashboard, this.migrationDashboardContainer, {
984
+ onDidChangeContent: () => this.migrationDashboardScrollable?.scanDomNode(),
985
+ configureLocations: storage => void this.configureCustomizationMigrationLocations(storage).finally(() => this.migrationDashboard?.focusDestination(storage)),
986
+ dismissResult: () => {
987
+ this.migrationResult = undefined;
988
+ this.renderCustomizationMigrationPage();
989
+ },
990
+ reviewCategory: (id, storage) => void this.showCustomizationMigrationPage(id, storage),
991
+ setWorkspaceSkipped: skipped => {
992
+ this.migrationWorkspaceSkipped = skipped;
993
+ this.storeMigrationActivityState(PromptsStorage.local, {
994
+ ...this.getMigrationActivityState(PromptsStorage.local),
995
+ skipped
996
+ });
997
+ this.refreshCustomizationMigrationUi();
998
+ },
999
+ dismissActivity: id => {
1000
+ for (const storage of [PromptsStorage.user, PromptsStorage.local]) {
1001
+ const state = this.getMigrationActivityState(storage);
1002
+ this.storeMigrationActivityState(storage, {
1003
+ ...state,
1004
+ activity: state.activity.filter(entry => entry.id !== id)
1005
+ });
1006
+ }
1007
+ this.renderCustomizationMigrationPage();
1008
+ }
1009
+ })
1010
+ );
1011
+ this.renderCustomizationMigrationPage();
1012
+ if (this.viewMode === "migration") {
1013
+ this.scheduleMigrationSectionLayout();
1014
+ }
1015
+ }
1016
+ createContent() {
1017
+ const contentInner = append(this.contentContainer, $(".content-inner"));
1018
+ this.createWelcomePage(contentInner);
1019
+ this.editorDisposables.add(Event.any(
1020
+ this.promptsService.onDidChangeSlashCommands,
1021
+ this.promptsService.onDidChangeCustomAgents,
1022
+ this.promptsService.onDidChangeInstructions,
1023
+ this.promptsService.onDidChangeAgentInstructions
1024
+ )(() => this.refreshCustomizationMigrationInfoFromPromptChange()));
1025
+ this.editorDisposables.add(
1026
+ this.agentHostCustomizationService.onDidChangeCustomizations(() => this.refreshCustomizationMigrationInfoFromMcpChange())
1027
+ );
1028
+ this.editorDisposables.add(
1029
+ Event.any(this.mcpWorkbenchService.onChange, this.mcpWorkbenchService.onReset)(() => this.refreshCustomizationMigrationInfoFromMcpChange())
1030
+ );
1031
+ this.editorDisposables.add(autorun(reader => {
1032
+ for (const server of this.mcpService.servers.read(reader)) {
1033
+ server.enablement.read(reader);
1034
+ server.readDefinitions().read(reader);
1035
+ }
1036
+ this.refreshCustomizationMigrationInfoFromMcpChange();
1037
+ }));
1038
+ this.registerCustomizationMigrationSessionRefresh();
1039
+ this.promptsContentContainer = append(contentInner, $(".prompts-content-container"));
1040
+ this.listWidget = this.editorDisposables.add(this.instantiationService.createInstance(AICustomizationListWidget));
1041
+ this.promptsContentContainer.appendChild(this.listWidget.element);
1042
+ this.createCustomizationMigrationContent(contentInner);
1043
+ this.editorDisposables.add(this.listWidget.onDidSelectItem(item => {
1044
+ this.telemetryService.publicLog2("chatCustomizationEditor.itemSelected", {
1045
+ section: this.selectedSection ?? "welcome",
1046
+ promptType: item.promptType,
1047
+ storage: item.source ?? "external"
1048
+ });
1049
+ const source = item.source;
1050
+ const isWorkspaceFile = source === AICustomizationSources.local;
1051
+ const isReadOnly = !source || source === AICustomizationSources.extension || source === AICustomizationSources.plugin || source === AICustomizationSources.builtin;
1052
+ this.showEmbeddedEditor(
1053
+ item.uri,
1054
+ item.name,
1055
+ item.promptType,
1056
+ source ?? AICustomizationSources.builtin,
1057
+ isWorkspaceFile,
1058
+ isReadOnly
1059
+ );
1060
+ }));
1061
+ this.editorDisposables.add(this.listWidget.onDidRequestCreate(promptType => {
1062
+ this.createNewItemWithAI(promptType);
1063
+ }));
1064
+ this.editorDisposables.add(this.listWidget.onDidRequestCreateManual((
1065
+ {
1066
+ type,
1067
+ target,
1068
+ rootFileName
1069
+ }
1070
+ ) => {
1071
+ this.createNewItemManual(type, target, rootFileName);
1072
+ }));
1073
+ const hasSections = ( new Set(this.workspaceService.managementSections));
1074
+ if (( hasSections.has(AICustomizationManagementSection.Models))) {
1075
+ this.modelsContentContainer = append(contentInner, $(".models-content-container"));
1076
+ const modelsBackBar = append(this.modelsContentContainer, $(".section-back-bar"));
1077
+ modelsBackBar.appendChild(this.createBackArrowButton());
1078
+ this.modelsWidget = this.editorDisposables.add(this.instantiationService.createInstance(ChatModelsWidget));
1079
+ this.modelsContentContainer.appendChild(this.modelsWidget.element);
1080
+ this.modelsFooterElement = append(this.modelsContentContainer, $(".section-footer"));
1081
+ const modelsDescription = append(this.modelsFooterElement, $("p.section-footer-description"));
1082
+ modelsDescription.textContent = ( localize(
1083
+ 8547,
1084
+ "Browse and manage language models from different providers. Select models for use in chat, code completion, and other AI features."
1085
+ ));
1086
+ const modelsLink = append(this.modelsFooterElement, $("a.section-footer-link"));
1087
+ modelsLink.textContent = ( localize(8548, "Learn more about language models"));
1088
+ modelsLink.href = "https://code.visualstudio.com/docs/agent-customization/language-models?referrer=in-product";
1089
+ this.editorDisposables.add(addDisposableListener(modelsLink, "click", e => {
1090
+ e.preventDefault();
1091
+ this.openerService.open(( URI.parse(modelsLink.href)));
1092
+ }));
1093
+ }
1094
+ if (( hasSections.has(AICustomizationManagementSection.McpServers))) {
1095
+ this.mcpContentContainer = append(contentInner, $(".mcp-content-container"));
1096
+ this.mcpListWidget = this.editorDisposables.add(this.instantiationService.createInstance(McpListWidget));
1097
+ this.mcpContentContainer.appendChild(this.mcpListWidget.element);
1098
+ this.mcpDetailContainer = append(contentInner, $(".mcp-detail-container"));
1099
+ this.editorDisposables.add(this.mcpListWidget.onDidSelectServer(server => {
1100
+ this.showEmbeddedMcpDetail(server);
1101
+ }));
1102
+ this.editorDisposables.add(this.mcpListWidget.onDidRequestShowPlugin(item => {
1103
+ this.showPluginDetail(item);
1104
+ }));
1105
+ }
1106
+ if (( hasSections.has(AICustomizationManagementSection.Plugins))) {
1107
+ this.pluginContentContainer = append(contentInner, $(".plugin-content-container"));
1108
+ this.pluginListWidget = this.editorDisposables.add(this.instantiationService.createInstance(PluginListWidget, undefined));
1109
+ this.pluginContentContainer.appendChild(this.pluginListWidget.element);
1110
+ this.pluginDetailContainer = append(contentInner, $(".plugin-detail-container"));
1111
+ this.createEmbeddedPluginDetail();
1112
+ this.editorDisposables.add(this.pluginListWidget.onDidSelectPlugin(item => {
1113
+ this.pluginDetailReturnSection = undefined;
1114
+ this.showEmbeddedPluginDetail(item);
1115
+ }));
1116
+ }
1117
+ if (( hasSections.has(AICustomizationManagementSection.Tools))) {
1118
+ this.toolsContentContainer = append(contentInner, $(".tools-content-container"));
1119
+ this.toolsListWidget = this.editorDisposables.add(
1120
+ this.instantiationService.createInstance(ToolsListWidget, AGENT_HOST_COPILOT_CLI_SESSION_TYPE)
1121
+ );
1122
+ this.toolsContentContainer.appendChild(this.toolsListWidget.element);
1123
+ this.toolsDetailContainer = append(contentInner, $(".tools-detail-container"));
1124
+ this.createEmbeddedToolDetail();
1125
+ this.editorDisposables.add(this.toolsListWidget.onDidSelectExtension(extension => {
1126
+ this.showEmbeddedToolDetail(extension);
1127
+ }));
1128
+ }
1129
+ for (const section of this.workspaceService.managementSections) {
1130
+ if (!( aiCustomizationManagementSectionRegistry.has(section))) {
1131
+ continue;
1132
+ }
1133
+ const container = append(contentInner, $(".contributed-section-container"));
1134
+ this.contributedSectionContainers.set(section, container);
1135
+ }
1136
+ this.editorContentContainer = append(contentInner, $(".editor-content-container"));
1137
+ this.createEmbeddedEditor();
1138
+ this.updateContentVisibility();
1139
+ this.editorDisposables.add(this.listWidget.onDidChangeItemCount(count => {
1140
+ if (this.isPromptsSection(this.selectedSection)) {
1141
+ this.updateSectionCount(this.selectedSection, count);
1142
+ }
1143
+ }));
1144
+ if (this.mcpListWidget) {
1145
+ this.editorDisposables.add(this.mcpListWidget.onDidChangeItemCount(count => {
1146
+ this.updateSectionCount(AICustomizationManagementSection.McpServers, count);
1147
+ }));
1148
+ this.mcpListWidget.fireItemCount();
1149
+ }
1150
+ if (this.pluginListWidget) {
1151
+ this.editorDisposables.add(this.pluginListWidget.onDidChangeItemCount(count => {
1152
+ this.updateSectionCount(AICustomizationManagementSection.Plugins, count);
1153
+ }));
1154
+ this.pluginListWidget.fireItemCount();
1155
+ }
1156
+ if (this.modelsWidget) {
1157
+ this.editorDisposables.add(this.modelsWidget.onDidChangeItemCount(count => {
1158
+ this.updateSectionCount(AICustomizationManagementSection.Models, count);
1159
+ }));
1160
+ this.modelsWidget.fireItemCount();
1161
+ }
1162
+ if (this.toolsListWidget) {
1163
+ this.editorDisposables.add(this.toolsListWidget.onDidChangeItemCount(count => {
1164
+ this.updateSectionCount(AICustomizationManagementSection.Tools, count);
1165
+ }));
1166
+ this.toolsListWidget.fireItemCount();
1167
+ }
1168
+ for (const section of ITEMS_MODEL_SECTIONS) {
1169
+ const observable = this.itemsModel.getCount(section);
1170
+ this.editorDisposables.add(autorun(reader => {
1171
+ this.updateSectionCount(section, observable.read(reader));
1172
+ }));
1173
+ }
1174
+ if (this.isPromptsSection(this.selectedSection)) {
1175
+ void this.listWidget.setSection(this.selectedSection);
1176
+ }
1177
+ void this.refreshCustomizationMigrationInfo();
1178
+ }
1179
+ registerCustomizationMigrationSessionRefresh() {
1180
+ this.editorDisposables.add(autorun(reader => {
1181
+ this.harnessService.activeSessionResource.read(reader);
1182
+ this.workspaceService.activeProjectRoot.read(reader);
1183
+ this.activeMigrationStorage = undefined;
1184
+ this.migrationWorkspaceSkipped = this.getMigrationActivityState(PromptsStorage.local).skipped;
1185
+ this.migrationResult = undefined;
1186
+ void this.refreshCustomizationMigrationInfo();
1187
+ }));
1188
+ }
1189
+ refreshCustomizationMigrationInfoFromPromptChange() {
1190
+ if (!this.customizationMigrationWritesInProgress) {
1191
+ void this.refreshCustomizationMigrationInfo();
1192
+ }
1193
+ }
1194
+ refreshCustomizationMigrationInfoFromMcpChange() {
1195
+ if (!this.customizationMigrationWritesInProgress) {
1196
+ void this.refreshCustomizationMigrationInfo();
1197
+ }
1198
+ }
1199
+ async refreshCustomizationMigrationInfo() {
1200
+ const activeHarnessId = this.harnessService.activeHarness.get();
1201
+ const activeSessionResource = this.harnessService.activeSessionResource.get();
1202
+ const projectRoot = this.workspaceService.activeProjectRoot.get();
1203
+ const selectionContextKey = `${activeHarnessId}\n${( activeSessionResource.toString())}\n${projectRoot ? getComparisonKey(projectRoot) : ""}`;
1204
+ if (selectionContextKey !== this.migrationSelectionContextKey) {
1205
+ this.migrationSelectionContextKey = selectionContextKey;
1206
+ this.knownMcpServerMigrationItems.clear();
1207
+ this.selectedMcpServerMigrationItems.clear();
1208
+ this.selectedCustomizationMigrationTargets.clear();
1209
+ this.explicitlySelectedCustomizationMigrationTargets.clear();
1210
+ }
1211
+ const refreshSequence = ++this.customizationMigrationRefreshSequence;
1212
+ this.customizationMigrationLoading = true;
1213
+ this.customizationMigrationLoadError = undefined;
1214
+ this.renderCustomizationMigrationPage();
1215
+ if (!isAgentHostTarget(activeHarnessId)) {
1216
+ this.customizationMigrationLoading = false;
1217
+ this.setCustomizationsToMigrate(( new Map()), ( new Map()));
1218
+ return;
1219
+ }
1220
+ try {
1221
+ const enabledCategories = this.getEnabledMigrationCategories();
1222
+ if (enabledCategories.length === 0) {
1223
+ this.customizationMigrationLoading = false;
1224
+ this.setCustomizationsToMigrate(( new Map()), ( new Map()));
1225
+ return;
1226
+ }
1227
+ const migrationsByCategory = await Promise.all(enabledCategories.map(async category => {
1228
+ let migration;
1229
+ switch (category.migrationType) {
1230
+ case CustomizationMigrationType.McpServers:
1231
+ migration = await this.customizationMigrationService.computeMigration(activeSessionResource, CustomizationMigrationType.McpServers);
1232
+ break;
1233
+ default:
1234
+ migration = await this.customizationMigrationService.computeMigration(activeSessionResource, category.migrationType);
1235
+ break;
1236
+ }
1237
+ return [category.id, migration];
1238
+ }));
1239
+ if (refreshSequence !== this.customizationMigrationRefreshSequence || activeHarnessId !== this.harnessService.activeHarness.get() || !isEqual(activeSessionResource, this.harnessService.activeSessionResource.get())) {
1240
+ return;
1241
+ }
1242
+ const candidatesByCategory = ( new Map(
1243
+ migrationsByCategory.map(([categoryId, migration]) => [categoryId, migration.candidates])
1244
+ ));
1245
+ const provider = this.harnessService.findHarnessById(activeHarnessId)?.itemProvider;
1246
+ const targetTypes = ( new Set([...( candidatesByCategory.values())].flat().filter(candidate => !isMcpServerCustomizationMigrationCandidate(candidate)).map(getCustomizationMigrationTargetType)));
1247
+ const targetFolderEntries = await Promise.all([...targetTypes].map(async targetType => {
1248
+ const folders = await provider?.provideSourceFolders?.(activeSessionResource, targetType, CancellationToken.None);
1249
+ return [targetType, folders ?? []];
1250
+ }));
1251
+ if (refreshSequence !== this.customizationMigrationRefreshSequence || activeHarnessId !== this.harnessService.activeHarness.get() || !isEqual(activeSessionResource, this.harnessService.activeSessionResource.get())) {
1252
+ return;
1253
+ }
1254
+ const targetFoldersByType = ( new Map(targetFolderEntries));
1255
+ this.customizationMigrationLoading = false;
1256
+ this.setCustomizationsToMigrate(candidatesByCategory, targetFoldersByType);
1257
+ } catch (error) {
1258
+ if (refreshSequence === this.customizationMigrationRefreshSequence) {
1259
+ this.customizationMigrationLoading = false;
1260
+ this.customizationMigrationLoadError = getErrorMessage(error);
1261
+ this.renderCustomizationMigrationPage();
1262
+ }
1263
+ onUnexpectedError(error);
1264
+ }
1265
+ }
1266
+ setCustomizationsToMigrate(candidatesByCategory, targetFoldersByType) {
1267
+ const previousFileItems = this.createCustomizationMigrationItemMap(
1268
+ this.getAllMigrationCandidates().filter(candidate => !isMcpServerCustomizationMigrationCandidate(candidate))
1269
+ );
1270
+ const selectedItems = ( new ResourceMap());
1271
+ for (const customization of [...( candidatesByCategory.values())].flat()) {
1272
+ if (isMcpServerCustomizationMigrationCandidate(customization)) {
1273
+ const key = getMcpServerCustomizationMigrationCandidateKey(customization);
1274
+ if (!( this.knownMcpServerMigrationItems.has(key))) {
1275
+ this.knownMcpServerMigrationItems.add(key);
1276
+ this.selectedMcpServerMigrationItems.add(key);
1277
+ }
1278
+ } else if (!this.hasCustomizationMigrationItem(previousFileItems, customization) || this.isCustomizationSelectedForMigration(customization)) {
1279
+ this.addCustomizationMigrationItem(selectedItems, customization);
1280
+ }
1281
+ }
1282
+ this.selectedCustomizationMigrationItems = selectedItems;
1283
+ this.customizationsByMigrationCategory = candidatesByCategory;
1284
+ this.customizationMigrationTargetFoldersByType = targetFoldersByType;
1285
+ this.reconcileCustomizationMigrationTargets();
1286
+ this.refreshCustomizationMigrationUi();
1287
+ if (this.viewMode === "migration" && this.activeMigrationCategoryId !== undefined && !( candidatesByCategory.has(this.activeMigrationCategoryId))) {
1288
+ this.showWelcomePage();
1289
+ }
1290
+ }
1291
+ reconcileCustomizationMigrationTargets() {
1292
+ const requiredTargets = ( new Map());
1293
+ for (const customization of this.getAllMigrationCandidates()) {
1294
+ if (isMcpServerCustomizationMigrationCandidate(customization)) {
1295
+ continue;
1296
+ }
1297
+ const type = getCustomizationMigrationTargetType(customization);
1298
+ const key = this.getCustomizationMigrationTargetKey(type, customization.storage);
1299
+ requiredTargets.set(key, {
1300
+ type,
1301
+ storage: customization.storage
1302
+ });
1303
+ }
1304
+ for (const key of ( this.selectedCustomizationMigrationTargets.keys())) {
1305
+ if (!( requiredTargets.has(key))) {
1306
+ this.selectedCustomizationMigrationTargets.delete(key);
1307
+ this.explicitlySelectedCustomizationMigrationTargets.delete(key);
1308
+ }
1309
+ }
1310
+ for (const [key, target] of requiredTargets) {
1311
+ if (( this.selectedCustomizationMigrationTargets.has(key)) && ( this.explicitlySelectedCustomizationMigrationTargets.has(key))) {
1312
+ continue;
1313
+ }
1314
+ const folder = this.getCustomizationMigrationFolders(target.type, target.storage)[0];
1315
+ if (folder) {
1316
+ this.selectedCustomizationMigrationTargets.set(key, folder);
1317
+ } else {
1318
+ this.selectedCustomizationMigrationTargets.delete(key);
1319
+ }
1320
+ }
1321
+ }
1322
+ getCustomizationMigrationTargetKey(type, storage) {
1323
+ return `${type}:${storage}`;
1324
+ }
1325
+ createCustomizationMigrationItemMap(customizations) {
1326
+ const result = ( new ResourceMap());
1327
+ for (const customization of customizations) {
1328
+ this.addCustomizationMigrationItem(result, customization);
1329
+ }
1330
+ return result;
1331
+ }
1332
+ hasCustomizationMigrationItem(items, customization) {
1333
+ return items.get(customization.uri)?.has(customization.storage) === true;
1334
+ }
1335
+ addCustomizationMigrationItem(items, customization) {
1336
+ const storages = items.get(customization.uri) ?? ( new Set());
1337
+ storages.add(customization.storage);
1338
+ items.set(customization.uri, storages);
1339
+ }
1340
+ getCustomizationMigrationCandidateKey(customization) {
1341
+ return isMcpServerCustomizationMigrationCandidate(customization) ? `mcp:${getMcpServerCustomizationMigrationCandidateKey(customization)}` : `file:${customization.storage}:${( customization.uri.toString())}`;
1342
+ }
1343
+ isCustomizationSelectedForMigration(customization) {
1344
+ if (isMcpServerCustomizationMigrationCandidate(customization)) {
1345
+ return ( this.selectedMcpServerMigrationItems.has(getMcpServerCustomizationMigrationCandidateKey(customization)));
1346
+ }
1347
+ return this.hasCustomizationMigrationItem(this.selectedCustomizationMigrationItems, customization);
1348
+ }
1349
+ setCustomizationSelectedForMigration(customization, selected) {
1350
+ if (isMcpServerCustomizationMigrationCandidate(customization)) {
1351
+ const key = getMcpServerCustomizationMigrationCandidateKey(customization);
1352
+ if (selected) {
1353
+ this.selectedMcpServerMigrationItems.add(key);
1354
+ } else {
1355
+ this.selectedMcpServerMigrationItems.delete(key);
1356
+ }
1357
+ return;
1358
+ }
1359
+ if (selected) {
1360
+ this.addCustomizationMigrationItem(this.selectedCustomizationMigrationItems, customization);
1361
+ return;
1362
+ }
1363
+ const storages = this.selectedCustomizationMigrationItems.get(customization.uri);
1364
+ storages?.delete(customization.storage);
1365
+ if (storages?.size === 0) {
1366
+ this.selectedCustomizationMigrationItems.delete(customization.uri);
1367
+ }
1368
+ }
1369
+ getMigrationCandidates(category, storage) {
1370
+ if (!this.isMigrationCategoryEnabled(category)) {
1371
+ return [];
1372
+ }
1373
+ const candidates = this.customizationsByMigrationCategory.get(category.id) ?? [];
1374
+ return storage === undefined ? candidates : candidates.filter(candidate => this.getMigrationCandidateStorage(candidate) === storage);
1375
+ }
1376
+ getMigrationCandidateStorage(candidate) {
1377
+ return isMcpServerCustomizationMigrationCandidate(candidate) ? PromptsStorage.local : candidate.storage;
1378
+ }
1379
+ getAllMigrationCandidates() {
1380
+ return [...( this.customizationsByMigrationCategory.values())].flat();
1381
+ }
1382
+ getActiveMigrationCategory() {
1383
+ return this.activeMigrationCategoryId ? getCustomizationMigrationCategory(this.activeMigrationCategoryId) : undefined;
1384
+ }
1385
+ getDashboardFileMigrationCandidates() {
1386
+ return [
1387
+ CustomizationMigrationCategoryId.PromptFiles,
1388
+ CustomizationMigrationCategoryId.UserData
1389
+ ].flatMap(id => this.getMigrationCandidates(getCustomizationMigrationCategory(id))).filter(candidate => !isMcpServerCustomizationMigrationCandidate(candidate));
1390
+ }
1391
+ getMigrationCategorySummaries() {
1392
+ const harnessLabel = this.getActiveHarnessLabel();
1393
+ const summaries = [];
1394
+ for (const id of homepageMigrationCategories) {
1395
+ const category = getCustomizationMigrationCategory(id);
1396
+ const candidates = this.getMigrationCandidates(category).filter(
1397
+ candidate => !this.migrationWorkspaceSkipped || this.getMigrationCandidateStorage(candidate) !== PromptsStorage.local
1398
+ );
1399
+ if (candidates.length === 0) {
1400
+ continue;
1401
+ }
1402
+ summaries.push({
1403
+ id: category.id,
1404
+ label: category.cardLabel,
1405
+ description: category.getCardDescription(candidates, harnessLabel),
1406
+ actionLabel: category.cardActionLabel,
1407
+ actionAriaLabel: category.cardActionAriaLabel,
1408
+ count: candidates.length
1409
+ });
1410
+ }
1411
+ return summaries;
1412
+ }
1413
+ refreshCustomizationMigrationUi() {
1414
+ this.welcomePage?.setMigrationCategories(this.getMigrationCategorySummaries());
1415
+ this.updateSidebarMigrationShortcut();
1416
+ this.renderCustomizationMigrationPage();
1417
+ }
1418
+ updateSidebarMigrationShortcut() {
1419
+ if (!this.migrationShortcutContainer || !this.migrationShortcutButton || !this.migrationShortcutCount) {
1420
+ return;
1421
+ }
1422
+ const candidates = homepageMigrationCategories.flatMap(id => this.getMigrationCandidates(getCustomizationMigrationCategory(id)));
1423
+ const count = candidates.filter(
1424
+ candidate => !this.migrationWorkspaceSkipped || this.getMigrationCandidateStorage(candidate) !== PromptsStorage.local
1425
+ ).length;
1426
+ const enabled = isAgentHostTarget(this.harnessService.activeHarness.get()) && ( homepageMigrationCategories.some(
1427
+ id => this.isMigrationCategoryEnabled(getCustomizationMigrationCategory(id))
1428
+ ));
1429
+ this.migrationShortcutContainer.style.display = enabled ? "" : "none";
1430
+ this.migrationShortcutCount.textContent = count > 0 ? String(count) : "";
1431
+ this.migrationShortcutButton.setAttribute("aria-label", count === 1 ? ( localize(8549, "Migrations, 1 customization needs attention")) : ( localize(8550, "Migrations, {0} customizations need attention", count)));
1432
+ this.layoutSidebar(this.sidebarWidth, this.sidebarHeight);
1433
+ }
1434
+ async migrateSelectedCustomizations(category, customizations) {
1435
+ if (this.customizationMigrationInProgress || customizations.length === 0 || !this.isMigrationCategoryEnabled(category)) {
1436
+ return;
1437
+ }
1438
+ this.customizationMigrationInProgress = true;
1439
+ this.updateCustomizationMigrationActionState();
1440
+ try {
1441
+ const sessionResource = this.harnessService.activeSessionResource.get();
1442
+ const activityContexts = this.getMigrationActivityContexts();
1443
+ if (category.migrationType === CustomizationMigrationType.McpServers) {
1444
+ await this.migrateSelectedMcpServers(
1445
+ category,
1446
+ customizations.filter(isMcpServerCustomizationMigrationCandidate),
1447
+ sessionResource
1448
+ );
1449
+ return;
1450
+ }
1451
+ const files = customizations.filter(candidate => !isMcpServerCustomizationMigrationCandidate(candidate));
1452
+ const settingsToClear = this.getConfiguredLocationSettingsToClear(category, files);
1453
+ const targetFolders = await this.resolveCustomizationMigrationTargetFolders(files, this.customizationMigrationTargetFoldersByType, sessionResource);
1454
+ if (!targetFolders || !this.isCustomizationMigrationSessionActive(sessionResource)) {
1455
+ return;
1456
+ }
1457
+ const confirmation = category.getConfirmation(
1458
+ files,
1459
+ this.getActiveHarnessLabel(),
1460
+ this.getCustomizationMigrationDestinationLabel([...( targetFolders.values())].flatMap(folders => [...( folders.values())]))
1461
+ );
1462
+ const confirmed = await this.dialogService.confirm({
1463
+ type: "question",
1464
+ message: confirmation.message,
1465
+ detail: confirmation.detail,
1466
+ primaryButton: confirmation.primaryButton,
1467
+ ...(confirmation.deleteOriginalsLabel ? {
1468
+ checkbox: {
1469
+ label: confirmation.deleteOriginalsLabel,
1470
+ checked: true
1471
+ }
1472
+ } : {})
1473
+ });
1474
+ if (!confirmed.confirmed || !this.isCustomizationMigrationSessionActive(sessionResource)) {
1475
+ return;
1476
+ }
1477
+ const deleteOriginalFiles = confirmed.checkboxChecked !== false;
1478
+ this.migrationResult = undefined;
1479
+ const result = await this.runCustomizationMigration(files, targetFolders, deleteOriginalFiles);
1480
+ for (const context of activityContexts) {
1481
+ const items = result.migratedSources.flatMap((source, index) => {
1482
+ const target = result.migratedCustomizations[index];
1483
+ const file = files.find(file => file.storage === source.storage && isEqual(file.uri, source.uri));
1484
+ return source.storage === context.storage && target && file ? [{
1485
+ label: file.name ?? basename(source.uri),
1486
+ sourceLabel: this.labelService.getUriLabel(source.uri),
1487
+ targetLabel: this.labelService.getUriLabel(target.uri),
1488
+ operation: file.type === PromptsType.prompt ? "converted" : deleteOriginalFiles ? "moved" : "copied"
1489
+ }] : [];
1490
+ });
1491
+ this.recordMigrationActivity(category, context, items);
1492
+ }
1493
+ if (result.failedCustomizationFileNames.length > 0) {
1494
+ const displayedFileNames = result.failedCustomizationFileNames.slice(0, 3);
1495
+ this.notificationService.error(category.getFailedMessage(
1496
+ displayedFileNames,
1497
+ result.failedCustomizationFileNames.length - displayedFileNames.length
1498
+ ));
1499
+ }
1500
+ if (result.migratedCount === 0) {
1501
+ if (result.failedCustomizationFileNames.length === 0) {
1502
+ this.notificationService.warn(category.noFilesMigratedMessage);
1503
+ }
1504
+ return;
1505
+ }
1506
+ if (result.failedCustomizationFileNames.length === 0 && result.migratedCount === files.length && settingsToClear.length > 0) {
1507
+ try {
1508
+ await this.clearConfiguredLocationSettings(settingsToClear);
1509
+ } catch (error) {
1510
+ this.notificationService.error(( localize(
1511
+ 8551,
1512
+ "Customizations were migrated, but the custom location settings could not be cleared: {0}",
1513
+ getErrorMessage(error)
1514
+ )));
1515
+ }
1516
+ }
1517
+ if (deleteOriginalFiles) {
1518
+ await this.refreshCustomizationMigrationInfo();
1519
+ }
1520
+ const unsupportedKeys = result.unsupportedHeaderKeys.join(", ");
1521
+ this.notificationService.info(
1522
+ unsupportedKeys && category.getMigratedWithReviewMessage ? category.getMigratedWithReviewMessage(result.migratedCount, unsupportedKeys) : category.getMigratedMessage(result.migratedCount)
1523
+ );
1524
+ this.showCustomizationMigrationDashboard();
1525
+ } finally {
1526
+ this.customizationMigrationInProgress = false;
1527
+ this.updateCustomizationMigrationActionState();
1528
+ }
1529
+ }
1530
+ async migrateSelectedMcpServers(category, servers, sessionResource) {
1531
+ if (servers.length === 0) {
1532
+ return;
1533
+ }
1534
+ const context = this.getMigrationActivityContext(PromptsStorage.local);
1535
+ const confirmation = category.getConfirmation(servers, this.getActiveHarnessLabel());
1536
+ const confirmResult = await this.dialogService.confirm({
1537
+ type: "question",
1538
+ message: confirmation.message,
1539
+ detail: confirmation.detail,
1540
+ primaryButton: confirmation.primaryButton
1541
+ });
1542
+ if (!confirmResult.confirmed || !this.isCustomizationMigrationSessionActive(sessionResource)) {
1543
+ return;
1544
+ }
1545
+ this.customizationMigrationWritesInProgress = true;
1546
+ this.migrationResult = undefined;
1547
+ let result;
1548
+ try {
1549
+ result = await this.customizationMigrationService.migrateMcpServers(sessionResource, servers);
1550
+ } finally {
1551
+ await timeout(0);
1552
+ this.customizationMigrationWritesInProgress = false;
1553
+ }
1554
+ const migratedServers = servers.filter(server => !( result.failures.some(
1555
+ failure => failure.id === server.id && isEqual(failure.sourceUri, server.sourceUri)
1556
+ )));
1557
+ if (result.migratedCount > 0) {
1558
+ this.recordMigrationActivity(category, context, migratedServers.map(server => ({
1559
+ label: server.name,
1560
+ sourceLabel: this.labelService.getUriLabel(server.sourceUri),
1561
+ targetLabel: this.labelService.getUriLabel(server.targetUri),
1562
+ operation: "server"
1563
+ })));
1564
+ }
1565
+ await this.refreshCustomizationMigrationInfo();
1566
+ for (const failure of result.failures) {
1567
+ if (failure.error) {
1568
+ onUnexpectedError(failure.error);
1569
+ }
1570
+ }
1571
+ if (result.failures.length > 0) {
1572
+ const message = category.getMcpServerFailureMessage?.(result.failures) ?? category.getFailedMessage(
1573
+ result.failures.slice(0, 3).map(failure => failure.name),
1574
+ Math.max(0, result.failures.length - 3)
1575
+ );
1576
+ this.notificationService.error(message);
1577
+ }
1578
+ if (result.migratedCount > 0) {
1579
+ this.notificationService.info(category.getMigratedMessage(result.migratedCount));
1580
+ this.showCustomizationMigrationDashboard();
1581
+ } else if (result.failures.length === 0) {
1582
+ this.notificationService.warn(category.noFilesMigratedMessage);
1583
+ }
1584
+ }
1585
+ getConfiguredLocationSettingsToClear(category, customizations) {
1586
+ if (category.id !== CustomizationMigrationCategoryId.ConfiguredLocations || !this.migrationClearSettingsCheckbox?.checked) {
1587
+ return [];
1588
+ }
1589
+ const selectedCustomizations = this.createCustomizationMigrationItemMap(customizations);
1590
+ const remainingCustomizations = this.getMigrationCandidates(category).filter(
1591
+ customization => !isMcpServerCustomizationMigrationCandidate(customization)
1592
+ ).filter(
1593
+ customization => !this.hasCustomizationMigrationItem(selectedCustomizations, customization)
1594
+ );
1595
+ return this.getModifiedConfiguredLocationSettingIds(category).filter(settingId => ( customizations.some(
1596
+ customization => this.configuredLocationSettingAppliesTo(settingId, customization)
1597
+ )) && !( remainingCustomizations.some(
1598
+ customization => this.configuredLocationSettingAppliesTo(settingId, customization)
1599
+ )));
1600
+ }
1601
+ getModifiedConfiguredLocationSettingIds(category) {
1602
+ return category.getModifiedSettingIds?.(this.configurationService) ?? [];
1603
+ }
1604
+ configuredLocationSettingAppliesTo(settingId, customization) {
1605
+ switch (settingId) {
1606
+ case PromptsConfig.AGENTS_LOCATION_KEY:
1607
+ case PromptsConfig.MODE_LOCATION_KEY:
1608
+ return customization.type === PromptsType.agent;
1609
+ case PromptsConfig.INSTRUCTIONS_LOCATION_KEY:
1610
+ return customization.type === PromptsType.instructions;
1611
+ case PromptsConfig.SKILLS_LOCATION_KEY:
1612
+ return customization.type === PromptsType.skill;
1613
+ default:
1614
+ return false;
1615
+ }
1616
+ }
1617
+ async clearConfiguredLocationSettings(settingIds) {
1618
+ for (const settingId of settingIds) {
1619
+ await this.configurationService.updateValue(settingId, undefined);
1620
+ }
1621
+ }
1622
+ async runCustomizationMigration(customizations, targetFolders, deleteOriginalFiles) {
1623
+ this.customizationMigrationWritesInProgress = true;
1624
+ try {
1625
+ return await migrateCustomizations(customizations, targetFolders, this.fileService, onUnexpectedError, {
1626
+ deleteOriginalFiles
1627
+ });
1628
+ } finally {
1629
+ await timeout(0);
1630
+ this.customizationMigrationWritesInProgress = false;
1631
+ }
1632
+ }
1633
+ renderCustomizationMigrationPage() {
1634
+ if (!this.migrationListContainer) {
1635
+ return;
1636
+ }
1637
+ const category = this.getActiveMigrationCategory();
1638
+ this.migrationContentContainer?.classList.toggle("showing-dashboard", !category);
1639
+ if (this.migrationDashboardScrollable) {
1640
+ this.migrationDashboardScrollable.getDomNode().style.display = category ? "none" : "";
1641
+ }
1642
+ if (this.migrationDashboardContainer) {
1643
+ this.migrationDashboardContainer.style.display = category ? "none" : "";
1644
+ }
1645
+ if (this.migrationListScrollable) {
1646
+ this.migrationListScrollable.getDomNode().style.display = category ? "" : "none";
1647
+ }
1648
+ if (this.migrationHeader) {
1649
+ this.migrationHeader.style.display = category ? "" : "none";
1650
+ }
1651
+ if (this.migrationFooter) {
1652
+ this.migrationFooter.style.display = category ? "" : "none";
1653
+ }
1654
+ if (!category) {
1655
+ this.renderCustomizationMigrationBanner(undefined);
1656
+ this.renderCustomizationMigrationDashboardState();
1657
+ return;
1658
+ }
1659
+ const targetDocument = getWindow(this.migrationListContainer).document;
1660
+ const activeElement = targetDocument.activeElement;
1661
+ const capturedFocusState = this.captureCustomizationMigrationFocus();
1662
+ if (capturedFocusState) {
1663
+ this.migrationFocusState = capturedFocusState;
1664
+ } else if (isHTMLElement(activeElement) && activeElement.isConnected && activeElement !== targetDocument.body) {
1665
+ this.migrationFocusState = undefined;
1666
+ }
1667
+ for (const section of this.migrationSectionLists) {
1668
+ this.migrationSectionScrollPositions?.set(section.key, section.list.scrollTop);
1669
+ }
1670
+ this.migrationPageDisposables.clear();
1671
+ clearNode(this.migrationListContainer);
1672
+ this.migrationClearSettingsContainer = undefined;
1673
+ this.migrationFirstFocusableElement = undefined;
1674
+ this.migrationSectionLists = [];
1675
+ const candidates = this.getMigrationCandidates(category, this.activeMigrationStorage);
1676
+ this.updateCustomizationMigrationPageHeader(category, candidates);
1677
+ this.updateCustomizationMigrationActionState();
1678
+ if (this.customizationMigrationLoading) {
1679
+ this.renderCustomizationMigrationState(( localize(8552, "Loading customizations...")), ( localize(8553, "Checking the active harness and available destinations.")));
1680
+ if (this.migrationMigrateButton) {
1681
+ this.migrationMigrateButton.enabled = false;
1682
+ }
1683
+ this.migrationListScrollable?.scanDomNode();
1684
+ return;
1685
+ }
1686
+ if (this.customizationMigrationLoadError) {
1687
+ this.renderCustomizationMigrationState(( localize(8554, "Customizations could not be loaded")), ( localize(8555, "Check the active agent connection, then try again.")), () => void this.refreshCustomizationMigrationInfo());
1688
+ if (this.migrationMigrateButton) {
1689
+ this.migrationMigrateButton.enabled = false;
1690
+ }
1691
+ return;
1692
+ }
1693
+ if (candidates.length === 0) {
1694
+ this.renderCustomizationMigrationState(
1695
+ category.pageEmptyMessage,
1696
+ category.getPageDescription(candidates, this.getActiveHarnessLabel())
1697
+ );
1698
+ return;
1699
+ }
1700
+ const renderGroup = (groupKey, groupLabel, customizations) => {
1701
+ const group = append(this.migrationListContainer, $(".prompt-migration-group"));
1702
+ const groupHeader = append(group, $(".prompt-migration-group-header"));
1703
+ const groupHeading = append(groupHeader, $(".prompt-migration-group-heading"));
1704
+ const label = append(groupHeading, $("h3.prompt-migration-group-title"));
1705
+ label.textContent = groupLabel;
1706
+ if (customizations.length === 0) {
1707
+ const count = append(groupHeading, $("span.prompt-migration-group-count"));
1708
+ count.textContent = "0";
1709
+ const emptyItems = append(group, $(".prompt-migration-group-items"));
1710
+ append(emptyItems, $(".plugin-inventory-empty.prompt-migration-group-empty")).textContent = ( localize(8556, "No customizations are available to migrate from {0}.", groupLabel));
1711
+ return;
1712
+ }
1713
+ const selectedInGroup = customizations.filter(customization => this.isCustomizationSelectedForMigration(customization)).length;
1714
+ const initialGroupState = selectedInGroup === customizations.length ? true : selectedInGroup === 0 ? false : "mixed";
1715
+ const groupCheckboxAriaLabel = ( localize(8557, "Select all customizations in {0}", groupLabel));
1716
+ const groupCheckbox = this.migrationPageDisposables.add(( new TriStateCheckbox(groupCheckboxAriaLabel, initialGroupState, defaultCheckboxStyles)));
1717
+ const count = append(groupHeading, $("span.prompt-migration-group-count"));
1718
+ count.textContent = String(customizations.length);
1719
+ const groupControls = append(groupHeader, $(".prompt-migration-group-controls"));
1720
+ const groupCheckboxContainer = append(groupControls, $(".item-sync-checkbox.prompt-migration-group-checkbox"));
1721
+ groupCheckboxContainer.replaceChildren(groupCheckbox.domNode);
1722
+ this.migrationFirstFocusableElement ??= groupCheckbox.domNode;
1723
+ const selectAllLabel = append(groupControls, $("span.prompt-migration-select-all-label"));
1724
+ selectAllLabel.textContent = ( localize(8558, "Select all"));
1725
+ const setGroupCheckboxState = state => {
1726
+ groupCheckbox.checked = state;
1727
+ groupCheckbox.domNode.setAttribute("aria-checked", String(state));
1728
+ };
1729
+ setGroupCheckboxState(initialGroupState);
1730
+ const updateGroupCheckboxState = () => {
1731
+ const selectedCount = customizations.filter(customization => this.isCustomizationSelectedForMigration(customization)).length;
1732
+ setGroupCheckboxState(
1733
+ selectedCount === customizations.length ? true : selectedCount === 0 ? false : "mixed"
1734
+ );
1735
+ };
1736
+ const groupId = `prompt-migration-group-${category.id}-${groupKey}`;
1737
+ const groupItems = append(group, $(".prompt-migration-group-items.virtualized-section-list"));
1738
+ groupItems.id = `${groupId}-items`;
1739
+ const sectionKey = `${category.id}:${groupKey}`;
1740
+ const section = this.createMigrationSectionList(
1741
+ groupItems,
1742
+ sectionKey,
1743
+ groupLabel,
1744
+ customizations,
1745
+ updateGroupCheckboxState
1746
+ );
1747
+ const setGroupSelection = selected => {
1748
+ for (const customization of customizations) {
1749
+ this.setCustomizationSelectedForMigration(customization, selected);
1750
+ }
1751
+ this.updateCustomizationMigrationActionState();
1752
+ section.renderer.refreshSelectionState();
1753
+ };
1754
+ this.migrationPageDisposables.add(
1755
+ groupCheckbox.onChange(() => setGroupSelection(groupCheckbox.checked === true))
1756
+ );
1757
+ this.migrationPageDisposables.add(addDisposableListener(selectAllLabel, "click", e => {
1758
+ EventHelper.stop(e, true);
1759
+ const selected = groupCheckbox.checked !== true;
1760
+ setGroupCheckboxState(selected);
1761
+ setGroupSelection(selected);
1762
+ groupCheckbox.focus();
1763
+ }));
1764
+ };
1765
+ const groups = category.group(candidates).filter(
1766
+ group => this.activeMigrationStorage === undefined || group.customizations.length > 0
1767
+ );
1768
+ const groupedCandidates = ( new Set());
1769
+ for (const group of groups) {
1770
+ for (const customization of group.customizations) {
1771
+ groupedCandidates.add(this.getCustomizationMigrationCandidateKey(customization));
1772
+ }
1773
+ renderGroup(group.key, group.label, group.customizations);
1774
+ }
1775
+ const ungroupedCandidates = candidates.filter(candidate => !( groupedCandidates.has(this.getCustomizationMigrationCandidateKey(candidate))));
1776
+ if (ungroupedCandidates.length > 0) {
1777
+ const ungroupedItems = append(
1778
+ this.migrationListContainer,
1779
+ $(".prompt-migration-group-items.virtualized-section-list")
1780
+ );
1781
+ this.createMigrationSectionList(
1782
+ ungroupedItems,
1783
+ `${category.id}:ungrouped`,
1784
+ category.pageTitle,
1785
+ ungroupedCandidates
1786
+ );
1787
+ }
1788
+ if (category.id === CustomizationMigrationCategoryId.ConfiguredLocations) {
1789
+ this.renderConfiguredLocationSettingsGroup();
1790
+ }
1791
+ this.updateCustomizationMigrationActionState();
1792
+ this.restoreCustomizationMigrationFocus();
1793
+ this.scheduleMigrationSectionLayout();
1794
+ }
1795
+ captureCustomizationMigrationFocus() {
1796
+ const activeElement = this.migrationListContainer ? getWindow(this.migrationListContainer).document.activeElement : undefined;
1797
+ if (!isHTMLElement(activeElement)) {
1798
+ return undefined;
1799
+ }
1800
+ for (const section of this.migrationSectionLists) {
1801
+ const index = section.renderer.getIndex(activeElement);
1802
+ if (index === undefined) {
1803
+ continue;
1804
+ }
1805
+ const candidate = section.items[index];
1806
+ if (candidate) {
1807
+ const controls = section.renderer.getControls(index);
1808
+ const controlIndex = controls.findIndex(control => control === activeElement || control.contains(activeElement));
1809
+ return {
1810
+ candidateKey: this.getCustomizationMigrationCandidateKey(candidate),
1811
+ controlIndex: Math.max(0, controlIndex)
1812
+ };
1813
+ }
1814
+ }
1815
+ return undefined;
1816
+ }
1817
+ restoreCustomizationMigrationFocus() {
1818
+ const focusState = this.migrationFocusState;
1819
+ if (!focusState) {
1820
+ return;
1821
+ }
1822
+ this.migrationFocusState = undefined;
1823
+ for (const section of this.migrationSectionLists) {
1824
+ const index = section.items.findIndex(
1825
+ candidate => this.getCustomizationMigrationCandidateKey(candidate) === focusState.candidateKey
1826
+ );
1827
+ if (index < 0) {
1828
+ continue;
1829
+ }
1830
+ section.list.setFocus([index]);
1831
+ section.list.reveal(index);
1832
+ section.renderer.getControls(index)[focusState.controlIndex]?.focus();
1833
+ return;
1834
+ }
1835
+ }
1836
+ renderConfiguredLocationSettingsGroup() {
1837
+ if (!this.migrationListContainer || !this.migrationClearSettingsCheckbox) {
1838
+ return;
1839
+ }
1840
+ const group = append(
1841
+ this.migrationListContainer,
1842
+ $(".prompt-migration-group.prompt-migration-settings-group")
1843
+ );
1844
+ const groupHeader = append(group, $(".prompt-migration-group-header"));
1845
+ const groupHeading = append(groupHeader, $(".prompt-migration-group-heading"));
1846
+ const settingsGroupLabel = ( localize(8559, "Settings"));
1847
+ append(groupHeading, $("h3.prompt-migration-group-title")).textContent = settingsGroupLabel;
1848
+ const groupItems = append(group, $(".prompt-migration-group-items"));
1849
+ const item = this.migrationClearSettingsContainer = append(groupItems, $(".prompt-migration-settings-item"));
1850
+ const checkboxContainer = append(item, $(".item-sync-checkbox.prompt-migration-checkbox"));
1851
+ checkboxContainer.replaceChildren(this.migrationClearSettingsCheckbox.domNode);
1852
+ const itemText = append(item, $("span.prompt-migration-settings-item-text"));
1853
+ const label = append(itemText, $("span.prompt-migration-settings-item-label"));
1854
+ label.textContent = ( localize(8560, "Clear unused location settings"));
1855
+ const description = append(itemText, $("span.prompt-migration-settings-item-description"));
1856
+ description.textContent = ( localize(
1857
+ 8561,
1858
+ "Remove deprecated settings that are no longer needed after the selected customizations migrate successfully."
1859
+ ));
1860
+ this.migrationPageDisposables.add(addDisposableListener(itemText, "click", () => {
1861
+ if (!this.migrationClearSettingsCheckbox?.enabled) {
1862
+ return;
1863
+ }
1864
+ this.migrationClearSettingsCheckbox.checked = !this.migrationClearSettingsCheckbox.checked;
1865
+ this.migrationClearSettingsCheckbox.focus();
1866
+ }));
1867
+ }
1868
+ createMigrationSectionList(container, key, label, items, onSelectionChange) {
1869
+ container.style.height = `${MIGRATION_ITEM_HEIGHT}px`;
1870
+ const category = this.getActiveMigrationCategory() ?? CUSTOMIZATION_MIGRATION_CATEGORIES[0];
1871
+ const renderer = ( new MigrationItemRenderer(
1872
+ customization => this.isCustomizationSelectedForMigration(customization),
1873
+ customization => category.getCandidatePresentation(customization, uri => this.labelService.getUriLabel(uri, {
1874
+ relative: true
1875
+ })),
1876
+ (customization, selected) => {
1877
+ this.setCustomizationSelectedForMigration(customization, selected);
1878
+ this.updateCustomizationMigrationActionState();
1879
+ onSelectionChange?.();
1880
+ },
1881
+ customization => {
1882
+ const isWorkspaceFile = customization.storage === PromptsStorage.local;
1883
+ void this.showEmbeddedEditor(
1884
+ customization.uri,
1885
+ customization.name ?? basename(customization.uri),
1886
+ customization.type,
1887
+ customization.storage,
1888
+ isWorkspaceFile
1889
+ );
1890
+ },
1891
+ (customization, anchor) => this.showCustomizationMigrationItemActions(customization, anchor),
1892
+ element => this.migrationFirstFocusableElement ??= element,
1893
+ this.hoverService
1894
+ ));
1895
+ const list = this.migrationPageDisposables.add(this.instantiationService.createInstance(
1896
+ WorkbenchList,
1897
+ `CustomizationMigration.${label}`,
1898
+ container,
1899
+ ( new MigrationItemDelegate()),
1900
+ [renderer],
1901
+ {
1902
+ multipleSelectionSupport: false,
1903
+ horizontalScrolling: false,
1904
+ accessibilityProvider: {
1905
+ getWidgetAriaLabel: () => label,
1906
+ getAriaLabel: customization => {
1907
+ const presentation = category.getCandidatePresentation(customization, uri => this.labelService.getUriLabel(uri, {
1908
+ relative: true
1909
+ }));
1910
+ return localize(8562, "{0}, {1}", presentation.name, presentation.pathLabel);
1911
+ },
1912
+ getSetSize: (_element, _index, listLength) => listLength,
1913
+ getPosInSet: (_element, index) => index + 1
1914
+ },
1915
+ identityProvider: {
1916
+ getId: customization => this.getCustomizationMigrationCandidateKey(customization)
1917
+ }
1918
+ }
1919
+ ));
1920
+ list.splice(0, 0, items);
1921
+ list.scrollTop = this.migrationSectionScrollPositions?.get(key) ?? 0;
1922
+ this.migrationPageDisposables.add(list.onDidChangeSelection(event => {
1923
+ if (event.indexes.length > 0) {
1924
+ list.setSelection([]);
1925
+ }
1926
+ }));
1927
+ this.migrationPageDisposables.add(
1928
+ addStandardDisposableListener(container, EventType.KEY_DOWN, event => {
1929
+ if (event.keyCode !== KeyCode.Tab) {
1930
+ return;
1931
+ }
1932
+ const target = event.target;
1933
+ if (!isHTMLElement(target)) {
1934
+ return;
1935
+ }
1936
+ const index = renderer.getIndex(target);
1937
+ if (index === undefined) {
1938
+ return;
1939
+ }
1940
+ const controls = renderer.getControls(index);
1941
+ const controlIndex = controls.findIndex(control => control === target || control.contains(target));
1942
+ const targetIndex = event.shiftKey ? index - 1 : index + 1;
1943
+ const crossesRowBoundary = event.shiftKey ? controlIndex === 0 : controlIndex === controls.length - 1;
1944
+ if (!crossesRowBoundary || targetIndex < 0 || targetIndex >= items.length) {
1945
+ return;
1946
+ }
1947
+ event.preventDefault();
1948
+ event.stopPropagation();
1949
+ list.setFocus([targetIndex]);
1950
+ list.reveal(targetIndex);
1951
+ const targetControls = renderer.getControls(targetIndex);
1952
+ targetControls[event.shiftKey ? targetControls.length - 1 : 0]?.focus();
1953
+ })
1954
+ );
1955
+ const section = {
1956
+ list,
1957
+ renderer,
1958
+ container,
1959
+ items,
1960
+ key
1961
+ };
1962
+ this.migrationSectionLists.push(section);
1963
+ return section;
1964
+ }
1965
+ showCustomizationMigrationItemActions(customization, anchor) {
1966
+ const actions = ( new DisposableStore());
1967
+ const deleteAction = actions.add(( new Action("customizationMigration.delete", ( localize(8563, "Delete")), ThemeIcon.asClassName(Codicon.trash), true, () => this.deleteCustomizationFile(customization))));
1968
+ this.contextMenuService.showContextMenu({
1969
+ getAnchor: () => anchor,
1970
+ getActions: () => [deleteAction],
1971
+ onHide: () => actions.dispose()
1972
+ });
1973
+ }
1974
+ layoutMigrationSectionLists() {
1975
+ if (!this.migrationListContainer) {
1976
+ return;
1977
+ }
1978
+ const heights = layoutVirtualizedSections(this.migrationListContainer, this.migrationSectionLists.map(section => ({
1979
+ container: section.container,
1980
+ contentHeight: section.items.length * MIGRATION_ITEM_HEIGHT,
1981
+ minimumHeight: getVirtualizedSectionMinimumHeight(section.items, () => MIGRATION_ITEM_HEIGHT)
1982
+ })));
1983
+ for (let index = 0; index < this.migrationSectionLists.length; index++) {
1984
+ const section = this.migrationSectionLists[index];
1985
+ const height = heights[index];
1986
+ layoutVirtualizedSectionList(
1987
+ section.list,
1988
+ section.container,
1989
+ height,
1990
+ section.container.clientWidth || undefined
1991
+ );
1992
+ }
1993
+ }
1994
+ scheduleMigrationSectionLayout() {
1995
+ this.migrationDashboardScrollable?.scanDomNode();
1996
+ if (this.migrationContentContainer?.style.display === "none") {
1997
+ this.pendingMigrationLayout?.clear();
1998
+ return;
1999
+ }
2000
+ if (!this.pendingMigrationLayout) {
2001
+ this.layoutMigrationSectionLists();
2002
+ this.migrationListScrollable?.scanDomNode();
2003
+ return;
2004
+ }
2005
+ if (!this.migrationListContainer) {
2006
+ this.pendingMigrationLayout.clear();
2007
+ return;
2008
+ }
2009
+ this.pendingMigrationLayout.value = scheduleAtNextAnimationFrame(getWindow(this.migrationListContainer), () => {
2010
+ this.layoutMigrationSectionLists();
2011
+ this.migrationListScrollable?.scanDomNode();
2012
+ });
2013
+ }
2014
+ renderCustomizationMigrationDashboardState() {
2015
+ if (!this.migrationDashboard) {
2016
+ return;
2017
+ }
2018
+ if (this.customizationMigrationLoading) {
2019
+ this.migrationDashboard.showLoading(( localize(8552, "Loading customizations...")), ( localize(8553, "Checking the active harness and available destinations.")));
2020
+ return;
2021
+ }
2022
+ if (this.customizationMigrationLoadError) {
2023
+ this.migrationDashboard.showLoading(( localize(8554, "Customizations could not be loaded")), ( localize(8555, "Check the active agent connection, then try again.")), () => void this.refreshCustomizationMigrationInfo());
2024
+ this.migrationListScrollable?.scanDomNode();
2025
+ return;
2026
+ }
2027
+ this.renderCustomizationMigrationDashboard();
2028
+ }
2029
+ renderCustomizationMigrationDashboard() {
2030
+ if (!this.migrationDashboard) {
2031
+ return;
2032
+ }
2033
+ this.migrationDashboard.showOverview(this.getCustomizationMigrationDashboardOverview());
2034
+ this.migrationDashboardScrollable?.scanDomNode();
2035
+ this.migrationListScrollable?.scanDomNode();
2036
+ }
2037
+ getMigrationAccessibilityContent() {
2038
+ if (this.viewMode !== "migration" || this.activeMigrationCategoryId || !this.migrationDashboard || !isAncestorOfActiveElement(this.migrationDashboard.element)) {
2039
+ return undefined;
2040
+ }
2041
+ const overview = this.getCustomizationMigrationDashboardOverview();
2042
+ return [( localize(8564, "Your migration checklist")), ...overview.scopes.map(scope => [scope.label, scope.skipped ? ( localize(8565, "Skipped")) : scope.count === 0 ? ( localize(8566, "No remaining migrations.")) : "", ...(scope.skipped ? [] : scope.categories.map(category => ( localize(
2043
+ 8567,
2044
+ "{0}: {1}. {2}{3}",
2045
+ category.label,
2046
+ category.countLabel,
2047
+ category.highRisk ? ( localize(8568, "High risk. ")) : "",
2048
+ category.description
2049
+ ))))].filter(Boolean).join("\n")), ...overview.activity.map(entry => [( localize(
2050
+ 8569,
2051
+ "Migration activity: {0}, {1}",
2052
+ entry.categoryLabel,
2053
+ entry.scopeLabel
2054
+ )), ...entry.items.map(item => ( localize(
2055
+ 8570,
2056
+ "{0}: from {1} to {2}",
2057
+ item.label,
2058
+ item.sourceLabel,
2059
+ item.targetLabel
2060
+ )))].join("\n"))].join("\n\n");
2061
+ }
2062
+ getCustomizationMigrationDashboardOverview() {
2063
+ const storages = [PromptsStorage.user];
2064
+ if (this.workspaceService.activeProjectRoot.get()) {
2065
+ storages.push(PromptsStorage.local);
2066
+ }
2067
+ const scopes = storages.map(storage => {
2068
+ const categories = homepageMigrationCategories.flatMap(id => {
2069
+ const candidates = this.getMigrationCandidates(getCustomizationMigrationCategory(id), storage);
2070
+ return candidates.length ? [this.getHomepageMigrationCategory(id, candidates)] : [];
2071
+ });
2072
+ return {
2073
+ storage,
2074
+ label: this.getMigrationScopeLabel(storage),
2075
+ count: categories.reduce((count, category) => count + category.count, 0),
2076
+ skipped: storage === PromptsStorage.local && this.migrationWorkspaceSkipped,
2077
+ started: this.getMigrationActivityState(storage).started === true,
2078
+ hasConfigurableDestinations: ( categories.some(category => category.id !== CustomizationMigrationCategoryId.McpServers)),
2079
+ categories
2080
+ };
2081
+ });
2082
+ return {
2083
+ scopes,
2084
+ activity: storages.flatMap(storage => this.getMigrationActivityState(storage).activity).sort((a, b) => b.id.localeCompare(a.id)),
2085
+ result: this.migrationResult
2086
+ };
2087
+ }
2088
+ getHomepageMigrationCategory(id, candidates) {
2089
+ const count = candidates.length;
2090
+ switch (id) {
2091
+ case CustomizationMigrationCategoryId.PromptFiles:
2092
+ return {
2093
+ id,
2094
+ count,
2095
+ label: ( localize(8571, "Prompts to skills")),
2096
+ description: ( localize(
2097
+ 8572,
2098
+ "Convert reusable prompt files into skills so agents can discover and run them as supported customizations."
2099
+ )),
2100
+ countLabel: count === 1 ? ( localize(8573, "1 prompt")) : ( localize(8574, "{0} prompts", count)),
2101
+ highRisk: true
2102
+ };
2103
+ case CustomizationMigrationCategoryId.McpServers:
2104
+ return {
2105
+ id,
2106
+ count,
2107
+ label: ( localize(8575, "MCP Servers")),
2108
+ description: ( localize(
2109
+ 8576,
2110
+ "Move supported workspace servers to the root .mcp.json so agents can discover them directly."
2111
+ )),
2112
+ countLabel: count === 1 ? ( localize(8577, "1 server")) : ( localize(8578, "{0} servers", count))
2113
+ };
2114
+ case CustomizationMigrationCategoryId.UserData:
2115
+ {
2116
+ const agents = candidates.filter(candidate => candidate.type === PromptsType.agent).length;
2117
+ const instructions = candidates.filter(candidate => candidate.type === PromptsType.instructions).length;
2118
+ const counts = [];
2119
+ if (agents) {
2120
+ counts.push(agents === 1 ? ( localize(8579, "1 agent")) : ( localize(8580, "{0} agents", agents)));
2121
+ }
2122
+ if (instructions) {
2123
+ counts.push(instructions === 1 ? ( localize(8581, "1 instruction")) : ( localize(8582, "{0} instructions", instructions)));
2124
+ }
2125
+ return {
2126
+ id,
2127
+ count,
2128
+ label: ( localize(8583, "User Data")),
2129
+ description: ( localize(
2130
+ 8584,
2131
+ "Move agents and instructions to shared locations so they remain available to supported agent experiences."
2132
+ )),
2133
+ countLabel: counts.join(" · ")
2134
+ };
2135
+ }
2136
+ default:
2137
+ throw ( new Error(`Unsupported migration checklist category: ${id}`));
2138
+ }
2139
+ }
2140
+ getMigrationScopeLabel(storage) {
2141
+ return storage === PromptsStorage.user ? ( localize(8585, "Your profile")) : this.workspaceService.activeProjectLabel.get() || ( localize(8586, "Workspace"));
2142
+ }
2143
+ getMigrationActivityKey(storage) {
2144
+ const project = this.workspaceService.activeProjectRoot.get();
2145
+ return storage === PromptsStorage.user ? `chat.customizationMigration.activity.profile.${this.harnessService.activeHarness.get()}` : `chat.customizationMigration.activity.workspace.${project ? getComparisonKey(project) : ""}.${this.harnessService.activeHarness.get()}`;
2146
+ }
2147
+ getMigrationActivityState(storage) {
2148
+ return this.storageService.getObject(this.getMigrationActivityKey(storage), StorageScope.PROFILE, {
2149
+ activity: [],
2150
+ skipped: false
2151
+ });
2152
+ }
2153
+ getMigrationActivityContexts() {
2154
+ return [PromptsStorage.user, PromptsStorage.local].map(storage => this.getMigrationActivityContext(storage));
2155
+ }
2156
+ getMigrationActivityContext(storage) {
2157
+ return {
2158
+ storage,
2159
+ key: this.getMigrationActivityKey(storage),
2160
+ label: this.getMigrationScopeLabel(storage)
2161
+ };
2162
+ }
2163
+ recordMigrationActivity(category, context, items) {
2164
+ if (!items.length || !( homepageMigrationCategories.some(id => id === category.id))) {
2165
+ return;
2166
+ }
2167
+ const state = this.storageService.getObject(context.key, StorageScope.PROFILE, {
2168
+ activity: [],
2169
+ skipped: false
2170
+ });
2171
+ const entry = {
2172
+ id: `${Date.now()}-${generateUuid()}`,
2173
+ categoryLabel: this.getHomepageMigrationCategory(category.id, []).label,
2174
+ scopeLabel: context.label,
2175
+ storage: context.storage,
2176
+ items
2177
+ };
2178
+ this.storageService.store(context.key, {
2179
+ ...state,
2180
+ started: true,
2181
+ activity: [entry, ...state.activity]
2182
+ }, StorageScope.PROFILE, StorageTarget.MACHINE);
2183
+ if (context.key === this.getMigrationActivityKey(context.storage)) {
2184
+ this.migrationResult = {
2185
+ migratedCount: (this.migrationResult?.migratedCount ?? 0) + items.length
2186
+ };
2187
+ }
2188
+ }
2189
+ storeMigrationActivityState(storage, state) {
2190
+ this.storageService.store(
2191
+ this.getMigrationActivityKey(storage),
2192
+ state,
2193
+ StorageScope.PROFILE,
2194
+ StorageTarget.MACHINE
2195
+ );
2196
+ }
2197
+ getCustomizationMigrationDashboardDestinations(customizations) {
2198
+ const destinations = ( new Map());
2199
+ for (const customization of customizations) {
2200
+ const targetType = getCustomizationMigrationTargetType(customization);
2201
+ const key = this.getCustomizationMigrationTargetKey(targetType, customization.storage);
2202
+ if (( destinations.has(key))) {
2203
+ continue;
2204
+ }
2205
+ const folder = this.selectedCustomizationMigrationTargets.get(key);
2206
+ const contextLabel = this.getCustomizationMigrationDestinationContextLabel(targetType, customization.storage);
2207
+ if (!folder) {
2208
+ const label = ( localize(8587, "Not configured"));
2209
+ destinations.set(key, {
2210
+ targetType,
2211
+ storage: customization.storage,
2212
+ contextLabel,
2213
+ label,
2214
+ ariaLabel: ( localize(8588, "Configure destination for {0}", contextLabel))
2215
+ });
2216
+ continue;
2217
+ }
2218
+ const folderLabel = this.getCustomizationMigrationFolderLabel(folder);
2219
+ destinations.set(key, {
2220
+ targetType,
2221
+ storage: customization.storage,
2222
+ contextLabel,
2223
+ label: folderLabel,
2224
+ ariaLabel: ( localize(
2225
+ 8589,
2226
+ "Change destination for {0}, currently {1}",
2227
+ contextLabel,
2228
+ folderLabel
2229
+ ))
2230
+ });
2231
+ }
2232
+ return [...( destinations.values())];
2233
+ }
2234
+ async configureCustomizationMigrationLocations(storage) {
2235
+ const sessionResource = this.harnessService.activeSessionResource.get();
2236
+ const destinations = this.getCustomizationMigrationDashboardDestinations(
2237
+ this.getDashboardFileMigrationCandidates().filter(candidate => candidate.storage === storage)
2238
+ );
2239
+ if (destinations.length === 0) {
2240
+ this.notificationService.info(( localize(
2241
+ 8590,
2242
+ "There are no file migration destinations to configure. MCP servers migrate to the workspace root .mcp.json."
2243
+ )));
2244
+ return;
2245
+ }
2246
+ const selected = await this.quickInputService.pick(destinations.map(destination => ({
2247
+ label: destination.contextLabel,
2248
+ description: destination.label,
2249
+ destination
2250
+ })), {
2251
+ canPickMany: false,
2252
+ placeHolder: ( localize(8591, "Choose a migration location to customize")),
2253
+ matchOnDescription: true
2254
+ });
2255
+ if (selected && this.isCustomizationMigrationSessionActive(sessionResource)) {
2256
+ await this.chooseCustomizationMigrationDestination(selected.destination);
2257
+ }
2258
+ }
2259
+ getCustomizationMigrationDestinationContextLabel(targetType, storage) {
2260
+ const scope = storage === PromptsStorage.local ? ( localize(8592, "Workspace")) : ( localize(8593, "User"));
2261
+ switch (targetType) {
2262
+ case PromptsType.skill:
2263
+ return localize(8594, "{0} skills", scope);
2264
+ case PromptsType.agent:
2265
+ return localize(8595, "{0} agents", scope);
2266
+ default:
2267
+ return localize(8596, "{0} instructions", scope);
2268
+ }
2269
+ }
2270
+ async chooseCustomizationMigrationDestination(destination) {
2271
+ const sessionResource = this.harnessService.activeSessionResource.get();
2272
+ const key = this.getCustomizationMigrationTargetKey(destination.targetType, destination.storage);
2273
+ const currentFolder = this.selectedCustomizationMigrationTargets.get(key);
2274
+ const availableFolders = this.getCustomizationMigrationFolders(destination.targetType, destination.storage);
2275
+ const picks = availableFolders.map(folder => ({
2276
+ label: folder.label,
2277
+ description: this.getCustomizationMigrationFolderPickDescription(folder, this.getCustomizationMigrationFolderLabel(folder)),
2278
+ picked: currentFolder ? isEqual(folder.uri, currentFolder.uri) : false,
2279
+ folder
2280
+ }));
2281
+ picks.push({
2282
+ label: ( localize(8597, "Choose another folder...")),
2283
+ description: ( localize(8598, "Use a custom migration destination")),
2284
+ chooseAnother: true
2285
+ });
2286
+ const selected = await this.quickInputService.pick(picks, {
2287
+ canPickMany: false,
2288
+ placeHolder: ( localize(8599, "Choose a destination for {0}", destination.contextLabel)),
2289
+ matchOnDescription: true
2290
+ });
2291
+ if (!selected || !this.isCustomizationMigrationSessionActive(sessionResource)) {
2292
+ return;
2293
+ }
2294
+ let folder = selected.folder;
2295
+ if (selected.chooseAnother) {
2296
+ const folders = await this.fileDialogService.showOpenDialog({
2297
+ title: ( localize(8600, "Choose a Custom Migration Destination")),
2298
+ openLabel: ( localize(8601, "Select Folder")),
2299
+ canSelectFiles: false,
2300
+ canSelectFolders: true,
2301
+ canSelectMany: false,
2302
+ defaultUri: currentFolder?.uri
2303
+ });
2304
+ const uri = folders?.[0];
2305
+ if (!uri || !this.isCustomizationMigrationSessionActive(sessionResource)) {
2306
+ return;
2307
+ }
2308
+ folder = {
2309
+ uri,
2310
+ label: this.labelService.getUriLabel(uri, {
2311
+ relative: true
2312
+ }),
2313
+ source: destination.storage
2314
+ };
2315
+ }
2316
+ if (!folder) {
2317
+ return;
2318
+ }
2319
+ this.selectedCustomizationMigrationTargets.set(key, folder);
2320
+ this.explicitlySelectedCustomizationMigrationTargets.add(key);
2321
+ this.renderCustomizationMigrationPage();
2322
+ }
2323
+ renderCustomizationMigrationState(title, description, retry) {
2324
+ const state = append(
2325
+ this.migrationListContainer,
2326
+ $(".plugin-inventory-empty.prompt-migration-state")
2327
+ );
2328
+ append(state, $("strong.prompt-migration-state-title")).textContent = title;
2329
+ append(state, $("span.prompt-migration-state-description")).textContent = description;
2330
+ if (retry) {
2331
+ const retryButton = this.migrationPageDisposables.add(( new Button(state, {
2332
+ ...defaultButtonStyles,
2333
+ secondary: true,
2334
+ ariaLabel: ( localize(8602, "Retry loading customizations"))
2335
+ })));
2336
+ retryButton.label = ( localize(8603, "Retry"));
2337
+ this.migrationFirstFocusableElement ??= retryButton.element;
2338
+ this.migrationPageDisposables.add(retryButton.onDidClick(retry));
2339
+ }
2340
+ this.migrationListScrollable?.scanDomNode();
2341
+ }
2342
+ updateCustomizationMigrationPageHeader(category, candidates) {
2343
+ if (this.migrationHeader) {
2344
+ this.migrationHeader.style.display = "";
2345
+ }
2346
+ if (this.migrationBackButton) {
2347
+ this.migrationBackButton.style.display = "";
2348
+ }
2349
+ if (this.migrationFooter) {
2350
+ this.migrationFooter.style.display = "";
2351
+ }
2352
+ if (this.migrationTitleElement) {
2353
+ this.migrationTitleElement.textContent = category.pageTitle;
2354
+ }
2355
+ const banner = candidates.length > 0 ? category.getBanner?.(
2356
+ candidates,
2357
+ this.getActiveHarnessLabel(),
2358
+ this.getCustomizationMigrationDestinationLabel(candidates.filter(
2359
+ customization => !isMcpServerCustomizationMigrationCandidate(customization)
2360
+ ).flatMap(customization => {
2361
+ const targetType = getCustomizationMigrationTargetType(customization);
2362
+ return this.customizationMigrationTargetFoldersByType.get(targetType)?.filter(folder => folder.source === customization.storage) ?? [];
2363
+ })),
2364
+ category.getModifiedSettingIds?.(this.configurationService) ?? []
2365
+ ) : undefined;
2366
+ this.renderCustomizationMigrationBanner(banner);
2367
+ if (this.migrationDescriptionElement) {
2368
+ const description = banner ? "" : category.getPageDescription(candidates, this.getActiveHarnessLabel());
2369
+ if (this.migrationDescriptionTextElement) {
2370
+ this.migrationDescriptionTextElement.textContent = description;
2371
+ } else {
2372
+ this.migrationDescriptionElement.textContent = description;
2373
+ }
2374
+ this.migrationDescriptionElement.style.display = banner ? "none" : "";
2375
+ }
2376
+ if (this.migrationLinkElement) {
2377
+ this.migrationLinkElement.style.display = "";
2378
+ this.migrationLinkElement.textContent = category.pageLinkLabel;
2379
+ this.migrationLinkElement.href = category.pageLinkUrl;
2380
+ }
2381
+ }
2382
+ renderCustomizationMigrationBanner(banner) {
2383
+ const container = this.migrationBannerContainer;
2384
+ if (!container) {
2385
+ return;
2386
+ }
2387
+ this.migrationBannerDisposables.clear();
2388
+ clearNode(container);
2389
+ if (!banner) {
2390
+ if (this.migrationLinkElement && this.migrationDescriptionElement) {
2391
+ this.migrationDescriptionElement.appendChild(this.migrationLinkElement);
2392
+ }
2393
+ container.style.display = "none";
2394
+ return;
2395
+ }
2396
+ container.style.display = "";
2397
+ const content = append(container, $(".customization-migration-banner-content"));
2398
+ if (isMarkdownString(banner.message)) {
2399
+ const renderedMessage = this.migrationBannerDisposables.add(this.markdownRendererService.render(banner.message));
2400
+ renderedMessage.element.classList.add("customization-migration-banner-message");
2401
+ content.appendChild(renderedMessage.element);
2402
+ } else {
2403
+ append(content, $("p.customization-migration-banner-message")).textContent = banner.message;
2404
+ }
2405
+ if (banner.consequence) {
2406
+ append(content, $("p.customization-migration-banner-consequence")).textContent = banner.consequence;
2407
+ }
2408
+ if (this.migrationLinkElement) {
2409
+ content.appendChild(this.migrationLinkElement);
2410
+ }
2411
+ }
2412
+ updateCustomizationMigrationActionState() {
2413
+ if (!this.migrationMigrateButton) {
2414
+ return;
2415
+ }
2416
+ const category = this.getActiveMigrationCategory();
2417
+ if (!category) {
2418
+ this.migrationMigrateButton.enabled = false;
2419
+ return;
2420
+ }
2421
+ const selectedCount = this.getMigrationCandidates(category, this.activeMigrationStorage).filter(customization => this.isCustomizationSelectedForMigration(customization)).length;
2422
+ this.migrationMigrateButton.enabled = selectedCount > 0 && !this.customizationMigrationInProgress;
2423
+ if (this.migrationClearSettingsCheckbox) {
2424
+ const hasModifiedSettings = this.getModifiedConfiguredLocationSettingIds(category).length > 0;
2425
+ const canClearSettings = category.id === CustomizationMigrationCategoryId.ConfiguredLocations && hasModifiedSettings && !this.customizationMigrationInProgress && !this.customizationMigrationLoading && !this.customizationMigrationLoadError;
2426
+ this.migrationClearSettingsContainer?.classList.toggle("disabled", !canClearSettings);
2427
+ if (canClearSettings) {
2428
+ this.migrationClearSettingsCheckbox.enable();
2429
+ this.migrationClearSettingsCheckbox.setTitle(( localize(8545, "Clear unused location settings after migration")));
2430
+ } else {
2431
+ this.migrationClearSettingsCheckbox.disable();
2432
+ this.migrationClearSettingsCheckbox.setTitle(( localize(8604, "The custom location settings are managed and cannot be cleared")));
2433
+ }
2434
+ }
2435
+ if (this.migrationSelectedCountElement) {
2436
+ this.migrationSelectedCountElement.textContent = selectedCount === 1 ? ( localize(8605, "1 selected")) : ( localize(8606, "{0} selected", selectedCount));
2437
+ }
2438
+ if (category.id === CustomizationMigrationCategoryId.PromptFiles) {
2439
+ this.migrationMigrateButton.label = selectedCount > 0 ? ( localize(8607, "Convert {0} to Skills", selectedCount)) : ( localize(8608, "Convert to Skills"));
2440
+ } else {
2441
+ this.migrationMigrateButton.label = selectedCount > 0 ? ( localize(8609, "Migrate {0}", selectedCount)) : ( localize(8610, "Migrate"));
2442
+ }
2443
+ }
2444
+ async deleteCustomizationFile(customization) {
2445
+ if (this.customizationMigrationInProgress) {
2446
+ return;
2447
+ }
2448
+ const fileName = customization.name ?? basename(customization.uri);
2449
+ const confirmation = await this.dialogService.confirm({
2450
+ message: ( localize(8611, "Are you sure you want to delete '{0}'?", fileName)),
2451
+ detail: ( localize(8612, "This action cannot be undone.")),
2452
+ primaryButton: ( localize(8563, "Delete")),
2453
+ type: "warning"
2454
+ });
2455
+ if (!confirmation.confirmed) {
2456
+ return;
2457
+ }
2458
+ const useTrash = this.fileService.hasCapability(customization.uri, FileSystemProviderCapabilities.Trash);
2459
+ await this.fileService.del(customization.uri, {
2460
+ useTrash
2461
+ });
2462
+ if (customization.storage === PromptsStorage.local) {
2463
+ const projectRoot = this.workspaceService.getActiveProjectRoot();
2464
+ if (projectRoot) {
2465
+ await this.workspaceService.deleteFiles(projectRoot, [customization.uri]);
2466
+ }
2467
+ }
2468
+ const updatedCandidates = ( new Map());
2469
+ for (const [categoryId, candidates] of this.customizationsByMigrationCategory) {
2470
+ updatedCandidates.set(categoryId, candidates.filter(
2471
+ candidate => isMcpServerCustomizationMigrationCandidate(candidate) || !isEqual(candidate.uri, customization.uri)
2472
+ ));
2473
+ }
2474
+ this.setCustomizationsToMigrate(updatedCandidates, this.customizationMigrationTargetFoldersByType);
2475
+ }
2476
+ isMigrationCategoryEnabled(category) {
2477
+ if (this.configurationService.getValue(category.enablementSetting) !== true) {
2478
+ return false;
2479
+ }
2480
+ const modifiedSettingIds = category.getModifiedSettingIds?.(this.configurationService);
2481
+ return modifiedSettingIds === undefined || modifiedSettingIds.length > 0;
2482
+ }
2483
+ getEnabledMigrationCategories() {
2484
+ return CUSTOMIZATION_MIGRATION_CATEGORIES.filter(category => this.isMigrationCategoryEnabled(category));
2485
+ }
2486
+ async resolveCustomizationMigrationTargetFolders(customizations, availableSourceFolders, sessionResource) {
2487
+ const requiredStorageByTargetType = ( new Map());
2488
+ for (const customization of customizations) {
2489
+ const targetType = getCustomizationMigrationTargetType(customization);
2490
+ const storages = requiredStorageByTargetType.get(targetType) ?? ( new Set());
2491
+ storages.add(customization.storage);
2492
+ requiredStorageByTargetType.set(targetType, storages);
2493
+ }
2494
+ const targetFolders = ( new Map());
2495
+ const selectedDestinationGroupIds = ( new Map());
2496
+ for (const [targetType, requiredStorages] of requiredStorageByTargetType) {
2497
+ const availableFolders = availableSourceFolders.get(targetType) ?? [];
2498
+ if (!this.isCustomizationMigrationSessionActive(sessionResource)) {
2499
+ return undefined;
2500
+ }
2501
+ const foldersByStorage = ( new Map());
2502
+ for (const storage of requiredStorages) {
2503
+ const matchingFolders = this.getCustomizationMigrationFolders(targetType, storage, availableFolders);
2504
+ const selectedFolder = this.selectedCustomizationMigrationTargets.get(this.getCustomizationMigrationTargetKey(targetType, storage));
2505
+ if (matchingFolders.length === 0 && !selectedFolder) {
2506
+ this.notificationService.error(this.getMissingMigrationTargetFolderMessage(targetType, storage));
2507
+ return undefined;
2508
+ }
2509
+ const selectedDestinationGroupId = selectedDestinationGroupIds.get(storage);
2510
+ const foldersAtSelectedDestination = selectedDestinationGroupId ? matchingFolders.filter(folder => folder.destinationGroupId === selectedDestinationGroupId) : [];
2511
+ let targetFolder = selectedFolder;
2512
+ if (targetFolder?.destinationGroupId) {
2513
+ selectedDestinationGroupIds.set(storage, targetFolder.destinationGroupId);
2514
+ } else if (foldersAtSelectedDestination.length === 1) {
2515
+ targetFolder = foldersAtSelectedDestination[0];
2516
+ } else if (!targetFolder && matchingFolders.length === 1) {
2517
+ targetFolder = matchingFolders[0];
2518
+ } else if (!targetFolder) {
2519
+ targetFolder = await this.pickCustomizationMigrationTargetFolder(matchingFolders, targetType, requiredStorageByTargetType.size > 1);
2520
+ if (targetFolder?.destinationGroupId) {
2521
+ selectedDestinationGroupIds.set(storage, targetFolder.destinationGroupId);
2522
+ }
2523
+ }
2524
+ if (!targetFolder || !this.isCustomizationMigrationSessionActive(sessionResource)) {
2525
+ return undefined;
2526
+ }
2527
+ foldersByStorage.set(storage, targetFolder);
2528
+ }
2529
+ targetFolders.set(targetType, foldersByStorage);
2530
+ }
2531
+ return targetFolders;
2532
+ }
2533
+ isCustomizationMigrationSessionActive(sessionResource) {
2534
+ return isEqual(sessionResource, this.harnessService.activeSessionResource.get());
2535
+ }
2536
+ getMissingMigrationTargetFolderMessage(targetType, storage) {
2537
+ if (storage === PromptsStorage.local) {
2538
+ switch (targetType) {
2539
+ case PromptsType.skill:
2540
+ return localize(8613, "No workspace skills folder is configured for the active harness.");
2541
+ case PromptsType.agent:
2542
+ return localize(8614, "No workspace agents folder is configured for the active harness.");
2543
+ default:
2544
+ return localize(
2545
+ 8615,
2546
+ "No workspace instructions folder is configured for the active harness."
2547
+ );
2548
+ }
2549
+ }
2550
+ switch (targetType) {
2551
+ case PromptsType.skill:
2552
+ return localize(8616, "No global skills folder is configured for the active harness.");
2553
+ case PromptsType.agent:
2554
+ return localize(8617, "No global agents folder is configured for the active harness.");
2555
+ default:
2556
+ return localize(
2557
+ 8618,
2558
+ "No global instructions folder is configured for the active harness."
2559
+ );
2560
+ }
2561
+ }
2562
+ async pickCustomizationMigrationTargetFolder(sourceFolders, targetType, selectsMultipleTypes) {
2563
+ const picks = this.sortCustomizationMigrationFolders(sourceFolders).map(folder => ({
2564
+ label: folder.label,
2565
+ description: this.getCustomizationMigrationFolderPickDescription(folder, this.labelService.getUriLabel(folder.uri, {
2566
+ relative: true
2567
+ })),
2568
+ folder
2569
+ }));
2570
+ const selected = await this.quickInputService.pick(picks, {
2571
+ canPickMany: false,
2572
+ placeHolder: this.getMigrationTargetFolderPlaceholder(targetType, selectsMultipleTypes),
2573
+ matchOnDescription: true
2574
+ });
2575
+ return selected?.folder;
2576
+ }
2577
+ sortCustomizationMigrationFolders(folders) {
2578
+ return [...folders].sort(
2579
+ (first, second) => Number(this.isRecommendedCustomizationMigrationFolder(second)) - Number(this.isRecommendedCustomizationMigrationFolder(first))
2580
+ );
2581
+ }
2582
+ getCustomizationMigrationFolders(
2583
+ type,
2584
+ storage,
2585
+ availableFolders = this.customizationMigrationTargetFoldersByType.get(type) ?? []
2586
+ ) {
2587
+ return this.sortCustomizationMigrationFolders(availableFolders.filter(
2588
+ folder => folder.source === storage && !(type === PromptsType.skill && storage === PromptsStorage.local && basename(dirname(folder.uri)).toLowerCase() === ".claude")
2589
+ ));
2590
+ }
2591
+ isRecommendedCustomizationMigrationFolder(folder) {
2592
+ const root = basename(dirname(folder.uri)).toLowerCase();
2593
+ return root === (folder.source === PromptsStorage.local ? ".github" : ".copilot");
2594
+ }
2595
+ getCustomizationMigrationFolderPickDescription(folder, description) {
2596
+ return this.isRecommendedCustomizationMigrationFolder(folder) ? ( localize(8619, "{0} (Recommended)", description)) : description;
2597
+ }
2598
+ getMigrationTargetFolderPlaceholder(targetType, selectsMultipleTypes) {
2599
+ if (selectsMultipleTypes) {
2600
+ return localize(8620, "Select a destination for the migrated customizations");
2601
+ }
2602
+ switch (targetType) {
2603
+ case PromptsType.skill:
2604
+ return localize(8621, "Select a destination folder for migrated skills");
2605
+ case PromptsType.agent:
2606
+ return localize(8622, "Select a destination folder for migrated agents");
2607
+ default:
2608
+ return localize(8623, "Select a destination folder for migrated instructions");
2609
+ }
2610
+ }
2611
+ getCustomizationMigrationFolderLabel(folder) {
2612
+ const useSourceLabel = folder.label.startsWith("~") || (folder.source === PromptsStorage.local && folder.label.startsWith("."));
2613
+ let label = useSourceLabel ? folder.label : this.labelService.getUriLabel(folder.uri, {
2614
+ relative: folder.source === PromptsStorage.local
2615
+ });
2616
+ const folderName = basename(folder.uri);
2617
+ const normalizedLabel = label.replaceAll("\\", "/");
2618
+ if (useSourceLabel && normalizedLabel.split("/").at(-1) !== folderName) {
2619
+ const separator = label.includes("\\") ? "\\" : "/";
2620
+ label = `${label}${separator}${folderName}`;
2621
+ }
2622
+ return label;
2623
+ }
2624
+ getCustomizationMigrationDestinationLabel(folders) {
2625
+ const seen = ( new ResourceSet());
2626
+ const uniqueFolders = folders.filter(folder => {
2627
+ if (( seen.has(folder.uri))) {
2628
+ return false;
2629
+ }
2630
+ seen.add(folder.uri);
2631
+ return true;
2632
+ });
2633
+ if (uniqueFolders.length === 0) {
2634
+ return undefined;
2635
+ }
2636
+ const commonLabel = uniqueFolders[0].label;
2637
+ if (commonLabel && uniqueFolders.every(folder => folder.label === commonLabel)) {
2638
+ return commonLabel;
2639
+ }
2640
+ const labelParent = dirname$1(uniqueFolders[0].label);
2641
+ if (labelParent !== "." && uniqueFolders.every(folder => dirname$1(folder.label) === labelParent)) {
2642
+ return labelParent;
2643
+ }
2644
+ let destination = uniqueFolders[0].uri;
2645
+ if (uniqueFolders.length > 1) {
2646
+ const commonParent = dirname(destination);
2647
+ if (!uniqueFolders.every(folder => isEqual(dirname(folder.uri), commonParent))) {
2648
+ return undefined;
2649
+ }
2650
+ destination = commonParent;
2651
+ }
2652
+ return this.labelService.getUriLabel(destination);
2653
+ }
2654
+ isPromptsSection(section) {
2655
+ return section === AICustomizationManagementSection.Agents || section === AICustomizationManagementSection.Skills || section === AICustomizationManagementSection.Instructions || section === AICustomizationManagementSection.Prompts || section === AICustomizationManagementSection.Hooks;
2656
+ }
2657
+ updateSectionCount(sectionId, count) {
2658
+ const section = this.sections.find(s => s.id === sectionId);
2659
+ if (!section || section.count === count) {
2660
+ return;
2661
+ }
2662
+ section.count = count;
2663
+ this.sectionsList.splice(0, this.sectionsList.length, this.sections);
2664
+ this.ensureSectionsListReflectsActiveSection();
2665
+ }
2666
+ showWelcomePage() {
2667
+ if (this.viewMode === "editor") {
2668
+ this.goBackToList();
2669
+ }
2670
+ if (this.viewMode === "migration") {
2671
+ this.viewMode = "list";
2672
+ }
2673
+ if (this.viewMode === "mcpDetail") {
2674
+ this.goBackFromMcpDetail();
2675
+ }
2676
+ if (this.viewMode === "pluginDetail") {
2677
+ this.goBackFromPluginDetail();
2678
+ }
2679
+ if (this.viewMode === "toolsDetail") {
2680
+ this.goBackFromToolDetail();
2681
+ }
2682
+ this.selectedSection = undefined;
2683
+ this.activeMigrationStorage = undefined;
2684
+ this.sectionContextKey.set("");
2685
+ this.storageService.remove(AI_CUSTOMIZATION_MANAGEMENT_SELECTED_SECTION_KEY, StorageScope.PROFILE);
2686
+ this.welcomePage?.reset();
2687
+ this.updateContentVisibility();
2688
+ this.ensureSectionsListReflectsActiveSection(undefined);
2689
+ this.welcomePage?.focus();
2690
+ }
2691
+ selectSection(section, options) {
2692
+ if (this.selectedSection === section && !options?.showMarketplace) {
2693
+ this.ensureSectionsListReflectsActiveSection(section);
2694
+ return;
2695
+ }
2696
+ this.telemetryService.publicLog2("chatCustomizationEditor.sectionChanged", {
2697
+ section
2698
+ });
2699
+ if (this.viewMode === "editor") {
2700
+ this.goBackToList();
2701
+ }
2702
+ if (this.viewMode === "migration") {
2703
+ this.viewMode = "list";
2704
+ }
2705
+ if (this.viewMode === "mcpDetail") {
2706
+ this.goBackFromMcpDetail();
2707
+ }
2708
+ if (this.viewMode === "pluginDetail") {
2709
+ this.goBackFromPluginDetail();
2710
+ }
2711
+ if (this.viewMode === "toolsDetail") {
2712
+ this.goBackFromToolDetail();
2713
+ }
2714
+ this.selectedSection = section;
2715
+ this.sectionContextKey.set(section);
2716
+ this.storageService.store(
2717
+ AI_CUSTOMIZATION_MANAGEMENT_SELECTED_SECTION_KEY,
2718
+ section,
2719
+ StorageScope.PROFILE,
2720
+ StorageTarget.USER
2721
+ );
2722
+ this.updateContentVisibility();
2723
+ if (this.isPromptsSection(section)) {
2724
+ void this.listWidget.setSection(section);
2725
+ }
2726
+ if (this.dimension) {
2727
+ this.layout(this.dimension);
2728
+ }
2729
+ this.ensureSectionsListReflectsActiveSection(section);
2730
+ if (options?.showMarketplace) {
2731
+ if (section === AICustomizationManagementSection.McpServers) {
2732
+ this.mcpListWidget?.showBrowseMarketplace();
2733
+ } else if (section === AICustomizationManagementSection.Plugins) {
2734
+ this.pluginListWidget?.showBrowseMarketplace();
2735
+ }
2736
+ }
2737
+ if (section === AICustomizationManagementSection.McpServers) {
2738
+ this.mcpListWidget?.focusSearch();
2739
+ } else if (section === AICustomizationManagementSection.Plugins) {
2740
+ this.pluginListWidget?.focusSearch();
2741
+ } else if (section === AICustomizationManagementSection.Models) {
2742
+ this.modelsWidget?.focusSearch();
2743
+ } else if (section === AICustomizationManagementSection.Tools) {
2744
+ this.toolsListWidget?.focusSearch();
2745
+ } else {
2746
+ this.listWidget?.focusSearch();
2747
+ }
2748
+ }
2749
+ ensureSectionsListReflectsActiveSection(section = this.selectedSection) {
2750
+ if (!this.sectionsList) {
2751
+ return;
2752
+ }
2753
+ if (section === undefined) {
2754
+ this.sectionsList.setSelection([]);
2755
+ this.sectionsList.setFocus([]);
2756
+ return;
2757
+ }
2758
+ const index = this.sections.findIndex(s => s.id === section);
2759
+ if (index < 0) {
2760
+ return;
2761
+ }
2762
+ const selection = this.sectionsList.getSelection();
2763
+ if (selection.length !== 1 || selection[0] !== index) {
2764
+ this.sectionsList.setSelection([index]);
2765
+ }
2766
+ const focus = this.sectionsList.getFocus();
2767
+ if (focus.length !== 1 || focus[0] !== index) {
2768
+ this.sectionsList.setFocus([index]);
2769
+ }
2770
+ }
2771
+ updateContentVisibility() {
2772
+ this.contentNavigationGeneration++;
2773
+ const isEditorMode = this.viewMode === "editor";
2774
+ const isMigrationMode = this.viewMode === "migration";
2775
+ const isMcpDetailMode = this.viewMode === "mcpDetail";
2776
+ const isPluginDetailMode = this.viewMode === "pluginDetail";
2777
+ const isToolsDetailMode = this.viewMode === "toolsDetail";
2778
+ const isDetailMode = isMcpDetailMode || isPluginDetailMode || isToolsDetailMode;
2779
+ const isWelcome = this.selectedSection === undefined;
2780
+ const isPromptsSection = this.selectedSection !== undefined && this.isPromptsSection(this.selectedSection);
2781
+ const isModelsSection = this.selectedSection === AICustomizationManagementSection.Models;
2782
+ const isMcpSection = this.selectedSection === AICustomizationManagementSection.McpServers;
2783
+ const isPluginsSection = this.selectedSection === AICustomizationManagementSection.Plugins;
2784
+ const isToolsSection = this.selectedSection === AICustomizationManagementSection.Tools;
2785
+ if (this.welcomePage) {
2786
+ this.welcomePage.container.style.display = isWelcome && !isEditorMode && !isMigrationMode && !isDetailMode ? "" : "none";
2787
+ }
2788
+ if (this.promptsContentContainer) {
2789
+ this.promptsContentContainer.style.display = !isEditorMode && !isMigrationMode && !isDetailMode && isPromptsSection ? "" : "none";
2790
+ }
2791
+ if (this.migrationContentContainer) {
2792
+ this.migrationContentContainer.style.display = isMigrationMode ? "" : "none";
2793
+ }
2794
+ if (this.migrationShortcutButton) {
2795
+ this.migrationShortcutButton.classList.toggle("selected", isMigrationMode);
2796
+ if (isMigrationMode) {
2797
+ this.migrationShortcutButton.setAttribute("aria-current", "page");
2798
+ } else {
2799
+ this.migrationShortcutButton.removeAttribute("aria-current");
2800
+ }
2801
+ }
2802
+ if (this.modelsContentContainer) {
2803
+ this.modelsContentContainer.style.display = !isEditorMode && !isMigrationMode && !isDetailMode && isModelsSection ? "" : "none";
2804
+ }
2805
+ if (this.mcpContentContainer) {
2806
+ this.mcpContentContainer.style.display = !isEditorMode && !isMigrationMode && !isDetailMode && isMcpSection ? "" : "none";
2807
+ }
2808
+ this.mcpListWidget?.setVisible(!isEditorMode && !isMigrationMode && !isDetailMode && isMcpSection);
2809
+ if (this.mcpDetailContainer) {
2810
+ this.mcpDetailContainer.style.display = isMcpDetailMode ? "" : "none";
2811
+ }
2812
+ if (this.pluginContentContainer) {
2813
+ this.pluginContentContainer.style.display = !isEditorMode && !isMigrationMode && !isDetailMode && isPluginsSection ? "" : "none";
2814
+ }
2815
+ this.pluginListWidget?.setVisible(!isEditorMode && !isMigrationMode && !isDetailMode && isPluginsSection);
2816
+ if (this.pluginDetailContainer) {
2817
+ this.pluginDetailContainer.style.display = isPluginDetailMode ? "" : "none";
2818
+ }
2819
+ if (this.toolsContentContainer) {
2820
+ this.toolsContentContainer.style.display = !isEditorMode && !isMigrationMode && !isDetailMode && isToolsSection ? "" : "none";
2821
+ }
2822
+ if (this.toolsDetailContainer) {
2823
+ this.toolsDetailContainer.style.display = isToolsDetailMode ? "" : "none";
2824
+ }
2825
+ for (const [section, container] of this.contributedSectionContainers) {
2826
+ const visible = !isEditorMode && !isMigrationMode && !isDetailMode && this.selectedSection === section;
2827
+ container.style.display = visible ? "" : "none";
2828
+ if (visible) {
2829
+ this.ensureContributedSectionWidget(section);
2830
+ }
2831
+ }
2832
+ if (this.editorContentContainer) {
2833
+ this.editorContentContainer.style.display = isEditorMode ? "" : "none";
2834
+ }
2835
+ if (isModelsSection && this.modelsWidget) {
2836
+ this.modelsWidget.render();
2837
+ if (this.dimension) {
2838
+ this.layout(this.dimension);
2839
+ }
2840
+ }
2841
+ }
2842
+ ensureContributedSectionWidget(section) {
2843
+ const existing = this.contributedSectionWidgets.get(section);
2844
+ if (existing) {
2845
+ return existing;
2846
+ }
2847
+ const contribution = aiCustomizationManagementSectionRegistry.get(section, this.harnessService.activeHarness.get());
2848
+ const container = this.contributedSectionContainers.get(section);
2849
+ if (!contribution || !container) {
2850
+ return undefined;
2851
+ }
2852
+ const widget = contribution.create(this.instantiationService, container);
2853
+ this.contributedSectionWidgets.set(section, widget);
2854
+ this.editorDisposables.add(widget);
2855
+ if (this.dimension) {
2856
+ widget.layout?.(this.dimension);
2857
+ }
2858
+ return widget;
2859
+ }
2860
+ async createNewItemWithAI(type) {
2861
+ this.telemetryService.publicLog2("chatCustomizationEditor.createItem", {
2862
+ section: this.selectedSection ?? "welcome",
2863
+ promptType: type,
2864
+ creationMode: "ai",
2865
+ target: "workspace"
2866
+ });
2867
+ if (this.input) {
2868
+ this.group.closeEditor(this.input);
2869
+ }
2870
+ await this.workspaceService.generateCustomization(type);
2871
+ }
2872
+ async createNewItemManual(type, target, rootFileName) {
2873
+ this.telemetryService.publicLog2("chatCustomizationEditor.createItem", {
2874
+ section: this.selectedSection ?? "welcome",
2875
+ promptType: type,
2876
+ creationMode: "manual",
2877
+ target: target === "workspace-root" ? "workspace" : target
2878
+ });
2879
+ if (target === "workspace-root") {
2880
+ const projectRoot = this.workspaceService.getActiveProjectRoot();
2881
+ if (!projectRoot) {
2882
+ return;
2883
+ }
2884
+ const override = this.selectedSection ? this.harnessService.getActiveDescriptor().sectionOverrides?.get(this.selectedSection) : undefined;
2885
+ const fileName = rootFileName ?? override?.rootFile ?? AGENT_MD_FILENAME;
2886
+ const fileUri = URI.joinPath(projectRoot, fileName);
2887
+ if (await this.fileService.exists(fileUri)) {
2888
+ await this.showEmbeddedEditor(fileUri, fileName, PromptsType.instructions, PromptsStorage.local, true);
2889
+ } else {
2890
+ await this.fileService.createFile(fileUri);
2891
+ await this.showEmbeddedEditor(fileUri, fileName, PromptsType.instructions, PromptsStorage.local, true);
2892
+ }
2893
+ this.listWidget.refresh();
2894
+ return;
2895
+ }
2896
+ if (type === PromptsType.hook) {
2897
+ const preferredStorage = target === "user" ? PromptsStorage.user : PromptsStorage.local;
2898
+ if (this.workspaceService.isSessionsWindow) {
2899
+ await this.instantiationService.invokeFunction(showConfigureHooksQuickPick, {
2900
+ openEditor: async resource => {
2901
+ await this.showEmbeddedEditor(
2902
+ resource,
2903
+ basename(resource),
2904
+ PromptsType.hook,
2905
+ preferredStorage,
2906
+ preferredStorage === PromptsStorage.local
2907
+ );
2908
+ return;
2909
+ },
2910
+ target: Target.GitHubCopilot,
2911
+ preferredStorage
2912
+ });
2913
+ } else {
2914
+ await this.instantiationService.invokeFunction(showConfigureHooksQuickPick, {
2915
+ openEditor: async resource => {
2916
+ await this.showEmbeddedEditor(
2917
+ resource,
2918
+ basename(resource),
2919
+ PromptsType.hook,
2920
+ preferredStorage,
2921
+ preferredStorage === PromptsStorage.local
2922
+ );
2923
+ return;
2924
+ },
2925
+ preferredStorage
2926
+ });
2927
+ }
2928
+ return;
2929
+ }
2930
+ const sessionResource = this.harnessService.activeSessionResource.get();
2931
+ const picker = this.instantiationService.createInstance(CustomizationLocationPicker);
2932
+ const targetDir = await picker.resolveTargetDirectoryWithPicker(sessionResource, type, target);
2933
+ if (targetDir === null) {
2934
+ return;
2935
+ }
2936
+ if (targetDir === undefined) {
2937
+ await this.instantiationService.invokeFunction(showNoFoldersDialog, type);
2938
+ return;
2939
+ }
2940
+ const override = this.selectedSection ? this.harnessService.getActiveDescriptor().sectionOverrides?.get(this.selectedSection) : undefined;
2941
+ const options = {
2942
+ targetFolder: targetDir,
2943
+ targetStorage: target === AICustomizationSources.user ? PromptsStorage.user : PromptsStorage.local,
2944
+ fileExtension: override?.fileExtension,
2945
+ openFile: async uri => {
2946
+ const isWorkspace = target === AICustomizationSources.local;
2947
+ await this.showEmbeddedEditor(uri, basename(uri), type, target, isWorkspace);
2948
+ return this.embeddedEditor;
2949
+ }
2950
+ };
2951
+ let commandId;
2952
+ switch (type) {
2953
+ case PromptsType.prompt:
2954
+ commandId = NEW_PROMPT_COMMAND_ID;
2955
+ break;
2956
+ case PromptsType.instructions:
2957
+ commandId = NEW_INSTRUCTIONS_COMMAND_ID;
2958
+ break;
2959
+ case PromptsType.agent:
2960
+ commandId = NEW_AGENT_COMMAND_ID;
2961
+ break;
2962
+ case PromptsType.skill:
2963
+ commandId = NEW_SKILL_COMMAND_ID;
2964
+ break;
2965
+ default:
2966
+ return;
2967
+ }
2968
+ await this.commandService.executeCommand(commandId, options);
2969
+ this.listWidget.refresh();
2970
+ }
2971
+ updateStyles() {
2972
+ this.splitView?.style({
2973
+ separatorBorder: Color.transparent
2974
+ });
2975
+ }
2976
+ async setInput(input, options, context, token) {
2977
+ this.workspaceService.clearOverrideProjectRoot();
2978
+ this.inEditorContextKey.set(true);
2979
+ this.sectionContextKey.set(this.selectedSection ?? "");
2980
+ input.setSaveHandler(() => this.handleBuiltinSave());
2981
+ this.telemetryService.publicLog2("chatCustomizationEditor.opened", {
2982
+ section: this.selectedSection ?? "welcome"
2983
+ });
2984
+ await super.setInput(input, options, context, token);
2985
+ input.setTargetLabels(
2986
+ this.getActiveHarnessLabel(),
2987
+ this.workspaceService.activeProjectLabel.get()
2988
+ );
2989
+ if (this.dimension) {
2990
+ this.layout(this.dimension);
2991
+ }
2992
+ }
2993
+ clearInput() {
2994
+ const input = this.input;
2995
+ if (input instanceof AICustomizationManagementEditorInput) {
2996
+ input.setSaveHandler(undefined);
2997
+ input.setDirty(false);
2998
+ }
2999
+ this.inEditorContextKey.set(false);
3000
+ if (this.viewMode === "editor") {
3001
+ this.goBackToList();
3002
+ }
3003
+ if (this.viewMode === "migration") {
3004
+ this.viewMode = "list";
3005
+ }
3006
+ if (this.viewMode === "mcpDetail") {
3007
+ this.goBackFromMcpDetail();
3008
+ }
3009
+ if (this.viewMode === "pluginDetail") {
3010
+ this.goBackFromPluginDetail();
3011
+ }
3012
+ if (this.viewMode === "toolsDetail") {
3013
+ this.goBackFromToolDetail();
3014
+ }
3015
+ this.workspaceService.clearOverrideProjectRoot();
3016
+ this.disposeBuiltinEditingSessions();
3017
+ super.clearInput();
3018
+ }
3019
+ setEditorVisible(visible) {
3020
+ super.setEditorVisible(visible);
3021
+ if (visible && this.dimension) {
3022
+ this.layout(this.dimension);
3023
+ }
3024
+ }
3025
+ layout(dimension) {
3026
+ this.dimension = dimension;
3027
+ if (this.container && this.splitView) {
3028
+ this.splitViewContainer.style.height = `${dimension.height}px`;
3029
+ this.splitView.layout(dimension.width, dimension.height);
3030
+ }
3031
+ for (const widget of ( this.contributedSectionWidgets.values())) {
3032
+ widget.layout?.(dimension);
3033
+ }
3034
+ if (this.viewMode === "migration") {
3035
+ this.scheduleMigrationSectionLayout();
3036
+ }
3037
+ if (this.migrationContentContainer) {
3038
+ const migrationWidth = this.migrationContentContainer.offsetWidth || dimension.width;
3039
+ this.migrationContentContainer.classList.toggle("narrow-layout", migrationWidth < 500);
3040
+ }
3041
+ this.migrationListScrollable?.scanDomNode();
3042
+ this.migrationDashboardScrollable?.scanDomNode();
3043
+ }
3044
+ focus() {
3045
+ super.focus();
3046
+ if (this.viewMode === "editor") {
3047
+ if (this.editorDisplayMode === "raw") {
3048
+ this.embeddedEditor?.focus();
3049
+ } else {
3050
+ this.editorModeButton?.focus();
3051
+ }
3052
+ return;
3053
+ }
3054
+ if (this.viewMode === "migration") {
3055
+ this.focusCustomizationMigrationPage();
3056
+ return;
3057
+ }
3058
+ if (this.selectedSection === undefined) {
3059
+ this.welcomePage?.focus();
3060
+ return;
3061
+ }
3062
+ if (this.selectedSection === AICustomizationManagementSection.McpServers) {
3063
+ this.mcpListWidget?.focusSearch();
3064
+ } else if (this.selectedSection === AICustomizationManagementSection.Plugins) {
3065
+ this.pluginListWidget?.focusSearch();
3066
+ } else if (this.selectedSection === AICustomizationManagementSection.Models) {
3067
+ this.modelsWidget?.focusSearch();
3068
+ } else if (this.selectedSection === AICustomizationManagementSection.Tools) {
3069
+ this.toolsListWidget?.focusSearch();
3070
+ } else if (this.selectedSection && ( this.contributedSectionContainers.has(this.selectedSection))) {
3071
+ this.ensureContributedSectionWidget(this.selectedSection)?.focus?.();
3072
+ } else {
3073
+ this.listWidget?.focusSearch();
3074
+ }
3075
+ }
3076
+ selectSectionById(sectionId, options) {
3077
+ const index = this.sections.findIndex(s => s.id === sectionId);
3078
+ if (index >= 0) {
3079
+ if (this.viewMode === "editor") {
3080
+ this.goBackToList();
3081
+ }
3082
+ if (this.viewMode === "migration") {
3083
+ this.viewMode = "list";
3084
+ }
3085
+ if (this.viewMode === "mcpDetail") {
3086
+ this.goBackFromMcpDetail();
3087
+ }
3088
+ if (this.viewMode === "pluginDetail") {
3089
+ this.goBackFromPluginDetail();
3090
+ }
3091
+ if (this.viewMode === "toolsDetail") {
3092
+ this.goBackFromToolDetail();
3093
+ }
3094
+ this.selectedSection = sectionId;
3095
+ this.sectionContextKey.set(sectionId);
3096
+ this.storageService.store(
3097
+ AI_CUSTOMIZATION_MANAGEMENT_SELECTED_SECTION_KEY,
3098
+ sectionId,
3099
+ StorageScope.PROFILE,
3100
+ StorageTarget.USER
3101
+ );
3102
+ this.updateContentVisibility();
3103
+ if (this.isPromptsSection(sectionId)) {
3104
+ void this.listWidget.setSection(sectionId);
3105
+ }
3106
+ if (this.dimension) {
3107
+ this.layout(this.dimension);
3108
+ }
3109
+ this.ensureSectionsListReflectsActiveSection(sectionId);
3110
+ if (options?.showMarketplace) {
3111
+ if (sectionId === AICustomizationManagementSection.McpServers) {
3112
+ this.mcpListWidget?.showBrowseMarketplace();
3113
+ } else if (sectionId === AICustomizationManagementSection.Plugins) {
3114
+ this.pluginListWidget?.showBrowseMarketplace();
3115
+ }
3116
+ }
3117
+ }
3118
+ }
3119
+ prepareCustomizationMigrationView() {
3120
+ if (this.viewMode === "editor") {
3121
+ this.goBackToList();
3122
+ }
3123
+ if (this.viewMode === "mcpDetail") {
3124
+ this.goBackFromMcpDetail();
3125
+ }
3126
+ if (this.viewMode === "pluginDetail") {
3127
+ this.goBackFromPluginDetail();
3128
+ }
3129
+ if (this.viewMode === "toolsDetail") {
3130
+ this.goBackFromToolDetail();
3131
+ }
3132
+ this.selectedSection = undefined;
3133
+ this.sectionContextKey.set("");
3134
+ this.viewMode = "migration";
3135
+ this.ensureSectionsListReflectsActiveSection(undefined);
3136
+ }
3137
+ showCustomizationMigrationDashboard() {
3138
+ this.prepareCustomizationMigrationView();
3139
+ this.activeMigrationCategoryId = undefined;
3140
+ this.activeMigrationStorage = undefined;
3141
+ this.renderCustomizationMigrationPage();
3142
+ this.updateContentVisibility();
3143
+ if (this.dimension) {
3144
+ this.layout(this.dimension);
3145
+ }
3146
+ if (this.migrationContentContainer) {
3147
+ getWindow(this.migrationContentContainer).requestAnimationFrame(() => this.focusCustomizationMigrationPage());
3148
+ }
3149
+ }
3150
+ async showCustomizationMigrationPage(categoryId, storage) {
3151
+ if (!categoryId) {
3152
+ await this.refreshCustomizationMigrationInfo();
3153
+ this.showCustomizationMigrationDashboard();
3154
+ return;
3155
+ }
3156
+ if (!this.isMigrationCategoryEnabled(getCustomizationMigrationCategory(categoryId))) {
3157
+ return;
3158
+ }
3159
+ this.prepareCustomizationMigrationView();
3160
+ this.activeMigrationCategoryId = categoryId;
3161
+ this.activeMigrationStorage = storage;
3162
+ if (this.migrationClearSettingsCheckbox) {
3163
+ this.migrationClearSettingsCheckbox.checked = true;
3164
+ }
3165
+ this.renderCustomizationMigrationPage();
3166
+ this.updateContentVisibility();
3167
+ if (this.dimension) {
3168
+ this.layout(this.dimension);
3169
+ }
3170
+ if (this.migrationContentContainer) {
3171
+ getWindow(this.migrationContentContainer).requestAnimationFrame(() => this.focusCustomizationMigrationPage());
3172
+ }
3173
+ }
3174
+ refreshList() {
3175
+ this.listWidget.refresh();
3176
+ }
3177
+ async revealCustomizationByUri(uri) {
3178
+ if (!this.isPromptsSection(this.selectedSection)) {
3179
+ return;
3180
+ }
3181
+ for (let attempt = 0; attempt < 10; attempt++) {
3182
+ if (this.listWidget.revealAndSelectFirstItemByUri([uri])) {
3183
+ return;
3184
+ }
3185
+ if (attempt === 0) {
3186
+ this.listWidget.clearSearch();
3187
+ }
3188
+ await timeout(100);
3189
+ }
3190
+ }
3191
+ revealLastItem() {
3192
+ if (this.selectedSection === AICustomizationManagementSection.McpServers) {
3193
+ this.mcpListWidget?.revealLastItem();
3194
+ } else if (this.selectedSection === AICustomizationManagementSection.Plugins) {
3195
+ this.pluginListWidget?.revealLastItem();
3196
+ } else {
3197
+ this.listWidget.revealLastItem();
3198
+ }
3199
+ }
3200
+ async generateDebugReport() {
3201
+ return this.listWidget.generateDebugReport();
3202
+ }
3203
+ createEmbeddedEditor() {
3204
+ if (!this.editorContentContainer) {
3205
+ return;
3206
+ }
3207
+ const editorHeader = append(this.editorContentContainer, $(".editor-header"));
3208
+ this.editorActionButton = append(editorHeader, $("button.editor-back-button"));
3209
+ this.editorActionButton.setAttribute("aria-label", ( localize(8624, "Back to list")));
3210
+ this.editorDisposables.add(this.hoverService.setupManagedHover(
3211
+ getDefaultHoverDelegate("element"),
3212
+ this.editorActionButton,
3213
+ ( localize(8625, "Back to list"))
3214
+ ));
3215
+ this.editorActionButtonIcon = append(
3216
+ this.editorActionButton,
3217
+ $(`.codicon.codicon-${Codicon.arrowLeft.id}.editor-action-button-icon`)
3218
+ );
3219
+ this.editorActionButtonIcon.setAttribute("aria-hidden", "true");
3220
+ this.editorDisposables.add(addDisposableListener(this.editorActionButton, "click", () => {
3221
+ void this.handleEditorActionButton().catch(error => {
3222
+ console.error("Failed to handle editor back action:", error);
3223
+ this.notificationService.error(( localize(8626, "Failed to finish the prompt action.")));
3224
+ });
3225
+ }));
3226
+ const itemInfo = append(editorHeader, $(".editor-item-info"));
3227
+ this.editorItemNameElement = append(itemInfo, $(".editor-item-name"));
3228
+ this.editorItemPathElement = append(itemInfo, $(".editor-item-path"));
3229
+ this.editorModeButton = append(editorHeader, $("button.editor-mode-button"));
3230
+ this.editorModeButton.type = "button";
3231
+ this.editorModeButton.setAttribute("aria-pressed", "false");
3232
+ this.editorDisposables.add(this.hoverService.setupManagedHover(
3233
+ getDefaultHoverDelegate("element"),
3234
+ this.editorModeButton,
3235
+ () => this.getEditorModeButtonTooltip()
3236
+ ));
3237
+ this.editorDisposables.add(addDisposableListener(this.editorModeButton, "click", () => {
3238
+ this.toggleEditorDisplayMode();
3239
+ }));
3240
+ this.editorSaveIndicator = append(editorHeader, $(".editor-save-indicator"));
3241
+ this.editorPreviewContainer = append(this.editorContentContainer, $(".editor-preview-container"));
3242
+ this.editorPreviewScrollContainer = append(this.editorPreviewContainer, $(".editor-preview-scroll-container"));
3243
+ this.editorPreviewScrollContainer.setAttribute("role", "region");
3244
+ this.editorPreviewScrollContainer.setAttribute("aria-label", ( localize(8627, "Customization preview")));
3245
+ this.editorPreviewIssuesContainer = append(this.editorPreviewScrollContainer, $(".editor-preview-issues"));
3246
+ const frontMatterSection = append(
3247
+ this.editorPreviewScrollContainer,
3248
+ $(".editor-preview-section.editor-preview-frontmatter-section")
3249
+ );
3250
+ this.editorPreviewFrontMatterContainer = append(frontMatterSection, $(".editor-preview-frontmatter-list"));
3251
+ const bodySection = append(
3252
+ this.editorPreviewScrollContainer,
3253
+ $(".editor-preview-section.editor-preview-body-section")
3254
+ );
3255
+ this.editorPreviewBodyContainer = append(bodySection, $(".editor-preview-body-content"));
3256
+ this.embeddedEditorContainer = append(this.editorContentContainer, $(".embedded-editor-container"));
3257
+ const overflowWidgetsDomNode = append(
3258
+ this.editorContentContainer,
3259
+ $(".embedded-editor-overflow-widgets.monaco-editor")
3260
+ );
3261
+ this.editorDisposables.add(toDisposable(() => overflowWidgetsDomNode.remove()));
3262
+ this.embeddedEditor = this.editorDisposables.add(
3263
+ this.instantiationService.createInstance(CodeEditorWidget, this.embeddedEditorContainer, {
3264
+ ...getSimpleEditorOptions(this.configurationService),
3265
+ readOnly: false,
3266
+ minimap: {
3267
+ enabled: false
3268
+ },
3269
+ lineNumbers: "on",
3270
+ wordWrap: "on",
3271
+ scrollBeyondLastLine: false,
3272
+ automaticLayout: false,
3273
+ folding: true,
3274
+ renderLineHighlight: "all",
3275
+ scrollbar: {
3276
+ vertical: "auto",
3277
+ horizontal: "auto"
3278
+ },
3279
+ overflowWidgetsDomNode
3280
+ }, {
3281
+ isSimpleWidget: false
3282
+ })
3283
+ );
3284
+ this.updateEditorDisplayMode();
3285
+ }
3286
+ async showEmbeddedEditor(
3287
+ uri,
3288
+ displayName,
3289
+ promptType,
3290
+ source,
3291
+ isWorkspaceFile = false,
3292
+ isReadOnly = false
3293
+ ) {
3294
+ if (!hasReadableCustomizationContent(uri)) {
3295
+ return;
3296
+ }
3297
+ this.editorReturnViewMode = this.viewMode === "migration" ? "migration" : "list";
3298
+ this.currentModelRef?.dispose();
3299
+ this.currentModelRef = undefined;
3300
+ this.editorModelChangeDisposables.clear();
3301
+ this.editorPreviewDisposables.clear();
3302
+ this.editorPreviewRenderScheduler.cancel();
3303
+ this.currentEditingUri = uri;
3304
+ this.currentEditingProjectRoot = isWorkspaceFile ? this.workspaceService.getActiveProjectRoot() : undefined;
3305
+ this.currentEditingSource = source;
3306
+ this.currentEditingPromptType = promptType;
3307
+ this.currentEditingReadOnly = isReadOnly;
3308
+ this.editorDisplayMode = this.isStructuredPreviewSupported(promptType) ? "preview" : "raw";
3309
+ this.viewMode = "editor";
3310
+ this.editorItemNameElement.textContent = displayName;
3311
+ this.editorItemPathElement.textContent = basename(uri);
3312
+ this._editorContentChanged = false;
3313
+ this.resetEditorSaveIndicator();
3314
+ this.updateEditorActionButton();
3315
+ this.updateEditorDisplayMode();
3316
+ this.updateContentVisibility();
3317
+ try {
3318
+ if (source === AICustomizationSources.builtin && (promptType === PromptsType.prompt || promptType === PromptsType.skill)) {
3319
+ const session = await this.getOrCreateBuiltinEditingSession(uri);
3320
+ if (!isEqual(this.currentEditingUri, uri)) {
3321
+ return;
3322
+ }
3323
+ this.embeddedEditor.setModel(session.model);
3324
+ this.embeddedEditor.updateOptions({
3325
+ readOnly: false
3326
+ });
3327
+ this._editorContentChanged = session.model.getValue() !== session.originalContent;
3328
+ this.renderCurrentEditorPreview();
3329
+ this.updateEditorActionButton();
3330
+ if (this.dimension) {
3331
+ this.layout(this.dimension);
3332
+ }
3333
+ if (this.editorDisplayMode === "raw") {
3334
+ this.embeddedEditor.focus();
3335
+ } else {
3336
+ this.editorModeButton?.focus();
3337
+ }
3338
+ this.editorModelChangeDisposables.add(session.model.onDidChangeContent(() => {
3339
+ this._editorContentChanged = session.model.getValue() !== session.originalContent;
3340
+ this.scheduleCurrentEditorPreviewRender();
3341
+ this.updateEditorActionButton();
3342
+ }));
3343
+ return;
3344
+ }
3345
+ const ref = await this.textModelService.createModelReference(uri);
3346
+ if (!isEqual(this.currentEditingUri, uri)) {
3347
+ ref.dispose();
3348
+ return;
3349
+ }
3350
+ this.currentModelRef = ref;
3351
+ this.embeddedEditor.setModel(ref.object.textEditorModel);
3352
+ this.embeddedEditor.updateOptions({
3353
+ readOnly: isReadOnly
3354
+ });
3355
+ this.renderCurrentEditorPreview();
3356
+ if (this.dimension) {
3357
+ this.layout(this.dimension);
3358
+ }
3359
+ if (this.editorDisplayMode === "raw") {
3360
+ this.embeddedEditor.focus();
3361
+ } else {
3362
+ this.editorModeButton?.focus();
3363
+ }
3364
+ this._editorContentChanged = this.workingCopyService.isDirty(uri);
3365
+ this.editorModelChangeDisposables.add(ref.object.textEditorModel.onDidChangeContent(() => {
3366
+ this._editorContentChanged = true;
3367
+ this.scheduleCurrentEditorPreviewRender();
3368
+ this.resetEditorSaveIndicator();
3369
+ }));
3370
+ this.editorModelChangeDisposables.add(this.workingCopyService.onDidSave(e => {
3371
+ if (isEqual(e.workingCopy.resource, uri)) {
3372
+ this._editorContentChanged = this.workingCopyService.isDirty(uri);
3373
+ this.editorSaveIndicator.className = "editor-save-indicator visible saved";
3374
+ this.editorSaveIndicator.classList.add(...ThemeIcon.asClassNameArray(Codicon.check));
3375
+ this.editorSaveIndicator.title = ( localize(8628, "Saved"));
3376
+ this.editorSaveIndicator.setAttribute("aria-label", ( localize(8628, "Saved")));
3377
+ status(( localize(8628, "Saved")));
3378
+ }
3379
+ }));
3380
+ } catch (error) {
3381
+ console.error("Failed to load model for embedded editor:", error);
3382
+ if (isEqual(this.currentEditingUri, uri)) {
3383
+ this.goBackToList();
3384
+ }
3385
+ }
3386
+ }
3387
+ goBackToList() {
3388
+ const returnViewMode = this.editorReturnViewMode;
3389
+ this.editorReturnViewMode = "list";
3390
+ const fileUri = this.currentEditingUri;
3391
+ const backgroundSaveRequest = this.createExistingCustomizationSaveRequest();
3392
+ if (backgroundSaveRequest) {
3393
+ this.telemetryService.publicLog2("chatCustomizationEditor.saveItem", {
3394
+ promptType: this.currentEditingPromptType ?? "",
3395
+ storage: String(this.currentEditingSource ?? ""),
3396
+ saveTarget: "existing"
3397
+ });
3398
+ }
3399
+ if (fileUri && this.currentEditingSource === AICustomizationSources.builtin) {
3400
+ this.disposeBuiltinEditingSession(fileUri);
3401
+ }
3402
+ this.currentModelRef?.dispose();
3403
+ this.currentModelRef = undefined;
3404
+ this.currentEditingUri = undefined;
3405
+ this.currentEditingProjectRoot = undefined;
3406
+ this.currentEditingSource = undefined;
3407
+ this.currentEditingPromptType = undefined;
3408
+ this.currentEditingReadOnly = false;
3409
+ this.editorDisplayMode = "preview";
3410
+ this._editorContentChanged = false;
3411
+ this.editorModelChangeDisposables.clear();
3412
+ this.editorPreviewRenderScheduler.cancel();
3413
+ this.clearEditorPreview();
3414
+ this.resetEditorSaveIndicator();
3415
+ this.updateEditorActionButton();
3416
+ this.updateEditorDisplayMode();
3417
+ this.embeddedEditor?.setModel(null);
3418
+ this.viewMode = returnViewMode;
3419
+ this.updateContentVisibility();
3420
+ if (returnViewMode === "migration") {
3421
+ this.renderCustomizationMigrationPage();
3422
+ void this.refreshCustomizationMigrationInfo();
3423
+ } else {
3424
+ void this.listWidget?.refresh();
3425
+ }
3426
+ if (this.dimension) {
3427
+ this.layout(this.dimension);
3428
+ }
3429
+ if (returnViewMode === "migration") {
3430
+ this.focusCustomizationMigrationPage();
3431
+ } else {
3432
+ this.listWidget?.focusSearch();
3433
+ }
3434
+ if (backgroundSaveRequest) {
3435
+ const saveRequest = backgroundSaveRequest;
3436
+ void this.saveExistingCustomization(saveRequest).catch(error => {
3437
+ console.error("Failed to save customization changes on exit:", error);
3438
+ this.notificationService.warn(( localize(8629, "Could not save changes to {0}.", basename(saveRequest.fileUri))));
3439
+ });
3440
+ }
3441
+ }
3442
+ focusCustomizationMigrationPage() {
3443
+ if (this.activeMigrationCategoryId !== undefined) {
3444
+ (this.migrationFirstFocusableElement ?? this.migrationLinkElement ?? this.migrationMigrateButton?.element)?.focus();
3445
+ } else {
3446
+ this.migrationDashboard?.focus();
3447
+ }
3448
+ }
3449
+ async getOrCreateBuiltinEditingSession(uri) {
3450
+ const key = ( uri.toString());
3451
+ const existing = this.builtinEditingSessions.get(key);
3452
+ if (existing && !existing.model.isDisposed()) {
3453
+ return existing;
3454
+ }
3455
+ const ref = await this.textModelService.createModelReference(uri);
3456
+ try {
3457
+ const session = {
3458
+ model: this.modelService.createModel(
3459
+ createTextBufferFactoryFromSnapshot(ref.object.textEditorModel.createSnapshot()),
3460
+ {
3461
+ languageId: ref.object.textEditorModel.getLanguageId(),
3462
+ onDidChange: Event.None
3463
+ },
3464
+ ( URI.from({
3465
+ scheme: "ai-customization-builtin",
3466
+ path: uri.path,
3467
+ query: generateUuid()
3468
+ })),
3469
+ false
3470
+ ),
3471
+ originalContent: ref.object.textEditorModel.getValue()
3472
+ };
3473
+ this.builtinEditingSessions.set(key, session);
3474
+ return session;
3475
+ } finally {
3476
+ ref.dispose();
3477
+ }
3478
+ }
3479
+ createBuiltinPromptSaveRequest(target) {
3480
+ const sourceUri = this.currentEditingUri;
3481
+ const promptType = this.currentEditingPromptType;
3482
+ if (!sourceUri || this.currentEditingSource !== AICustomizationSources.builtin || (promptType !== PromptsType.prompt && promptType !== PromptsType.skill) || !target.folder || target.target === "cancel") {
3483
+ return;
3484
+ }
3485
+ const session = this.builtinEditingSessions.get(( sourceUri.toString()));
3486
+ if (!session || !this._editorContentChanged) {
3487
+ return;
3488
+ }
3489
+ return {
3490
+ target: target.target,
3491
+ folder: target.folder,
3492
+ sourceUri,
3493
+ content: session.model.getValue(),
3494
+ promptType,
3495
+ projectRoot: target.target === "workspace" ? this.workspaceService.getActiveProjectRoot() : undefined
3496
+ };
3497
+ }
3498
+ createExistingCustomizationSaveRequest() {
3499
+ if (!this._editorContentChanged || this.currentEditingSource === AICustomizationSources.builtin || !this.currentEditingUri) {
3500
+ return undefined;
3501
+ }
3502
+ const model = this.currentModelRef?.object.textEditorModel;
3503
+ if (!model) {
3504
+ return undefined;
3505
+ }
3506
+ return {
3507
+ fileUri: this.currentEditingUri,
3508
+ content: model.getValue(),
3509
+ projectRoot: this.currentEditingProjectRoot
3510
+ };
3511
+ }
3512
+ async saveBuiltinPromptCopy(request) {
3513
+ let targetUri;
3514
+ if (request.promptType === PromptsType.skill) {
3515
+ const skillFolderName = basename(dirname(request.sourceUri));
3516
+ targetUri = URI.joinPath(request.folder, skillFolderName, basename(request.sourceUri));
3517
+ } else {
3518
+ targetUri = URI.joinPath(request.folder, basename(request.sourceUri));
3519
+ }
3520
+ await this.fileService.createFolder(dirname(targetUri));
3521
+ await this.fileService.writeFile(targetUri, VSBuffer.fromString(request.content));
3522
+ if (request.target === "workspace" && request.projectRoot) {
3523
+ await this.workspaceService.commitFiles(request.projectRoot, [targetUri]);
3524
+ }
3525
+ }
3526
+ async saveExistingCustomization(request) {
3527
+ await this.fileService.writeFile(request.fileUri, VSBuffer.fromString(request.content));
3528
+ if (request.projectRoot) {
3529
+ await this.workspaceService.commitFiles(request.projectRoot, [request.fileUri]);
3530
+ }
3531
+ }
3532
+ async pickBuiltinPromptSaveTarget() {
3533
+ const items = [];
3534
+ const promptType = this.currentEditingPromptType ?? PromptsType.prompt;
3535
+ const workspaceFolder = resolveWorkspaceTargetDirectory(this.workspaceService, promptType);
3536
+ if (workspaceFolder) {
3537
+ items.push({
3538
+ label: ( localize(8630, "Workspace")),
3539
+ description: this.labelService.getUriLabel(workspaceFolder, {
3540
+ relative: true
3541
+ }),
3542
+ target: "workspace",
3543
+ folder: workspaceFolder
3544
+ });
3545
+ }
3546
+ const userFolder = await resolveUserTargetDirectory(this.promptsService, promptType);
3547
+ if (userFolder) {
3548
+ items.push({
3549
+ label: ( localize(8631, "User")),
3550
+ description: this.labelService.getUriLabel(userFolder, {
3551
+ relative: true
3552
+ }),
3553
+ target: "user",
3554
+ folder: userFolder
3555
+ });
3556
+ }
3557
+ items.push({
3558
+ label: ( localize(8632, "Cancel")),
3559
+ target: "cancel"
3560
+ });
3561
+ return this.quickInputService.pick(items, {
3562
+ canPickMany: false,
3563
+ placeHolder: ( localize(8633, "Select Workspace, User, or Cancel")),
3564
+ matchOnDescription: true
3565
+ });
3566
+ }
3567
+ async handleEditorActionButton() {
3568
+ if (this.editorActionButtonInProgress) {
3569
+ return;
3570
+ }
3571
+ this.editorActionButtonInProgress = true;
3572
+ this.updateEditorActionButton();
3573
+ let backgroundSaveRequest;
3574
+ try {
3575
+ if (this.shouldShowBuiltinSaveAction()) {
3576
+ const selection = await this.pickBuiltinPromptSaveTarget();
3577
+ if (!selection || selection.target === "cancel") {
3578
+ return;
3579
+ }
3580
+ backgroundSaveRequest = this.createBuiltinPromptSaveRequest(selection);
3581
+ if (backgroundSaveRequest) {
3582
+ this.telemetryService.publicLog2("chatCustomizationEditor.saveItem", {
3583
+ promptType: this.currentEditingPromptType ?? "",
3584
+ storage: String(this.currentEditingSource ?? ""),
3585
+ saveTarget: selection.target
3586
+ });
3587
+ }
3588
+ }
3589
+ this.goBackToList();
3590
+ if (backgroundSaveRequest) {
3591
+ const saveRequest = backgroundSaveRequest;
3592
+ void this.saveBuiltinPromptCopy(saveRequest).then(() => {
3593
+ void this.listWidget?.refresh();
3594
+ }, error => {
3595
+ console.error("Failed to save built-in override:", error);
3596
+ this.notificationService.warn(saveRequest.target === "workspace" ? ( localize(8634, "Could not save the override to the workspace.")) : ( localize(8635, "Could not save the override to your user folder.")));
3597
+ });
3598
+ }
3599
+ } finally {
3600
+ this.editorActionButtonInProgress = false;
3601
+ this.updateEditorActionButton();
3602
+ }
3603
+ }
3604
+ updateEditorActionButton() {
3605
+ this.updateInputDirtyState();
3606
+ if (!this.editorActionButton || !this.editorActionButtonIcon) {
3607
+ return;
3608
+ }
3609
+ const shouldShowBuiltinSaveAction = this.shouldShowBuiltinSaveAction();
3610
+ this.editorActionButtonIcon.className = `codicon codicon-${shouldShowBuiltinSaveAction ? Codicon.save.id : Codicon.arrowLeft.id} editor-action-button-icon`;
3611
+ this.editorActionButton.disabled = this.editorActionButtonInProgress;
3612
+ this.editorActionButton.setAttribute("aria-label", shouldShowBuiltinSaveAction ? ( localize(8636, "Save override")) : this.editorReturnViewMode === "migration" ? (this.getActiveMigrationCategory()?.backLabel ?? ( localize(8637, "Back to migration"))) : ( localize(8624, "Back to list")));
3613
+ this.editorActionButton.title = shouldShowBuiltinSaveAction ? ( localize(8638, "Save override (choose Workspace, User, or Cancel)")) : this.editorReturnViewMode === "migration" ? (this.getActiveMigrationCategory()?.backLabel ?? ( localize(8637, "Back to migration"))) : ( localize(8624, "Back to list"));
3614
+ }
3615
+ shouldShowBuiltinSaveAction() {
3616
+ return this._editorContentChanged && this.currentEditingSource === AICustomizationSources.builtin && (this.currentEditingPromptType === PromptsType.prompt || this.currentEditingPromptType === PromptsType.skill);
3617
+ }
3618
+ updateInputDirtyState() {
3619
+ const input = this.input;
3620
+ if (input instanceof AICustomizationManagementEditorInput) {
3621
+ input.setDirty(this.shouldShowBuiltinSaveAction());
3622
+ }
3623
+ }
3624
+ async handleBuiltinSave() {
3625
+ if (!this.shouldShowBuiltinSaveAction()) {
3626
+ return false;
3627
+ }
3628
+ const target = await this.pickBuiltinPromptSaveTarget();
3629
+ if (!target || target.target === "cancel") {
3630
+ return false;
3631
+ }
3632
+ const saveRequest = this.createBuiltinPromptSaveRequest(target);
3633
+ if (!saveRequest) {
3634
+ return false;
3635
+ }
3636
+ try {
3637
+ await this.saveBuiltinPromptCopy(saveRequest);
3638
+ this.telemetryService.publicLog2("chatCustomizationEditor.saveItem", {
3639
+ promptType: this.currentEditingPromptType ?? "",
3640
+ storage: String(this.currentEditingSource ?? ""),
3641
+ saveTarget: target.target
3642
+ });
3643
+ this._editorContentChanged = false;
3644
+ this.updateEditorActionButton();
3645
+ return true;
3646
+ } catch (error) {
3647
+ console.error("Failed to save built-in override:", error);
3648
+ this.notificationService.warn(target.target === "workspace" ? ( localize(8634, "Could not save the override to the workspace.")) : ( localize(8635, "Could not save the override to your user folder.")));
3649
+ return false;
3650
+ }
3651
+ }
3652
+ resetEditorSaveIndicator() {
3653
+ this.editorSaveIndicator.className = "editor-save-indicator";
3654
+ this.editorSaveIndicator.title = "";
3655
+ this.editorSaveIndicator.removeAttribute("aria-label");
3656
+ }
3657
+ isStructuredPreviewSupported(promptType) {
3658
+ if (this.configurationService.getValue(ChatConfiguration.ChatCustomizationsStructuredPreviewEnabled) !== true) {
3659
+ return false;
3660
+ }
3661
+ return promptType === PromptsType.agent || promptType === PromptsType.skill || promptType === PromptsType.instructions || promptType === PromptsType.prompt;
3662
+ }
3663
+ onStructuredPreviewSettingChanged() {
3664
+ if (this.viewMode !== "editor") {
3665
+ return;
3666
+ }
3667
+ const supportsStructuredPreview = this.isStructuredPreviewSupported(this.currentEditingPromptType);
3668
+ if (!supportsStructuredPreview) {
3669
+ this.editorDisplayMode = "raw";
3670
+ this.editorPreviewRenderScheduler.cancel();
3671
+ this.clearEditorPreview();
3672
+ } else if (this.editorDisplayMode === "preview") {
3673
+ this.editorPreviewRenderScheduler.schedule();
3674
+ }
3675
+ this.updateEditorDisplayMode();
3676
+ if (this.dimension) {
3677
+ this.layout(this.dimension);
3678
+ }
3679
+ }
3680
+ getCurrentEditingModel() {
3681
+ if (!this.currentEditingUri) {
3682
+ return undefined;
3683
+ }
3684
+ if (this.currentEditingSource === AICustomizationSources.builtin) {
3685
+ return this.builtinEditingSessions.get(( this.currentEditingUri.toString()))?.model;
3686
+ }
3687
+ return this.currentModelRef?.object.textEditorModel;
3688
+ }
3689
+ toggleEditorDisplayMode() {
3690
+ if (!this.isStructuredPreviewSupported(this.currentEditingPromptType)) {
3691
+ return;
3692
+ }
3693
+ this.editorDisplayMode = this.editorDisplayMode === "preview" ? "raw" : "preview";
3694
+ if (this.editorDisplayMode === "preview") {
3695
+ this.editorPreviewRenderScheduler.cancel();
3696
+ this.renderCurrentEditorPreview();
3697
+ }
3698
+ this.updateEditorDisplayMode();
3699
+ if (this.dimension) {
3700
+ this.layout(this.dimension);
3701
+ }
3702
+ if (this.editorDisplayMode === "raw") {
3703
+ this.embeddedEditor?.focus();
3704
+ } else {
3705
+ this.editorModeButton?.focus();
3706
+ }
3707
+ }
3708
+ updateEditorDisplayMode() {
3709
+ const supportsStructuredPreview = this.isStructuredPreviewSupported(this.currentEditingPromptType);
3710
+ const showPreview = supportsStructuredPreview && this.editorDisplayMode === "preview";
3711
+ if (this.editorModeButton) {
3712
+ this.editorModeButton.style.display = supportsStructuredPreview ? "" : "none";
3713
+ this.editorModeButton.textContent = this.getEditorModeButtonLabel();
3714
+ this.editorModeButton.setAttribute("aria-label", this.getEditorModeButtonTooltip());
3715
+ this.editorModeButton.setAttribute("aria-pressed", String(this.editorDisplayMode === "raw"));
3716
+ this.editorModeButton.title = this.getEditorModeButtonTooltip();
3717
+ }
3718
+ if (this.editorPreviewContainer) {
3719
+ this.editorPreviewContainer.style.display = showPreview ? "" : "none";
3720
+ }
3721
+ if (this.embeddedEditorContainer) {
3722
+ this.embeddedEditorContainer.style.display = showPreview ? "none" : "";
3723
+ }
3724
+ }
3725
+ getEditorModeButtonLabel() {
3726
+ if (!this.isStructuredPreviewSupported(this.currentEditingPromptType)) {
3727
+ return "";
3728
+ }
3729
+ if (this.editorDisplayMode === "raw") {
3730
+ return localize(8639, "Preview");
3731
+ }
3732
+ return this.canEditCurrentRaw() ? ( localize(8640, "Edit")) : ( localize(8641, "View Raw"));
3733
+ }
3734
+ getEditorModeButtonTooltip() {
3735
+ if (!this.isStructuredPreviewSupported(this.currentEditingPromptType)) {
3736
+ return "";
3737
+ }
3738
+ if (this.editorDisplayMode === "raw") {
3739
+ return localize(8642, "Show structured preview");
3740
+ }
3741
+ return this.canEditCurrentRaw() ? ( localize(8643, "Edit the raw markdown file")) : ( localize(8644, "Show the raw markdown file"));
3742
+ }
3743
+ canEditCurrentRaw() {
3744
+ const promptType = this.currentEditingPromptType;
3745
+ if (!promptType) {
3746
+ return false;
3747
+ }
3748
+ return (this.currentEditingSource === AICustomizationSources.builtin && (promptType === PromptsType.prompt || promptType === PromptsType.skill)) || !this.currentEditingReadOnly;
3749
+ }
3750
+ scheduleCurrentEditorPreviewRender() {
3751
+ if (this.editorDisplayMode !== "preview") {
3752
+ return;
3753
+ }
3754
+ this.editorPreviewRenderScheduler.schedule();
3755
+ }
3756
+ renderCurrentEditorPreview() {
3757
+ const model = this.getCurrentEditingModel();
3758
+ const promptType = this.currentEditingPromptType;
3759
+ if (!model || !promptType || this.editorDisplayMode !== "preview" || !this.isStructuredPreviewSupported(promptType)) {
3760
+ this.clearEditorPreview();
3761
+ return;
3762
+ }
3763
+ const parsedPromptFile = this.promptsService.getParsedPromptFile(model);
3764
+ this.renderEditorPreview(parsedPromptFile, promptType);
3765
+ }
3766
+ renderEditorPreview(parsedPromptFile, promptType) {
3767
+ if (!this.editorPreviewIssuesContainer || !this.editorPreviewFrontMatterContainer || !this.editorPreviewBodyContainer) {
3768
+ return;
3769
+ }
3770
+ this.editorPreviewDisposables.clear();
3771
+ clearNode(this.editorPreviewIssuesContainer);
3772
+ clearNode(this.editorPreviewFrontMatterContainer);
3773
+ clearNode(this.editorPreviewBodyContainer);
3774
+ const target = getTarget(promptType, parsedPromptFile.header ?? parsedPromptFile.uri);
3775
+ this.renderPreviewIssues(parsedPromptFile);
3776
+ this.renderPreviewFrontMatter(parsedPromptFile, promptType, target);
3777
+ this.renderPreviewBody(parsedPromptFile);
3778
+ }
3779
+ renderPreviewIssues(parsedPromptFile) {
3780
+ if (!this.editorPreviewIssuesContainer || !parsedPromptFile.header?.errors.length) {
3781
+ return;
3782
+ }
3783
+ const issuesContainer = append(this.editorPreviewIssuesContainer, $(".editor-preview-issues-box"));
3784
+ append(issuesContainer, $("div.editor-preview-issues-title")).textContent = ( localize(8645, "Header issues detected"));
3785
+ append(issuesContainer, $("div.editor-preview-issues-description")).textContent = ( localize(8646, "Switch to raw view to fix invalid or unsupported metadata entries."));
3786
+ const list = append(issuesContainer, $("ul.editor-preview-issues-list"));
3787
+ for (const error of parsedPromptFile.header.errors) {
3788
+ append(list, $("li.editor-preview-issues-item")).textContent = error.message;
3789
+ }
3790
+ }
3791
+ renderPreviewFrontMatter(parsedPromptFile, promptType, target) {
3792
+ if (!this.editorPreviewFrontMatterContainer) {
3793
+ return;
3794
+ }
3795
+ const attributes = parsedPromptFile.header?.attributes ?? [];
3796
+ if (!attributes.length) {
3797
+ append(
3798
+ this.editorPreviewFrontMatterContainer,
3799
+ $("div.editor-preview-empty-state")
3800
+ ).textContent = ( localize(8647, "No metadata found in this file."));
3801
+ return;
3802
+ }
3803
+ for (const attribute of attributes) {
3804
+ this.renderPreviewAttribute(attribute, promptType, target);
3805
+ }
3806
+ }
3807
+ renderPreviewAttribute(attribute, promptType, target) {
3808
+ if (!this.editorPreviewFrontMatterContainer) {
3809
+ return;
3810
+ }
3811
+ const row = append(this.editorPreviewFrontMatterContainer, $(".editor-preview-row"));
3812
+ const header = append(row, $(".editor-preview-row-header"));
3813
+ append(header, $("div.editor-preview-row-key")).textContent = attribute.key;
3814
+ const helpButton = append(header, $("button.editor-preview-row-help"));
3815
+ helpButton.type = "button";
3816
+ helpButton.setAttribute("aria-label", ( localize(8648, "Show help for '{0}'", attribute.key)));
3817
+ const helpIcon = append(helpButton, $("span.editor-preview-row-help-icon"));
3818
+ helpIcon.classList.add(...ThemeIcon.asClassNameArray(Codicon.info));
3819
+ helpIcon.setAttribute("aria-hidden", "true");
3820
+ const description = getAttributeDefinition(attribute.key, promptType, target)?.description ?? ( localize(8649, "Custom metadata field `{0}`.", attribute.key));
3821
+ const helpHover = this.editorPreviewDisposables.add(
3822
+ this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), helpButton, {
3823
+ markdown: ( new MarkdownString(description)),
3824
+ markdownNotSupportedFallback: description
3825
+ })
3826
+ );
3827
+ this.editorPreviewDisposables.add(addDisposableListener(helpButton, "click", e => {
3828
+ e.preventDefault();
3829
+ e.stopPropagation();
3830
+ helpHover.show(true);
3831
+ }));
3832
+ const valueElement = append(row, $("div.editor-preview-row-value"));
3833
+ const valueText = this.stringifyPreviewValue(attribute.value);
3834
+ valueElement.textContent = valueText;
3835
+ valueElement.classList.toggle("multiline", valueText.includes("\n"));
3836
+ }
3837
+ renderPreviewBody(parsedPromptFile) {
3838
+ if (!this.editorPreviewBodyContainer) {
3839
+ return;
3840
+ }
3841
+ const bodyContent = parsedPromptFile.body?.getContent() ?? "";
3842
+ if (!bodyContent.trim()) {
3843
+ append(this.editorPreviewBodyContainer, $("div.editor-preview-empty-state")).textContent = ( localize(8650, "No markdown body found in this file."));
3844
+ return;
3845
+ }
3846
+ const markdown = ( new MarkdownString(bodyContent, {
3847
+ supportThemeIcons: true
3848
+ }));
3849
+ markdown.baseUri = parsedPromptFile.uri;
3850
+ const renderedMarkdown = this.editorPreviewDisposables.add(this.markdownRendererService.render(markdown));
3851
+ this.editorPreviewBodyContainer.appendChild(renderedMarkdown.element);
3852
+ }
3853
+ stringifyPreviewValue(value) {
3854
+ switch (value.type) {
3855
+ case "scalar":
3856
+ return value.value;
3857
+ case "sequence":
3858
+ if (value.items.every(item => item.type === "scalar")) {
3859
+ return value.items.map(item => item.value).join("\n");
3860
+ }
3861
+ return JSON.stringify(this.toPreviewObject(value), null, 2);
3862
+ case "map":
3863
+ return JSON.stringify(this.toPreviewObject(value), null, 2);
3864
+ }
3865
+ }
3866
+ toPreviewObject(value) {
3867
+ switch (value.type) {
3868
+ case "scalar":
3869
+ return value.value;
3870
+ case "sequence":
3871
+ return value.items.map(item => this.toPreviewObject(item));
3872
+ case "map":
3873
+ {
3874
+ const entries = {};
3875
+ for (const property of value.properties) {
3876
+ entries[property.key.value] = this.toPreviewObject(property.value);
3877
+ }
3878
+ return entries;
3879
+ }
3880
+ }
3881
+ }
3882
+ clearEditorPreview() {
3883
+ this.editorPreviewRenderScheduler.cancel();
3884
+ this.editorPreviewDisposables.clear();
3885
+ if (this.editorPreviewIssuesContainer) {
3886
+ clearNode(this.editorPreviewIssuesContainer);
3887
+ }
3888
+ if (this.editorPreviewFrontMatterContainer) {
3889
+ clearNode(this.editorPreviewFrontMatterContainer);
3890
+ }
3891
+ if (this.editorPreviewBodyContainer) {
3892
+ clearNode(this.editorPreviewBodyContainer);
3893
+ }
3894
+ }
3895
+ disposeBuiltinEditingSessions() {
3896
+ for (const session of ( this.builtinEditingSessions.values())) {
3897
+ session.model.dispose();
3898
+ }
3899
+ this.builtinEditingSessions.clear();
3900
+ }
3901
+ disposeBuiltinEditingSession(uri) {
3902
+ const key = ( uri.toString());
3903
+ const session = this.builtinEditingSessions.get(key);
3904
+ if (!session) {
3905
+ return;
3906
+ }
3907
+ session.model.dispose();
3908
+ this.builtinEditingSessions.delete(key);
3909
+ }
3910
+ createEmbeddedMcpDetail() {
3911
+ if (!this.mcpDetailContainer) {
3912
+ return;
3913
+ }
3914
+ const detailBody = append(this.mcpDetailContainer, $(".mcp-detail-editor-container"));
3915
+ this.embeddedMcpDetail = this.editorDisposables.add(
3916
+ this.instantiationService.createInstance(EmbeddedMcpServerDetail, detailBody)
3917
+ );
3918
+ const backButton = append(this.embeddedMcpDetail.leadingSlot, $("button.editor-back-button"));
3919
+ this.mcpDetailBackButton = backButton;
3920
+ backButton.setAttribute("type", "button");
3921
+ backButton.setAttribute("aria-label", ( localize(8651, "Back to MCP servers")));
3922
+ this.editorDisposables.add(
3923
+ this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), backButton, ( localize(8652, "Back to MCP servers")))
3924
+ );
3925
+ const backIconEl = append(
3926
+ backButton,
3927
+ $(`.codicon.codicon-${Codicon.arrowLeft.id}.editor-action-button-icon`)
3928
+ );
3929
+ backIconEl.setAttribute("aria-hidden", "true");
3930
+ this.editorDisposables.add(addDisposableListener(backButton, "click", () => {
3931
+ this.goBackFromMcpDetail();
3932
+ }));
3933
+ }
3934
+ async showEmbeddedMcpDetail(server) {
3935
+ if (!this.embeddedMcpDetail) {
3936
+ this.createEmbeddedMcpDetail();
3937
+ }
3938
+ if (!this.embeddedMcpDetail) {
3939
+ return;
3940
+ }
3941
+ this.viewMode = "mcpDetail";
3942
+ this.updateContentVisibility();
3943
+ this.mcpDetailDisposables.clear();
3944
+ this.embeddedMcpDetail.setInput(server);
3945
+ if (this.dimension) {
3946
+ this.layout(this.dimension);
3947
+ }
3948
+ this.mcpDetailBackButton?.focus();
3949
+ }
3950
+ goBackFromMcpDetail() {
3951
+ this.mcpDetailDisposables.clear();
3952
+ this.embeddedMcpDetail?.clearInput();
3953
+ this.viewMode = "list";
3954
+ this.updateContentVisibility();
3955
+ if (this.dimension) {
3956
+ this.layout(this.dimension);
3957
+ }
3958
+ this.mcpListWidget?.focusSearch();
3959
+ }
3960
+ createEmbeddedPluginDetail() {
3961
+ if (!this.pluginDetailContainer) {
3962
+ return;
3963
+ }
3964
+ const detailBody = append(this.pluginDetailContainer, $(".plugin-detail-editor-container"));
3965
+ this.embeddedPluginDetail = this.editorDisposables.add(
3966
+ this.instantiationService.createInstance(EmbeddedAgentPluginDetail, detailBody)
3967
+ );
3968
+ this.editorDisposables.add(this.embeddedPluginDetail.onDidRequestOpenSkill(uri => {
3969
+ this.openSkillFromPluginDetail(uri);
3970
+ }));
3971
+ this.editorDisposables.add(this.embeddedPluginDetail.onDidRequestOpenAgent(uri => {
3972
+ this.openPromptsItemFromPluginDetail(AICustomizationManagementSection.Agents, uri);
3973
+ }));
3974
+ this.editorDisposables.add(this.embeddedPluginDetail.onDidRequestOpenSection(section => {
3975
+ this.openSectionFromPluginDetail(section);
3976
+ }));
3977
+ this.editorDisposables.add(this.embeddedPluginDetail.onDidUninstall(() => {
3978
+ this.goBackFromPluginDetail();
3979
+ }));
3980
+ const backButton = append(this.embeddedPluginDetail.leadingSlot, $("button.editor-back-button"));
3981
+ backButton.setAttribute("type", "button");
3982
+ backButton.setAttribute("aria-label", ( localize(8653, "Back to plugins")));
3983
+ this.editorDisposables.add(
3984
+ this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), backButton, ( localize(8654, "Back to plugins")))
3985
+ );
3986
+ const backIconEl = append(backButton, $(`.codicon.codicon-${Codicon.arrowLeft.id}`));
3987
+ backIconEl.setAttribute("aria-hidden", "true");
3988
+ this.editorDisposables.add(addDisposableListener(backButton, "click", () => {
3989
+ this.goBackFromPluginDetail();
3990
+ }));
3991
+ }
3992
+ async showEmbeddedPluginDetail(item) {
3993
+ if (!this.embeddedPluginDetail) {
3994
+ return;
3995
+ }
3996
+ this.viewMode = "pluginDetail";
3997
+ this.updateContentVisibility();
3998
+ this.pluginDetailDisposables.clear();
3999
+ this.embeddedPluginDetail.setInput(item);
4000
+ if (this.dimension) {
4001
+ this.layout(this.dimension);
4002
+ }
4003
+ }
4004
+ async openSkillFromPluginDetail(uri) {
4005
+ await this.openPromptsItemFromPluginDetail(AICustomizationManagementSection.Skills, uri);
4006
+ }
4007
+ async openPromptsItemFromPluginDetail(section, uri) {
4008
+ this.pluginDetailDisposables.clear();
4009
+ this.embeddedPluginDetail?.clearInput();
4010
+ this.pluginDetailReturnSection = undefined;
4011
+ this.viewMode = "list";
4012
+ this.selectedSection = section;
4013
+ this.sectionContextKey.set(section);
4014
+ this.storageService.store(
4015
+ AI_CUSTOMIZATION_MANAGEMENT_SELECTED_SECTION_KEY,
4016
+ section,
4017
+ StorageScope.PROFILE,
4018
+ StorageTarget.USER
4019
+ );
4020
+ this.updateContentVisibility();
4021
+ const navigationGeneration = this.contentNavigationGeneration;
4022
+ await this.listWidget.setSection(section);
4023
+ const modelSection = ITEMS_MODEL_SECTIONS.find(s => s === section);
4024
+ if (modelSection) {
4025
+ await this.itemsModel.whenSectionLoaded(modelSection);
4026
+ if (!isCurrentPluginContributionNavigation(
4027
+ navigationGeneration,
4028
+ this.contentNavigationGeneration,
4029
+ section,
4030
+ this.selectedSection,
4031
+ this.viewMode === "list"
4032
+ )) {
4033
+ return;
4034
+ }
4035
+ const item = this.itemsModel.getItems(modelSection).get().find(item => isEqual(item.uri, uri));
4036
+ if (item) {
4037
+ const source = item.source;
4038
+ const isWorkspaceFile = source === AICustomizationSources.local;
4039
+ const isReadOnly = !source || source === AICustomizationSources.extension || source === AICustomizationSources.plugin || source === AICustomizationSources.builtin;
4040
+ this.showEmbeddedEditor(
4041
+ item.uri,
4042
+ item.name,
4043
+ item.promptType,
4044
+ source ?? AICustomizationSources.builtin,
4045
+ isWorkspaceFile,
4046
+ isReadOnly
4047
+ );
4048
+ }
4049
+ }
4050
+ this.ensureSectionsListReflectsActiveSection(section);
4051
+ if (this.dimension) {
4052
+ this.layout(this.dimension);
4053
+ }
4054
+ }
4055
+ openSectionFromPluginDetail(section) {
4056
+ this.pluginDetailDisposables.clear();
4057
+ this.embeddedPluginDetail?.clearInput();
4058
+ this.pluginDetailReturnSection = undefined;
4059
+ this.viewMode = "list";
4060
+ this.updateContentVisibility();
4061
+ this.selectSectionById(section);
4062
+ }
4063
+ async showPluginDetail(item) {
4064
+ if (this.selectedSection !== AICustomizationManagementSection.Plugins) {
4065
+ this.pluginDetailReturnSection = this.selectedSection ?? AICustomizationManagementSection.Agents;
4066
+ }
4067
+ await this.showEmbeddedPluginDetail(item);
4068
+ }
4069
+ goBackFromPluginDetail() {
4070
+ this.pluginDetailDisposables.clear();
4071
+ this.embeddedPluginDetail?.clearInput();
4072
+ const returnSection = this.pluginDetailReturnSection;
4073
+ this.pluginDetailReturnSection = undefined;
4074
+ if (returnSection) {
4075
+ this.viewMode = "list";
4076
+ this.updateContentVisibility();
4077
+ this.selectSection(returnSection);
4078
+ } else {
4079
+ this.viewMode = "list";
4080
+ this.updateContentVisibility();
4081
+ this.pluginListWidget?.focusSearch();
4082
+ }
4083
+ if (this.dimension) {
4084
+ this.layout(this.dimension);
4085
+ }
4086
+ }
4087
+ createEmbeddedToolDetail() {
4088
+ if (!this.toolsDetailContainer) {
4089
+ return;
4090
+ }
4091
+ const detailBody = append(this.toolsDetailContainer, $(".tools-detail-editor-container"));
4092
+ this.embeddedToolDetail = this.editorDisposables.add(
4093
+ this.instantiationService.createInstance(EmbeddedExtensionToolsDetail, detailBody)
4094
+ );
4095
+ const backButton = append(this.embeddedToolDetail.leadingSlot, $("button.editor-back-button"));
4096
+ backButton.setAttribute("type", "button");
4097
+ backButton.setAttribute("aria-label", ( localize(8655, "Back to tools")));
4098
+ this.editorDisposables.add(
4099
+ this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), backButton, ( localize(8656, "Back to tools")))
4100
+ );
4101
+ const backIconEl = append(backButton, $(`.codicon.codicon-${Codicon.arrowLeft.id}`));
4102
+ backIconEl.setAttribute("aria-hidden", "true");
4103
+ this.editorDisposables.add(addDisposableListener(backButton, "click", () => {
4104
+ this.goBackFromToolDetail();
4105
+ }));
4106
+ }
4107
+ async showEmbeddedToolDetail(extension) {
4108
+ if (!this.embeddedToolDetail) {
4109
+ return;
4110
+ }
4111
+ this.viewMode = "toolsDetail";
4112
+ this.updateContentVisibility();
4113
+ this.toolsDetailDisposables.clear();
4114
+ this.embeddedToolDetail.setInput(extension);
4115
+ if (this.dimension) {
4116
+ this.layout(this.dimension);
4117
+ }
4118
+ }
4119
+ goBackFromToolDetail() {
4120
+ this.toolsDetailDisposables.clear();
4121
+ this.embeddedToolDetail?.clearInput();
4122
+ this.viewMode = "list";
4123
+ this.updateContentVisibility();
4124
+ if (this.dimension) {
4125
+ this.layout(this.dimension);
4126
+ }
4127
+ this.toolsListWidget?.focusSearch();
4128
+ }
4129
+ };
4130
+ 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, ICustomizationMigrationService)), ( __param(11, ITextModelService)), ( __param(12, IConfigurationService)), ( __param(13, IWorkingCopyService)), ( __param(14, IHoverService)), ( __param(15, IMarkdownRendererService)), ( __param(16, IModelService)), ( __param(17, IQuickInputService)), ( __param(18, IFileService)), ( __param(19, INotificationService)), ( __param(20, IFileDialogService)), ( __param(21, IDialogService)), ( __param(22, IContextMenuService)), ( __param(23, ICustomizationHarnessService)), ( __param(24, IViewsService)), ( __param(25, ILabelService)), ( __param(26, IAICustomizationItemsModel)), ( __param(27, IMcpService)), ( __param(28, IMcpWorkbenchService)), ( __param(29, IAgentHostCustomizationService))], AICustomizationManagementEditor));
4131
+
4132
+ export { AICustomizationManagementEditor, isCurrentPluginContributionNavigation };