@codingame/monaco-vscode-api 30.0.0 → 31.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (669) hide show
  1. package/missing-services.js +137 -46
  2. package/package.json +9 -9
  3. package/services.d.ts +10 -1
  4. package/services.js +13 -4
  5. package/vscode/product.json.js +1 -1
  6. package/vscode/src/vs/base/browser/domStylesheets.js +2 -11
  7. package/vscode/src/vs/base/browser/overlayLayoutElement.d.ts +44 -0
  8. package/vscode/src/vs/base/browser/overlayLayoutElement.js +122 -0
  9. package/vscode/src/vs/base/browser/performance.d.ts +5 -0
  10. package/vscode/src/vs/base/browser/performance.js +4 -0
  11. package/vscode/src/vs/base/browser/ui/findinput/findInput.d.ts +1 -0
  12. package/vscode/src/vs/base/browser/ui/findinput/findInput.js +17 -1
  13. package/vscode/src/vs/base/browser/ui/scrollbar/media/scrollbars.css +5 -0
  14. package/vscode/src/vs/base/browser/ui/tree/abstractTree.d.ts +2 -0
  15. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +14 -8
  16. package/vscode/src/vs/base/common/async.d.ts +1 -0
  17. package/vscode/src/vs/base/common/defaultAccount.d.ts +1 -0
  18. package/vscode/src/vs/base/common/event.d.ts +6 -9
  19. package/vscode/src/vs/base/common/event.js +12 -8
  20. package/vscode/src/vs/base/common/htmlContent.d.ts +10 -0
  21. package/vscode/src/vs/base/common/htmlContent.js +8 -1
  22. package/vscode/src/vs/base/common/labels.d.ts +1 -1
  23. package/vscode/src/vs/base/common/labels.js +13 -3
  24. package/vscode/src/vs/base/common/observableInternal/index.d.ts +1 -1
  25. package/vscode/src/vs/base/common/observableInternal/index.js +1 -1
  26. package/vscode/src/vs/base/common/observableInternal/utils/utils.d.ts +6 -0
  27. package/vscode/src/vs/base/common/observableInternal/utils/utils.js +38 -1
  28. package/vscode/src/vs/base/common/performance.d.ts +3 -2
  29. package/vscode/src/vs/base/common/performance.js +32 -34
  30. package/vscode/src/vs/base/common/product.d.ts +31 -0
  31. package/vscode/src/vs/base/common/types.js +1 -1
  32. package/vscode/src/vs/base/common/uri.js +1 -1
  33. package/vscode/src/vs/editor/browser/view.js +2 -1
  34. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/diffEditorItemTemplate.js +30 -2
  35. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/workbenchUIElementFactory.d.ts +5 -0
  36. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +2 -1
  37. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +1 -0
  38. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineSuggestionsView.js +1 -1
  39. package/vscode/src/vs/editor/contrib/snippet/browser/snippetParser.js +1 -1
  40. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.d.ts +1 -0
  41. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +3 -0
  42. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +1 -0
  43. package/vscode/src/vs/platform/accessibility/browser/accessibleView.d.ts +2 -1
  44. package/vscode/src/vs/platform/accessibility/browser/accessibleView.js +1 -0
  45. package/vscode/src/vs/platform/actionWidget/browser/actionList.d.ts +4 -6
  46. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +204 -157
  47. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css +25 -0
  48. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +15 -17
  49. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +3 -3
  50. package/vscode/src/vs/platform/actions/browser/toolbar.js +2 -2
  51. package/vscode/src/vs/platform/actions/common/actions.d.ts +1 -0
  52. package/vscode/src/vs/platform/actions/common/actions.js +3 -0
  53. package/vscode/src/vs/platform/actions/common/menuResetAction.js +1 -1
  54. package/vscode/src/vs/platform/actions/common/menuService.js +2 -2
  55. package/vscode/src/vs/platform/agentHost/browser/nullAgentHostService.d.ts +45 -0
  56. package/vscode/src/vs/platform/agentHost/browser/nullAgentHostService.js +77 -0
  57. package/vscode/src/vs/platform/agentHost/browser/nullSshRemoteAgentHostService.d.ts +18 -0
  58. package/vscode/src/vs/platform/agentHost/browser/nullSshRemoteAgentHostService.js +25 -0
  59. package/vscode/src/vs/platform/agentHost/common/agentHostUri.d.ts +58 -0
  60. package/vscode/src/vs/platform/agentHost/common/agentHostUri.js +73 -0
  61. package/vscode/src/vs/platform/agentHost/common/agentPluginManager.d.ts +11 -0
  62. package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +119 -0
  63. package/vscode/src/vs/platform/agentHost/common/agentService.service.js +6 -0
  64. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.d.ts +122 -0
  65. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.js +104 -0
  66. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.service.d.ts +54 -0
  67. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.service.js +6 -0
  68. package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.d.ts +88 -0
  69. package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.service.d.ts +89 -0
  70. package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.service.js +6 -0
  71. package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +22 -0
  72. package/vscode/src/vs/platform/agentHost/common/state/protocol/messages.d.ts +234 -0
  73. package/vscode/src/vs/platform/agentHost/common/tunnelAgentHost.d.ts +91 -0
  74. package/vscode/src/vs/platform/agentHost/common/tunnelAgentHost.js +5 -0
  75. package/vscode/src/vs/platform/browserView/common/browserView.d.ts +28 -2
  76. package/vscode/src/vs/platform/browserView/common/browserViewTelemetry.d.ts +34 -0
  77. package/vscode/src/vs/platform/browserView/common/browserViewTelemetry.js +7 -0
  78. package/vscode/src/vs/platform/browserView/common/browserViewUri.d.ts +21 -0
  79. package/vscode/src/vs/platform/browserView/common/browserViewUri.js +34 -0
  80. package/vscode/src/vs/platform/browserView/common/cdp/types.d.ts +21 -10
  81. package/vscode/src/vs/platform/browserView/common/playwrightService.d.ts +7 -0
  82. package/vscode/src/vs/platform/browserView/common/playwrightService.service.d.ts +20 -5
  83. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +10 -10
  84. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +1 -4
  85. package/vscode/src/vs/platform/contextkey/common/contextkey.js +11 -22
  86. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +9 -9
  87. package/vscode/src/vs/platform/contextkey/common/scanner.js +5 -5
  88. package/vscode/src/vs/platform/dataChannel/browser/forwardingTelemetryService.d.ts +1 -0
  89. package/vscode/src/vs/platform/dataChannel/browser/forwardingTelemetryService.js +3 -0
  90. package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.d.ts +3 -1
  91. package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.service.d.ts +3 -1
  92. package/vscode/src/vs/platform/dialogs/common/dialogs.js +9 -9
  93. package/vscode/src/vs/platform/dnd/browser/dnd.js +1 -1
  94. package/vscode/src/vs/platform/editor/common/editor.d.ts +11 -3
  95. package/vscode/src/vs/platform/environment/common/argv.d.ts +2 -1
  96. package/vscode/src/vs/platform/environment/common/environment.service.d.ts +1 -0
  97. package/vscode/src/vs/platform/environment/common/environmentService.d.ts +1 -0
  98. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +2 -0
  99. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +14 -14
  100. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +1 -1
  101. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.d.ts +1 -0
  102. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +38 -16
  103. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +21 -21
  104. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +1 -0
  105. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +1 -1
  106. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +2 -2
  107. package/vscode/src/vs/platform/files/common/files.js +6 -6
  108. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
  109. package/vscode/src/vs/platform/hover/browser/hoverWidget.js +1 -1
  110. package/vscode/src/vs/platform/hover/browser/updatableHoverWidget.js +1 -1
  111. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +5 -5
  112. package/vscode/src/vs/platform/keybinding/common/keybindingResolver.js +4 -2
  113. package/vscode/src/vs/platform/languagePacks/common/languagePacks.js +1 -1
  114. package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +3 -3
  115. package/vscode/src/vs/platform/list/browser/listService.js +25 -25
  116. package/vscode/src/vs/platform/log/common/log.js +6 -6
  117. package/vscode/src/vs/platform/markers/common/markerService.js +2 -2
  118. package/vscode/src/vs/platform/markers/common/markers.js +6 -6
  119. package/vscode/src/vs/platform/mcp/common/mcpManagementService.js +1 -1
  120. package/vscode/src/vs/platform/mcp/common/mcpPlatformTypes.d.ts +4 -0
  121. package/vscode/src/vs/platform/meteredConnection/common/meteredConnection.config.contribution.js +5 -5
  122. package/vscode/src/vs/platform/native/common/native.d.ts +11 -1
  123. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.service.d.ts +33 -0
  124. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.service.js +6 -0
  125. package/vscode/src/vs/platform/notification/common/notification.js +3 -3
  126. package/vscode/src/vs/platform/observable/common/platformObservableUtils.js +2 -10
  127. package/vscode/src/vs/platform/product/common/product.js +3 -3
  128. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +10 -10
  129. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +5 -5
  130. package/vscode/src/vs/platform/quickinput/browser/quickInputController.d.ts +4 -1
  131. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +39 -16
  132. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +1 -1
  133. package/vscode/src/vs/platform/quickinput/browser/quickInputService.d.ts +4 -1
  134. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +8 -0
  135. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
  136. package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +2 -2
  137. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +1 -1
  138. package/vscode/src/vs/platform/quickinput/browser/tree/quickTree.js +1 -1
  139. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +1 -0
  140. package/vscode/src/vs/platform/quickinput/common/quickInput.service.d.ts +6 -1
  141. package/vscode/src/vs/platform/request/common/request.js +20 -20
  142. package/vscode/src/vs/platform/sandbox/common/settings.d.ts +11 -0
  143. package/vscode/src/vs/platform/sandbox/common/settings.js +14 -0
  144. package/vscode/src/vs/{workbench/contrib/terminalContrib/chatAgentTools → platform/sandbox}/common/terminalSandboxService.service.d.ts +6 -6
  145. package/vscode/src/vs/{workbench/contrib/terminalContrib/chatAgentTools → platform/sandbox}/common/terminalSandboxService.service.js +1 -1
  146. package/vscode/src/vs/platform/telemetry/common/errorTelemetry.d.ts +82 -0
  147. package/vscode/src/vs/platform/telemetry/common/errorTelemetry.js +108 -0
  148. package/vscode/src/vs/platform/telemetry/common/telemetry.service.d.ts +5 -0
  149. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.d.ts +1 -0
  150. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +2 -1
  151. package/vscode/src/vs/platform/terminal/common/terminal.d.ts +6 -0
  152. package/vscode/src/vs/platform/terminal/common/terminal.js +5 -0
  153. package/vscode/src/vs/platform/terminal/common/terminalPlatformConfiguration.js +31 -31
  154. package/vscode/src/vs/platform/terminal/common/terminalProfiles.js +1 -1
  155. package/vscode/src/vs/platform/theme/browser/defaultStyles.js +1 -1
  156. package/vscode/src/vs/platform/theme/common/colorUtils.js +2 -2
  157. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +18 -18
  158. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +8 -8
  159. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +97 -97
  160. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +48 -48
  161. package/vscode/src/vs/platform/theme/common/colors/listColors.js +36 -36
  162. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +11 -11
  163. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +11 -11
  164. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +16 -16
  165. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +9 -9
  166. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +3 -3
  167. package/vscode/src/vs/platform/theme/common/iconRegistry.js +6 -6
  168. package/vscode/src/vs/platform/theme/common/sizes/baseSizes.js +11 -11
  169. package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +42 -42
  170. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +20 -20
  171. package/vscode/src/vs/platform/update/common/update.d.ts +10 -3
  172. package/vscode/src/vs/platform/update/common/update.js +3 -1
  173. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +1 -1
  174. package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +2 -2
  175. package/vscode/src/vs/platform/userDataSync/common/extensionsSync.d.ts +3 -1
  176. package/vscode/src/vs/platform/userDataSync/common/extensionsSync.js +14 -8
  177. package/vscode/src/vs/platform/userDataSync/common/keybindingsSync.js +2 -2
  178. package/vscode/src/vs/platform/userDataSync/common/settingsSync.js +1 -1
  179. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +5 -5
  180. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +1 -1
  181. package/vscode/src/vs/platform/workspace/common/workspace.js +1 -1
  182. package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +12 -12
  183. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +39 -11
  184. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +67 -14
  185. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +5 -5
  186. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.d.ts +36 -13
  187. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +164 -26
  188. package/vscode/src/vs/workbench/api/common/extHostChatDebug.d.ts +4 -0
  189. package/vscode/src/vs/workbench/api/common/extHostChatDebug.js +7 -0
  190. package/vscode/src/vs/workbench/api/common/extHostChatSessions.d.ts +22 -5
  191. package/vscode/src/vs/workbench/api/common/extHostChatSessions.js +278 -42
  192. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +1 -1
  193. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +2 -2
  194. package/vscode/src/vs/workbench/api/common/extHostGitExtensionService.d.ts +2 -2
  195. package/vscode/src/vs/workbench/api/common/extHostGitExtensionService.js +18 -35
  196. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +2 -2
  197. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +4 -2
  198. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +1 -1
  199. package/vscode/src/vs/workbench/api/common/extHostLogService.js +1 -1
  200. package/vscode/src/vs/workbench/api/common/extHostMcp.d.ts +2 -2
  201. package/vscode/src/vs/workbench/api/common/extHostMcp.js +6 -4
  202. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +2 -2
  203. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +2 -2
  204. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -1
  205. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +1 -1
  206. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +2 -2
  207. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.d.ts +3 -2
  208. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +16 -3
  209. package/vscode/src/vs/workbench/api/common/extHostTypes.d.ts +2 -8
  210. package/vscode/src/vs/workbench/api/common/extHostTypes.js +6 -11
  211. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +1 -1
  212. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +11 -11
  213. package/vscode/src/vs/workbench/browser/actions/developerActions.js +58 -32
  214. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +153 -148
  215. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +6 -6
  216. package/vscode/src/vs/workbench/browser/actions/windowActions.js +34 -34
  217. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +39 -39
  218. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +4 -4
  219. package/vscode/src/vs/workbench/browser/editor.js +2 -2
  220. package/vscode/src/vs/workbench/browser/labels.js +4 -4
  221. package/vscode/src/vs/workbench/browser/media/style.css +1 -0
  222. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +33 -31
  223. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +26 -26
  224. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +5 -5
  225. package/vscode/src/vs/workbench/browser/parts/compositeBar.js +1 -1
  226. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +9 -9
  227. package/vscode/src/vs/workbench/browser/parts/compositePart.js +3 -3
  228. package/vscode/src/vs/workbench/browser/parts/dialogs/dialog.js +1 -1
  229. package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +3 -3
  230. package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +1 -1
  231. package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +3 -3
  232. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +37 -37
  233. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +12 -12
  234. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +1 -1
  235. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +7 -7
  236. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +135 -135
  237. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.d.ts +1 -0
  238. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +47 -26
  239. package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +1 -1
  240. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +7 -7
  241. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +13 -13
  242. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +2 -2
  243. package/vscode/src/vs/workbench/browser/parts/editor/editorParts.d.ts +4 -0
  244. package/vscode/src/vs/workbench/browser/parts/editor/editorParts.js +21 -4
  245. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +10 -10
  246. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +11 -12
  247. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +66 -66
  248. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +2 -2
  249. package/vscode/src/vs/workbench/browser/parts/editor/media/modalEditorPart.css +14 -5
  250. package/vscode/src/vs/workbench/browser/parts/editor/modalEditorPart.d.ts +12 -0
  251. package/vscode/src/vs/workbench/browser/parts/editor/modalEditorPart.js +117 -13
  252. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.d.ts +1 -3
  253. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +2 -23
  254. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +1 -1
  255. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +1 -1
  256. package/vscode/src/vs/workbench/browser/web.api.d.ts +69 -0
  257. package/vscode/src/vs/workbench/common/contextkeys.d.ts +2 -0
  258. package/vscode/src/vs/workbench/common/contextkeys.js +41 -39
  259. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +1 -1
  260. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +1 -1
  261. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +1 -1
  262. package/vscode/src/vs/workbench/common/editor.js +4 -4
  263. package/vscode/src/vs/workbench/common/theme.js +161 -161
  264. package/vscode/src/vs/workbench/common/views.d.ts +2 -2
  265. package/vscode/src/vs/workbench/common/views.js +4 -4
  266. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.d.ts +2 -1
  267. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +163 -155
  268. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +12 -12
  269. package/vscode/src/vs/workbench/contrib/browserView/common/browserEditorInput.d.ts +61 -0
  270. package/vscode/src/vs/workbench/contrib/browserView/common/browserEditorInput.js +267 -0
  271. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.d.ts +8 -5
  272. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +68 -76
  273. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.service.d.ts +8 -0
  274. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.service.js +6 -0
  275. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +14 -14
  276. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.js +1 -1
  277. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +7 -1
  278. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +12 -8
  279. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatScreenshotContext.js +1 -1
  280. package/vscode/src/vs/workbench/contrib/chat/browser/chat.d.ts +7 -1
  281. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +7 -7
  282. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionDescription.js +2 -2
  283. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +1 -3
  284. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +88 -66
  285. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.d.ts +65 -0
  286. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +66 -0
  287. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.d.ts +7 -0
  288. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.js +38 -17
  289. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.d.ts +6 -2
  290. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.js +92 -85
  291. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.d.ts +8 -0
  292. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.service.d.ts +5 -1
  293. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.d.ts +7 -3
  294. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.js +18 -4
  295. package/vscode/src/vs/workbench/contrib/chat/common/chat.js +6 -0
  296. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.d.ts +32 -1
  297. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.service.d.ts +25 -6
  298. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.d.ts +8 -0
  299. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.js +17 -5
  300. package/vscode/src/vs/workbench/contrib/chat/common/chatPerf.js +29 -13
  301. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.d.ts +98 -8
  302. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.js +11 -4
  303. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.service.d.ts +6 -5
  304. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.d.ts +4 -10
  305. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.js +11 -4
  306. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.d.ts +6 -3
  307. package/vscode/src/vs/workbench/contrib/chat/common/constants.d.ts +16 -5
  308. package/vscode/src/vs/workbench/contrib/chat/common/constants.js +16 -14
  309. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.d.ts +78 -18
  310. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.js +47 -84
  311. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.js +2 -2
  312. package/vscode/src/vs/workbench/contrib/chat/common/languageModelStats.js +3 -3
  313. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.d.ts +1 -0
  314. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +49 -57
  315. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.d.ts +54 -15
  316. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.js +99 -25
  317. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatPlanReviewData.d.ts +26 -0
  318. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatPlanReviewData.js +44 -0
  319. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatQuestionCarouselData.d.ts +7 -1
  320. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatQuestionCarouselData.js +4 -2
  321. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.d.ts +12 -2
  322. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js +16 -1
  323. package/vscode/src/vs/workbench/contrib/chat/common/model/chatViewModel.d.ts +31 -5
  324. package/vscode/src/vs/workbench/contrib/chat/common/model/chatViewModel.js +26 -6
  325. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.d.ts +12 -0
  326. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.js +6 -0
  327. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.service.d.ts +2 -1
  328. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginGitService.service.d.ts +19 -0
  329. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginGitService.service.js +6 -0
  330. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.d.ts +16 -23
  331. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +150 -89
  332. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookSchema.d.ts +9 -18
  333. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookSchema.js +22 -21
  334. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookTypes.js +20 -20
  335. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptFileAttributes.js +77 -77
  336. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.d.ts +6 -0
  337. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.js +9 -2
  338. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.js +1 -2
  339. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +167 -15
  340. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.js +19 -7
  341. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service.d.ts +18 -20
  342. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.d.ts +2 -0
  343. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.js +1 -1
  344. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.d.ts +10 -0
  345. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.js +61 -8
  346. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.js +12 -11
  347. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.d.ts +25 -0
  348. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.js +176 -0
  349. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.d.ts +18 -6
  350. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.js +140 -59
  351. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.d.ts +11 -0
  352. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.js +90 -0
  353. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.d.ts +4 -1
  354. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.js +34 -7
  355. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.js +12 -2
  356. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.d.ts +2 -0
  357. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +22 -22
  358. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.d.ts +9 -0
  359. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.js +4 -10
  360. package/vscode/src/vs/workbench/contrib/chat/common/tools/terminalToolIds.d.ts +20 -0
  361. package/vscode/src/vs/workbench/contrib/chat/common/tools/terminalToolIds.js +17 -0
  362. package/vscode/src/vs/workbench/contrib/chat/common/widget/input/modelPickerWidget.js +1 -1
  363. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +11 -11
  364. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +4 -4
  365. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +5 -5
  366. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -3
  367. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +10 -10
  368. package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js +2 -2
  369. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
  370. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +6 -6
  371. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +4 -4
  372. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
  373. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +3 -3
  374. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
  375. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +133 -15
  376. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +5 -5
  377. package/vscode/src/vs/workbench/contrib/codeEditor/common/languageConfigurationExtensionPoint.js +65 -65
  378. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +7 -7
  379. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +7 -7
  380. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +2 -2
  381. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +3 -3
  382. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +3 -3
  383. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +3 -3
  384. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +3 -3
  385. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +3 -3
  386. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +12 -12
  387. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +7 -7
  388. package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +1 -1
  389. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.d.ts +4 -1
  390. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +17 -14
  391. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +14 -14
  392. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +16 -16
  393. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +7 -7
  394. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +12 -12
  395. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +3 -3
  396. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +1 -1
  397. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +36 -31
  398. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +17 -14
  399. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +75 -75
  400. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +2 -2
  401. package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +6 -6
  402. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +12 -12
  403. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +38 -38
  404. package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +2 -2
  405. package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +3 -3
  406. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +57 -57
  407. package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +3 -3
  408. package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +4 -4
  409. package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +2 -2
  410. package/vscode/src/vs/workbench/contrib/debug/browser/media/repl.css +2 -0
  411. package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +18 -18
  412. package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +5 -5
  413. package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +9 -9
  414. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +1 -1
  415. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +65 -65
  416. package/vscode/src/vs/workbench/contrib/debug/common/debug.service.d.ts +11 -5
  417. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.d.ts +1 -1
  418. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +16 -8
  419. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  420. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +2 -2
  421. package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +1 -1
  422. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +1 -1
  423. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/commands.js +2 -2
  424. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/configurationSchema.js +4 -4
  425. package/vscode/src/vs/workbench/contrib/extensions/browser/abstractRuntimeExtensionsEditor.js +18 -18
  426. package/vscode/src/vs/workbench/contrib/extensions/browser/configBasedRecommendations.js +1 -1
  427. package/vscode/src/vs/workbench/contrib/extensions/browser/exeBasedRecommendations.js +1 -1
  428. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEditor.js +41 -41
  429. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEnablementWorkspaceTrustTransitionParticipant.js +1 -1
  430. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionFeaturesTab.js +15 -15
  431. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.js +14 -14
  432. package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.contribution.js +151 -150
  433. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.d.ts +10 -5
  434. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +460 -189
  435. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActivationProgress.js +1 -1
  436. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsCompletionItemsProvider.js +1 -1
  437. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsDependencyChecker.js +5 -5
  438. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +25 -25
  439. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsQuickAccess.js +4 -4
  440. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewer.js +7 -7
  441. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewlet.js +47 -47
  442. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViews.js +5 -5
  443. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWidgets.js +32 -32
  444. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.d.ts +2 -1
  445. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.js +120 -102
  446. package/vscode/src/vs/workbench/contrib/extensions/browser/fileBasedRecommendations.js +2 -2
  447. package/vscode/src/vs/workbench/contrib/extensions/browser/webRecommendations.js +1 -1
  448. package/vscode/src/vs/workbench/contrib/extensions/browser/workspaceRecommendations.js +2 -2
  449. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +1 -1
  450. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +5 -5
  451. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +2 -2
  452. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +3 -3
  453. package/vscode/src/vs/workbench/contrib/extensions/common/runtimeExtensionsInput.js +2 -2
  454. package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +3 -3
  455. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +4 -4
  456. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +3 -3
  457. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +1 -1
  458. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +8 -8
  459. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +18 -18
  460. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +14 -14
  461. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +39 -39
  462. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +84 -84
  463. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +4 -4
  464. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +2 -2
  465. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +6 -6
  466. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +27 -27
  467. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +56 -53
  468. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +2 -2
  469. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +1 -1
  470. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +4 -4
  471. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +7 -7
  472. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +17 -17
  473. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +7 -7
  474. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +4 -4
  475. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +1 -1
  476. package/vscode/src/vs/workbench/contrib/files/common/files.js +19 -16
  477. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
  478. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +20 -20
  479. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +4 -4
  480. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  481. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +7 -4
  482. package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +2 -2
  483. package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +5 -5
  484. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommandsAddConfiguration.js +66 -66
  485. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerActions.js +40 -40
  486. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerEditor.js +34 -34
  487. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerEditorInput.js +2 -2
  488. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerIcons.js +5 -5
  489. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerWidgets.js +5 -5
  490. package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfiguration.js +53 -40
  491. package/vscode/src/vs/workbench/contrib/mcp/common/mcpGatewayService.service.d.ts +5 -1
  492. package/vscode/src/vs/workbench/contrib/mcp/common/mcpServer.js +16 -16
  493. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.d.ts +9 -0
  494. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +5 -4
  495. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.service.d.ts +1 -1
  496. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +4 -4
  497. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +23 -23
  498. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +2 -2
  499. package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +8 -8
  500. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnection.contribution.js +8 -8
  501. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnectionStatus.js +4 -4
  502. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +1 -1
  503. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditor.js +5 -2
  504. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +3 -3
  505. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +1 -1
  506. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.d.ts +1 -0
  507. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +22 -17
  508. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +6 -6
  509. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +4 -4
  510. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
  511. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebook.css +63 -10
  512. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +3 -3
  513. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +7 -7
  514. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.d.ts +4 -4
  515. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +52 -75
  516. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +29 -29
  517. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +5 -5
  518. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +7 -7
  519. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +2 -2
  520. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +4 -4
  521. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +1 -1
  522. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.js +3 -3
  523. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +1 -1
  524. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +2 -2
  525. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +4 -4
  526. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +1 -1
  527. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +14 -14
  528. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +2 -2
  529. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +1 -1
  530. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +2 -2
  531. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +3 -3
  532. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +13 -13
  533. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +10 -10
  534. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +60 -60
  535. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +3 -3
  536. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +21 -21
  537. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +15 -15
  538. package/vscode/src/vs/workbench/contrib/remote/browser/remoteIcons.js +17 -17
  539. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +59 -59
  540. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistory.js +11 -11
  541. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.js +6 -6
  542. package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.js +14 -14
  543. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +12 -9
  544. package/vscode/src/vs/workbench/contrib/search/browser/patternInputWidget.js +3 -3
  545. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +1 -1
  546. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +17 -14
  547. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsTopBar.js +9 -9
  548. package/vscode/src/vs/workbench/contrib/search/browser/searchChatContext.js +5 -5
  549. package/vscode/src/vs/workbench/contrib/search/browser/searchFindInput.js +1 -1
  550. package/vscode/src/vs/workbench/contrib/search/browser/searchIcons.js +20 -20
  551. package/vscode/src/vs/workbench/contrib/search/browser/searchMessage.js +2 -2
  552. package/vscode/src/vs/workbench/contrib/search/browser/searchResultsView.js +14 -14
  553. package/vscode/src/vs/workbench/contrib/search/browser/searchView.js +55 -55
  554. package/vscode/src/vs/workbench/contrib/search/browser/searchWidget.js +11 -11
  555. package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +2 -2
  556. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorInput.js +4 -4
  557. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorSerialization.js +5 -5
  558. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
  559. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +3 -3
  560. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +9 -9
  561. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +29 -29
  562. package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +1 -1
  563. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +9 -5
  564. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.d.ts +1 -1
  565. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +6 -6
  566. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.d.ts +2 -2
  567. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +4 -4
  568. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostTerminalService.service.d.ts +44 -0
  569. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostTerminalService.service.js +6 -0
  570. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +27 -1
  571. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.d.ts +16 -2
  572. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +3 -3
  573. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcons.js +13 -13
  574. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +40 -40
  575. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +15 -15
  576. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +2 -0
  577. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +12 -10
  578. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.service.d.ts +8 -0
  579. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +23 -23
  580. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +17 -17
  581. package/vscode/src/vs/workbench/contrib/terminal/common/terminalEnvironment.d.ts +38 -0
  582. package/vscode/src/vs/workbench/contrib/terminal/common/terminalEnvironment.js +321 -0
  583. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +26 -26
  584. package/vscode/src/vs/workbench/contrib/terminal/terminalContribExports.d.ts +6 -11
  585. package/vscode/src/vs/workbench/contrib/terminal/terminalContribExports.js +6 -11
  586. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/common/terminalAccessibilityConfiguration.js +2 -2
  587. package/vscode/src/vs/workbench/contrib/terminalContrib/autoReplies/common/terminalAutoRepliesConfiguration.js +2 -2
  588. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChat.d.ts +78 -0
  589. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChat.js +83 -0
  590. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.d.ts +7 -12
  591. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.js +137 -151
  592. package/vscode/src/vs/workbench/contrib/terminalContrib/commandGuide/common/terminalCommandGuideConfiguration.js +1 -1
  593. package/vscode/src/vs/workbench/contrib/terminalContrib/history/common/terminal.history.js +1 -1
  594. package/vscode/src/vs/workbench/contrib/terminalContrib/inlineHint/common/terminalInitialHintConfiguration.d.ts +2 -1
  595. package/vscode/src/vs/workbench/contrib/terminalContrib/inlineHint/common/terminalInitialHintConfiguration.js +16 -1
  596. package/vscode/src/vs/workbench/contrib/terminalContrib/notification/common/terminalNotificationConfiguration.js +1 -1
  597. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/common/terminalStickyScrollConfiguration.js +3 -3
  598. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.js +30 -30
  599. package/vscode/src/vs/workbench/contrib/terminalContrib/typeAhead/common/terminalTypeAheadConfiguration.js +5 -5
  600. package/vscode/src/vs/workbench/contrib/terminalContrib/zoom/common/terminal.zoom.js +2 -2
  601. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +11 -11
  602. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +5 -3
  603. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +3 -3
  604. package/vscode/src/vs/workbench/contrib/testing/common/testingContinuousRunService.service.d.ts +4 -4
  605. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +6 -6
  606. package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +3 -3
  607. package/vscode/src/vs/workbench/contrib/webview/browser/webviewFindAccessibilityHelp.js +30 -30
  608. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.d.ts +1 -0
  609. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +6 -9
  610. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingService.service.d.ts +13 -0
  611. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingService.service.js +6 -0
  612. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingTypes.d.ts +52 -0
  613. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingTypes.js +74 -0
  614. package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +2 -2
  615. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.d.ts +3 -1
  616. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.js +72 -48
  617. package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.service.d.ts +17 -0
  618. package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.service.js +6 -0
  619. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.d.ts +1 -1
  620. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +13 -13
  621. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +1 -1
  622. package/vscode/src/vs/workbench/services/authentication/common/authentication.service.d.ts +1 -1
  623. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +5 -5
  624. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.d.ts +22 -4
  625. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.js +61 -19
  626. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.service.d.ts +1 -0
  627. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +16 -16
  628. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +1 -1
  629. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +16 -16
  630. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +16 -0
  631. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +1 -1
  632. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionsIcons.js +3 -3
  633. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +6 -6
  634. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +10 -10
  635. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +88 -88
  636. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.d.ts +2 -1
  637. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +18 -6
  638. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service.d.ts +1 -0
  639. package/vscode/src/vs/workbench/services/host/browser/host.service.d.ts +6 -0
  640. package/vscode/src/vs/workbench/services/language/common/languageService.js +24 -24
  641. package/vscode/src/vs/workbench/services/log/common/logConstants.js +1 -1
  642. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +2 -2
  643. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +7 -7
  644. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +4 -4
  645. package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +2 -2
  646. package/vscode/src/vs/workbench/services/preferences/common/preferencesValidation.js +30 -30
  647. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +8 -8
  648. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +6 -6
  649. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +1 -1
  650. package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +10 -10
  651. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +3 -3
  652. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +18 -18
  653. package/vscode/src/vs/workbench/services/themes/common/colorThemeData.js +8 -8
  654. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
  655. package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +24 -24
  656. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +3 -3
  657. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +1 -1
  658. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +13 -13
  659. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +16 -16
  660. package/vscode-dts/vscode.proposed.authIssuers.d.ts +12 -0
  661. package/vscode-dts/vscode.proposed.chatDebug.d.ts +11 -0
  662. package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +8 -0
  663. package/vscode-dts/vscode.proposed.chatPromptFiles.d.ts +316 -8
  664. package/vscode-dts/vscode.proposed.chatSessionCustomizationProvider.d.ts +6 -4
  665. package/vscode-dts/vscode.proposed.chatSessionsProvider.d.ts +92 -44
  666. package/vscode-dts/vscode.proposed.mcpServerDefinitions.d.ts +4 -1
  667. package/vscode-dts/vscode.proposed.toolInvocationApproveCombination.d.ts +13 -4
  668. package/vscode/src/vs/workbench/services/browserElements/browser/browserElementsService.service.d.ts +0 -12
  669. package/vscode/src/vs/workbench/services/browserElements/browser/browserElementsService.service.js +0 -6
