@codingame/monaco-vscode-api 32.0.2 → 33.0.4

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 (581) hide show
  1. package/missing-services.js +51 -7
  2. package/package.json +9 -9
  3. package/service-override/tools/views.d.ts +2 -2
  4. package/services.d.ts +3 -0
  5. package/services.js +8 -3
  6. package/vscode/product.json.js +1 -1
  7. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  8. package/vscode/src/vs/base/common/arrays.js +5 -1
  9. package/vscode/src/vs/base/common/async.js +94 -1
  10. package/vscode/src/vs/base/common/cache.js +22 -1
  11. package/vscode/src/vs/base/common/defaultAccount.d.ts +63 -0
  12. package/vscode/src/vs/base/common/policy.d.ts +1 -1
  13. package/vscode/src/vs/base/common/product.d.ts +0 -2
  14. package/vscode/src/vs/base/parts/ipc/common/ipc.net.d.ts +12 -0
  15. package/vscode/src/vs/base/parts/ipc/common/ipc.net.js +1 -1
  16. package/vscode/src/vs/editor/common/config/editorOptions.js +1 -1
  17. package/vscode/src/vs/editor/common/textModelEditSource.js +18 -1
  18. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js +2 -2
  19. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.d.ts +2 -0
  20. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +22 -2
  21. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.d.ts +1 -0
  22. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +58 -17
  23. package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.js +4 -4
  24. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +11 -11
  25. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +9 -9
  26. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +11 -11
  27. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +17 -17
  28. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +2 -2
  29. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +2 -2
  30. package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +1 -1
  31. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +33 -33
  32. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +4 -4
  33. package/vscode/src/vs/editor/contrib/tokenization/browser/tokenization.js +1 -1
  34. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
  35. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +24 -24
  36. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +5 -5
  37. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +9 -9
  38. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/textualHighlightProvider.js +6 -3
  39. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -3
  40. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +3 -3
  41. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +3 -0
  42. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +62 -62
  43. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +6 -6
  44. package/vscode/src/vs/platform/actionWidget/browser/actionList.d.ts +7 -0
  45. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +24 -10
  46. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css +1 -0
  47. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +12 -12
  48. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +3 -3
  49. package/vscode/src/vs/platform/actions/browser/toolbar.js +2 -2
  50. package/vscode/src/vs/platform/actions/common/menuResetAction.js +1 -1
  51. package/vscode/src/vs/platform/actions/common/menuService.js +2 -2
  52. package/vscode/src/vs/platform/agentHost/browser/nullAgentHostService.d.ts +1 -1
  53. package/vscode/src/vs/platform/agentHost/common/agentHostUri.js +3 -0
  54. package/vscode/src/vs/platform/agentHost/common/agentPluginManager.d.ts +1 -1
  55. package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +1 -1
  56. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.d.ts +13 -4
  57. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.js +8 -3
  58. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.service.d.ts +17 -1
  59. package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.d.ts +27 -0
  60. package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.service.d.ts +20 -1
  61. package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +1 -1
  62. package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.d.ts +1054 -0
  63. package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.js +59 -0
  64. package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +17 -1
  65. package/vscode/src/vs/platform/agentHost/common/state/protocol/messages.d.ts +6 -2
  66. package/vscode/src/vs/platform/agentHost/common/state/protocol/state.d.ts +5 -0
  67. package/vscode/src/vs/platform/agentHost/common/state/protocolUpgrade.d.ts +73 -0
  68. package/vscode/src/vs/platform/agentHost/common/state/sessionState.d.ts +139 -0
  69. package/vscode/src/vs/platform/agentHost/common/state/sessionState.js +24 -0
  70. package/vscode/src/vs/platform/browserView/common/browserView.d.ts +20 -0
  71. package/vscode/src/vs/platform/browserView/common/browserView.js +1 -0
  72. package/vscode/src/vs/platform/browserView/common/browserViewTelemetry.d.ts +3 -1
  73. package/vscode/src/vs/platform/configuration/common/configuration.js +1 -1
  74. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +10 -10
  75. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +1 -1
  76. package/vscode/src/vs/platform/contextkey/common/contextkey.js +10 -10
  77. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +9 -9
  78. package/vscode/src/vs/platform/contextkey/common/scanner.js +5 -5
  79. package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.d.ts +16 -1
  80. package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.js +8 -0
  81. package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.service.d.ts +9 -1
  82. package/vscode/src/vs/platform/dialogs/common/dialogs.js +9 -9
  83. package/vscode/src/vs/platform/dnd/browser/dnd.js +1 -1
  84. package/vscode/src/vs/platform/environment/common/argv.d.ts +0 -2
  85. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +14 -14
  86. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +1 -1
  87. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +7 -7
  88. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +21 -21
  89. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +2 -2
  90. package/vscode/src/vs/platform/files/common/files.js +6 -6
  91. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
  92. package/vscode/src/vs/platform/hover/browser/hoverService.js +1 -1
  93. package/vscode/src/vs/platform/hover/browser/hoverWidget.js +1 -1
  94. package/vscode/src/vs/platform/hover/browser/updatableHoverWidget.js +1 -1
  95. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +5 -5
  96. package/vscode/src/vs/platform/languagePacks/common/languagePacks.js +1 -1
  97. package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +3 -3
  98. package/vscode/src/vs/platform/list/browser/listService.js +25 -25
  99. package/vscode/src/vs/platform/log/common/log.js +6 -6
  100. package/vscode/src/vs/platform/markers/common/markerService.js +2 -2
  101. package/vscode/src/vs/platform/markers/common/markers.js +6 -6
  102. package/vscode/src/vs/platform/mcp/common/mcpManagementService.js +1 -1
  103. package/vscode/src/vs/platform/meteredConnection/common/meteredConnection.config.contribution.js +5 -5
  104. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.service.d.ts +2 -4
  105. package/vscode/src/vs/platform/notification/common/notification.js +3 -3
  106. package/vscode/src/vs/platform/policy/common/policy.d.ts +1 -1
  107. package/vscode/src/vs/platform/product/common/product.js +3 -3
  108. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +10 -10
  109. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +5 -5
  110. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +6 -6
  111. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +1 -1
  112. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
  113. package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +2 -2
  114. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +1 -1
  115. package/vscode/src/vs/platform/quickinput/browser/tree/quickTree.js +1 -1
  116. package/vscode/src/vs/platform/request/common/request.js +20 -20
  117. package/vscode/src/vs/platform/telemetry/common/telemetry.js +4 -1
  118. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -1
  119. package/vscode/src/vs/platform/terminal/common/terminalPlatformConfiguration.js +34 -34
  120. package/vscode/src/vs/platform/terminal/common/terminalProfiles.js +1 -1
  121. package/vscode/src/vs/platform/theme/common/colorUtils.js +2 -2
  122. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +19 -19
  123. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +9 -9
  124. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +95 -95
  125. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +48 -48
  126. package/vscode/src/vs/platform/theme/common/colors/listColors.js +36 -36
  127. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +7 -7
  128. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +11 -11
  129. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +16 -16
  130. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +10 -10
  131. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +3 -3
  132. package/vscode/src/vs/platform/theme/common/iconRegistry.js +6 -6
  133. package/vscode/src/vs/platform/theme/common/sizeUtils.d.ts +5 -3
  134. package/vscode/src/vs/platform/theme/common/sizeUtils.js +17 -3
  135. package/vscode/src/vs/platform/theme/common/sizes/baseSizes.js +11 -11
  136. package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +42 -42
  137. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +20 -20
  138. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +1 -1
  139. package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +2 -2
  140. package/vscode/src/vs/platform/userDataSync/common/keybindingsSync.js +2 -2
  141. package/vscode/src/vs/platform/userDataSync/common/settingsSync.js +1 -1
  142. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +5 -5
  143. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +1 -1
  144. package/vscode/src/vs/platform/workspace/common/workspace.js +1 -1
  145. package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +12 -12
  146. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +7 -1
  147. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +5 -5
  148. package/vscode/src/vs/workbench/api/common/extHostChatOutputRenderer.d.ts +2 -2
  149. package/vscode/src/vs/workbench/api/common/extHostChatOutputRenderer.js +2 -2
  150. package/vscode/src/vs/workbench/api/common/extHostChatStatus.js +9 -1
  151. package/vscode/src/vs/workbench/api/common/extHostConfiguration.js +1 -0
  152. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +1 -1
  153. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +2 -2
  154. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +2 -2
  155. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +3 -4
  156. package/vscode/src/vs/workbench/api/common/extHostLogService.js +1 -1
  157. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +2 -2
  158. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +2 -2
  159. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +4 -1
  160. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +1 -1
  161. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +2 -2
  162. package/vscode/src/vs/workbench/api/common/extHostWorkspace.d.ts +12 -0
  163. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +98 -38
  164. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +11 -11
  165. package/vscode/src/vs/workbench/browser/actions/developerActions.js +35 -35
  166. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +127 -127
  167. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +6 -6
  168. package/vscode/src/vs/workbench/browser/actions/windowActions.js +29 -29
  169. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +21 -21
  170. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +4 -4
  171. package/vscode/src/vs/workbench/browser/editor.js +2 -2
  172. package/vscode/src/vs/workbench/browser/labels.js +4 -4
  173. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +23 -23
  174. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +26 -26
  175. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +4 -4
  176. package/vscode/src/vs/workbench/browser/parts/compositeBar.js +1 -1
  177. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +9 -9
  178. package/vscode/src/vs/workbench/browser/parts/compositePart.js +3 -3
  179. package/vscode/src/vs/workbench/browser/parts/dialogs/dialog.js +1 -1
  180. package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +3 -3
  181. package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +1 -1
  182. package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +3 -3
  183. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +37 -37
  184. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +12 -12
  185. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +1 -1
  186. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +19 -9
  187. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.d.ts +1 -2
  188. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +139 -176
  189. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +28 -27
  190. package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +1 -1
  191. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +7 -7
  192. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +12 -12
  193. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +2 -2
  194. package/vscode/src/vs/workbench/browser/parts/editor/editorParts.js +16 -10
  195. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +10 -10
  196. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +5 -5
  197. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +66 -66
  198. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +3 -3
  199. package/vscode/src/vs/workbench/browser/parts/editor/modalEditorPart.js +24 -7
  200. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +1 -1
  201. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +1 -1
  202. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +1 -1
  203. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +3 -3
  204. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +1 -1
  205. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +19 -19
  206. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsActions.js +22 -22
  207. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +3 -3
  208. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +6 -6
  209. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +13 -13
  210. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsList.js +6 -6
  211. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +13 -13
  212. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +2 -2
  213. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +4 -4
  214. package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.js +4 -4
  215. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +3 -3
  216. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +27 -27
  217. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +3 -3
  218. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarActions.js +2 -2
  219. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +1 -1
  220. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +10 -10
  221. package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarActions.js +15 -15
  222. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +2 -2
  223. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +1 -1
  224. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +7 -7
  225. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +4 -4
  226. package/vscode/src/vs/workbench/browser/parts/views/viewMenuActions.d.ts +7 -2
  227. package/vscode/src/vs/workbench/browser/parts/views/viewMenuActions.js +28 -5
  228. package/vscode/src/vs/workbench/browser/parts/views/viewPane.d.ts +7 -0
  229. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +11 -5
  230. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +12 -9
  231. package/vscode/src/vs/workbench/browser/quickaccess.js +1 -1
  232. package/vscode/src/vs/workbench/browser/window.js +14 -14
  233. package/vscode/src/vs/workbench/browser/workbench.contribution.js +225 -225
  234. package/vscode/src/vs/workbench/common/configuration.js +9 -9
  235. package/vscode/src/vs/workbench/common/contextkeys.js +82 -82
  236. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +1 -1
  237. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +1 -1
  238. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +1 -1
  239. package/vscode/src/vs/workbench/common/editor.js +4 -4
  240. package/vscode/src/vs/workbench/common/theme.js +161 -161
  241. package/vscode/src/vs/workbench/common/views.js +4 -4
  242. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +156 -156
  243. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +12 -12
  244. package/vscode/src/vs/workbench/contrib/browserView/common/browserEditorInput.js +1 -1
  245. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.js +10 -7
  246. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +68 -66
  247. package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.service.d.ts +8 -0
  248. package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.service.js +6 -0
  249. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.service.d.ts +70 -0
  250. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.service.js +6 -0
  251. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +12 -12
  252. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.js +1 -1
  253. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +3 -3
  254. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatScreenshotContext.js +1 -1
  255. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +7 -7
  256. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.service.d.ts +4 -2
  257. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionDescription.js +2 -2
  258. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +43 -43
  259. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +1 -1
  260. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatOutputPartStateCache.service.d.ts +7 -0
  261. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatOutputPartStateCache.service.js +6 -0
  262. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.js +9 -9
  263. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.d.ts +1 -0
  264. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.js +93 -86
  265. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.js +2 -2
  266. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.d.ts +4 -6
  267. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.js +29 -21
  268. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.service.d.ts +7 -8
  269. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.d.ts +1 -1
  270. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.d.ts +41 -2
  271. package/vscode/src/vs/workbench/contrib/chat/common/constants.d.ts +3 -0
  272. package/vscode/src/vs/workbench/contrib/chat/common/constants.js +3 -0
  273. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.js +1 -1
  274. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.js +2 -2
  275. package/vscode/src/vs/workbench/contrib/chat/common/languageModelStats.js +3 -3
  276. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.d.ts +17 -4
  277. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +152 -49
  278. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.service.d.ts +20 -0
  279. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.d.ts +3 -0
  280. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.js +17 -8
  281. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js +1 -1
  282. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +21 -19
  283. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookSchema.js +18 -18
  284. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookTypes.js +20 -20
  285. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptFileAttributes.js +79 -79
  286. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.js +10 -10
  287. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/extensionPromptFileService.d.ts +92 -0
  288. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/extensionPromptFileService.js +329 -0
  289. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +5 -44
  290. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +33 -276
  291. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +1 -1
  292. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.js +8 -8
  293. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.js +10 -10
  294. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.js +7 -7
  295. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.js +2 -2
  296. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.js +3 -3
  297. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.js +4 -4
  298. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +22 -22
  299. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.d.ts +2 -1
  300. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.js +6 -5
  301. package/vscode/src/vs/workbench/contrib/chat/common/tools/toolResultCompressor.service.d.ts +2 -1
  302. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +11 -11
  303. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +4 -4
  304. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +5 -5
  305. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -3
  306. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +10 -10
  307. package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js +2 -2
  308. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
  309. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +6 -6
  310. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +4 -4
  311. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
  312. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +3 -3
  313. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
  314. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +12 -12
  315. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +5 -5
  316. package/vscode/src/vs/workbench/contrib/codeEditor/common/languageConfigurationExtensionPoint.js +65 -65
  317. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +7 -7
  318. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +7 -7
  319. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +2 -2
  320. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +3 -3
  321. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +3 -3
  322. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +3 -3
  323. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +3 -3
  324. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +3 -3
  325. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +12 -12
  326. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +7 -7
  327. package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +1 -1
  328. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +9 -9
  329. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +14 -14
  330. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +16 -16
  331. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +7 -7
  332. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +12 -12
  333. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorDiffInput.d.ts +7 -12
  334. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorDiffInput.js +68 -64
  335. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +3 -3
  336. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +1 -1
  337. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +29 -29
  338. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +14 -14
  339. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +75 -75
  340. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +2 -2
  341. package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +6 -6
  342. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +12 -12
  343. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +38 -38
  344. package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +2 -2
  345. package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +3 -3
  346. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +57 -57
  347. package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +3 -3
  348. package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +4 -4
  349. package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +2 -2
  350. package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +18 -18
  351. package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +5 -5
  352. package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +9 -9
  353. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +1 -1
  354. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +65 -65
  355. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +6 -6
  356. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  357. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +2 -2
  358. package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +1 -1
  359. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +1 -1
  360. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/commands.js +2 -2
  361. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/configurationSchema.js +4 -4
  362. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.d.ts +15 -0
  363. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +85 -0
  364. package/vscode/src/vs/workbench/contrib/extensions/browser/configBasedRecommendations.js +1 -1
  365. package/vscode/src/vs/workbench/contrib/extensions/browser/exeBasedRecommendations.js +1 -1
  366. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEditor.js +41 -41
  367. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEnablementWorkspaceTrustTransitionParticipant.js +1 -1
  368. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionFeaturesTab.js +15 -15
  369. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.js +14 -14
  370. package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.contribution.js +149 -151
  371. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +179 -179
  372. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActivationProgress.js +1 -1
  373. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsCompletionItemsProvider.js +1 -1
  374. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsDependencyChecker.js +5 -5
  375. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +25 -25
  376. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsQuickAccess.js +4 -4
  377. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewer.js +7 -7
  378. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewlet.js +47 -47
  379. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViews.js +6 -6
  380. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWidgets.js +30 -30
  381. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.js +79 -76
  382. package/vscode/src/vs/workbench/contrib/extensions/browser/fileBasedRecommendations.js +2 -2
  383. package/vscode/src/vs/workbench/contrib/extensions/browser/webRecommendations.js +1 -1
  384. package/vscode/src/vs/workbench/contrib/extensions/browser/workspaceRecommendations.js +2 -2
  385. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +1 -1
  386. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +5 -5
  387. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +2 -2
  388. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +3 -3
  389. package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +3 -3
  390. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +4 -4
  391. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +3 -3
  392. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +1 -1
  393. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +8 -8
  394. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +18 -18
  395. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +14 -14
  396. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +39 -39
  397. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +84 -84
  398. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +4 -4
  399. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +2 -2
  400. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +6 -6
  401. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +28 -28
  402. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +50 -50
  403. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +2 -2
  404. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +1 -1
  405. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +4 -4
  406. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +7 -7
  407. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +17 -17
  408. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +7 -7
  409. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +4 -4
  410. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +1 -1
  411. package/vscode/src/vs/workbench/contrib/files/common/files.js +16 -16
  412. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
  413. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +20 -20
  414. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +4 -4
  415. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  416. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +4 -4
  417. package/vscode/src/vs/workbench/contrib/inlineCompletions/browser/inlineCompletionLanguageStatusBarContribution.d.ts +17 -0
  418. package/vscode/src/vs/workbench/contrib/inlineCompletions/browser/inlineCompletionLanguageStatusBarContribution.js +108 -0
  419. package/vscode/src/vs/workbench/contrib/inlineCompletions/browser/inlineCompletions.contribution.d.ts +8 -0
  420. package/vscode/src/vs/workbench/contrib/inlineCompletions/browser/inlineCompletions.contribution.js +49 -0
  421. package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +2 -2
  422. package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +5 -5
  423. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommandsAddConfiguration.js +66 -66
  424. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerActions.js +40 -40
  425. package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfiguration.js +42 -42
  426. package/vscode/src/vs/workbench/contrib/mcp/common/mcpServer.js +16 -16
  427. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +4 -4
  428. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +4 -4
  429. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +23 -23
  430. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +2 -2
  431. package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +8 -8
  432. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnection.contribution.js +8 -8
  433. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnectionStatus.js +4 -4
  434. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +1 -1
  435. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +3 -3
  436. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +1 -1
  437. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +17 -17
  438. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +6 -6
  439. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +4 -4
  440. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
  441. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +3 -3
  442. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +7 -7
  443. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +24 -24
  444. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +29 -29
  445. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +5 -5
  446. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +7 -7
  447. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +2 -2
  448. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +4 -4
  449. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +1 -1
  450. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.js +3 -3
  451. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +1 -1
  452. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +2 -2
  453. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +4 -4
  454. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +1 -1
  455. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +14 -14
  456. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +2 -2
  457. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +1 -1
  458. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +2 -2
  459. package/vscode/src/vs/workbench/contrib/opener/browser/opener.contribution.d.ts +1 -0
  460. package/vscode/src/vs/workbench/contrib/opener/browser/opener.contribution.js +44 -0
  461. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +3 -3
  462. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +13 -13
  463. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +10 -10
  464. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +60 -60
  465. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +3 -3
  466. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +21 -21
  467. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +15 -15
  468. package/vscode/src/vs/workbench/contrib/remote/browser/remoteIcons.js +17 -17
  469. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +59 -59
  470. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistory.js +11 -11
  471. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.js +6 -6
  472. package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.js +14 -14
  473. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +9 -9
  474. package/vscode/src/vs/workbench/contrib/search/browser/patternInputWidget.js +3 -3
  475. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +1 -1
  476. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsTopBar.js +9 -9
  477. package/vscode/src/vs/workbench/contrib/search/browser/searchChatContext.js +5 -5
  478. package/vscode/src/vs/workbench/contrib/search/browser/searchFindInput.js +1 -1
  479. package/vscode/src/vs/workbench/contrib/search/browser/searchIcons.js +20 -20
  480. package/vscode/src/vs/workbench/contrib/search/browser/searchMessage.js +2 -2
  481. package/vscode/src/vs/workbench/contrib/search/browser/searchResultsView.js +14 -14
  482. package/vscode/src/vs/workbench/contrib/search/browser/searchView.js +55 -55
  483. package/vscode/src/vs/workbench/contrib/search/browser/searchWidget.js +11 -11
  484. package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +2 -2
  485. package/vscode/src/vs/workbench/contrib/search/common/search.d.ts +2 -0
  486. package/vscode/src/vs/workbench/contrib/search/common/search.js +9 -1
  487. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorInput.js +4 -4
  488. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorSerialization.js +5 -5
  489. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
  490. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +3 -3
  491. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +9 -9
  492. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +29 -29
  493. package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +1 -1
  494. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +6 -6
  495. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +6 -6
  496. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +4 -4
  497. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +3 -3
  498. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcons.js +13 -13
  499. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +40 -40
  500. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +15 -15
  501. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +10 -10
  502. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +23 -23
  503. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +17 -17
  504. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +26 -26
  505. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/common/terminalAccessibilityConfiguration.js +2 -2
  506. package/vscode/src/vs/workbench/contrib/terminalContrib/autoReplies/common/terminalAutoRepliesConfiguration.js +2 -2
  507. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChat.js +9 -9
  508. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.d.ts +2 -0
  509. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.js +104 -74
  510. package/vscode/src/vs/workbench/contrib/terminalContrib/commandGuide/common/terminalCommandGuideConfiguration.js +1 -1
  511. package/vscode/src/vs/workbench/contrib/terminalContrib/history/common/terminal.history.js +1 -1
  512. package/vscode/src/vs/workbench/contrib/terminalContrib/inlineHint/common/terminalInitialHintConfiguration.js +2 -2
  513. package/vscode/src/vs/workbench/contrib/terminalContrib/notification/common/terminalNotificationConfiguration.js +1 -1
  514. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/common/terminalStickyScrollConfiguration.js +3 -3
  515. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.js +30 -30
  516. package/vscode/src/vs/workbench/contrib/terminalContrib/typeAhead/common/terminalTypeAheadConfiguration.js +5 -5
  517. package/vscode/src/vs/workbench/contrib/terminalContrib/zoom/common/terminal.zoom.js +2 -2
  518. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +11 -11
  519. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +2 -2
  520. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +3 -3
  521. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +6 -6
  522. package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +3 -3
  523. package/vscode/src/vs/workbench/contrib/webview/browser/webviewFindAccessibilityHelp.js +30 -30
  524. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +1 -1
  525. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingTypes.js +14 -14
  526. package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +2 -2
  527. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.d.ts +2 -1
  528. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.js +14 -3
  529. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +31 -25
  530. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +15 -0
  531. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +5 -5
  532. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.d.ts +11 -2
  533. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.js +65 -22
  534. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.service.d.ts +2 -0
  535. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +16 -16
  536. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +1 -1
  537. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +16 -16
  538. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.d.ts +15 -3
  539. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +19 -3
  540. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.service.d.ts +2 -2
  541. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionsIcons.js +3 -3
  542. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +6 -6
  543. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +10 -10
  544. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +88 -88
  545. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +5 -5
  546. package/vscode/src/vs/workbench/services/language/common/languageService.js +24 -24
  547. package/vscode/src/vs/workbench/services/log/common/logConstants.js +1 -1
  548. package/vscode/src/vs/workbench/services/policies/common/accountPolicyService.js +1 -1
  549. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +2 -2
  550. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +7 -7
  551. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +4 -4
  552. package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +2 -2
  553. package/vscode/src/vs/workbench/services/preferences/common/preferencesValidation.js +30 -30
  554. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +8 -8
  555. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +6 -6
  556. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +1 -1
  557. package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +9 -9
  558. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +3 -3
  559. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +18 -18
  560. package/vscode/src/vs/workbench/services/themes/common/colorThemeData.js +8 -8
  561. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
  562. package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +24 -24
  563. package/vscode/src/vs/workbench/services/title/browser/titleService.service.d.ts +7 -0
  564. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +3 -3
  565. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +1 -1
  566. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +13 -13
  567. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +16 -16
  568. package/vscode-dts/vscode.proposed.authIssuers.d.ts +14 -0
  569. package/vscode-dts/vscode.proposed.chatOutputRenderer.d.ts +23 -3
  570. package/vscode-dts/vscode.proposed.chatProvider.d.ts +0 -9
  571. package/vscode-dts/vscode.proposed.chatStatusItem.d.ts +5 -0
  572. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputStateCache.service.d.ts +0 -7
  573. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputStateCache.service.js +0 -6
  574. package/vscode/src/vs/workbench/contrib/chat/common/tools/toolResultCompressor.d.ts +0 -39
  575. package/vscode/src/vs/workbench/contrib/chat/common/widget/input/modelPickerWidget.d.ts +0 -4
  576. package/vscode/src/vs/workbench/contrib/chat/common/widget/input/modelPickerWidget.js +0 -9
  577. package/vscode/src/vs/workbench/contrib/extensions/browser/abstractRuntimeExtensionsEditor.d.ts +0 -76
  578. package/vscode/src/vs/workbench/contrib/extensions/browser/abstractRuntimeExtensionsEditor.js +0 -470
  579. package/vscode/src/vs/workbench/contrib/extensions/browser/media/runtimeExtensionsEditor.css +0 -86
  580. package/vscode/src/vs/workbench/contrib/extensions/common/runtimeExtensionsInput.d.ts +0 -15
  581. package/vscode/src/vs/workbench/contrib/extensions/common/runtimeExtensionsInput.js +0 -47
