@codingame/monaco-vscode-api 28.4.1 → 29.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (842) hide show
  1. package/missing-services.js +232 -112
  2. package/package.json +8 -8
  3. package/services.d.ts +1 -3
  4. package/services.js +4 -6
  5. package/vscode/product.json.js +1 -1
  6. package/vscode/src/vs/base/browser/markdownRenderer.js +15 -1
  7. package/vscode/src/vs/base/browser/touch.js +1 -1
  8. package/vscode/src/vs/base/browser/ui/button/button.css +1 -0
  9. package/vscode/src/vs/base/browser/ui/dialog/dialog.css +18 -22
  10. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.css +1 -0
  11. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +6 -3
  12. package/vscode/src/vs/base/browser/ui/list/listView.d.ts +4 -4
  13. package/vscode/src/vs/base/browser/ui/list/listWidget.js +1 -1
  14. package/vscode/src/vs/base/browser/ui/menu/menu.js +3 -0
  15. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +1 -1
  16. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +4 -1
  17. package/vscode/src/vs/base/browser/ui/tree/compressedObjectTreeModel.js +8 -2
  18. package/vscode/src/vs/base/common/async.d.ts +4 -4
  19. package/vscode/src/vs/base/common/codicons.d.ts +1 -0
  20. package/vscode/src/vs/base/common/codiconsLibrary.d.ts +1 -0
  21. package/vscode/src/vs/base/common/codiconsLibrary.js +1 -0
  22. package/vscode/src/vs/base/common/event.d.ts +14 -2
  23. package/vscode/src/vs/base/common/event.js +10 -5
  24. package/vscode/src/vs/base/common/htmlContent.d.ts +2 -2
  25. package/vscode/src/vs/base/common/htmlContent.js +1 -1
  26. package/vscode/src/vs/base/common/lifecycle.d.ts +1 -1
  27. package/vscode/src/vs/base/common/network.d.ts +2 -0
  28. package/vscode/src/vs/base/common/network.js +1 -0
  29. package/vscode/src/vs/base/common/observableInternal/index.d.ts +1 -1
  30. package/vscode/src/vs/base/common/product.d.ts +1 -0
  31. package/vscode/src/vs/base/common/resources.d.ts +2 -2
  32. package/vscode/src/vs/base/common/resources.js +2 -2
  33. package/vscode/src/vs/base/parts/request/common/request.d.ts +5 -0
  34. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +2 -1
  35. package/vscode/src/vs/editor/browser/controller/pointerHandler.js +1 -1
  36. package/vscode/src/vs/editor/browser/observableCodeEditor.js +3 -3
  37. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.d.ts +2 -2
  38. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +27 -22
  39. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +10 -2
  40. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +1 -1
  41. package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +1 -1
  42. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +1 -1
  43. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/diffEditorItemTemplate.js +1 -1
  44. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorViewModel.js +2 -2
  45. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +4 -0
  46. package/vscode/src/vs/editor/common/config/editorOptions.js +364 -357
  47. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +72 -72
  48. package/vscode/src/vs/editor/common/core/ranges/offsetRange.d.ts +1 -1
  49. package/vscode/src/vs/editor/common/editorContextKeys.js +49 -49
  50. package/vscode/src/vs/editor/common/languages/modesRegistry.js +1 -1
  51. package/vscode/src/vs/editor/common/languages.js +56 -56
  52. package/vscode/src/vs/editor/common/model/editStack.js +1 -1
  53. package/vscode/src/vs/editor/common/model/textModel.d.ts +2 -2
  54. package/vscode/src/vs/editor/common/model/textModel.js +7 -33
  55. package/vscode/src/vs/editor/common/model/tokens/abstractSyntaxTokenBackend.js +1 -1
  56. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTree.js +1 -1
  57. package/vscode/src/vs/editor/common/model.d.ts +1 -1
  58. package/vscode/src/vs/editor/common/modelLineProjectionData.d.ts +6 -2
  59. package/vscode/src/vs/editor/common/standaloneStrings.js +50 -50
  60. package/vscode/src/vs/editor/common/textModelEvents.d.ts +2 -18
  61. package/vscode/src/vs/editor/common/textModelEvents.js +2 -6
  62. package/vscode/src/vs/editor/common/viewLayout/lineHeights.js +38 -15
  63. package/vscode/src/vs/editor/common/viewLayout/viewLineRenderer.js +2 -2
  64. package/vscode/src/vs/editor/common/viewModel/minimapTokensColorTracker.js +4 -1
  65. package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.d.ts +2 -2
  66. package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +8 -8
  67. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.d.ts +2 -2
  68. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +6 -15
  69. package/vscode/src/vs/editor/common/viewModel/viewModelLines.d.ts +3 -3
  70. package/vscode/src/vs/editor/common/viewModel/viewModelLines.js +12 -12
  71. package/vscode/src/vs/editor/common/viewModel.d.ts +2 -2
  72. package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +6 -6
  73. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +6 -6
  74. package/vscode/src/vs/editor/contrib/caretOperations/browser/caretOperations.js +2 -2
  75. package/vscode/src/vs/editor/contrib/caretOperations/browser/transpose.js +1 -1
  76. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +17 -17
  77. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +1 -1
  78. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +18 -18
  79. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +3 -3
  80. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +3 -3
  81. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +8 -8
  82. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +9 -9
  83. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +2 -2
  84. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerCloseButton.js +1 -1
  85. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerHeader.js +1 -1
  86. package/vscode/src/vs/editor/contrib/colorPicker/browser/hoverColorPicker/hoverColorPickerParticipant.js +1 -1
  87. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerActions.js +7 -7
  88. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +6 -6
  89. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +17 -10
  90. package/vscode/src/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +2 -2
  91. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +4 -4
  92. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +9 -9
  93. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +5 -5
  94. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +3 -3
  95. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +2 -2
  96. package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +1 -1
  97. package/vscode/src/vs/editor/contrib/find/browser/findController.js +39 -18
  98. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +28 -28
  99. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +20 -20
  100. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +9 -9
  101. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +3 -3
  102. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +2 -2
  103. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +8 -8
  104. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +13 -13
  105. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +33 -33
  106. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +1 -1
  107. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +3 -3
  108. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +3 -3
  109. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +3 -3
  110. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +8 -8
  111. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +3 -3
  112. package/vscode/src/vs/editor/contrib/gpu/browser/gpuActions.js +4 -4
  113. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverRendered.js +3 -3
  114. package/vscode/src/vs/editor/contrib/hover/browser/hover.css +1 -0
  115. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +2 -2
  116. package/vscode/src/vs/editor/contrib/hover/browser/hoverActionIds.js +2 -2
  117. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +22 -22
  118. package/vscode/src/vs/editor/contrib/hover/browser/hoverCopyButton.js +2 -2
  119. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +7 -7
  120. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.d.ts +5 -1
  121. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +46 -7
  122. package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +2 -2
  123. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +18 -18
  124. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +5 -5
  125. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +21 -21
  126. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js +13 -13
  127. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +2 -2
  128. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.js +2 -2
  129. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +5 -5
  130. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.d.ts +1 -1
  131. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js +2 -2
  132. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js +1 -1
  133. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/renameSymbolProcessor.js +2 -2
  134. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/suggestWidgetAdapter.js +5 -0
  135. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +6 -6
  136. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js +4 -4
  137. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsNewUsers.js +1 -1
  138. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsLineReplacementView.js +1 -1
  139. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsWordReplacementView.js +3 -3
  140. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/inlineEditsLongDistanceHint.js +1 -1
  141. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js +20 -20
  142. package/vscode/src/vs/editor/contrib/insertFinalNewLine/browser/insertFinalNewLine.js +1 -1
  143. package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +1 -1
  144. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +31 -31
  145. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +2 -2
  146. package/vscode/src/vs/editor/contrib/links/browser/links.js +6 -6
  147. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +1 -1
  148. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +22 -22
  149. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.css +6 -0
  150. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +1 -1
  151. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +4 -4
  152. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +18 -18
  153. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +1 -1
  154. package/vscode/src/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js +1 -1
  155. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +11 -11
  156. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +32 -32
  157. package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +2 -2
  158. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +11 -11
  159. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +6 -6
  160. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +4 -4
  161. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +4 -4
  162. package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.js +4 -4
  163. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css +1 -1
  164. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +11 -11
  165. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +9 -9
  166. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +11 -11
  167. package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.d.ts +2 -0
  168. package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.js +70 -7
  169. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +17 -17
  170. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +2 -2
  171. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +2 -2
  172. package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +1 -1
  173. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +33 -33
  174. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +4 -4
  175. package/vscode/src/vs/editor/contrib/tokenization/browser/tokenization.js +1 -1
  176. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
  177. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +24 -24
  178. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +5 -5
  179. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +9 -9
  180. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -3
  181. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +3 -3
  182. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +62 -62
  183. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +6 -6
  184. package/vscode/src/vs/platform/actionWidget/browser/actionList.d.ts +108 -22
  185. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +466 -130
  186. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css +54 -3
  187. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +13 -13
  188. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +3 -3
  189. package/vscode/src/vs/platform/actions/browser/toolbar.js +2 -2
  190. package/vscode/src/vs/platform/actions/common/actions.d.ts +4 -0
  191. package/vscode/src/vs/platform/actions/common/actions.js +12 -0
  192. package/vscode/src/vs/platform/actions/common/menuResetAction.js +1 -1
  193. package/vscode/src/vs/platform/actions/common/menuService.js +2 -2
  194. package/vscode/src/vs/platform/browserView/common/browserView.d.ts +348 -0
  195. package/vscode/src/vs/platform/browserView/common/cdp/types.d.ts +153 -0
  196. package/vscode/src/vs/platform/browserView/common/playwrightService.service.d.ts +91 -0
  197. package/vscode/src/vs/platform/configuration/common/configuration.d.ts +1 -0
  198. package/vscode/src/vs/platform/configuration/common/configuration.js +6 -1
  199. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +10 -10
  200. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +1 -1
  201. package/vscode/src/vs/platform/contextkey/common/contextkey.js +10 -10
  202. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +9 -9
  203. package/vscode/src/vs/platform/contextkey/common/scanner.js +5 -5
  204. package/vscode/src/vs/platform/dialogs/common/dialogs.js +9 -9
  205. package/vscode/src/vs/platform/dnd/browser/dnd.js +1 -1
  206. package/vscode/src/vs/platform/download/common/download.service.d.ts +1 -1
  207. package/vscode/src/vs/platform/editor/common/editor.d.ts +18 -0
  208. package/vscode/src/vs/platform/environment/common/argv.d.ts +5 -0
  209. package/vscode/src/vs/platform/environment/common/environment.service.d.ts +1 -0
  210. package/vscode/src/vs/platform/environment/common/environmentService.d.ts +1 -0
  211. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +14 -14
  212. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +1 -1
  213. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +7 -7
  214. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +21 -21
  215. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.d.ts +10 -0
  216. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +12 -2
  217. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +2 -2
  218. package/vscode/src/vs/platform/files/common/files.js +6 -6
  219. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
  220. package/vscode/src/vs/platform/hover/browser/hover.css +4 -0
  221. package/vscode/src/vs/platform/hover/browser/hoverWidget.js +4 -1
  222. package/vscode/src/vs/platform/hover/browser/updatableHoverWidget.js +1 -1
  223. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +5 -5
  224. package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.d.ts +2 -0
  225. package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.js +54 -5
  226. package/vscode/src/vs/platform/languagePacks/common/languagePacks.js +1 -1
  227. package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +3 -3
  228. package/vscode/src/vs/platform/list/browser/listService.js +25 -25
  229. package/vscode/src/vs/platform/log/common/log.js +6 -6
  230. package/vscode/src/vs/platform/markers/common/markerService.js +2 -2
  231. package/vscode/src/vs/platform/markers/common/markers.js +6 -6
  232. package/vscode/src/vs/platform/mcp/common/mcpManagementService.js +1 -1
  233. package/vscode/src/vs/platform/meteredConnection/common/meteredConnection.config.contribution.js +5 -5
  234. package/vscode/src/vs/platform/notification/common/notification.js +3 -3
  235. package/vscode/src/vs/platform/product/common/product.js +3 -3
  236. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +10 -10
  237. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +5 -5
  238. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +6 -6
  239. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +20 -6
  240. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
  241. package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +2 -2
  242. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +1 -1
  243. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeController.js +10 -3
  244. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeRenderer.d.ts +8 -0
  245. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeRenderer.js +6 -1
  246. package/vscode/src/vs/platform/quickinput/browser/tree/quickTree.js +1 -1
  247. package/vscode/src/vs/platform/remote/common/remoteAgentEnvironment.d.ts +1 -0
  248. package/vscode/src/vs/platform/request/common/request.d.ts +13 -0
  249. package/vscode/src/vs/platform/request/common/request.js +42 -20
  250. package/vscode/src/vs/platform/request/common/request.service.d.ts +6 -1
  251. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +10 -5
  252. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/terminalCommand.js +12 -2
  253. package/vscode/src/vs/platform/terminal/common/terminalPlatformConfiguration.js +31 -31
  254. package/vscode/src/vs/platform/terminal/common/terminalProfiles.js +1 -1
  255. package/vscode/src/vs/platform/theme/common/colorUtils.js +2 -2
  256. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +18 -18
  257. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +8 -8
  258. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +95 -95
  259. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +48 -48
  260. package/vscode/src/vs/platform/theme/common/colors/listColors.js +36 -36
  261. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +7 -7
  262. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +11 -11
  263. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +16 -16
  264. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +9 -9
  265. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +3 -3
  266. package/vscode/src/vs/platform/theme/common/iconRegistry.js +6 -6
  267. package/vscode/src/vs/platform/theme/common/sizes/baseSizes.js +11 -11
  268. package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +42 -42
  269. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +20 -20
  270. package/vscode/src/vs/platform/update/common/update.d.ts +8 -6
  271. package/vscode/src/vs/platform/update/common/update.js +6 -6
  272. package/vscode/src/vs/platform/url/common/urlGlob.js +5 -3
  273. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +1 -1
  274. package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +2 -2
  275. package/vscode/src/vs/platform/userDataSync/common/keybindingsSync.js +2 -2
  276. package/vscode/src/vs/platform/userDataSync/common/settingsSync.js +1 -1
  277. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +5 -5
  278. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +1 -1
  279. package/vscode/src/vs/platform/userDataSync/common/userDataSyncStoreService.js +24 -12
  280. package/vscode/src/vs/platform/workspace/common/workspace.js +1 -1
  281. package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +15 -14
  282. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +53 -8
  283. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +100 -21
  284. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +4 -2
  285. package/vscode/src/vs/workbench/api/common/extHostApiDeprecationService.d.ts +6 -2
  286. package/vscode/src/vs/workbench/api/common/extHostApiDeprecationService.js +7 -5
  287. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +5 -5
  288. package/vscode/src/vs/workbench/api/common/extHostBrowsers.d.ts +30 -0
  289. package/vscode/src/vs/workbench/api/common/extHostBrowsers.js +211 -0
  290. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +11 -4
  291. package/vscode/src/vs/workbench/api/common/extHostChatDebug.d.ts +10 -0
  292. package/vscode/src/vs/workbench/api/common/extHostChatDebug.js +132 -1
  293. package/vscode/src/vs/workbench/api/common/extHostChatSessions.d.ts +7 -8
  294. package/vscode/src/vs/workbench/api/common/extHostChatSessions.js +81 -33
  295. package/vscode/src/vs/workbench/api/common/extHostCommands.d.ts +1 -1
  296. package/vscode/src/vs/workbench/api/common/extHostConsoleForwarder.d.ts +1 -1
  297. package/vscode/src/vs/workbench/api/common/extHostConsoleForwarder.js +3 -3
  298. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +1 -1
  299. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +3 -3
  300. package/vscode/src/vs/workbench/api/common/extHostFileSystemConsumer.d.ts +1 -1
  301. package/vscode/src/vs/workbench/api/common/extHostGitExtensionService.d.ts +5 -1
  302. package/vscode/src/vs/workbench/api/common/extHostGitExtensionService.js +107 -7
  303. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +11 -11
  304. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +17 -7
  305. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.d.ts +2 -2
  306. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +5 -3
  307. package/vscode/src/vs/workbench/api/common/extHostLogService.js +1 -1
  308. package/vscode/src/vs/workbench/api/common/extHostMcp.d.ts +7 -1
  309. package/vscode/src/vs/workbench/api/common/extHostMcp.js +30 -3
  310. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +2 -2
  311. package/vscode/src/vs/workbench/api/common/extHostSCM.js +3 -3
  312. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +2 -2
  313. package/vscode/src/vs/workbench/api/common/extHostTask.js +3 -0
  314. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -1
  315. package/vscode/src/vs/workbench/api/common/extHostTerminalService.d.ts +3 -1
  316. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +21 -6
  317. package/vscode/src/vs/workbench/api/common/extHostTimeline.js +1 -1
  318. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +2 -2
  319. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.d.ts +2 -1
  320. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +22 -5
  321. package/vscode/src/vs/workbench/api/common/extHostTypes.d.ts +22 -0
  322. package/vscode/src/vs/workbench/api/common/extHostTypes.js +19 -1
  323. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +3 -1
  324. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +11 -11
  325. package/vscode/src/vs/workbench/api/worker/extHostConsoleForwarder.d.ts +1 -1
  326. package/vscode/src/vs/workbench/browser/actions/developerActions.js +32 -32
  327. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +130 -130
  328. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +6 -6
  329. package/vscode/src/vs/workbench/browser/actions/windowActions.js +29 -29
  330. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +21 -21
  331. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +4 -4
  332. package/vscode/src/vs/workbench/browser/editor.js +2 -2
  333. package/vscode/src/vs/workbench/browser/labels.js +4 -4
  334. package/vscode/src/vs/workbench/browser/media/style.css +21 -0
  335. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +23 -23
  336. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +26 -26
  337. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +4 -4
  338. package/vscode/src/vs/workbench/browser/parts/compositeBar.js +1 -1
  339. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +9 -9
  340. package/vscode/src/vs/workbench/browser/parts/compositePart.js +3 -3
  341. package/vscode/src/vs/workbench/browser/parts/dialogs/dialog.js +1 -1
  342. package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +3 -3
  343. package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +1 -1
  344. package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +3 -3
  345. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +37 -37
  346. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +12 -12
  347. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +1 -1
  348. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +7 -7
  349. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +135 -135
  350. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +28 -28
  351. package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +1 -1
  352. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +7 -7
  353. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +12 -12
  354. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +2 -2
  355. package/vscode/src/vs/workbench/browser/parts/editor/editorPart.d.ts +1 -1
  356. package/vscode/src/vs/workbench/browser/parts/editor/editorPart.js +8 -2
  357. package/vscode/src/vs/workbench/browser/parts/editor/editorParts.d.ts +17 -0
  358. package/vscode/src/vs/workbench/browser/parts/editor/editorParts.js +37 -5
  359. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +10 -10
  360. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +5 -5
  361. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +66 -66
  362. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +2 -2
  363. package/vscode/src/vs/workbench/browser/parts/editor/media/editorgroupview.css +5 -0
  364. package/vscode/src/vs/workbench/browser/parts/editor/media/modalEditorPart.css +16 -5
  365. package/vscode/src/vs/workbench/browser/parts/editor/modalEditorPart.d.ts +18 -4
  366. package/vscode/src/vs/workbench/browser/parts/editor/modalEditorPart.js +322 -56
  367. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +1 -1
  368. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +1 -1
  369. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +1 -1
  370. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +3 -3
  371. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +1 -1
  372. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +19 -19
  373. package/vscode/src/vs/workbench/browser/parts/notifications/media/notificationsCenter.css +1 -1
  374. package/vscode/src/vs/workbench/browser/parts/notifications/media/notificationsToasts.css +1 -1
  375. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsActions.js +22 -22
  376. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +3 -3
  377. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +6 -6
  378. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +13 -13
  379. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsList.js +6 -6
  380. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +13 -13
  381. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +2 -2
  382. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +4 -4
  383. package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.js +4 -4
  384. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +3 -3
  385. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +27 -27
  386. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +3 -3
  387. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarActions.js +2 -2
  388. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +1 -1
  389. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +18 -18
  390. package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarActions.js +15 -15
  391. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +2 -2
  392. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +1 -1
  393. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +7 -7
  394. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +4 -4
  395. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +5 -5
  396. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +6 -6
  397. package/vscode/src/vs/workbench/browser/quickaccess.js +1 -1
  398. package/vscode/src/vs/workbench/browser/window.js +14 -14
  399. package/vscode/src/vs/workbench/browser/workbench.contribution.js +251 -252
  400. package/vscode/src/vs/workbench/common/configuration.js +9 -9
  401. package/vscode/src/vs/workbench/common/contextkeys.js +77 -77
  402. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +1 -1
  403. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +1 -1
  404. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +1 -1
  405. package/vscode/src/vs/workbench/common/editor.d.ts +6 -1
  406. package/vscode/src/vs/workbench/common/editor.js +5 -4
  407. package/vscode/src/vs/workbench/common/theme.js +161 -161
  408. package/vscode/src/vs/workbench/common/views.d.ts +6 -0
  409. package/vscode/src/vs/workbench/common/views.js +4 -4
  410. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +154 -154
  411. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +12 -12
  412. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.d.ts +182 -0
  413. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.service.d.ts +55 -0
  414. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.service.js +7 -0
  415. package/vscode/src/vs/workbench/contrib/browserView/common/browserZoomService.d.ts +55 -0
  416. package/vscode/src/vs/workbench/contrib/browserView/common/browserZoomService.service.d.ts +45 -0
  417. package/vscode/src/vs/workbench/contrib/browserView/common/browserZoomService.service.js +6 -0
  418. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.d.ts +1 -0
  419. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +101 -63
  420. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.d.ts +26 -3
  421. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +23 -16
  422. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.d.ts +24 -16
  423. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.js +90 -42
  424. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.service.d.ts +2 -0
  425. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +78 -0
  426. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +32 -0
  427. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatScreenshotContext.js +1 -1
  428. package/vscode/src/vs/workbench/contrib/chat/browser/chat.d.ts +3 -5
  429. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +7 -7
  430. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.service.d.ts +13 -0
  431. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.service.js +6 -0
  432. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageUtils.js +7 -0
  433. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.js +10 -13
  434. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.d.ts +7 -2
  435. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.js +104 -84
  436. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.d.ts +49 -0
  437. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.js +29 -0
  438. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.service.d.ts +1 -1
  439. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.d.ts +7 -4
  440. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.js +11 -7
  441. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.d.ts +215 -0
  442. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.js +17 -0
  443. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.service.d.ts +24 -1
  444. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.d.ts +50 -1
  445. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.js +44 -5
  446. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.d.ts +91 -23
  447. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.service.d.ts +16 -5
  448. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.d.ts +98 -57
  449. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.js +30 -5
  450. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.d.ts +41 -32
  451. package/vscode/src/vs/workbench/contrib/chat/common/constants.d.ts +6 -1
  452. package/vscode/src/vs/workbench/contrib/chat/common/constants.js +5 -0
  453. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.d.ts +159 -0
  454. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.js +157 -0
  455. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.service.d.ts +39 -0
  456. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.service.js +6 -0
  457. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.js +2 -2
  458. package/vscode/src/vs/workbench/contrib/chat/common/enablement.d.ts +35 -0
  459. package/vscode/src/vs/workbench/contrib/chat/common/enablement.js +102 -0
  460. package/vscode/src/vs/workbench/contrib/chat/common/languageModelStats.js +3 -3
  461. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.d.ts +33 -11
  462. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +271 -36
  463. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.service.d.ts +25 -4
  464. package/vscode/src/vs/workbench/contrib/chat/common/languageModelsConfiguration.d.ts +1 -0
  465. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.d.ts +14 -5
  466. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.js +63 -45
  467. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatQuestionCarouselData.d.ts +10 -5
  468. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatQuestionCarouselData.js +6 -2
  469. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.d.ts +5 -2
  470. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js +5 -2
  471. package/vscode/src/vs/workbench/contrib/chat/common/model/chatUri.d.ts +1 -0
  472. package/vscode/src/vs/workbench/contrib/chat/common/model/chatUri.js +4 -1
  473. package/vscode/src/vs/workbench/contrib/chat/common/model/chatViewModel.js +8 -6
  474. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.d.ts +2 -0
  475. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginRepositoryService.d.ts +2 -0
  476. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginRepositoryService.service.d.ts +18 -4
  477. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.service.d.ts +2 -3
  478. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginInstallService.d.ts +20 -0
  479. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginInstallService.service.d.ts +30 -1
  480. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.service.d.ts +28 -1
  481. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginSource.d.ts +5 -2
  482. package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.service.d.ts +17 -0
  483. package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.service.js +6 -0
  484. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.d.ts +9 -8
  485. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +36 -24
  486. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.d.ts +4 -0
  487. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.js +1 -0
  488. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations.d.ts +13 -1
  489. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations.js +23 -17
  490. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookSchema.js +18 -18
  491. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookTypes.js +20 -20
  492. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptFileAttributes.js +79 -79
  493. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.js +1 -1
  494. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.d.ts +20 -0
  495. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.js +6 -1
  496. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +16 -9
  497. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.js +1 -0
  498. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service.d.ts +1 -8
  499. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.js +4 -4
  500. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.d.ts +5 -2
  501. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.js +47 -63
  502. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.d.ts +19 -0
  503. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.js +115 -1
  504. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/editFileTool.js +2 -1
  505. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.js +12 -9
  506. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.d.ts +3 -0
  507. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.js +39 -11
  508. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.d.ts +13 -0
  509. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.js +103 -0
  510. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.d.ts +2 -1
  511. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.js +28 -10
  512. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.service.d.ts +13 -0
  513. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.service.js +6 -0
  514. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.d.ts +13 -0
  515. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.js +11 -0
  516. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +29 -29
  517. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.d.ts +13 -3
  518. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.js +3 -3
  519. package/vscode/src/vs/workbench/contrib/chat/common/widget/input/modelPickerWidget.js +1 -1
  520. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +11 -11
  521. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +4 -4
  522. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +5 -5
  523. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +4 -4
  524. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +10 -10
  525. package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js +2 -2
  526. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
  527. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +6 -6
  528. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +4 -4
  529. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
  530. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +3 -3
  531. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
  532. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +2 -2
  533. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +5 -5
  534. package/vscode/src/vs/workbench/contrib/codeEditor/common/languageConfigurationExtensionPoint.js +65 -65
  535. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +7 -7
  536. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +7 -7
  537. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +2 -2
  538. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +3 -3
  539. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +3 -3
  540. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +3 -3
  541. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +3 -3
  542. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +3 -3
  543. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +12 -12
  544. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +7 -7
  545. package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +1 -1
  546. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +9 -9
  547. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +14 -14
  548. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +16 -16
  549. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +7 -7
  550. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +12 -12
  551. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +3 -3
  552. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +1 -1
  553. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +29 -29
  554. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +14 -14
  555. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +75 -75
  556. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +2 -2
  557. package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +6 -6
  558. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +12 -12
  559. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +38 -38
  560. package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +2 -2
  561. package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +3 -3
  562. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +57 -57
  563. package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +3 -3
  564. package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +4 -4
  565. package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +2 -2
  566. package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +18 -18
  567. package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +5 -5
  568. package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +9 -9
  569. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +1 -1
  570. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +7 -5
  571. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +69 -66
  572. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +8 -6
  573. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  574. package/vscode/src/vs/workbench/contrib/debug/common/debugUtils.d.ts +4 -1
  575. package/vscode/src/vs/workbench/contrib/debug/common/debugUtils.js +26 -1
  576. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +2 -2
  577. package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +1 -1
  578. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +1 -1
  579. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/commands.js +2 -2
  580. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/configurationSchema.js +4 -4
  581. package/vscode/src/vs/workbench/contrib/extensions/browser/abstractRuntimeExtensionsEditor.js +18 -18
  582. package/vscode/src/vs/workbench/contrib/extensions/browser/configBasedRecommendations.js +1 -1
  583. package/vscode/src/vs/workbench/contrib/extensions/browser/exeBasedRecommendations.js +1 -1
  584. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEditor.js +42 -42
  585. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEnablementWorkspaceTrustTransitionParticipant.js +1 -1
  586. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionFeaturesTab.js +15 -15
  587. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.js +14 -14
  588. package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.contribution.js +160 -152
  589. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +170 -170
  590. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActivationProgress.js +1 -1
  591. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsCompletionItemsProvider.js +1 -1
  592. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsDependencyChecker.js +5 -5
  593. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +25 -25
  594. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsQuickAccess.js +4 -4
  595. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewer.js +7 -7
  596. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewlet.js +47 -47
  597. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViews.js +7 -7
  598. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWidgets.js +30 -30
  599. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.js +76 -76
  600. package/vscode/src/vs/workbench/contrib/extensions/browser/fileBasedRecommendations.js +2 -2
  601. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionEditor.css +4 -2
  602. package/vscode/src/vs/workbench/contrib/extensions/browser/webRecommendations.js +1 -1
  603. package/vscode/src/vs/workbench/contrib/extensions/browser/workspaceRecommendations.js +2 -2
  604. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +1 -1
  605. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +5 -5
  606. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +2 -2
  607. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +3 -3
  608. package/vscode/src/vs/workbench/contrib/extensions/common/runtimeExtensionsInput.js +2 -2
  609. package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +3 -3
  610. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +4 -4
  611. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +3 -3
  612. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +1 -1
  613. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +8 -8
  614. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +18 -18
  615. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +14 -14
  616. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +39 -39
  617. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +84 -84
  618. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +4 -4
  619. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +2 -2
  620. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +6 -6
  621. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +27 -27
  622. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +50 -50
  623. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +2 -2
  624. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +1 -1
  625. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +4 -4
  626. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +7 -7
  627. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +17 -17
  628. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +7 -7
  629. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +4 -4
  630. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +1 -1
  631. package/vscode/src/vs/workbench/contrib/files/common/files.js +16 -16
  632. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
  633. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +20 -20
  634. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +4 -4
  635. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  636. package/vscode/src/vs/workbench/contrib/git/browser/gitService.d.ts +3 -1
  637. package/vscode/src/vs/workbench/contrib/git/browser/gitService.js +6 -0
  638. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +4 -4
  639. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.service.d.ts +10 -0
  640. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.service.js +6 -0
  641. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.service.d.ts +1 -1
  642. package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +2 -2
  643. package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +5 -5
  644. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommandsAddConfiguration.js +66 -66
  645. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerActions.d.ts +36 -0
  646. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerActions.js +201 -34
  647. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerEditor.js +37 -35
  648. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerEditorInput.js +2 -2
  649. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerIcons.js +5 -5
  650. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerWidgets.js +5 -5
  651. package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfiguration.js +40 -40
  652. package/vscode/src/vs/workbench/contrib/mcp/common/mcpGatewayService.d.ts +14 -2
  653. package/vscode/src/vs/workbench/contrib/mcp/common/mcpServer.d.ts +3 -1
  654. package/vscode/src/vs/workbench/contrib/mcp/common/mcpServer.js +20 -18
  655. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.d.ts +6 -2
  656. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +7 -5
  657. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.service.d.ts +3 -0
  658. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +4 -4
  659. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +23 -23
  660. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +3 -3
  661. package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +8 -8
  662. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnection.contribution.js +8 -8
  663. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnectionStatus.js +4 -4
  664. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +1 -1
  665. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +4 -4
  666. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +1 -1
  667. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +17 -17
  668. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +2 -2
  669. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +6 -6
  670. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +4 -4
  671. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
  672. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +24 -24
  673. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +3 -3
  674. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +7 -7
  675. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +1 -1
  676. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +5 -5
  677. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +1 -1
  678. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +3 -3
  679. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +7 -7
  680. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +24 -24
  681. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +29 -29
  682. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +5 -5
  683. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +7 -7
  684. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +2 -2
  685. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +4 -4
  686. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +1 -1
  687. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.js +3 -3
  688. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +1 -1
  689. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +2 -2
  690. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +4 -4
  691. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +1 -1
  692. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +14 -14
  693. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +2 -2
  694. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +1 -1
  695. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +2 -2
  696. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +3 -3
  697. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +13 -13
  698. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +10 -10
  699. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +63 -59
  700. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.d.ts +1 -0
  701. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +2 -2
  702. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +3 -3
  703. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +21 -21
  704. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +15 -15
  705. package/vscode/src/vs/workbench/contrib/remote/browser/remoteIcons.js +17 -17
  706. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +59 -59
  707. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistory.js +11 -11
  708. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.js +6 -6
  709. package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.js +14 -14
  710. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +9 -9
  711. package/vscode/src/vs/workbench/contrib/search/browser/patternInputWidget.js +3 -3
  712. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +1 -1
  713. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +12 -12
  714. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsTopBar.js +9 -9
  715. package/vscode/src/vs/workbench/contrib/search/browser/searchChatContext.js +5 -5
  716. package/vscode/src/vs/workbench/contrib/search/browser/searchFindInput.js +1 -1
  717. package/vscode/src/vs/workbench/contrib/search/browser/searchIcons.js +20 -20
  718. package/vscode/src/vs/workbench/contrib/search/browser/searchMessage.js +2 -2
  719. package/vscode/src/vs/workbench/contrib/search/browser/searchResultsView.js +14 -14
  720. package/vscode/src/vs/workbench/contrib/search/browser/searchView.js +55 -55
  721. package/vscode/src/vs/workbench/contrib/search/browser/searchWidget.js +11 -11
  722. package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +2 -2
  723. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorInput.js +4 -4
  724. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorSerialization.js +5 -5
  725. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
  726. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +3 -3
  727. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +9 -9
  728. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +29 -29
  729. package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +1 -1
  730. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +5 -5
  731. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +6 -6
  732. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.d.ts +3 -2
  733. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +5 -4
  734. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +3 -3
  735. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcons.js +13 -13
  736. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +40 -40
  737. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +15 -15
  738. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +10 -10
  739. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +23 -23
  740. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +17 -17
  741. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +26 -26
  742. package/vscode/src/vs/workbench/contrib/terminal/terminalContribExports.d.ts +5 -1
  743. package/vscode/src/vs/workbench/contrib/terminal/terminalContribExports.js +4 -0
  744. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/common/terminalAccessibilityConfiguration.js +2 -2
  745. package/vscode/src/vs/workbench/contrib/terminalContrib/autoReplies/common/terminalAutoRepliesConfiguration.js +2 -2
  746. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.d.ts +5 -1
  747. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.js +116 -95
  748. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.service.d.ts +4 -0
  749. package/vscode/src/vs/workbench/contrib/terminalContrib/commandGuide/common/terminalCommandGuideConfiguration.js +1 -1
  750. package/vscode/src/vs/workbench/contrib/terminalContrib/history/common/terminal.history.js +1 -1
  751. package/vscode/src/vs/workbench/contrib/terminalContrib/inlineHint/common/terminalInitialHintConfiguration.js +1 -1
  752. package/vscode/src/vs/workbench/contrib/terminalContrib/notification/common/terminalNotificationConfiguration.js +1 -1
  753. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/common/terminalStickyScrollConfiguration.js +3 -3
  754. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.js +30 -30
  755. package/vscode/src/vs/workbench/contrib/terminalContrib/typeAhead/common/terminalTypeAheadConfiguration.js +5 -5
  756. package/vscode/src/vs/workbench/contrib/terminalContrib/zoom/common/terminal.zoom.js +2 -2
  757. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +11 -11
  758. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +2 -2
  759. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +3 -3
  760. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +6 -6
  761. package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +3 -3
  762. package/vscode/src/vs/workbench/contrib/webview/browser/webviewFindAccessibilityHelp.js +30 -30
  763. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +1 -1
  764. package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +2 -2
  765. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.js +28 -6
  766. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +11 -11
  767. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +5 -5
  768. package/vscode/src/vs/workbench/services/browserElements/browser/browserElementsService.service.d.ts +1 -0
  769. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.js +19 -17
  770. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +16 -16
  771. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +1 -1
  772. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +16 -16
  773. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +15 -0
  774. package/vscode/src/vs/workbench/services/editor/common/editorGroupFinder.d.ts +12 -19
  775. package/vscode/src/vs/workbench/services/editor/common/editorGroupFinder.js +12 -6
  776. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +22 -6
  777. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +1 -1
  778. package/vscode/src/vs/workbench/services/environment/browser/environmentService.js +1 -1
  779. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionsIcons.js +3 -3
  780. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +6 -6
  781. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +10 -10
  782. package/vscode/src/vs/workbench/services/extensions/common/extensions.js +2 -2
  783. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.d.ts +2 -2
  784. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +90 -90
  785. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +5 -5
  786. package/vscode/src/vs/workbench/services/language/common/languageService.js +24 -24
  787. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +2 -1
  788. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +1 -0
  789. package/vscode/src/vs/workbench/services/log/common/logConstants.js +1 -1
  790. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +2 -2
  791. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +7 -7
  792. package/vscode/src/vs/workbench/services/preferences/common/preferences.service.d.ts +1 -1
  793. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.d.ts +1 -1
  794. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +4 -4
  795. package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.d.ts +137 -0
  796. package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +1079 -0
  797. package/vscode/src/vs/workbench/services/preferences/common/preferencesValidation.d.ts +11 -0
  798. package/vscode/src/vs/workbench/services/preferences/common/preferencesValidation.js +359 -0
  799. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +8 -8
  800. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +6 -6
  801. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +1 -1
  802. package/vscode/src/vs/workbench/services/search/common/search.d.ts +1 -1
  803. package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +9 -9
  804. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +3 -3
  805. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +18 -18
  806. package/vscode/src/vs/workbench/services/themes/common/colorThemeData.js +8 -8
  807. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
  808. package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +24 -24
  809. package/vscode/src/vs/workbench/services/themes/common/workbenchThemeService.d.ts +8 -4
  810. package/vscode/src/vs/workbench/services/themes/common/workbenchThemeService.js +14 -7
  811. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +3 -3
  812. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +1 -1
  813. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +13 -13
  814. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +16 -16
  815. package/vscode-dts/vscode.proposed.authIssuers.d.ts +2 -2
  816. package/vscode-dts/vscode.proposed.browser.d.ts +92 -0
  817. package/vscode-dts/vscode.proposed.chatDebug.d.ts +136 -2
  818. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +6 -0
  819. package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +7 -0
  820. package/vscode-dts/vscode.proposed.chatProvider.d.ts +51 -0
  821. package/vscode-dts/vscode.proposed.chatSessionsProvider.d.ts +52 -3
  822. package/vscode-dts/vscode.proposed.d.ts +3 -0
  823. package/vscode-dts/vscode.proposed.findFiles2.d.ts +6 -0
  824. package/vscode-dts/vscode.proposed.findTextInFiles2.d.ts +6 -0
  825. package/vscode-dts/vscode.proposed.mcpServerDefinitions.d.ts +36 -10
  826. package/vscode-dts/vscode.proposed.taskRunOptions.d.ts +34 -0
  827. package/vscode-dts/vscode.proposed.toolInvocationApproveCombination.d.ts +22 -0
  828. package/vscode/src/vs/base/common/parsers.d.ts +0 -32
  829. package/vscode/src/vs/base/common/parsers.js +0 -54
  830. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.service.d.ts +0 -47
  831. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.service.js +0 -6
  832. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTargetPicker.d.ts +0 -73
  833. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.service.d.ts +0 -37
  834. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.service.js +0 -6
  835. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.service.d.ts +0 -47
  836. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.service.js +0 -6
  837. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/resolveDebugEventDetailsTool.d.ts +0 -11
  838. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/resolveDebugEventDetailsTool.js +0 -205
  839. package/vscode/src/vs/workbench/contrib/tasks/common/problemMatcher.d.ts +0 -433
  840. package/vscode/src/vs/workbench/contrib/tasks/common/problemMatcher.js +0 -1637
  841. package/vscode/src/vs/workbench/contrib/tasks/common/taskConfiguration.d.ts +0 -514
  842. package/vscode/src/vs/workbench/contrib/tasks/common/taskConfiguration.js +0 -1796