@@ -140,6 +140,7 @@ export interface IChatDebugSourceFolderEntry {
140
140
  export interface IChatDebugEventFileListContent {
141
141
  readonly kind: "fileList";
142
142
  readonly discoveryType: string;
143
+ readonly durationInMillis: number;
143
144
  readonly files: readonly IChatDebugFileEntry[];
144
145
  readonly sourceFolders?: readonly IChatDebugSourceFolderEntry[];
145
146
  }
@@ -200,10 +201,40 @@ export interface IChatDebugEventHookContent {
200
201
  readonly exitCode?: number;
201
202
  readonly errorMessage?: string;
202
203
  }
204
+ /**
205
+ * A single entry in the customization resolution log.
206
+ */
207
+ export interface IChatDebugCustomizationLogEntry {
208
+ readonly category: "applying" | "skipped" | "referenced" | "skill" | "custom-agent" | "hook";
209
+ readonly name: string;
210
+ readonly uri?: URI;
211
+ readonly reason?: string;
212
+ }
213
+ /**
214
+ * Structured customization summary content for a resolved debug event.
215
+ * Contains per-file resolution logs showing how applyTo patterns, agent
216
+ * instructions, and referenced files were resolved by the instructions
217
+ * context computer.
218
+ */
219
+ export interface IChatDebugEventCustomizationSummaryContent {
220
+ readonly kind: "customizationSummary";
221
+ /** Per-file resolution detail entries. */
222
+ readonly resolutionLogs: readonly IChatDebugCustomizationLogEntry[];
223
+ /** Total wall-clock time of the collect() call in milliseconds. */
224
+ readonly durationInMillis: number;
225
+ /** Counts by type for the summary header. */
226
+ readonly counts: {
227
+ readonly instructions: number;
228
+ readonly skills: number;
229
+ readonly agents: number;
230
+ readonly hooks: number;
231
+ readonly skipped: number;
232
+ };
233
+ }
203
234
  /**
204
235
  * Union of all resolved event content types.
205
236
  */
206
- export type IChatDebugResolvedEventContent = IChatDebugEventTextContent | IChatDebugEventFileListContent | IChatDebugEventMessageContent | IChatDebugEventToolCallContent | IChatDebugEventModelTurnContent | IChatDebugEventHookContent;
237
+ export type IChatDebugResolvedEventContent = IChatDebugEventTextContent | IChatDebugEventFileListContent | IChatDebugEventMessageContent | IChatDebugEventToolCallContent | IChatDebugEventModelTurnContent | IChatDebugEventHookContent | IChatDebugEventCustomizationSummaryContent;
207
238
  /**
208
239
  * Provider interface for debug events.
209
240
  */
@@ -1,3 +1,4 @@
1
+ import { CancellationToken } from "../../../../base/common/cancellation.js";
1
2
  import { Event } from "../../../../base/common/event.js";
2
3
  import { IDisposable } from "../../../../base/common/lifecycle.js";
3
4
  import { URI } from "../../../../base/common/uri.js";
@@ -100,15 +101,33 @@ export interface IChatDebugService extends IDisposable {
100
101
  */
101
102
  getImportedSessionTitle(sessionResource: URI): string | undefined;
102
103
  /**
103
- * Fired when debug data is attached to a session.
104
+ * Fired when available session resources change (e.g. historical sessions discovered from disk).
104
105
  */
105
- readonly onDidAttachDebugData: Event<URI>;
106
+ readonly onDidChangeAvailableSessionResources: Event<void>;
106
107
  /**
107
- * Mark a session as having debug data attached.
108
+ * Store session resources that have debug log data available on disk.
109
+ * Called by the main thread after the extension reports historical sessions.
108
110
  */
109
- markDebugDataAttached(sessionResource: URI): void;
111
+ addAvailableSessionResources(resources: readonly {
112
+ uri: URI;
113
+ title?: string;
114
+ }[]): void;
110
115
  /**
111
- * Check whether a session has had debug data attached.
116
+ * Get all session resources that have debug log data available,
117
+ * including historical sessions persisted on disk by the provider.
118
+ * Triggers a lazy fetch from the registered fetcher on first call.
112
119
  */
113
- hasAttachedDebugData(sessionResource: URI): boolean;
120
+ getAvailableSessionResources(): readonly URI[];
121
+ /**
122
+ * Register a callback that fetches available session resources from a provider.
123
+ * Called lazily when `getAvailableSessionResources()` is first invoked.
124
+ */
125
+ registerAvailableSessionsFetcher(fetcher: (token: CancellationToken) => Promise<{
126
+ uri: URI;
127
+ title?: string;
128
+ }[]>): void;
129
+ /**
130
+ * Get the stored title for a historical session discovered from disk.
131
+ */
132
+ getHistoricalSessionTitle(sessionResource: URI): string | undefined;
114
133
  }
@@ -3,6 +3,7 @@ import { IObservable } from "../../../../base/common/observable.js";
3
3
  import { URI } from "../../../../base/common/uri.js";
4
4
  import { IOffsetRange } from "../../../../editor/common/core/ranges/offsetRange.js";
5
5
  import { IConfigurationService } from "../../../../platform/configuration/common/configuration.service.js";
6
+ import { ContextKeyExpression } from "../../../../platform/contextkey/common/contextkey.js";
6
7
  import { IContextKeyService } from "../../../../platform/contextkey/common/contextkey.service.js";
7
8
  import { ILogService } from "../../../../platform/log/common/log.service.js";
8
9
  import { IStorageService } from "../../../../platform/storage/common/storage.service.js";
@@ -59,6 +60,7 @@ export interface IChatModeData {
59
60
  readonly target?: Target;
60
61
  readonly visibility?: ICustomAgentVisibility;
61
62
  readonly agents?: readonly string[];
63
+ readonly sessionTypes?: readonly string[];
62
64
  readonly infer?: boolean;
63
65
  }
64
66
  export interface IChatMode {
@@ -79,6 +81,8 @@ export interface IChatMode {
79
81
  readonly target: IObservable<Target>;
80
82
  readonly visibility?: IObservable<ICustomAgentVisibility | undefined>;
81
83
  readonly agents?: IObservable<readonly string[] | undefined>;
84
+ readonly sessionTypes?: readonly string[];
85
+ readonly when?: ContextKeyExpression;
82
86
  }
83
87
  export interface IVariableReference {
84
88
  readonly name: string;
@@ -102,6 +106,8 @@ export declare class CustomChatMode implements IChatMode {
102
106
  private readonly _visibilityObservable;
103
107
  private readonly _agentsObservable;
104
108
  private _source;
109
+ private _sessionTypes;
110
+ private _when;
105
111
  readonly id: string;
106
112
  get name(): IObservable<string>;
107
113
  get description(): IObservable<string | undefined>;
@@ -118,6 +124,8 @@ export declare class CustomChatMode implements IChatMode {
118
124
  get target(): IObservable<Target>;
119
125
  get visibility(): IObservable<ICustomAgentVisibility | undefined>;
120
126
  get agents(): IObservable<readonly string[] | undefined>;
127
+ get sessionTypes(): readonly string[] | undefined;
128
+ get when(): ContextKeyExpression | undefined;
121
129
  readonly kind = ChatModeKind.Agent;
122
130
  constructor(customChatMode: ICustomAgent);
123
131
  /**
@@ -115,6 +115,7 @@ let ChatModeService = class ChatModeService extends Disposable {
115
115
  target: cachedMode.target ?? Target.Undefined,
116
116
  visibility,
117
117
  agents: cachedMode.agents,
118
+ sessionTypes: cachedMode.sessionTypes,
118
119
  source: reviveChatModeSource(cachedMode.source) ?? {
119
120
  storage: PromptsStorage.local
120
121
  }
@@ -210,7 +211,7 @@ function isCachedChatModeData(data) {
210
211
  return false;
211
212
  }
212
213
  const mode = data;
213
- return typeof mode.id === "string" && typeof mode.name === "string" && typeof mode.kind === "string" && (mode.description === undefined || typeof mode.description === "string") && (mode.customTools === undefined || Array.isArray(mode.customTools)) && (mode.modeInstructions === undefined || (typeof mode.modeInstructions === "object" && mode.modeInstructions !== null)) && (mode.model === undefined || typeof mode.model === "string" || Array.isArray(mode.model)) && (mode.argumentHint === undefined || typeof mode.argumentHint === "string") && (mode.handOffs === undefined || Array.isArray(mode.handOffs)) && (mode.uri === undefined || (typeof mode.uri === "object" && mode.uri !== null)) && (mode.source === undefined || isChatModeSourceData(mode.source)) && (mode.target === undefined || isTarget(mode.target)) && (mode.visibility === undefined || isCustomAgentVisibility(mode.visibility)) && (mode.agents === undefined || Array.isArray(mode.agents));
214
+ return typeof mode.id === "string" && typeof mode.name === "string" && typeof mode.kind === "string" && (mode.description === undefined || typeof mode.description === "string") && (mode.customTools === undefined || Array.isArray(mode.customTools)) && (mode.modeInstructions === undefined || (typeof mode.modeInstructions === "object" && mode.modeInstructions !== null)) && (mode.model === undefined || typeof mode.model === "string" || Array.isArray(mode.model)) && (mode.argumentHint === undefined || typeof mode.argumentHint === "string") && (mode.handOffs === undefined || Array.isArray(mode.handOffs)) && (mode.uri === undefined || (typeof mode.uri === "object" && mode.uri !== null)) && (mode.source === undefined || isChatModeSourceData(mode.source)) && (mode.target === undefined || isTarget(mode.target)) && (mode.visibility === undefined || isCustomAgentVisibility(mode.visibility)) && (mode.agents === undefined || Array.isArray(mode.agents)) && (mode.sessionTypes === undefined || Array.isArray(mode.sessionTypes));
214
215
  }
215
216
  class CustomChatMode {
216
217
  get name() {
@@ -258,6 +259,12 @@ class CustomChatMode {
258
259
  get agents() {
259
260
  return this._agentsObservable;
260
261
  }
262
+ get sessionTypes() {
263
+ return this._sessionTypes;
264
+ }
265
+ get when() {
266
+ return this._when;
267
+ }
261
268
  constructor(customChatMode) {
262
269
  this.kind = ChatModeKind.Agent;
263
270
  this.id = ( customChatMode.uri.toString());
@@ -273,6 +280,8 @@ class CustomChatMode {
273
280
  this._modeInstructions = observableValue("_modeInstructions", customChatMode.agentInstructions);
274
281
  this._uriObservable = observableValue("uri", customChatMode.uri);
275
282
  this._source = customChatMode.source;
283
+ this._sessionTypes = customChatMode.sessionTypes;
284
+ this._when = customChatMode.when;
276
285
  }
277
286
  updateData(newData) {
278
287
  transaction(tx => {
@@ -288,6 +297,8 @@ class CustomChatMode {
288
297
  this._modeInstructions.set(newData.agentInstructions, tx);
289
298
  this._uriObservable.set(newData.uri, tx);
290
299
  this._source = newData.source;
300
+ this._sessionTypes = newData.sessionTypes;
301
+ this._when = newData.when;
291
302
  });
292
303
  }
293
304
  toJSON() {
@@ -305,7 +316,8 @@ class CustomChatMode {
305
316
  source: serializeChatModeSource(this._source),
306
317
  target: this.target.get(),
307
318
  visibility: this.visibility.get(),
308
- agents: this.agents.get()
319
+ agents: this.agents.get(),
320
+ sessionTypes: this.sessionTypes
309
321
  };
310
322
  }
311
323
  }
@@ -396,9 +408,9 @@ class BuiltinChatMode {
396
408
  }
397
409
  var ChatMode;
398
410
  (function(ChatMode) {
399
- ChatMode.Ask = ( new BuiltinChatMode(ChatModeKind.Ask, "Ask", ( localize(7254, "Explore and understand your code")), Codicon.question));
400
- ChatMode.Edit = ( new BuiltinChatMode(ChatModeKind.Edit, "Edit", ( localize(7255, "Edit or refactor selected code")), Codicon.edit));
401
- ChatMode.Agent = ( new BuiltinChatMode(ChatModeKind.Agent, "Agent", ( localize(7256, "Describe what to build")), Codicon.agent));
411
+ ChatMode.Ask = ( new BuiltinChatMode(ChatModeKind.Ask, "Ask", ( localize(7376, "Explore and understand your code")), Codicon.question));
412
+ ChatMode.Edit = ( new BuiltinChatMode(ChatModeKind.Edit, "Edit", ( localize(7377, "Edit or refactor selected code")), Codicon.edit));
413
+ ChatMode.Agent = ( new BuiltinChatMode(ChatModeKind.Agent, "Agent", ( localize(7378, "Describe what to build")), Codicon.agent));
402
414
  })(ChatMode || (ChatMode = {}));
403
415
  function isBuiltinChatMode(mode) {
404
416
  return mode.id === ChatMode.Ask.id || mode.id === ChatMode.Edit.id || mode.id === ChatMode.Agent.id;
@@ -2,26 +2,42 @@
2
2
  import { mark, clearMarks } from '../../../../base/common/performance.js';
3
3
  import { chatSessionResourceToId } from './model/chatUri.js';
4
4
 
5
- const chatPerfPrefix = 'code/chat/';
5
+ const chatPerfPrefix = "code/chat/";
6
+ const chatMarksBySession = ( new Map());
6
7
  const ChatPerfMark = {
7
- RequestStart: 'request/start',
8
- RequestUiUpdated: 'request/uiUpdated',
9
- WillCollectInstructions: 'request/willCollectInstructions',
10
- DidCollectInstructions: 'request/didCollectInstructions',
11
- FirstToken: 'request/firstToken',
12
- RequestComplete: 'request/complete',
13
- AgentWillInvoke: 'agent/willInvoke',
14
- AgentDidInvoke: 'agent/didInvoke',
8
+ RequestStart: "request/start",
9
+ RequestUiUpdated: "request/uiUpdated",
10
+ WillCollectInstructions: "request/willCollectInstructions",
11
+ DidCollectInstructions: "request/didCollectInstructions",
12
+ FirstToken: "request/firstToken",
13
+ RequestComplete: "request/complete",
14
+ AgentWillInvoke: "agent/willInvoke",
15
+ AgentDidInvoke: "agent/didInvoke"
15
16
  };
16
17
  function markChat(sessionResource, name) {
17
- mark(`${chatPerfPrefix}${chatSessionResourceToId(sessionResource)}/${name}`);
18
+ const sessionId = chatSessionResourceToId(sessionResource);
19
+ const fullName = `${chatPerfPrefix}${sessionId}/${name}`;
20
+ let names = chatMarksBySession.get(sessionId);
21
+ if (!names) {
22
+ names = ( new Set());
23
+ chatMarksBySession.set(sessionId, names);
24
+ }
25
+ names.add(fullName);
26
+ mark(fullName);
18
27
  }
19
28
  function clearChatMarks(sessionResource) {
20
- clearMarks(`${chatPerfPrefix}${chatSessionResourceToId(sessionResource)}/`);
29
+ const sessionId = chatSessionResourceToId(sessionResource);
30
+ const names = chatMarksBySession.get(sessionId);
31
+ if (names) {
32
+ for (const name of names) {
33
+ clearMarks(name);
34
+ }
35
+ chatMarksBySession.delete(sessionId);
36
+ }
21
37
  }
22
38
  const ChatGlobalPerfMark = {
23
- WillWaitForActivation: 'willWaitForActivation',
24
- DidWaitForActivation: 'didWaitForActivation',
39
+ WillWaitForActivation: "willWaitForActivation",
40
+ DidWaitForActivation: "didWaitForActivation"
25
41
  };
26
42
  function markChatGlobal(name) {
27
43
  mark(`${chatPerfPrefix}${name}`);
@@ -8,21 +8,21 @@ import { IObservable, IReader } from "../../../../../base/common/observable.js";
8
8
  import { ThemeIcon } from "../../../../../base/common/themables.js";
9
9
  import { URI, UriComponents } from "../../../../../base/common/uri.js";
10
10
  import { IRange } from "../../../../../editor/common/core/range.js";
11
- import { HookTypeValue } from "../promptSyntax/hookTypes.js";
12
11
  import { ISelection } from "../../../../../editor/common/core/selection.js";
13
12
  import { Command, Location, TextEdit } from "../../../../../editor/common/languages.js";
14
13
  import { FileType } from "../../../../../platform/files/common/files.js";
15
14
  import { IAutostartResult } from "../../../mcp/common/mcpTypes.js";
16
15
  import { ICellEditOperation } from "../../../notebook/common/notebookCommon.js";
17
16
  import { IWorkspaceSymbol } from "../../../search/common/search.js";
18
- import { IChatAgentCommand, IChatAgentData, IChatAgentResult, UserSelectedTools } from "../participants/chatAgents.js";
19
- import { IChatModel, IChatRequestModeInfo, IChatResponseModel } from "../model/chatModel.js";
20
- import { IChatParserContext } from "../requestParser/chatRequestParser.js";
21
17
  import { IChatRequestVariableEntry } from "../attachments/chatVariableEntries.js";
22
18
  import { IChatRequestVariableValue } from "../attachments/chatVariables.js";
23
- import { ChatAgentLocation } from "../constants.js";
24
- import { IPreparedToolInvocation, IToolConfirmationMessages, IToolResult, IToolResultInputOutputDetails, ToolDataSource } from "../tools/languageModelToolsService.js";
25
19
  import { ReadonlyChatSessionOptionsMap } from "../chatSessionsService.js";
20
+ import { ChatAgentLocation, ChatModeKind } from "../constants.js";
21
+ import { IChatModel, IChatRequestModeInfo, IChatResponseModel } from "../model/chatModel.js";
22
+ import { IChatAgentCommand, IChatAgentData, IChatAgentResult, UserSelectedTools } from "../participants/chatAgents.js";
23
+ import { HookTypeValue } from "../promptSyntax/hookTypes.js";
24
+ import { IChatParserContext } from "../requestParser/chatRequestParser.js";
25
+ import { IPreparedToolInvocation, IToolConfirmationMessages, IToolResult, IToolResultInputOutputDetails, ToolDataSource } from "../tools/languageModelToolsService.js";
26
26
  export interface IChatRequest {
27
27
  message: string;
28
28
  variables: Record<string, IChatRequestVariableValue[]>;
@@ -96,6 +96,8 @@ export interface IChatContentReference {
96
96
  removed: number;
97
97
  };
98
98
  originalUri?: URI;
99
+ /** Overrides the reference URI when opening the modified side of a diff. */
100
+ modifiedUri?: URI;
99
101
  isDeletion?: boolean;
100
102
  };
101
103
  kind: "reference";
@@ -307,6 +309,7 @@ export interface IChatQuestion {
307
309
  allowFreeformInput?: boolean;
308
310
  required?: boolean;
309
311
  validation?: IChatQuestionValidation;
312
+ detailedMessage?: string | IMarkdownString;
310
313
  }
311
314
  /** Answer shape for a single-select question. */
312
315
  export interface IChatSingleSelectAnswer {
@@ -339,6 +342,8 @@ export interface IChatQuestionCarousel {
339
342
  message?: string | IMarkdownString;
340
343
  /** Source attribution (e.g. MCP server) */
341
344
  source?: ToolDataSource;
345
+ /** Terminal ID when the carousel was triggered by a terminal needing input */
346
+ terminalId?: string;
342
347
  kind: "questionCarousel";
343
348
  }
344
349
  export declare enum ElicitationState {
@@ -526,6 +531,12 @@ export type ConfirmedReason = {
526
531
  export interface IChatToolInvocation {
527
532
  readonly presentation: IPreparedToolInvocation["presentation"];
528
533
  readonly toolSpecificData?: IChatTerminalToolInvocationData | ILegacyChatTerminalToolInvocationData | IChatToolInputInvocationData | IChatExtensionsContent | IChatPullRequestContent | IChatTodoListContent | IChatSubagentToolInvocationData | IChatSimpleToolInvocationData | IChatToolResourcesInvocationData | IChatModifiedFilesConfirmationData;
534
+ /**
535
+ * Observable that tracks the `kind` of `toolSpecificData`. Used by the
536
+ * tool invocation part to re-render when the kind changes (e.g. from
537
+ * `'input'` to `'terminal'` when terminal content arrives).
538
+ */
539
+ readonly toolSpecificDataKind: IObservable<string | undefined>;
529
540
  readonly originMessage: string | IMarkdownString | undefined;
530
541
  readonly invocationMessage: string | IMarkdownString;
531
542
  readonly pastTenseMessage: string | IMarkdownString | undefined;
@@ -605,6 +616,7 @@ export declare namespace IChatToolInvocation {
605
616
  export function awaitPostConfirmation(invocation: IChatToolInvocation, token?: CancellationToken): Promise<ConfirmedReason>;
606
617
  export function resultDetails(invocation: IChatToolInvocation | IChatToolInvocationSerialized, reader?: IReader): IToolResultInputOutputDetails | import("../tools/languageModelToolsService.js").IToolResultOutputDetails | (URI | Location)[] | IToolResultOutputDetailsSerialized | undefined;
607
618
  export function isComplete(invocation: IChatToolInvocation | IChatToolInvocationSerialized, reader?: IReader): boolean;
619
+ export function isEffectivelyHidden(invocation: IChatToolInvocation | IChatToolInvocationSerialized, reader?: IReader): boolean;
608
620
  export function isStreaming(invocation: IChatToolInvocation | IChatToolInvocationSerialized, reader?: IReader): boolean;
609
621
  /**
610
622
  * Get parameters from invocation. Returns undefined during streaming state.
@@ -709,6 +721,16 @@ export interface IChatModifiedFilesConfirmationData {
709
721
  readonly modifiedFiles: readonly {
710
722
  readonly uri: UriComponents;
711
723
  readonly originalUri?: UriComponents;
724
+ /**
725
+ * Optional URI to read the modified (after) content from for the diff
726
+ * view. When absent, {@link uri} is used as the modified side.
727
+ */
728
+ readonly modifiedContentUri?: UriComponents;
729
+ /**
730
+ * Optional URI to read the original (before) content from for the diff
731
+ * view. When absent, {@link originalUri} is used as the original side.
732
+ */
733
+ readonly originalContentUri?: UriComponents;
712
734
  readonly insertions?: number;
713
735
  readonly deletions?: number;
714
736
  readonly title?: string;
@@ -729,6 +751,46 @@ export interface IChatMcpServersStartingSerialized {
729
751
  export interface IChatDisabledClaudeHooksPart {
730
752
  readonly kind: "disabledClaudeHooks";
731
753
  }
754
+ /** A single approval option shown in the plan review dropdown button. */
755
+ export interface IChatPlanApprovalAction {
756
+ label: string;
757
+ description?: string;
758
+ default?: boolean;
759
+ /** When set to 'autopilot', a confirmation dialog is shown before proceeding. */
760
+ permissionLevel?: "autopilot";
761
+ }
762
+ /** The result of reviewing a plan. */
763
+ export interface IChatPlanReviewResult {
764
+ action?: string;
765
+ rejected: boolean;
766
+ feedback?: string;
767
+ }
768
+ /**
769
+ * A plan review widget. Presents a title, markdown plan content, an optional
770
+ * link to edit the backing plan file, a dropdown of approval actions, a reject
771
+ * button and an optional feedback textarea.
772
+ */
773
+ export interface IChatPlanReview {
774
+ kind: "planReview";
775
+ /** Title to display in the widget header. */
776
+ title: string;
777
+ /** Markdown content rendered in the body (plan summary or contents). */
778
+ content: string;
779
+ /** Selectable approval actions. Displayed as a dropdown primary button. */
780
+ actions: IChatPlanApprovalAction[];
781
+ /** Whether to show the additional feedback textarea. */
782
+ canProvideFeedback: boolean;
783
+ /** Optional URI to the underlying plan file. An Edit button opens it. */
784
+ planUri?: UriComponents;
785
+ /** Unique identifier for resolving the review back to the extension. */
786
+ resolveId?: string;
787
+ /** Stored result once the user has responded. */
788
+ data?: IChatPlanReviewResult;
789
+ /** Whether the widget has been responded to. */
790
+ isUsed?: boolean;
791
+ /** Source attribution. */
792
+ source?: ToolDataSource;
793
+ }
732
794
  export declare class ChatMcpServersStarting implements IChatMcpServersStarting {
733
795
  readonly state: IObservable<IAutostartResult>;
734
796
  readonly kind = "mcpServersStarting";
@@ -738,7 +800,7 @@ export declare class ChatMcpServersStarting implements IChatMcpServersStarting {
738
800
  wait(): Promise<IAutostartResult>;
739
801
  toJSON(): IChatMcpServersStartingSerialized;
740
802
  }
741
- export type IChatProgress = IChatMarkdownContent | IChatAgentMarkdownContentWithVulnerability | IChatTreeData | IChatMultiDiffData | IChatMultiDiffDataSerialized | IChatUsedContext | IChatContentReference | IChatContentInlineReference | IChatCodeCitation | IChatProgressMessage | IChatTask | IChatTaskResult | IChatCommandButton | IChatWarningMessage | IChatTextEdit | IChatNotebookEdit | IChatWorkspaceEdit | IChatMoveMessage | IChatResponseCodeblockUriPart | IChatConfirmation | IChatQuestionCarousel | IChatClearToPreviousToolInvocation | IChatToolInvocation | IChatToolInvocationSerialized | IChatExtensionsContent | IChatPullRequestContent | IChatUndoStop | IChatThinkingPart | IChatTaskSerialized | IChatElicitationRequest | IChatElicitationRequestSerialized | IChatMcpServersStarting | IChatMcpServersStartingSerialized | IChatHookPart | IChatExternalToolInvocationUpdate | IChatDisabledClaudeHooksPart;
803
+ export type IChatProgress = IChatMarkdownContent | IChatAgentMarkdownContentWithVulnerability | IChatTreeData | IChatMultiDiffData | IChatMultiDiffDataSerialized | IChatUsedContext | IChatContentReference | IChatContentInlineReference | IChatCodeCitation | IChatProgressMessage | IChatTask | IChatTaskResult | IChatCommandButton | IChatWarningMessage | IChatTextEdit | IChatNotebookEdit | IChatWorkspaceEdit | IChatMoveMessage | IChatResponseCodeblockUriPart | IChatConfirmation | IChatQuestionCarousel | IChatPlanReview | IChatClearToPreviousToolInvocation | IChatToolInvocation | IChatToolInvocationSerialized | IChatExtensionsContent | IChatPullRequestContent | IChatUndoStop | IChatThinkingPart | IChatTaskSerialized | IChatElicitationRequest | IChatElicitationRequestSerialized | IChatMcpServersStarting | IChatMcpServersStartingSerialized | IChatHookPart | IChatExternalToolInvocationUpdate | IChatDisabledClaudeHooksPart;
742
804
  export interface IChatFollowup {
743
805
  kind: "reply";
744
806
  message: string;
@@ -977,6 +1039,7 @@ export interface IChatSendRequestOptions {
977
1039
  rejectedConfirmationData?: any[];
978
1040
  attachedContext?: IChatRequestVariableEntry[];
979
1041
  resolvedVariables?: IChatRequestVariableEntry[];
1042
+ agentHostSessionConfig?: Record<string, string>;
980
1043
  /** The target agent ID can be specified with this property instead of using @ in 'message' */
981
1044
  agentId?: string;
982
1045
  /** agentId, but will not add a @ name to the request */
@@ -996,16 +1059,43 @@ export interface IChatSendRequestOptions {
996
1059
  * The request stays in the queue until `processPendingRequests` is called explicitly.
997
1060
  */
998
1061
  pauseQueue?: boolean;
1062
+ /**
1063
+ * When true, the request is rendered as a compact tool-progress-style line
1064
+ * instead of a full user message bubble. Used for system-initiated notifications
1065
+ * such as terminal command completion.
1066
+ */
1067
+ isSystemInitiated?: boolean;
1068
+ /**
1069
+ * Display label for system-initiated requests. When set, the request row renders
1070
+ * this label as a compact progress-style message instead of the full request text.
1071
+ */
1072
+ systemInitiatedLabel?: string;
1073
+ /**
1074
+ * Structured terminal execution ID for system-initiated terminal notifications.
1075
+ * This avoids parsing IDs from request text when tools need to correlate
1076
+ * terminal prompts with follow-up actions.
1077
+ */
1078
+ terminalExecutionId?: string;
1079
+ /**
1080
+ * When set, the chat service will collect automatic instructions
1081
+ * (for example `.instructions.md` files and skills) asynchronously after showing
1082
+ * the request in the UI, rather than blocking the UI on collection.
1083
+ */
1084
+ instructionContext?: {
1085
+ modeKind: ChatModeKind;
1086
+ enabledTools?: UserSelectedTools;
1087
+ enabledSubAgents?: readonly string[];
1088
+ };
999
1089
  }
1000
1090
  export type IChatModelReference = IReference<IChatModel>;
1001
1091
  export interface IChatSessionContext {
1002
- readonly chatSessionResource: URI;
1003
1092
  readonly initialSessionOptions?: ReadonlyChatSessionOptionsMap;
1004
1093
  }
1005
1094
  export declare const KEYWORD_ACTIVIATION_SETTING_ID = "accessibility.voice.keywordActivation";
1006
1095
  export interface IChatSessionStartOptions {
1007
1096
  canUseTools?: boolean;
1008
1097
  disableBackgroundKeepAlive?: boolean;
1098
+ debugOwner?: string;
1009
1099
  }
1010
1100
  export declare const ChatStopCancellationNoopEventName = "chat.stopCancellationNoop";
1011
1101
  export type ChatStopCancellationNoopEvent = {
@@ -18,9 +18,6 @@ function isIDocumentContext(obj) {
18
18
  function isIUsedContext(obj) {
19
19
  return (!!obj && typeof obj === "object" && "documents" in obj && Array.isArray(obj.documents) && obj.documents.every(isIDocumentContext));
20
20
  }
21
- function isChatContentVariableReference(obj) {
22
- return !!obj && typeof obj === "object" && typeof obj.variableName === "string";
23
- }
24
21
  var ChatResponseReferencePartStatusKind;
25
22
  (function(ChatResponseReferencePartStatusKind) {
26
23
  ChatResponseReferencePartStatusKind[ChatResponseReferencePartStatusKind["Complete"] = 1] = "Complete";
@@ -183,6 +180,16 @@ var IChatToolInvocation;
183
180
  return state.type === StateKind.Completed || state.type === StateKind.Cancelled;
184
181
  }
185
182
  IChatToolInvocation.isComplete = isComplete;
183
+ function isEffectivelyHidden(invocation, reader) {
184
+ if (invocation.presentation === "hidden") {
185
+ return true;
186
+ }
187
+ if (invocation.presentation === "hiddenAfterComplete" && isComplete(invocation, reader)) {
188
+ return true;
189
+ }
190
+ return false;
191
+ }
192
+ IChatToolInvocation.isEffectivelyHidden = isEffectivelyHidden;
186
193
  function isStreaming(invocation, reader) {
187
194
  if (invocation.kind === "toolInvocationSerialized") {
188
195
  return false;
@@ -304,4 +311,4 @@ var ChatRequestQueueKind;
304
311
  const ChatStopCancellationNoopEventName = "chat.stopCancellationNoop";
305
312
  const ChatPendingRequestChangeEventName = "chat.pendingRequestChange";
306
313
 
307
- export { ChatAgentVoteDirection, ChatCopyKind, ChatErrorLevel, ChatMcpServersStarting, ChatPendingRequestChangeEventName, ChatRequestQueueKind, ChatResponseClearToPreviousToolInvocationReason, ChatResponseReferencePartStatusKind, ChatSendResult, ChatStopCancellationNoopEventName, ElicitationState, IChatToolInvocation, ResponseModelState, ToolConfirmKind, convertLegacyChatSessionTiming, isChatContentVariableReference, isChatFollowup, isIDocumentContext, isIUsedContext, isLegacyChatTerminalToolInvocationData };
314
+ export { ChatAgentVoteDirection, ChatCopyKind, ChatErrorLevel, ChatMcpServersStarting, ChatPendingRequestChangeEventName, ChatRequestQueueKind, ChatResponseClearToPreviousToolInvocationReason, ChatResponseReferencePartStatusKind, ChatSendResult, ChatStopCancellationNoopEventName, ElicitationState, IChatToolInvocation, ResponseModelState, ToolConfirmKind, convertLegacyChatSessionTiming, isChatFollowup, isIDocumentContext, isIUsedContext, isLegacyChatTerminalToolInvocationData };
@@ -5,8 +5,9 @@ import { URI } from "../../../../../base/common/uri.js";
5
5
  import { ChatAgentLocation } from "../constants.js";
6
6
  import { IChatEditingSession } from "../editing/chatEditingService.js";
7
7
  import { IChatModel, IExportableChatData, ISerializableChatData, IChatRequestModel, IChatRequestVariableData } from "../model/chatModel.js";
8
+ import { IChatModelReferenceDebugSnapshot } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/workbench/contrib/chat/common/model/chatModelStore";
8
9
  import { IParsedChatRequest } from "../requestParser/chatParserTypes.js";
9
- import { IChatSessionStartOptions, IChatModelReference, IChatSessionContext, IChatSendRequestOptions, ChatSendResult, IChatProgress, ChatRequestQueueKind, IChatCompleteResponse, IChatDetail, IChatUserActionEvent, IChatQuestionAnswers } from "./chatService.js";
10
+ import { IChatSessionStartOptions, IChatModelReference, IChatSendRequestOptions, ChatSendResult, IChatProgress, ChatRequestQueueKind, IChatCompleteResponse, IChatDetail, IChatUserActionEvent, IChatQuestionAnswers } from "./chatService.js";
10
11
  export declare const IChatService: import("../../../../../platform/instantiation/common/instantiation.js").ServiceIdentifier<IChatService>;
11
12
  export interface IChatService {
12
13
  _serviceBrand: undefined;
@@ -40,19 +41,19 @@ export interface IChatService {
40
41
  *
41
42
  * @returns A reference to the session's model or undefined if there is no active session for the given resource.
42
43
  */
43
- acquireExistingSession(sessionResource: URI): IChatModelReference | undefined;
44
+ acquireExistingSession(sessionResource: URI, debugOwner?: string): IChatModelReference | undefined;
44
45
  /**
45
46
  * Tries to acquire an existing a chat session for the resource. If no session exists, tries to load one for the given
46
47
  * session resource and location. This may load the session from an external provider.
47
48
  *
48
49
  * @returns A reference to the session's model, or undefined if the session could not be loaded
49
50
  */
50
- acquireOrLoadSession(sessionResource: URI, location: ChatAgentLocation, token: CancellationToken): Promise<IChatModelReference | undefined>;
51
+ acquireOrLoadSession(sessionResource: URI, location: ChatAgentLocation, token: CancellationToken, debugOwner?: string): Promise<IChatModelReference | undefined>;
51
52
  /**
52
53
  * Loads a session from exported chat data
53
54
  */
54
- loadSessionFromData(data: IExportableChatData | ISerializableChatData): IChatModelReference;
55
- getChatSessionFromInternalUri(sessionResource: URI): IChatSessionContext | undefined;
55
+ loadSessionFromData(data: IExportableChatData | ISerializableChatData, debugOwner?: string): IChatModelReference;
56
+ getChatModelReferenceDebugInfo(): IChatModelReferenceDebugSnapshot;
56
57
  /**
57
58
  * Sends a chat request for the given session.
58
59
  * @returns A result indicating whether the request was sent, queued, or rejected.
@@ -25,6 +25,7 @@ export interface IChatSessionProviderOptionItem {
25
25
  readonly id: string;
26
26
  readonly name: string;
27
27
  readonly description?: string;
28
+ readonly detail?: string;
28
29
  readonly locked?: boolean;
29
30
  readonly icon?: ThemeIcon;
30
31
  readonly default?: boolean;
@@ -39,9 +40,9 @@ export interface IChatSessionProviderOptionGroup {
39
40
  readonly id: string;
40
41
  readonly name: string;
41
42
  readonly description?: string;
43
+ readonly detail?: string;
44
+ readonly selected?: IChatSessionProviderOptionItem;
42
45
  readonly items: readonly IChatSessionProviderOptionItem[];
43
- readonly searchable?: boolean;
44
- readonly onSearch?: (query: string, token: CancellationToken) => Thenable<IChatSessionProviderOptionItem[]>;
45
46
  /**
46
47
  * A context key expression that controls visibility of this option group picker.
47
48
  * When specified, the picker is only visible when the expression evaluates to true.
@@ -94,10 +95,6 @@ export interface IChatSessionsExtensionPoint {
94
95
  * for this session type. Defaults to false when not specified.
95
96
  */
96
97
  readonly autoAttachReferences?: boolean;
97
- /**
98
- * When true, uses the incoming request's mode instructions to populate the built-in pickers such as Agent and Model pickers. When false, the pickers are populated based on the session type as they have been before. This is useful for testing the new ChatRequestTurn2-based flow for populating pickers.
99
- */
100
- readonly useRequestToPopulateBuiltInPickers?: boolean;
101
98
  }
102
99
  export interface IChatSessionItem {
103
100
  readonly resource: URI;
@@ -152,10 +149,6 @@ export type IChatSessionRequestHistoryItem = Extract<IChatSessionHistoryItem, {
152
149
  * The session type used for local agent chat sessions.
153
150
  */
154
151
  export declare const localChatSessionType = "local";
155
- /**
156
- * The option ID used for selecting the agent in chat sessions.
157
- */
158
- export declare const agentOptionId = "agent";
159
152
  export interface IChatSession extends IDisposable {
160
153
  readonly onWillDispose: Event<void>;
161
154
  readonly sessionResource: URI;
@@ -207,6 +200,7 @@ export interface IChatSessionItemController {
207
200
  get items(): readonly IChatSessionItem[];
208
201
  refresh(token: CancellationToken): Promise<void>;
209
202
  newChatSessionItem?(request: IChatNewSessionRequest, token: CancellationToken): Promise<IChatSessionItem | undefined>;
203
+ getNewChatSessionInputState?(sessionResource: URI, token: CancellationToken): Promise<readonly IChatSessionProviderOptionGroup[] | undefined>;
210
204
  }
211
205
  export interface IChatSessionOptionsChangeEvent {
212
206
  readonly sessionResource: URI;
@@ -9,7 +9,6 @@ var ChatSessionStatus;
9
9
  ChatSessionStatus[ChatSessionStatus["NeedsInput"] = 3] = "NeedsInput";
10
10
  })(ChatSessionStatus || (ChatSessionStatus = {}));
11
11
  const localChatSessionType = "local";
12
- const agentOptionId = "agent";
13
12
  var ChatSessionOptionsMap;
14
13
  (function(ChatSessionOptionsMap) {
15
14
  function fromRecord(obj) {
@@ -18,7 +17,8 @@ var ChatSessionOptionsMap;
18
17
  ChatSessionOptionsMap.fromRecord = fromRecord;
19
18
  function toRecord(map) {
20
19
  const record = Object.create(null);
21
- for (const [key, value] of map) {
20
+ const entries = ensureIterable(map);
21
+ for (const [key, value] of entries) {
22
22
  record[key] = value;
23
23
  }
24
24
  return record;
@@ -28,12 +28,19 @@ var ChatSessionOptionsMap;
28
28
  if (!map) {
29
29
  return undefined;
30
30
  }
31
- return Array.from(map, ([optionId, value]) => ({
31
+ const entries = ensureIterable(map);
32
+ return Array.from(entries, ([optionId, value]) => ({
32
33
  optionId,
33
34
  value: typeof value === "string" ? value : value.id
34
35
  }));
35
36
  }
36
37
  ChatSessionOptionsMap.toStrValueArray = toStrValueArray;
38
+ function ensureIterable(map) {
39
+ if (map instanceof Map) {
40
+ return map;
41
+ }
42
+ return Object.entries(map);
43
+ }
37
44
  })(ChatSessionOptionsMap || (ChatSessionOptionsMap = {}));
38
45
  function isSessionInProgressStatus(state) {
39
46
  return state === ChatSessionStatus.InProgress || state === ChatSessionStatus.NeedsInput;
@@ -43,4 +50,4 @@ function isIChatSessionFileChange2(obj) {
43
50
  return candidate && candidate.uri instanceof URI && typeof candidate.insertions === "number" && typeof candidate.deletions === "number";
44
51
  }
45
52
 
46
- export { ChatSessionOptionsMap, ChatSessionStatus, agentOptionId, isIChatSessionFileChange2, isSessionInProgressStatus, localChatSessionType };
53
+ export { ChatSessionOptionsMap, ChatSessionStatus, isIChatSessionFileChange2, isSessionInProgressStatus, localChatSessionType };
@@ -97,9 +97,12 @@ export interface IChatSessionsService {
97
97
  forkChatSession(sessionResource: URI, request: IChatSessionRequestHistoryItem | undefined, token: CancellationToken): Promise<IChatSessionItem>;
98
98
  readonly onDidChangeOptionGroups: Event<string>;
99
99
  getOptionGroupsForSessionType(chatSessionType: string): IChatSessionProviderOptionGroup[] | undefined;
100
- setOptionGroupsForSessionType(chatSessionType: string, handle: number, optionGroups?: IChatSessionProviderOptionGroup[]): void;
101
- getNewSessionOptionsForSessionType(chatSessionType: string): ReadonlyChatSessionOptionsMap | undefined;
102
- setNewSessionOptionsForSessionType(chatSessionType: string, options: ReadonlyChatSessionOptionsMap): void;
100
+ setOptionGroupsForSessionType(chatSessionType: string, handle: number, optionGroups?: readonly IChatSessionProviderOptionGroup[]): void;
101
+ /**
102
+ * Get the default options for new sessions of this type, derived from option groups'
103
+ * `selected` or `default` items.
104
+ */
105
+ getNewChatSessionInputState(chatSessionType: string, sessionResource: URI): Promise<readonly IChatSessionProviderOptionGroup[] | undefined>;
103
106
  /**
104
107
  * Creates a new chat session item using the controller's newChatSessionItemHandler.
105
108
  * Returns undefined if the controller doesn't have a handler or if no controller is registered.