@@ -33,6 +33,7 @@ import { ILanguageModelsConfigurationService } from './languageModelsConfigurati
33
33
  import { observableValue } from '../../../../base/common/observableInternal/observables/observableValue.js';
34
34
 
35
35
  var LanguageModelsService_1;
36
+ const COPILOT_VENDOR_ID = "copilot";
36
37
  var ChatMessageRole;
37
38
  (function(ChatMessageRole) {
38
39
  ChatMessageRole[ChatMessageRole["System"] = 0] = "System";
@@ -70,7 +71,7 @@ var ILanguageModelChatMetadata;
70
71
  }
71
72
  ILanguageModelChatMetadata.asQualifiedName = asQualifiedName;
72
73
  function matchesQualifiedName(name, metadata) {
73
- if (metadata.vendor === "copilot" && name === metadata.name) {
74
+ if (metadata.vendor === COPILOT_VENDOR_ID && name === metadata.name) {
74
75
  return true;
75
76
  }
76
77
  return name === asQualifiedName(metadata);
@@ -90,15 +91,15 @@ const languageModelChatProviderType = {
90
91
  properties: {
91
92
  vendor: {
92
93
  type: "string",
93
- description: ( localize(7708, "A globally unique vendor of language model chat provider."))
94
+ description: ( localize(7795, "A globally unique vendor of language model chat provider."))
94
95
  },
95
96
  displayName: {
96
97
  type: "string",
97
- description: ( localize(7709, "The display name of the language model chat provider."))
98
+ description: ( localize(7796, "The display name of the language model chat provider."))
98
99
  },
99
100
  configuration: {
100
101
  type: "object",
101
- description: ( localize(7710, "Configuration options for the language model chat provider.")),
102
+ description: ( localize(7797, "Configuration options for the language model chat provider.")),
102
103
  anyOf: [{
103
104
  $ref: "http://json-schema.org/draft-07/schema#"
104
105
  }, {
@@ -110,7 +111,7 @@ const languageModelChatProviderType = {
110
111
  properties: {
111
112
  secret: {
112
113
  type: "boolean",
113
- description: ( localize(7711, "Whether the property is a secret."))
114
+ description: ( localize(7798, "Whether the property is a secret."))
114
115
  }
115
116
  }
116
117
  }
@@ -120,7 +121,7 @@ const languageModelChatProviderType = {
120
121
  properties: {
121
122
  secret: {
122
123
  type: "boolean",
123
- description: ( localize(7711, "Whether the property is a secret."))
124
+ description: ( localize(7798, "Whether the property is a secret."))
124
125
  }
125
126
  }
126
127
  }
@@ -130,19 +131,19 @@ const languageModelChatProviderType = {
130
131
  managementCommand: {
131
132
  type: "string",
132
133
  description: ( localize(
133
- 7712,
134
+ 7799,
134
135
  "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."
135
136
  )),
136
137
  deprecated: true,
137
138
  deprecationMessage: ( localize(
138
- 7713,
139
+ 7800,
139
140
  "The managementCommand property is deprecated and will be removed in a future release. Use the new configuration property instead."
140
141
  ))
141
142
  },
142
143
  when: {
143
144
  type: "string",
144
145
  description: ( localize(
145
- 7714,
146
+ 7801,
146
147
  "Condition which must be true to show this language model chat provider in the Manage Models list."
147
148
  ))
148
149
  }
@@ -151,7 +152,7 @@ const languageModelChatProviderType = {
151
152
  const languageModelChatProviderExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
152
153
  extensionPoint: "languageModelChatProviders",
153
154
  jsonSchema: {
154
- description: ( localize(7715, "Contribute language model chat providers of a specific vendor.")),
155
+ description: ( localize(7802, "Contribute language model chat providers of a specific vendor.")),
155
156
  oneOf: [languageModelChatProviderType, {
156
157
  type: "array",
157
158
  items: languageModelChatProviderType
@@ -164,6 +165,8 @@ const languageModelChatProviderExtensionPoint = ExtensionsRegistry.registerExten
164
165
  }
165
166
  });
166
167
  const CHAT_MODEL_RECENTLY_USED_STORAGE_KEY = "chatModelRecentlyUsed";
168
+ const CHAT_MODEL_PINNED_STORAGE_KEY = "chatModelPinned";
169
+ const AUTO_MODEL_IDENTIFIER = "copilot/auto";
167
170
  const CHAT_PARTICIPANT_NAME_REGISTRY_STORAGE_KEY = "chat.participantNameRegistry";
168
171
  const CHAT_MODELS_CONTROL_STORAGE_KEY = "chat.modelsControl";
169
172
  let LanguageModelsService = class LanguageModelsService {
@@ -208,8 +211,11 @@ let LanguageModelsService = class LanguageModelsService {
208
211
  this._onLanguageModelChange = this._store.add(( new Emitter()));
209
212
  this.onDidChangeLanguageModels = this._onLanguageModelChange.event;
210
213
  this._recentlyUsedModelIds = [];
214
+ this._pinnedModelIds = [];
211
215
  this._onDidChangeModelsControlManifest = this._store.add(( new Emitter()));
212
216
  this.onDidChangeModelsControlManifest = this._onDidChangeModelsControlManifest.event;
217
+ this._onDidChangePinnedModels = this._store.add(( new Emitter()));
218
+ this.onDidChangePinnedModels = this._onDidChangePinnedModels.event;
213
219
  this._modelsControlManifest = {
214
220
  free: {},
215
221
  paid: {}
@@ -218,10 +224,25 @@ let LanguageModelsService = class LanguageModelsService {
218
224
  this._restrictedChatParticipants = observableValue(this, Object.create(null));
219
225
  this.restrictedChatParticipants = this._restrictedChatParticipants;
220
226
  this._hasUserSelectableModels = ChatContextKeys.languageModelsAreUserSelectable.bindTo(_contextKeyService);
227
+ this._hasNonCopilotUserSelectableModels = ChatContextKeys.nonCopilotLanguageModelsAreUserSelectable.bindTo(_contextKeyService);
221
228
  this._recentlyUsedModelIds = this._readRecentlyUsedModels();
229
+ this._pinnedModelIds = this._readPinnedModels();
222
230
  this._initChatControlData();
223
231
  this._store.add(this.onDidChangeLanguageModels(() => {
224
- this._hasUserSelectableModels.set(this._modelCache.size > 0 && ( Array.from(( this._modelCache.values())).some(model => model.isUserSelectable)));
232
+ let hasUserSelectable = false;
233
+ let hasNonCopilotUserSelectable = false;
234
+ for (const model of ( this._modelCache.values())) {
235
+ if (model.isUserSelectable === false) {
236
+ continue;
237
+ }
238
+ hasUserSelectable = true;
239
+ if (model.vendor !== COPILOT_VENDOR_ID) {
240
+ hasNonCopilotUserSelectable = true;
241
+ break;
242
+ }
243
+ }
244
+ this._hasUserSelectableModels.set(hasUserSelectable);
245
+ this._hasNonCopilotUserSelectableModels.set(hasNonCopilotUserSelectable);
225
246
  this._refreshModelsControlManifest();
226
247
  }));
227
248
  this._store.add(
@@ -240,18 +261,18 @@ let LanguageModelsService = class LanguageModelsService {
240
261
  for (const item of Iterable.wrap(extension.value)) {
241
262
  if (( this._vendors.has(item.vendor))) {
242
263
  extension.collector.error(( localize(
243
- 7716,
264
+ 7803,
244
265
  "The vendor '{0}' is already registered and cannot be registered twice",
245
266
  item.vendor
246
267
  )));
247
268
  continue;
248
269
  }
249
270
  if (isFalsyOrWhitespace(item.vendor)) {
250
- extension.collector.error(( localize(7717, "The vendor field cannot be empty.")));
271
+ extension.collector.error(( localize(7804, "The vendor field cannot be empty.")));
251
272
  continue;
252
273
  }
253
274
  if (item.vendor.trim() !== item.vendor) {
254
- extension.collector.error(( localize(7718, "The vendor field cannot start or end with whitespace.")));
275
+ extension.collector.error(( localize(7805, "The vendor field cannot start or end with whitespace.")));
255
276
  continue;
256
277
  }
257
278
  addedVendors.push(item);
@@ -289,7 +310,7 @@ let LanguageModelsService = class LanguageModelsService {
289
310
  configuration: item.configuration,
290
311
  managementCommand: item.managementCommand,
291
312
  when: item.when,
292
- isDefault: item.vendor === "copilot"
313
+ isDefault: item.vendor === COPILOT_VENDOR_ID
293
314
  };
294
315
  this._vendors.set(item.vendor, vendor);
295
316
  addedVendorIds.push(item.vendor);
@@ -371,7 +392,7 @@ let LanguageModelsService = class LanguageModelsService {
371
392
  const modelIdentifiers = [];
372
393
  for (const m of models) {
373
394
  if (vendor.isDefault) {
374
- if (m.metadata.isUserSelectable) {
395
+ if (m.metadata.isUserSelectable !== false) {
375
396
  modelIdentifiers.push(m.identifier);
376
397
  } else {
377
398
  this._logService.trace(
@@ -693,7 +714,7 @@ let LanguageModelsService = class LanguageModelsService {
693
714
  const enumDescriptions = propSchema.enumDescriptions;
694
715
  const enumActions = ( propSchema.enum.map((value, index) => {
695
716
  const itemLabel = enumItemLabels?.[index] ?? String(value);
696
- const displayLabel = value === defaultValue ? ( localize(7719, "{0} (default)", itemLabel)) : itemLabel;
717
+ const displayLabel = value === defaultValue ? ( localize(7806, "{0} (default)", itemLabel)) : itemLabel;
697
718
  const tooltip = enumDescriptions?.[index] ?? "";
698
719
  return {
699
720
  id: `configureModel.${key}.${value}`,
@@ -885,18 +906,18 @@ let LanguageModelsService = class LanguageModelsService {
885
906
  try {
886
907
  await ( new Promise(resolve => {
887
908
  const inputBox = disposables.add(this._quickInputService.createInputBox());
888
- inputBox.title = ( localize(7720, "Group Name"));
889
- inputBox.placeholder = ( localize(7721, "Enter a name for the group"));
909
+ inputBox.title = ( localize(7807, "Group Name"));
910
+ inputBox.placeholder = ( localize(7808, "Enter a name for the group"));
890
911
  inputBox.value = providerGroupName;
891
912
  inputBox.ignoreFocusOut = true;
892
913
  disposables.add(inputBox.onDidChangeValue(value => {
893
914
  if (!value) {
894
- inputBox.validationMessage = ( localize(7722, "Please enter a name"));
915
+ inputBox.validationMessage = ( localize(7809, "Please enter a name"));
895
916
  inputBox.severity = Severity$1.Error;
896
917
  return;
897
918
  }
898
919
  if (!existing && ( languageModelProviderGroups.some(g => g.name === value))) {
899
- inputBox.validationMessage = ( localize(7723, "A language models group with this name already exists"));
920
+ inputBox.validationMessage = ( localize(7810, "A language models group with this name already exists"));
900
921
  inputBox.severity = Severity$1.Error;
901
922
  return;
902
923
  }
@@ -946,6 +967,9 @@ let LanguageModelsService = class LanguageModelsService {
946
967
  }
947
968
  return selectedItems;
948
969
  }
970
+ if (propertySchema.type === "string" && Array.isArray(propertySchema.enum) && propertySchema.enum.length > 0) {
971
+ return this.promptForEnum(groupName, property, propertySchema, existing);
972
+ }
949
973
  const value = await this.promptForInput(groupName, property, propertySchema, required, existing);
950
974
  if (value === undefined) {
951
975
  return undefined;
@@ -964,6 +988,16 @@ let LanguageModelsService = class LanguageModelsService {
964
988
  }
965
989
  return false;
966
990
  }
991
+ getDescriptionPlaintext(propertySchema) {
992
+ if (propertySchema.description) {
993
+ return propertySchema.description;
994
+ }
995
+ const md = propertySchema.markdownDescription;
996
+ if (!md) {
997
+ return undefined;
998
+ }
999
+ return md.replace(/`([^`]+)`/g, "$1").replace(/\*\*([^*]+)\*\*/g, "$1").replace(/\*([^*]+)\*/g, "$1").replace(/\[([^\]]+)\]\([^)]+\)/g, "$1");
1000
+ }
967
1001
  async promptForArray(groupName, property, propertySchema) {
968
1002
  if (!propertySchema.items || Array.isArray(propertySchema.items) || !propertySchema.items.enum) {
969
1003
  return undefined;
@@ -977,7 +1011,7 @@ let LanguageModelsService = class LanguageModelsService {
977
1011
  quickPick.items = ( items.map(item => ({
978
1012
  label: item
979
1013
  })));
980
- quickPick.placeholder = propertySchema.description ?? ( localize(7724, "Select value for {0}", property));
1014
+ quickPick.placeholder = this.getDescriptionPlaintext(propertySchema) ?? ( localize(7811, "Select value for {0}", property));
981
1015
  quickPick.canSelectMany = true;
982
1016
  quickPick.ignoreFocusOut = true;
983
1017
  disposables.add(quickPick.onDidAccept(() => {
@@ -993,13 +1027,59 @@ let LanguageModelsService = class LanguageModelsService {
993
1027
  disposables.dispose();
994
1028
  }
995
1029
  }
1030
+ async promptForEnum(groupName, property, propertySchema, existing) {
1031
+ const values = propertySchema.enum;
1032
+ if (!Array.isArray(values) || values.length === 0) {
1033
+ return undefined;
1034
+ }
1035
+ const enumDescriptions = propertySchema.enumDescriptions;
1036
+ const initial = existing?.[property] !== undefined ? String(existing[property]) : (propertySchema.default !== undefined ? String(propertySchema.default) : undefined);
1037
+ const items = ( values.map((value, index) => ({
1038
+ label: String(value),
1039
+ description: enumDescriptions?.[index],
1040
+ id: String(value)
1041
+ })));
1042
+ const disposables = ( new DisposableStore());
1043
+ try {
1044
+ return await ( new Promise(resolve => {
1045
+ const quickPick = disposables.add(this._quickInputService.createQuickPick());
1046
+ quickPick.title = `${groupName}: ${propertySchema.title ?? property}`;
1047
+ quickPick.items = items;
1048
+ quickPick.placeholder = this.getDescriptionPlaintext(propertySchema) ?? ( localize(7811, "Select value for {0}", property));
1049
+ quickPick.ignoreFocusOut = true;
1050
+ if (initial !== undefined) {
1051
+ const match = items.find(item => item.id === initial);
1052
+ if (match) {
1053
+ quickPick.activeItems = [match];
1054
+ }
1055
+ }
1056
+ disposables.add(quickPick.onDidAccept(() => {
1057
+ const selected = quickPick.selectedItems[0];
1058
+ resolve(selected?.id);
1059
+ quickPick.hide();
1060
+ }));
1061
+ disposables.add(quickPick.onDidHide(() => {
1062
+ resolve(undefined);
1063
+ }));
1064
+ quickPick.show();
1065
+ }));
1066
+ } finally {
1067
+ disposables.dispose();
1068
+ }
1069
+ }
996
1070
  async promptForInput(groupName, property, propertySchema, required, existing) {
997
1071
  const disposables = ( new DisposableStore());
998
1072
  try {
1073
+ const validate = value => {
1074
+ if (!value && required) {
1075
+ return localize(7812, "Value is required");
1076
+ }
1077
+ return undefined;
1078
+ };
999
1079
  const value = await ( new Promise((resolve, reject) => {
1000
1080
  const inputBox = disposables.add(this._quickInputService.createInputBox());
1001
1081
  inputBox.title = `${groupName}: ${propertySchema.title ?? property}`;
1002
- inputBox.placeholder = ( localize(7725, "Enter value for {0}", property));
1082
+ inputBox.placeholder = ( localize(7813, "Enter value for {0}", property));
1003
1083
  inputBox.password = !!propertySchema.secret;
1004
1084
  inputBox.ignoreFocusOut = true;
1005
1085
  if (existing?.[property]) {
@@ -1007,35 +1087,24 @@ let LanguageModelsService = class LanguageModelsService {
1007
1087
  } else if (propertySchema.default) {
1008
1088
  inputBox.value = String(propertySchema.default);
1009
1089
  }
1010
- if (propertySchema.description) {
1011
- inputBox.prompt = propertySchema.description;
1090
+ const promptText = this.getDescriptionPlaintext(propertySchema);
1091
+ if (promptText) {
1092
+ inputBox.prompt = promptText;
1012
1093
  }
1013
1094
  disposables.add(inputBox.onDidChangeValue(value => {
1014
- if (!value && required) {
1015
- inputBox.validationMessage = ( localize(7726, "Value is required"));
1095
+ const message = validate(value);
1096
+ if (message) {
1097
+ inputBox.validationMessage = message;
1016
1098
  inputBox.severity = Severity$1.Error;
1017
- return;
1018
- }
1019
- if (propertySchema.type === "number" || propertySchema.type === "integer") {
1020
- if (isNaN(Number(value))) {
1021
- inputBox.validationMessage = ( localize(7727, "Please enter a number"));
1022
- inputBox.severity = Severity$1.Error;
1023
- return;
1024
- }
1025
- }
1026
- if (propertySchema.type === "boolean") {
1027
- if (value !== "true" && value !== "false") {
1028
- inputBox.validationMessage = ( localize(7728, "Please enter true or false"));
1029
- inputBox.severity = Severity$1.Error;
1030
- return;
1031
- }
1099
+ } else {
1100
+ inputBox.validationMessage = undefined;
1101
+ inputBox.severity = Severity$1.Ignore;
1032
1102
  }
1033
- inputBox.validationMessage = undefined;
1034
- inputBox.severity = Severity$1.Ignore;
1035
1103
  }));
1036
1104
  disposables.add(inputBox.onDidAccept(() => {
1037
- if (!inputBox.value && required) {
1038
- inputBox.validationMessage = ( localize(7726, "Value is required"));
1105
+ const message = validate(inputBox.value);
1106
+ if (message) {
1107
+ inputBox.validationMessage = message;
1039
1108
  inputBox.severity = Severity$1.Error;
1040
1109
  return;
1041
1110
  }
@@ -1185,10 +1254,10 @@ let LanguageModelsService = class LanguageModelsService {
1185
1254
  );
1186
1255
  }
1187
1256
  getRecentlyUsedModelIds() {
1188
- return this._recentlyUsedModelIds.filter(id => ( this._modelCache.has(id)) && id !== "copilot/auto").slice(0, 4);
1257
+ return this._recentlyUsedModelIds.filter(id => ( this._modelCache.has(id)) && id !== AUTO_MODEL_IDENTIFIER).slice(0, 4);
1189
1258
  }
1190
1259
  addToRecentlyUsedList(modelIdentifier) {
1191
- if (modelIdentifier === "copilot/auto") {
1260
+ if (modelIdentifier === AUTO_MODEL_IDENTIFIER) {
1192
1261
  return;
1193
1262
  }
1194
1263
  const index = this._recentlyUsedModelIds.indexOf(modelIdentifier);
@@ -1205,6 +1274,40 @@ let LanguageModelsService = class LanguageModelsService {
1205
1274
  this._recentlyUsedModelIds = [];
1206
1275
  this._saveRecentlyUsedModels();
1207
1276
  }
1277
+ _readPinnedModels() {
1278
+ return this._storageService.getObject(CHAT_MODEL_PINNED_STORAGE_KEY, StorageScope.PROFILE, []);
1279
+ }
1280
+ _savePinnedModels() {
1281
+ this._storageService.store(
1282
+ CHAT_MODEL_PINNED_STORAGE_KEY,
1283
+ this._pinnedModelIds,
1284
+ StorageScope.PROFILE,
1285
+ StorageTarget.USER
1286
+ );
1287
+ }
1288
+ getPinnedModelIds() {
1289
+ return this._pinnedModelIds.filter(id => id !== AUTO_MODEL_IDENTIFIER && ( this._modelCache.has(id)));
1290
+ }
1291
+ pinModel(modelIdentifier) {
1292
+ if (modelIdentifier === AUTO_MODEL_IDENTIFIER || this._pinnedModelIds.includes(modelIdentifier)) {
1293
+ return;
1294
+ }
1295
+ this._pinnedModelIds.push(modelIdentifier);
1296
+ this._savePinnedModels();
1297
+ this._onDidChangePinnedModels.fire();
1298
+ }
1299
+ unpinModel(modelIdentifier) {
1300
+ const index = this._pinnedModelIds.indexOf(modelIdentifier);
1301
+ if (index === -1) {
1302
+ return;
1303
+ }
1304
+ this._pinnedModelIds.splice(index, 1);
1305
+ this._savePinnedModels();
1306
+ this._onDidChangePinnedModels.fire();
1307
+ }
1308
+ isModelPinned(modelIdentifier) {
1309
+ return modelIdentifier !== AUTO_MODEL_IDENTIFIER && this._pinnedModelIds.includes(modelIdentifier);
1310
+ }
1208
1311
  getModelsControlManifest() {
1209
1312
  return this._modelsControlManifest;
1210
1313
  }
@@ -1338,4 +1441,4 @@ let LanguageModelsService = class LanguageModelsService {
1338
1441
  };
1339
1442
  LanguageModelsService = LanguageModelsService_1 = ( __decorate([( __param(0, IExtensionService)), ( __param(1, ILogService)), ( __param(2, IStorageService)), ( __param(3, IContextKeyService)), ( __param(4, ILanguageModelsConfigurationService)), ( __param(5, IQuickInputService)), ( __param(6, ISecretStorageService)), ( __param(7, IProductService)), ( __param(8, IRequestService))], LanguageModelsService));
1340
1443
 
1341
- export { ChatImageMimeType, ChatMessageRole, ILanguageModelChatMetadata, ImageDetailLevel, LanguageModelPartAudience, LanguageModelsService, isILanguageModelChatSelector, languageModelChatProviderExtensionPoint };
1444
+ export { COPILOT_VENDOR_ID, ChatImageMimeType, ChatMessageRole, ILanguageModelChatMetadata, ImageDetailLevel, LanguageModelPartAudience, LanguageModelsService, isILanguageModelChatSelector, languageModelChatProviderExtensionPoint };
@@ -76,6 +76,26 @@ export interface ILanguageModelsService {
76
76
  */
77
77
  clearRecentlyUsedList(): void;
78
78
  /**
79
+ * Returns the pinned model identifiers, in the order they were pinned.
80
+ */
81
+ getPinnedModelIds(): string[];
82
+ /**
83
+ * Pins a model so it appears in the pinned section of the model picker.
84
+ */
85
+ pinModel(modelIdentifier: string): void;
86
+ /**
87
+ * Unpins a model, removing it from the pinned section.
88
+ */
89
+ unpinModel(modelIdentifier: string): void;
90
+ /**
91
+ * Returns whether the given model is pinned.
92
+ */
93
+ isModelPinned(modelIdentifier: string): boolean;
94
+ /**
95
+ * Fires when the pinned models list changes.
96
+ */
97
+ readonly onDidChangePinnedModels: Event<void>;
98
+ /**
79
99
  * Returns the models from the control manifest,
80
100
  * separated into free and paid tiers.
81
101
  */
@@ -927,6 +927,9 @@ export declare class ChatModel extends Disposable implements IChatModel {
927
927
  get responderUsername(): string;
928
928
  private _isImported;
929
929
  get isImported(): boolean;
930
+ private _isDeleted;
931
+ get isDeleted(): boolean;
932
+ markDeleted(): void;
930
933
  private _customTitle;
931
934
  get customTitle(): string | undefined;
932
935
  get title(): string;
@@ -307,7 +307,7 @@ class AbstractResponse {
307
307
  blocks.push(currentBlockSegments.join(""));
308
308
  }
309
309
  if (hasEditGroupsAfterLastClear) {
310
- blocks.push(( localize(7729, "Made changes.")));
310
+ blocks.push(( localize(7814, "Made changes.")));
311
311
  }
312
312
  return blocks.join("\n\n");
313
313
  }
@@ -416,12 +416,12 @@ class Response extends AbstractResponse {
416
416
  if (progress.kind === "clearToPreviousToolInvocation") {
417
417
  if (progress.reason === ChatResponseClearToPreviousToolInvocationReason.CopyrightContentRetry) {
418
418
  this.clearToPreviousToolInvocation(( localize(
419
- 7730,
419
+ 7815,
420
420
  "Response cleared due to possible match to public code, retrying with modified prompt."
421
421
  )));
422
422
  } else if (progress.reason === ChatResponseClearToPreviousToolInvocationReason.FilteredContentRetry) {
423
423
  this.clearToPreviousToolInvocation(( localize(
424
- 7731,
424
+ 7816,
425
425
  "Response cleared due to content safety filters, retrying with modified prompt."
426
426
  )));
427
427
  } else {
@@ -769,17 +769,17 @@ class ChatResponseModel extends Disposable {
769
769
  return title ? (isMarkdownString(title) ? title.value : title) : undefined;
770
770
  }
771
771
  if (state.type === IChatToolInvocation.StateKind.WaitingForPostApproval) {
772
- return localize(7732, "Approve tool result?");
772
+ return localize(7817, "Approve tool result?");
773
773
  }
774
774
  }
775
775
  if (part.kind === "confirmation" && !part.isUsed) {
776
776
  return part.title;
777
777
  }
778
778
  if (part.kind === "questionCarousel" && !part.isUsed) {
779
- return localize(7733, "Answer questions to continue...");
779
+ return localize(7818, "Answer questions to continue...");
780
780
  }
781
781
  if (part.kind === "planReview" && !part.isUsed) {
782
- return localize(7734, "Review the plan to continue...");
782
+ return localize(7819, "Review the plan to continue...");
783
783
  }
784
784
  if (part.kind === "elicitation2" && part.state.read(r) === ElicitationState.Pending) {
785
785
  const title = part.title;
@@ -1215,6 +1215,12 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
1215
1215
  get isImported() {
1216
1216
  return this._isImported;
1217
1217
  }
1218
+ get isDeleted() {
1219
+ return this._isDeleted;
1220
+ }
1221
+ markDeleted() {
1222
+ this._isDeleted = true;
1223
+ }
1218
1224
  get customTitle() {
1219
1225
  return this._customTitle;
1220
1226
  }
@@ -1257,6 +1263,7 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
1257
1263
  this._onDidChangePendingRequests = this._register(( new Emitter()));
1258
1264
  this.onDidChangePendingRequests = this._onDidChangePendingRequests.event;
1259
1265
  this._isImported = false;
1266
+ this._isDeleted = false;
1260
1267
  this._canUseTools = true;
1261
1268
  this.currentEditedFileEvents = ( new ResourceMap());
1262
1269
  this._checkpoint = undefined;
@@ -1680,7 +1687,9 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
1680
1687
  if (request.response.isComplete) {
1681
1688
  throw ( new Error("acceptResponseProgress: Adding progress to a completed response"));
1682
1689
  }
1683
- if (progress.kind === "usedContext" || progress.kind === "reference") {
1690
+ if (progress.kind === "usage") {
1691
+ request.response.setUsage(progress);
1692
+ } else if (progress.kind === "usedContext" || progress.kind === "reference") {
1684
1693
  request.response.applyReference(progress);
1685
1694
  } else if (progress.kind === "codeCitation") {
1686
1695
  request.response.applyCodeCitation(progress);
@@ -1844,7 +1853,7 @@ function getCodeCitationsMessage(citations) {
1844
1853
  return "";
1845
1854
  }
1846
1855
  const licenseTypes = citations.reduce((set, c) => set.add(c.license), ( new Set()));
1847
- const label = licenseTypes.size === 1 ? ( localize(7735, "Similar code found with 1 license type", licenseTypes.size)) : ( localize(7736, "Similar code found with {0} license types", licenseTypes.size));
1856
+ const label = licenseTypes.size === 1 ? ( localize(7820, "Similar code found with 1 license type", licenseTypes.size)) : ( localize(7821, "Similar code found with {0} license types", licenseTypes.size));
1848
1857
  return label;
1849
1858
  }
1850
1859
  function serializeSendOptions(options) {
@@ -69,7 +69,7 @@ class ChatToolInvocation {
69
69
  if (startOptions.startInStreaming) {
70
70
  defaultMessage = toolData.displayName;
71
71
  } else if (startOptions.startInCancelled) {
72
- defaultMessage = startOptions.cancelReasonMessage ?? ( localize(7737, "Tool \"{0}\" was denied", toolData.displayName));
72
+ defaultMessage = startOptions.cancelReasonMessage ?? ( localize(7822, "Tool \"{0}\" was denied", toolData.displayName));
73
73
  }
74
74
  this.invocationMessage = preparedInvocation?.invocationMessage ?? defaultMessage;
75
75
  this.pastTenseMessage = preparedInvocation?.pastTenseMessage;