@@ -11,6 +11,7 @@ import '../../../../base/common/observableInternal/index.js';
11
11
  import { equals } from '../../../../base/common/objects.js';
12
12
  import Severity$1 from '../../../../base/common/severity.js';
13
13
  import { isFalsyOrWhitespace, format } from '../../../../base/common/strings.js';
14
+ import { SubmenuAction } from '../../../../base/common/actions.js';
14
15
  import { isString, isObject } from '../../../../base/common/types.js';
15
16
  import { generateUuid } from '../../../../base/common/uuid.js';
16
17
  import { localize } from '../../../../nls.js';
@@ -117,15 +118,15 @@ const languageModelChatProviderType = {
117
118
  properties: {
118
119
  vendor: {
119
120
  type: "string",
120
- description: ( localize(6991, "A globally unique vendor of language model chat provider."))
121
+ description: ( localize(7214, "A globally unique vendor of language model chat provider."))
121
122
  },
122
123
  displayName: {
123
124
  type: "string",
124
- description: ( localize(6992, "The display name of the language model chat provider."))
125
+ description: ( localize(7215, "The display name of the language model chat provider."))
125
126
  },
126
127
  configuration: {
127
128
  type: "object",
128
- description: ( localize(6993, "Configuration options for the language model chat provider.")),
129
+ description: ( localize(7216, "Configuration options for the language model chat provider.")),
129
130
  anyOf: [{
130
131
  $ref: "http://json-schema.org/draft-07/schema#"
131
132
  }, {
@@ -137,7 +138,7 @@ const languageModelChatProviderType = {
137
138
  properties: {
138
139
  secret: {
139
140
  type: "boolean",
140
- description: ( localize(6994, "Whether the property is a secret."))
141
+ description: ( localize(7217, "Whether the property is a secret."))
141
142
  }
142
143
  }
143
144
  }
@@ -147,7 +148,7 @@ const languageModelChatProviderType = {
147
148
  properties: {
148
149
  secret: {
149
150
  type: "boolean",
150
- description: ( localize(6994, "Whether the property is a secret."))
151
+ description: ( localize(7217, "Whether the property is a secret."))
151
152
  }
152
153
  }
153
154
  }
@@ -157,19 +158,19 @@ const languageModelChatProviderType = {
157
158
  managementCommand: {
158
159
  type: "string",
159
160
  description: ( localize(
160
- 6995,
161
+ 7218,
161
162
  "A command to manage the language model chat provider, e.g. 'Manage Copilot models'. This is used in the chat model picker. If not provided, a gear icon is not rendered during vendor selection."
162
163
  )),
163
164
  deprecated: true,
164
165
  deprecationMessage: ( localize(
165
- 6996,
166
+ 7219,
166
167
  "The managementCommand property is deprecated and will be removed in a future release. Use the new configuration property instead."
167
168
  ))
168
169
  },
169
170
  when: {
170
171
  type: "string",
171
172
  description: ( localize(
172
- 6997,
173
+ 7220,
173
174
  "Condition which must be true to show this language model chat provider in the Manage Models list."
174
175
  ))
175
176
  }
@@ -178,7 +179,7 @@ const languageModelChatProviderType = {
178
179
  const languageModelChatProviderExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
179
180
  extensionPoint: "languageModelChatProviders",
180
181
  jsonSchema: {
181
- description: ( localize(6998, "Contribute language model chat providers of a specific vendor.")),
182
+ description: ( localize(7221, "Contribute language model chat providers of a specific vendor.")),
182
183
  oneOf: [languageModelChatProviderType, {
183
184
  type: "array",
184
185
  items: languageModelChatProviderType
@@ -233,6 +234,7 @@ let LanguageModelsService = class LanguageModelsService {
233
234
  this._modelCache = ( new Map());
234
235
  this._resolveLMSequencer = ( new SequencerByKey());
235
236
  this._modelPickerUserPreferences = {};
237
+ this._modelConfigurations = ( new Map());
236
238
  this._onLanguageModelChange = this._store.add(( new Emitter()));
237
239
  this.onDidChangeLanguageModels = this._onLanguageModelChange.event;
238
240
  this._recentlyUsedModelIds = [];
@@ -274,18 +276,18 @@ let LanguageModelsService = class LanguageModelsService {
274
276
  for (const item of Iterable.wrap(extension.value)) {
275
277
  if (( this._vendors.has(item.vendor))) {
276
278
  extension.collector.error(( localize(
277
- 6999,
279
+ 7222,
278
280
  "The vendor '{0}' is already registered and cannot be registered twice",
279
281
  item.vendor
280
282
  )));
281
283
  continue;
282
284
  }
283
285
  if (isFalsyOrWhitespace(item.vendor)) {
284
- extension.collector.error(( localize(7000, "The vendor field cannot be empty.")));
286
+ extension.collector.error(( localize(7223, "The vendor field cannot be empty.")));
285
287
  continue;
286
288
  }
287
289
  if (item.vendor.trim() !== item.vendor) {
288
- extension.collector.error(( localize(7001, "The vendor field cannot start or end with whitespace.")));
290
+ extension.collector.error(( localize(7224, "The vendor field cannot start or end with whitespace.")));
289
291
  continue;
290
292
  }
291
293
  addedVendors.push(item);
@@ -503,10 +505,28 @@ let LanguageModelsService = class LanguageModelsService {
503
505
  });
504
506
  }
505
507
  const groups = this._languageModelsConfigurationService.getLanguageModelsProviderGroups();
508
+ const perModelConfigurations = ( new Map());
506
509
  for (const group of groups) {
507
510
  if (group.vendor !== vendorId) {
508
511
  continue;
509
512
  }
513
+ if (vendor.isDefault && !vendor.configuration) {
514
+ if (group.settings) {
515
+ for (const model of allModels) {
516
+ const modelConfig = group.settings[model.metadata.id];
517
+ if (modelConfig) {
518
+ perModelConfigurations.set(model.identifier, {
519
+ ...modelConfig
520
+ });
521
+ }
522
+ }
523
+ }
524
+ languageModelsGroups.push({
525
+ group,
526
+ modelIdentifiers: []
527
+ });
528
+ continue;
529
+ }
510
530
  const configuration = await this._resolveConfiguration(group, vendor.configuration);
511
531
  try {
512
532
  const models = await provider.provideLanguageModelChatInfo({
@@ -521,6 +541,16 @@ let LanguageModelsService = class LanguageModelsService {
521
541
  modelIdentifiers: ( models.map(m => m.identifier))
522
542
  });
523
543
  }
544
+ if (group.settings) {
545
+ for (const model of models) {
546
+ const modelConfig = group.settings[model.metadata.id];
547
+ if (modelConfig) {
548
+ perModelConfigurations.set(model.identifier, {
549
+ ...modelConfig
550
+ });
551
+ }
552
+ }
553
+ }
524
554
  } catch (error) {
525
555
  languageModelsGroups.push({
526
556
  group,
@@ -546,6 +576,12 @@ let LanguageModelsService = class LanguageModelsService {
546
576
  }
547
577
  this._logService.trace(`[LM] Resolved language models for vendor ${vendorId}`, allModels);
548
578
  hasChanges = hasChanges || oldModels.size > 0;
579
+ this._clearModelConfigurations(vendorId);
580
+ for (const [identifier, config] of perModelConfigurations) {
581
+ if (( this._modelCache.has(identifier))) {
582
+ this._modelConfigurations.set(identifier, config);
583
+ }
584
+ }
549
585
  if (hasChanges) {
550
586
  this._onLanguageModelChange.fire(vendorId);
551
587
  } else {
@@ -595,11 +631,42 @@ let LanguageModelsService = class LanguageModelsService {
595
631
  });
596
632
  }
597
633
  async sendChatRequest(modelId, from, messages, options, token) {
598
- const provider = this._providers.get(this._modelCache.get(modelId)?.vendor || "");
634
+ const metadata = this._modelCache.get(modelId);
635
+ const provider = this._providers.get(metadata?.vendor || "");
599
636
  if (!provider) {
600
637
  throw ( new Error(`Chat provider for model ${modelId} is not registered.`));
601
638
  }
602
- return provider.sendChatRequest(modelId, messages, from, options, token);
639
+ const configuration = this.getModelConfiguration(modelId);
640
+ const mergedOptions = configuration ? {
641
+ ...options,
642
+ configuration: {
643
+ ...configuration,
644
+ ...options.configuration
645
+ }
646
+ } : options;
647
+ return provider.sendChatRequest(modelId, messages, from, mergedOptions, token);
648
+ }
649
+ _resolveModelConfigurationWithDefaults(modelId, metadata) {
650
+ const userConfig = this._modelConfigurations.get(modelId);
651
+ const schema = metadata?.configurationSchema;
652
+ if (!schema?.properties && !userConfig) {
653
+ return undefined;
654
+ }
655
+ const defaults = {};
656
+ if (schema?.properties) {
657
+ for (const [key, propSchema] of Object.entries(schema.properties)) {
658
+ if (propSchema.default !== undefined) {
659
+ defaults[key] = propSchema.default;
660
+ }
661
+ }
662
+ }
663
+ if (!userConfig && ( Object.keys(defaults)).length === 0) {
664
+ return undefined;
665
+ }
666
+ return {
667
+ ...defaults,
668
+ ...userConfig
669
+ };
603
670
  }
604
671
  computeTokenLength(modelId, message, token) {
605
672
  const model = this._modelCache.get(modelId);
@@ -612,6 +679,118 @@ let LanguageModelsService = class LanguageModelsService {
612
679
  }
613
680
  return provider.provideTokenCount(modelId, message, token);
614
681
  }
682
+ getModelConfiguration(modelId) {
683
+ const metadata = this._modelCache.get(modelId);
684
+ return this._resolveModelConfigurationWithDefaults(modelId, metadata);
685
+ }
686
+ async setModelConfiguration(modelId, values) {
687
+ const metadata = this._modelCache.get(modelId);
688
+ if (!metadata) {
689
+ return;
690
+ }
691
+ const allGroups = this._languageModelsConfigurationService.getLanguageModelsProviderGroups();
692
+ let group;
693
+ group = allGroups.find(
694
+ g => g.vendor === metadata.vendor && g.settings?.[metadata.id] !== undefined
695
+ );
696
+ if (!group) {
697
+ group = allGroups.find(g => g.vendor === metadata.vendor);
698
+ }
699
+ const existingConfig = this._modelConfigurations.get(modelId) ?? {};
700
+ const updatedConfig = {
701
+ ...existingConfig,
702
+ ...values
703
+ };
704
+ const schema = metadata.configurationSchema;
705
+ if (schema?.properties) {
706
+ for (const [key, value] of Object.entries(updatedConfig)) {
707
+ const propSchema = schema.properties[key];
708
+ if (propSchema?.default !== undefined && propSchema.default === value) {
709
+ delete updatedConfig[key];
710
+ }
711
+ }
712
+ }
713
+ if (group) {
714
+ const existingSettings = group.settings ?? {};
715
+ let updatedSettings;
716
+ if (( Object.keys(updatedConfig)).length === 0) {
717
+ updatedSettings = {
718
+ ...existingSettings
719
+ };
720
+ delete updatedSettings[metadata.id];
721
+ } else {
722
+ updatedSettings = {
723
+ ...existingSettings,
724
+ [metadata.id]: updatedConfig
725
+ };
726
+ }
727
+ const updatedGroup = {
728
+ ...group,
729
+ settings: ( Object.keys(updatedSettings)).length > 0 ? updatedSettings : undefined
730
+ };
731
+ if (!updatedGroup.settings && ( Object.keys(updatedGroup)).filter(k => k !== "name" && k !== "vendor" && k !== "range" && k !== "settings").length === 0) {
732
+ await this._languageModelsConfigurationService.removeLanguageModelsProviderGroup(group);
733
+ } else {
734
+ await this._languageModelsConfigurationService.updateLanguageModelsProviderGroup(group, updatedGroup);
735
+ }
736
+ } else if (( Object.keys(updatedConfig)).length > 0) {
737
+ const vendor = this.getVendors().find(v => v.vendor === metadata.vendor);
738
+ if (!vendor) {
739
+ return;
740
+ }
741
+ const newGroup = {
742
+ name: vendor.displayName,
743
+ vendor: metadata.vendor,
744
+ settings: {
745
+ [metadata.id]: updatedConfig
746
+ }
747
+ };
748
+ await this._languageModelsConfigurationService.addLanguageModelsProviderGroup(newGroup);
749
+ }
750
+ if (( Object.keys(updatedConfig)).length > 0) {
751
+ this._modelConfigurations.set(modelId, updatedConfig);
752
+ } else {
753
+ this._modelConfigurations.delete(modelId);
754
+ }
755
+ this._onLanguageModelChange.fire(metadata.vendor);
756
+ }
757
+ getModelConfigurationActions(modelId) {
758
+ const metadata = this._modelCache.get(modelId);
759
+ const schema = metadata?.configurationSchema;
760
+ if (!schema?.properties) {
761
+ return [];
762
+ }
763
+ const actions = [];
764
+ const currentConfig = this._modelConfigurations.get(modelId) ?? {};
765
+ for (const [key, propSchema] of Object.entries(schema.properties)) {
766
+ if (!propSchema.enum || !Array.isArray(propSchema.enum)) {
767
+ continue;
768
+ }
769
+ const currentValue = currentConfig[key] ?? propSchema.default;
770
+ const label = (typeof propSchema.title === "string" ? propSchema.title : undefined) ?? key.replace(/([a-z])([A-Z])/g, "$1 $2").replace(/^./, s => s.toUpperCase());
771
+ const defaultValue = propSchema.default;
772
+ const enumItemLabels = propSchema.enumItemLabels;
773
+ const enumDescriptions = propSchema.enumDescriptions;
774
+ const enumActions = ( propSchema.enum.map((value, index) => {
775
+ const itemLabel = enumItemLabels?.[index] ?? String(value);
776
+ const displayLabel = value === defaultValue ? ( localize(7225, "{0} (default)", itemLabel)) : itemLabel;
777
+ const tooltip = enumDescriptions?.[index] ?? "";
778
+ return {
779
+ id: `configureModel.${key}.${value}`,
780
+ label: displayLabel,
781
+ class: undefined,
782
+ enabled: true,
783
+ tooltip,
784
+ checked: currentValue === value,
785
+ run: () => this.setModelConfiguration(modelId, {
786
+ [key]: value
787
+ })
788
+ };
789
+ }));
790
+ actions.push(( new SubmenuAction(`configureModel.${key}`, label, enumActions)));
791
+ }
792
+ return actions;
793
+ }
615
794
  async configureLanguageModelsProviderGroup(vendorId, providerGroupName) {
616
795
  const vendor = this.getVendors().find((
617
796
  {
@@ -653,6 +832,62 @@ let LanguageModelsService = class LanguageModelsService {
653
832
  throw error;
654
833
  }
655
834
  }
835
+ async configureModel(modelId) {
836
+ const metadata = this._modelCache.get(modelId);
837
+ if (!metadata || !metadata.configurationSchema) {
838
+ return;
839
+ }
840
+ const vendorGroups = this._modelsGroups.get(metadata.vendor);
841
+ let group;
842
+ if (vendorGroups) {
843
+ for (const vg of vendorGroups) {
844
+ if (vg.modelIdentifiers.includes(modelId) && vg.group) {
845
+ group = vg.group;
846
+ break;
847
+ }
848
+ }
849
+ }
850
+ if (!group) {
851
+ const vendor = this.getVendors().find(v => v.vendor === metadata.vendor);
852
+ if (!vendor) {
853
+ return;
854
+ }
855
+ const groupName = vendor.displayName;
856
+ const newGroup = {
857
+ name: groupName,
858
+ vendor: metadata.vendor,
859
+ settings: {
860
+ [metadata.id]: {}
861
+ }
862
+ };
863
+ group = await this._languageModelsConfigurationService.addLanguageModelsProviderGroup(newGroup);
864
+ await this._resolveAllLanguageModels(metadata.vendor, true);
865
+ }
866
+ const snippet = this._getModelConfigurationSnippet(metadata.id, metadata.configurationSchema);
867
+ await this._languageModelsConfigurationService.configureLanguageModels({
868
+ group,
869
+ snippet
870
+ });
871
+ }
872
+ _getModelConfigurationSnippet(modelId, schema) {
873
+ const properties = [];
874
+ if (schema.properties) {
875
+ for (const [key, propSchema] of Object.entries(schema.properties)) {
876
+ if (propSchema.defaultSnippets?.[0]) {
877
+ const snippet = propSchema.defaultSnippets[0];
878
+ let bodyText = snippet.bodyText ?? JSON.stringify(snippet.body, null, "\t\t\t");
879
+ bodyText = bodyText.replace(/"(\^[^"]*)"/g, (_, value) => value.substring(1));
880
+ properties.push(`\t\t\t"${key}": ${bodyText}`);
881
+ } else if (propSchema.default !== undefined) {
882
+ properties.push(`\t\t\t"${key}": ${JSON.stringify(propSchema.default)}`);
883
+ } else {
884
+ properties.push(`\t\t\t"${key}": $\{${key}\}`);
885
+ }
886
+ }
887
+ }
888
+ const modelContent = properties.length > 0 ? `{\n${properties.join(",\n")}\n\t\t}` : "{\n\t\t\t$0\n\t\t}";
889
+ return `"settings": {\n\t\t"${modelId}": ${modelContent}\n\t}`;
890
+ }
656
891
  async addLanguageModelsProviderGroup(name, vendorId, configuration) {
657
892
  const vendor = this.getVendors().find((
658
893
  {
@@ -730,18 +965,18 @@ let LanguageModelsService = class LanguageModelsService {
730
965
  try {
731
966
  await ( new Promise(resolve => {
732
967
  const inputBox = disposables.add(this._quickInputService.createInputBox());
733
- inputBox.title = ( localize(7002, "Group Name"));
734
- inputBox.placeholder = ( localize(7003, "Enter a name for the group"));
968
+ inputBox.title = ( localize(7226, "Group Name"));
969
+ inputBox.placeholder = ( localize(7227, "Enter a name for the group"));
735
970
  inputBox.value = providerGroupName;
736
971
  inputBox.ignoreFocusOut = true;
737
972
  disposables.add(inputBox.onDidChangeValue(value => {
738
973
  if (!value) {
739
- inputBox.validationMessage = ( localize(7004, "Please enter a name"));
974
+ inputBox.validationMessage = ( localize(7228, "Please enter a name"));
740
975
  inputBox.severity = Severity$1.Error;
741
976
  return;
742
977
  }
743
978
  if (!existing && ( languageModelProviderGroups.some(g => g.name === value))) {
744
- inputBox.validationMessage = ( localize(7005, "A language models group with this name already exists"));
979
+ inputBox.validationMessage = ( localize(7229, "A language models group with this name already exists"));
745
980
  inputBox.severity = Severity$1.Error;
746
981
  return;
747
982
  }
@@ -822,7 +1057,7 @@ let LanguageModelsService = class LanguageModelsService {
822
1057
  quickPick.items = ( items.map(item => ({
823
1058
  label: item
824
1059
  })));
825
- quickPick.placeholder = propertySchema.description ?? ( localize(7006, "Select value for {0}", property));
1060
+ quickPick.placeholder = propertySchema.description ?? ( localize(7230, "Select value for {0}", property));
826
1061
  quickPick.canSelectMany = true;
827
1062
  quickPick.ignoreFocusOut = true;
828
1063
  disposables.add(quickPick.onDidAccept(() => {
@@ -844,7 +1079,7 @@ let LanguageModelsService = class LanguageModelsService {
844
1079
  const value = await ( new Promise((resolve, reject) => {
845
1080
  const inputBox = disposables.add(this._quickInputService.createInputBox());
846
1081
  inputBox.title = `${groupName}: ${propertySchema.title ?? property}`;
847
- inputBox.placeholder = ( localize(7007, "Enter value for {0}", property));
1082
+ inputBox.placeholder = ( localize(7231, "Enter value for {0}", property));
848
1083
  inputBox.password = !!propertySchema.secret;
849
1084
  inputBox.ignoreFocusOut = true;
850
1085
  if (existing?.[property]) {
@@ -857,20 +1092,20 @@ let LanguageModelsService = class LanguageModelsService {
857
1092
  }
858
1093
  disposables.add(inputBox.onDidChangeValue(value => {
859
1094
  if (!value && required) {
860
- inputBox.validationMessage = ( localize(7008, "Value is required"));
1095
+ inputBox.validationMessage = ( localize(7232, "Value is required"));
861
1096
  inputBox.severity = Severity$1.Error;
862
1097
  return;
863
1098
  }
864
1099
  if (propertySchema.type === "number" || propertySchema.type === "integer") {
865
1100
  if (isNaN(Number(value))) {
866
- inputBox.validationMessage = ( localize(7009, "Please enter a number"));
1101
+ inputBox.validationMessage = ( localize(7233, "Please enter a number"));
867
1102
  inputBox.severity = Severity$1.Error;
868
1103
  return;
869
1104
  }
870
1105
  }
871
1106
  if (propertySchema.type === "boolean") {
872
1107
  if (value !== "true" && value !== "false") {
873
- inputBox.validationMessage = ( localize(7010, "Please enter true or false"));
1108
+ inputBox.validationMessage = ( localize(7234, "Please enter true or false"));
874
1109
  inputBox.severity = Severity$1.Error;
875
1110
  return;
876
1111
  }
@@ -880,7 +1115,7 @@ let LanguageModelsService = class LanguageModelsService {
880
1115
  }));
881
1116
  disposables.add(inputBox.onDidAccept(() => {
882
1117
  if (!inputBox.value && required) {
883
- inputBox.validationMessage = ( localize(7008, "Value is required"));
1118
+ inputBox.validationMessage = ( localize(7232, "Value is required"));
884
1119
  inputBox.severity = Severity$1.Error;
885
1120
  return;
886
1121
  }
@@ -929,13 +1164,20 @@ let LanguageModelsService = class LanguageModelsService {
929
1164
  }
930
1165
  return removed;
931
1166
  }
1167
+ _clearModelConfigurations(vendor) {
1168
+ for (const [id] of this._modelConfigurations) {
1169
+ if (this._modelCache.get(id)?.vendor === vendor || id.startsWith(`${vendor}/`)) {
1170
+ this._modelConfigurations.delete(id);
1171
+ }
1172
+ }
1173
+ }
932
1174
  async _resolveConfiguration(group, schema) {
933
1175
  if (!schema) {
934
1176
  return {};
935
1177
  }
936
1178
  const result = {};
937
1179
  for (const key in group) {
938
- if (key === "vendor" || key === "name" || key === "range") {
1180
+ if (key === "vendor" || key === "name" || key === "range" || key === "settings") {
939
1181
  continue;
940
1182
  }
941
1183
  let value = group[key];
@@ -1071,7 +1313,7 @@ let LanguageModelsService = class LanguageModelsService {
1071
1313
  free[entry.id] = {
1072
1314
  label: entry.label,
1073
1315
  featured: entry.featured,
1074
- exists: this._modelExistsInCache(entry.id)
1316
+ exists: ( this._modelCache.has(`copilot/${entry.id}`))
1075
1317
  };
1076
1318
  }
1077
1319
  }
@@ -1085,7 +1327,7 @@ let LanguageModelsService = class LanguageModelsService {
1085
1327
  label: entry.label,
1086
1328
  featured: entry.featured,
1087
1329
  minVSCodeVersion: entry.minVSCodeVersion,
1088
- exists: this._modelExistsInCache(entry.id)
1330
+ exists: ( this._modelCache.has(`copilot/${entry.id}`))
1089
1331
  };
1090
1332
  }
1091
1333
  }
@@ -1095,14 +1337,6 @@ let LanguageModelsService = class LanguageModelsService {
1095
1337
  };
1096
1338
  this._onDidChangeModelsControlManifest.fire(this._modelsControlManifest);
1097
1339
  }
1098
- _modelExistsInCache(metadataId) {
1099
- for (const model of ( this._modelCache.values())) {
1100
- if (model.id === metadataId) {
1101
- return true;
1102
- }
1103
- }
1104
- return false;
1105
- }
1106
1340
  _initChatControlData() {
1107
1341
  this._chatControlUrl = this._productService.chatParticipantRegistry;
1108
1342
  if (!this._chatControlUrl) {
@@ -1137,7 +1371,8 @@ let LanguageModelsService = class LanguageModelsService {
1137
1371
  try {
1138
1372
  context = await this._requestService.request({
1139
1373
  type: "GET",
1140
- url: this._chatControlUrl
1374
+ url: this._chatControlUrl,
1375
+ callSite: "languageModels.fetchChatControlData"
1141
1376
  }, CancellationToken.None);
1142
1377
  } catch (err) {
1143
1378
  this._logService.warn("[LM] Failed to request chat control data", getErrorMessage(err));
@@ -1,10 +1,11 @@
1
+ import { IAction } from "../../../../base/common/actions.js";
1
2
  import { CancellationToken } from "../../../../base/common/cancellation.js";
2
3
  import { IStringDictionary } from "../../../../base/common/collections.js";
3
4
  import { Event } from "../../../../base/common/event.js";
4
5
  import { IDisposable } from "../../../../base/common/lifecycle.js";
5
6
  import { IObservable } from "../../../../base/common/observable.js";
6
7
  import { ExtensionIdentifier } from "../../../../platform/extensions/common/extensions.js";
7
- import { ILanguageModelProviderDescriptor, ILanguageModelChatMetadata, ILanguageModelChatMetadataAndIdentifier, ILanguageModelsGroup, ILanguageModelChatSelector, ILanguageModelChatProvider, IUserFriendlyLanguageModel, IChatMessage, ILanguageModelChatResponse, IModelsControlManifest } from "./languageModels.js";
8
+ import { ILanguageModelProviderDescriptor, ILanguageModelChatMetadata, ILanguageModelChatMetadataAndIdentifier, ILanguageModelsGroup, ILanguageModelChatSelector, ILanguageModelChatProvider, IUserFriendlyLanguageModel, IChatMessage, ILanguageModelChatRequestOptions, ILanguageModelChatResponse, IModelsControlManifest } from "./languageModels.js";
8
9
  import { ILanguageModelsProviderGroup } from "./languageModelsConfiguration.js";
9
10
  export declare const ILanguageModelsService: import("../../../../platform/instantiation/common/instantiation.js").ServiceIdentifier<ILanguageModelsService>;
10
11
  export interface ILanguageModelsService {
@@ -27,13 +28,33 @@ export interface ILanguageModelsService {
27
28
  selectLanguageModels(selector: ILanguageModelChatSelector): Promise<string[]>;
28
29
  registerLanguageModelProvider(vendor: string, provider: ILanguageModelChatProvider): IDisposable;
29
30
  deltaLanguageModelChatProviderDescriptors(added: IUserFriendlyLanguageModel[], removed: IUserFriendlyLanguageModel[]): void;
30
- sendChatRequest(modelId: string, from: ExtensionIdentifier | undefined, messages: IChatMessage[], options: {
31
- [name: string]: any;
32
- }, token: CancellationToken): Promise<ILanguageModelChatResponse>;
31
+ sendChatRequest(modelId: string, from: ExtensionIdentifier | undefined, messages: IChatMessage[], options: ILanguageModelChatRequestOptions, token: CancellationToken): Promise<ILanguageModelChatResponse>;
33
32
  computeTokenLength(modelId: string, message: string | IChatMessage, token: CancellationToken): Promise<number>;
33
+ /**
34
+ * Returns the resolved per-model configuration for the given model identifier.
35
+ * Includes schema defaults with user overrides applied on top.
36
+ * Returns undefined if the model has no configuration schema and no user config.
37
+ */
38
+ getModelConfiguration(modelId: string): IStringDictionary<unknown> | undefined;
39
+ /**
40
+ * Updates the per-model configuration for the given model.
41
+ * Merges the provided values into the existing configuration.
42
+ */
43
+ setModelConfiguration(modelId: string, values: IStringDictionary<unknown>): Promise<void>;
44
+ /**
45
+ * Returns actions for configuring the given model based on its configuration schema.
46
+ * For enum properties, returns submenu actions with checkable values.
47
+ * Returns an empty array if the model has no configuration schema.
48
+ */
49
+ getModelConfigurationActions(modelId: string): IAction[];
34
50
  addLanguageModelsProviderGroup(name: string, vendorId: string, configuration: IStringDictionary<unknown> | undefined): Promise<void>;
35
51
  removeLanguageModelsProviderGroup(vendorId: string, providerGroupName: string): Promise<void>;
36
52
  configureLanguageModelsProviderGroup(vendorId: string, name?: string): Promise<void>;
53
+ /**
54
+ * Opens the language models configuration file and navigates to
55
+ * or creates the per-model configuration for the given model.
56
+ */
57
+ configureModel(modelId: string): Promise<void>;
37
58
  migrateLanguageModelsProviderGroup(languageModelsProviderGroup: ILanguageModelsProviderGroup): Promise<void>;
38
59
  /**
39
60
  * Returns the most recently used model identifiers, ordered by most-recent-first.
@@ -8,4 +8,5 @@ export interface ILanguageModelsProviderGroup extends IStringDictionary<unknown>
8
8
  readonly name: string;
9
9
  readonly vendor: string;
10
10
  readonly range?: IRange;
11
+ readonly settings?: IStringDictionary<IStringDictionary<unknown>>;
11
12
  }
@@ -279,12 +279,14 @@ declare class AbstractResponse implements IResponse {
279
279
  protected _responseParts: IChatProgressResponseContent[];
280
280
  /**
281
281
  * A stringified representation of response data which might be presented to a screenreader or used when copying a response.
282
+ * Computed lazily on demand to avoid expensive string rebuilding during streaming.
282
283
  */
283
- protected _responseRepr: string;
284
+ private _responseRepr;
284
285
  /**
285
- * Just the markdown content of the response, used for determining the rendering rate of markdown
286
+ * Just the markdown content of the response, used for determining the rendering rate of markdown.
287
+ * Computed lazily on demand to avoid expensive string rebuilding during streaming.
286
288
  */
287
- protected _markdownContent: string;
289
+ private _markdownContent;
288
290
  get value(): IChatProgressResponseContent[];
289
291
  constructor(value: IChatProgressResponseContent[]);
290
292
  toString(): string;
@@ -292,7 +294,12 @@ declare class AbstractResponse implements IResponse {
292
294
  * _Just_ the content of markdown parts in the response
293
295
  */
294
296
  getMarkdown(): string;
295
- protected _updateRepr(): void;
297
+ /**
298
+ * Invalidate cached representations so they are recomputed on next access.
299
+ */
300
+ protected _invalidateRepr(): void;
301
+ private computeMarkdownContent;
302
+ protected computeRepr(): string;
296
303
  private partsToRepr;
297
304
  private inlineRefToRepr;
298
305
  private getToolInvocationText;
@@ -311,7 +318,8 @@ export declare class Response extends AbstractResponse implements IDisposable {
311
318
  private _mergeOrPushTextEditGroup;
312
319
  private _mergeOrPushNotebookEditGroup;
313
320
  private _handleExternalToolInvocationUpdate;
314
- protected _updateRepr(quiet?: boolean): void;
321
+ protected computeRepr(): string;
322
+ private _contentChanged;
315
323
  }
316
324
  export interface IChatResponseModelParameters {
317
325
  responseContent: IMarkdownString | ReadonlyArray<SerializedChatResponsePart>;
@@ -524,6 +532,7 @@ export interface ISerializableChatRequestData extends ISerializableChatResponseD
524
532
  confirmation?: string;
525
533
  editedFileEvents?: IChatAgentEditedFileEvent[];
526
534
  modelId?: string;
535
+ modeInfo?: IChatRequestModeInfo;
527
536
  }
528
537
  export interface ISerializableMarkdownInfo {
529
538
  readonly suggestionId: EditSuggestionId;