@codingame/monaco-vscode-api 30.0.1 → 31.0.1

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
@@ -6,17 +6,36 @@ import { PromptFileSource, PromptsType, Target } from "../promptTypes.js";
6
6
  import { IHandOff, ParsedPromptFile } from "../promptFileParser.js";
7
7
  import { ChatRequestHooks } from "../hookSchema.js";
8
8
  /**
9
- * Entry emitted by the prompts service when discovery logging occurs.
10
- * A debug bridge (e.g. contribution) can listen and forward these to IChatDebugService.
9
+ * A single structured debug detail entry from the instructions context computer.
11
10
  */
12
- export interface IPromptDiscoveryLogEntry {
13
- readonly sessionResource: URI;
11
+ export interface InstructionsCollectionDebugEntry {
12
+ readonly category: "applying" | "skipped" | "referenced" | "skill" | "custom-agent" | "hook";
14
13
  readonly name: string;
15
- readonly details?: string;
16
- readonly category?: string;
17
- /** When present, the bridge should store this for later event resolution. */
18
- readonly discoveryInfo?: IPromptDiscoveryInfo;
14
+ readonly uri?: URI;
15
+ readonly reason?: string;
19
16
  }
17
+ export type InstructionsCollectionEvent = {
18
+ applyingInstructionsCount: number;
19
+ referencedInstructionsCount: number;
20
+ agentInstructionsCount: number;
21
+ listedInstructionsCount: number;
22
+ totalInstructionsCount: number;
23
+ claudeRulesCount: number;
24
+ claudeMdCount: number;
25
+ claudeAgentsCount: number;
26
+ };
27
+ /**
28
+ * Debug-only information collected alongside {@link InstructionsCollectionEvent}.
29
+ * This data is used for debug logging and is not sent as telemetry.
30
+ */
31
+ export type InstructionsCollectionDebugInfo = {
32
+ /** Per-file detail entries for debug logging. */
33
+ debugDetails: InstructionsCollectionDebugEntry[];
34
+ /** Total wall-clock time of the collect() call in milliseconds. */
35
+ durationInMillis: number;
36
+ };
37
+ export declare function newInstructionsCollectionEvent(): InstructionsCollectionEvent;
38
+ export declare function newInstructionsCollectionDebugInfo(): InstructionsCollectionDebugInfo;
20
39
  /**
21
40
  * Activation events for prompt file providers.
22
41
  */
@@ -45,7 +64,19 @@ export interface IPromptFileResource {
45
64
  * Optional externally provided prompt command description.
46
65
  */
47
66
  readonly description?: string;
67
+ /**
68
+ * Optional condition that must evaluate to true for this resource to be offered.
69
+ */
70
+ readonly when?: string;
71
+ /**
72
+ * Optional session types that describe when this resource should be offered.
73
+ */
74
+ readonly sessionTypes?: readonly string[];
48
75
  }
76
+ /**
77
+ * Returns whether a customization can be used in the provided chat session type.
78
+ */
79
+ export declare function matchesSessionType(sessionTypes: readonly string[] | undefined, currentSessionType: string | undefined): boolean;
49
80
  /**
50
81
  * Where the prompt is stored.
51
82
  */
@@ -87,6 +118,10 @@ export interface IPromptPathBase {
87
118
  readonly source?: PromptFileSource;
88
119
  readonly name?: string;
89
120
  readonly description?: string;
121
+ /**
122
+ * Optional session types that describe when this resource should be offered.
123
+ */
124
+ readonly sessionTypes?: readonly string[];
90
125
  }
91
126
  export interface IExtensionPromptPath extends IPromptPathBase {
92
127
  readonly storage: PromptsStorage.extension;
@@ -184,6 +219,15 @@ export interface ICustomAgent {
184
219
  * Where the agent was loaded from.
185
220
  */
186
221
  readonly source: IAgentSource;
222
+ /**
223
+ * Optional context key expression. When set, the agent is only available
224
+ * when this expression evaluates to true against a scoped context.
225
+ */
226
+ readonly when?: ContextKeyExpression;
227
+ /**
228
+ * Optional session types that describe when this agent should be offered.
229
+ */
230
+ readonly sessionTypes?: readonly string[];
187
231
  }
188
232
  export interface IAgentInstructions {
189
233
  readonly content: string;
@@ -191,12 +235,71 @@ export interface IAgentInstructions {
191
235
  readonly metadata?: Record<string, boolean | string | number>;
192
236
  }
193
237
  export interface IChatPromptSlashCommand {
238
+ readonly uri: URI;
194
239
  readonly name: string;
195
- readonly description: string | undefined;
196
- readonly argumentHint: string | undefined;
197
- readonly promptPath: IPromptPath;
198
- readonly parsedPromptFile: ParsedPromptFile;
240
+ readonly type: PromptsType;
241
+ readonly storage: PromptsStorage;
242
+ readonly source?: PromptFileSource;
243
+ readonly description?: string;
244
+ readonly argumentHint?: string;
245
+ readonly userInvocable: boolean;
246
+ readonly extension?: IExtensionDescription;
247
+ readonly pluginUri?: URI;
199
248
  readonly when: ContextKeyExpression | undefined;
249
+ /**
250
+ * Optional session types that describe when this slash command should be offered.
251
+ */
252
+ readonly sessionTypes?: readonly string[];
253
+ }
254
+ export interface IResolvedChatPromptSlashCommand extends IChatPromptSlashCommand {
255
+ readonly parsedPromptFile: ParsedPromptFile;
256
+ }
257
+ /**
258
+ * A fully resolved instruction file with parsed header metadata and provenance information.
259
+ */
260
+ export interface IInstructionFile {
261
+ /**
262
+ * URI of the instruction file.
263
+ */
264
+ readonly uri: URI;
265
+ /**
266
+ * Name as listed in the instruction file header or derived from the file name
267
+ */
268
+ readonly name: string;
269
+ /**
270
+ * Description as listed in the instruction file header. Used to load the instruction on-demand and for display in the UI.
271
+ */
272
+ readonly description: string | undefined;
273
+ /**
274
+ * Storage of the prompt.
275
+ */
276
+ readonly storage: PromptsStorage;
277
+ /**
278
+ * The "applyTo" pattern (or `paths` when in a Claude rules file) from the instruction file header.
279
+ * Describes when this instruction file should be applied.
280
+ */
281
+ readonly pattern: string | undefined;
282
+ /**
283
+ * Identifier of the contributing extension (only when storage === PromptsStorage.extension).
284
+ */
285
+ readonly extension?: IExtensionDescription;
286
+ /**
287
+ * Identifier of the contributing plugin (only when storage === PromptsStorage.plugin).
288
+ */
289
+ readonly pluginUri?: URI;
290
+ /**
291
+ * The source that produced this prompt path.
292
+ */
293
+ readonly source?: PromptFileSource;
294
+ /**
295
+ * Optional context key expression. When set, the instruction file is only available
296
+ * when this expression evaluates to true against a scoped context.
297
+ */
298
+ readonly when?: ContextKeyExpression;
299
+ /**
300
+ * Optional session types that describe when this instruction should be offered.
301
+ */
302
+ readonly sessionTypes?: readonly string[];
200
303
  }
201
304
  /**
202
305
  * Supply-chain metadata describing where a skill originated.
@@ -229,11 +332,15 @@ export interface IAgentSkill {
229
332
  * Optional extension metadata describing where this skill originated.
230
333
  */
231
334
  readonly extension?: IExtensionDescription;
335
+ /**
336
+ * Optional session types that describe when this skill should be offered.
337
+ */
338
+ readonly sessionTypes?: readonly string[];
232
339
  }
233
340
  /**
234
341
  * Type of agent instruction file.
235
342
  */
236
- export declare enum AgentFileType {
343
+ export declare enum AgentInstructionFileType {
237
344
  agentsMd = "agentsMd",
238
345
  claudeMd = "claudeMd",
239
346
  copilotInstructionsMd = "copilotInstructionsMd"
@@ -242,13 +349,13 @@ export declare enum AgentFileType {
242
349
  * Represents a resolved agent instruction file with its real path for duplicate detection.
243
350
  * Used by listAgentInstructions to filter out symlinks pointing to the same file.
244
351
  */
245
- export interface IResolvedAgentFile {
352
+ export interface IAgentInstructionFile {
246
353
  readonly uri: URI;
247
354
  /**
248
355
  * The real path of the file, if it is a symlink.
249
356
  */
250
357
  readonly realPath: URI | undefined;
251
- readonly type: AgentFileType;
358
+ readonly type: AgentInstructionFileType;
252
359
  }
253
360
  export interface Logger {
254
361
  logInfo(message: string): void;
@@ -287,10 +394,55 @@ export interface IPromptSourceFolderResult {
287
394
  export interface IPromptDiscoveryInfo {
288
395
  readonly type: PromptsType;
289
396
  readonly files: readonly IPromptFileDiscoveryResult[];
397
+ /** Time in milliseconds required to compute this discovery result. */
398
+ readonly durationInMillis: number;
290
399
  /** Source folders that were searched */
291
400
  readonly sourceFolders?: readonly IPromptSourceFolderResult[];
292
401
  }
402
+ /**
403
+ * Discovery result for a slash command file, including the parsed prompt file.
404
+ */
405
+ export interface ISlashCommandDiscoveryResult extends IPromptFileDiscoveryResult {
406
+ readonly userInvocable?: boolean;
407
+ readonly argumentHint?: string;
408
+ }
409
+ /**
410
+ * Summary of slash command discovery, including parsed prompt files.
411
+ */
412
+ export interface ISlashCommandDiscoveryInfo extends IPromptDiscoveryInfo {
413
+ readonly files: readonly ISlashCommandDiscoveryResult[];
414
+ }
415
+ /**
416
+ * Discovery result for an instruction file, including the resolved applyTo metadata.
417
+ */
418
+ export interface IInstructionDiscoveryResult extends IPromptFileDiscoveryResult {
419
+ readonly pattern?: string;
420
+ }
421
+ /**
422
+ * Summary of instruction discovery, including resolved metadata.
423
+ */
424
+ export interface IInstructionDiscoveryInfo extends IPromptDiscoveryInfo {
425
+ readonly files: readonly IInstructionDiscoveryResult[];
426
+ }
427
+ /**
428
+ * Discovery result for an agent file, including the fully resolved agent.
429
+ */
430
+ export interface IAgentDiscoveryResult extends IPromptFileDiscoveryResult {
431
+ readonly agent?: ICustomAgent;
432
+ }
433
+ /**
434
+ * Summary of agent discovery, including resolved agents.
435
+ */
436
+ export interface IAgentDiscoveryInfo extends IPromptDiscoveryInfo {
437
+ readonly files: readonly IAgentDiscoveryResult[];
438
+ }
293
439
  export interface IConfiguredHooksInfo {
294
440
  readonly hooks: ChatRequestHooks;
295
441
  readonly hasDisabledClaudeHooks: boolean;
296
442
  }
443
+ /**
444
+ * Summary of hook discovery, including the resolved hooks info.
445
+ */
446
+ export interface IHookDiscoveryInfo extends IPromptDiscoveryInfo {
447
+ readonly hooksInfo: IConfiguredHooksInfo | undefined;
448
+ }
@@ -1,9 +1,18 @@
1
1
 
2
2
 
3
+ function newInstructionsCollectionEvent() {
4
+ return { applyingInstructionsCount: 0, referencedInstructionsCount: 0, agentInstructionsCount: 0, listedInstructionsCount: 0, totalInstructionsCount: 0, claudeRulesCount: 0, claudeMdCount: 0, claudeAgentsCount: 0 };
5
+ }
6
+ function newInstructionsCollectionDebugInfo() {
7
+ return { debugDetails: [], durationInMillis: 0 };
8
+ }
3
9
  const CUSTOM_AGENT_PROVIDER_ACTIVATION_EVENT = 'onCustomAgentProvider';
4
10
  const INSTRUCTIONS_PROVIDER_ACTIVATION_EVENT = 'onInstructionsProvider';
5
11
  const PROMPT_FILE_PROVIDER_ACTIVATION_EVENT = 'onPromptFileProvider';
6
12
  const SKILL_PROVIDER_ACTIVATION_EVENT = 'onSkillProvider';
13
+ function matchesSessionType(sessionTypes, currentSessionType) {
14
+ return sessionTypes === undefined || currentSessionType === undefined || sessionTypes.includes(currentSessionType);
15
+ }
7
16
  var PromptsStorage;
8
17
  (function (PromptsStorage) {
9
18
  PromptsStorage["local"] = "local";
@@ -11,6 +20,9 @@ var PromptsStorage;
11
20
  PromptsStorage["extension"] = "extension";
12
21
  PromptsStorage["plugin"] = "plugin";
13
22
  })(PromptsStorage || (PromptsStorage = {}));
23
+ function isExtensionPromptPath(obj) {
24
+ return obj.storage === PromptsStorage.extension;
25
+ }
14
26
  function isCustomAgentVisibility(obj) {
15
27
  if (typeof obj !== 'object' || obj === null) {
16
28
  return false;
@@ -18,11 +30,11 @@ function isCustomAgentVisibility(obj) {
18
30
  const v = obj;
19
31
  return typeof v.userInvocable === 'boolean' && typeof v.agentInvocable === 'boolean';
20
32
  }
21
- var AgentFileType;
22
- (function (AgentFileType) {
23
- AgentFileType["agentsMd"] = "agentsMd";
24
- AgentFileType["claudeMd"] = "claudeMd";
25
- AgentFileType["copilotInstructionsMd"] = "copilotInstructionsMd";
26
- })(AgentFileType || (AgentFileType = {}));
33
+ var AgentInstructionFileType;
34
+ (function (AgentInstructionFileType) {
35
+ AgentInstructionFileType["agentsMd"] = "agentsMd";
36
+ AgentInstructionFileType["claudeMd"] = "claudeMd";
37
+ AgentInstructionFileType["copilotInstructionsMd"] = "copilotInstructionsMd";
38
+ })(AgentInstructionFileType || (AgentInstructionFileType = {}));
27
39
 
28
- export { AgentFileType, CUSTOM_AGENT_PROVIDER_ACTIVATION_EVENT, INSTRUCTIONS_PROVIDER_ACTIVATION_EVENT, PROMPT_FILE_PROVIDER_ACTIVATION_EVENT, PromptsStorage, SKILL_PROVIDER_ACTIVATION_EVENT, isCustomAgentVisibility };
40
+ export { AgentInstructionFileType, CUSTOM_AGENT_PROVIDER_ACTIVATION_EVENT, INSTRUCTIONS_PROVIDER_ACTIVATION_EVENT, PROMPT_FILE_PROVIDER_ACTIVATION_EVENT, PromptsStorage, SKILL_PROVIDER_ACTIVATION_EVENT, isCustomAgentVisibility, isExtensionPromptPath, matchesSessionType, newInstructionsCollectionDebugInfo, newInstructionsCollectionEvent };
@@ -8,7 +8,7 @@ import { IExtensionDescription } from "../../../../../../platform/extensions/com
8
8
  import { IResolvedPromptSourceFolder } from "../config/promptFileLocations.js";
9
9
  import { ParsedPromptFile } from "../promptFileParser.js";
10
10
  import { PromptsType } from "../promptTypes.js";
11
- import { IPromptPath, PromptsStorage, IChatPromptSlashCommand, ICustomAgent, IResolvedAgentFile, Logger, IPromptFileContext, IPromptFileResource, IAgentSkill, IConfiguredHooksInfo, IPromptDiscoveryLogEntry } from "./promptsService.js";
11
+ import { IPromptPath, PromptsStorage, IResolvedChatPromptSlashCommand, IChatPromptSlashCommand, ICustomAgent, IAgentInstructionFile, Logger, IPromptFileContext, IPromptFileResource, IAgentSkill, IConfiguredHooksInfo, IInstructionFile, IPromptDiscoveryInfo } from "./promptsService.js";
12
12
  /**
13
13
  * Provides prompt services.
14
14
  */
@@ -48,7 +48,7 @@ export interface IPromptsService extends IDisposable {
48
48
  /**
49
49
  * Gets the prompt file for a slash command.
50
50
  */
51
- resolvePromptSlashCommand(command: string, token: CancellationToken): Promise<IChatPromptSlashCommand | undefined>;
51
+ resolvePromptSlashCommand(command: string, token: CancellationToken): Promise<IResolvedChatPromptSlashCommand | undefined>;
52
52
  /**
53
53
  * Event that is triggered when the slash command to ParsedPromptFile cache is updated.
54
54
  * Event handlers can use {@link resolvePromptSlashCommand} to retrieve the latest data.
@@ -56,9 +56,8 @@ export interface IPromptsService extends IDisposable {
56
56
  readonly onDidChangeSlashCommands: Event<void>;
57
57
  /**
58
58
  * Returns a prompt command if the command name is valid.
59
- * @param sessionResource Optional session resource to scope debug logging to a specific session.
60
59
  */
61
- getPromptSlashCommands(token: CancellationToken, sessionResource?: URI): Promise<readonly IChatPromptSlashCommand[]>;
60
+ getPromptSlashCommands(token: CancellationToken): Promise<readonly IChatPromptSlashCommand[]>;
62
61
  /**
63
62
  * Returns the prompt command name for the given URI.
64
63
  */
@@ -73,9 +72,8 @@ export interface IPromptsService extends IDisposable {
73
72
  readonly onDidChangeInstructions: Event<void>;
74
73
  /**
75
74
  * Finds all available custom agents
76
- * @param sessionResource Optional session resource to scope debug logging to a specific session.
77
75
  */
78
- getCustomAgents(token: CancellationToken, sessionResource?: URI): Promise<readonly ICustomAgent[]>;
76
+ getCustomAgents(token: CancellationToken): Promise<readonly ICustomAgent[]>;
79
77
  /**
80
78
  * Parses the provided URI
81
79
  * @param uris
@@ -85,17 +83,17 @@ export interface IPromptsService extends IDisposable {
85
83
  * Internal: register a contributed file. Returns a disposable that removes the contribution.
86
84
  * Not intended for extension authors; used by contribution point handler.
87
85
  */
88
- registerContributedFile(type: PromptsType, uri: URI, extension: IExtensionDescription, name: string | undefined, description: string | undefined, when?: string): IDisposable;
86
+ registerContributedFile(type: PromptsType, uri: URI, extension: IExtensionDescription, name: string | undefined, description: string | undefined, when?: string, sessionTypes?: readonly string[]): IDisposable;
89
87
  getPromptLocationLabel(promptPath: IPromptPath): string;
90
88
  /**
91
89
  * Gets list of AGENTS.md files, including optionally nested ones from subfolders.
92
90
  */
93
- listNestedAgentMDs(token: CancellationToken): Promise<IResolvedAgentFile[]>;
91
+ listNestedAgentMDs(token: CancellationToken): Promise<IAgentInstructionFile[]>;
94
92
  /**
95
93
  * Gets combined list of agent instruction files (AGENTS.md, CLAUDE.md, copilot-instructions.md).
96
94
  * Combines results from listAgentMDs (non-nested), listClaudeMDs, and listCopilotInstructionsMDs.
97
95
  */
98
- listAgentInstructions(token: CancellationToken, logger?: Logger): Promise<IResolvedAgentFile[]>;
96
+ listAgentInstructions(token: CancellationToken, logger?: Logger): Promise<IAgentInstructionFile[]>;
99
97
  /**
100
98
  * For a chat mode file URI, return the name of the agent file that it should use.
101
99
  * @param oldURI
@@ -122,27 +120,27 @@ export interface IPromptsService extends IDisposable {
122
120
  }): IDisposable;
123
121
  /**
124
122
  * Gets list of agent skills files.
125
- * @param sessionResource Optional session resource to scope debug logging to a specific session.
126
123
  */
127
- findAgentSkills(token: CancellationToken, sessionResource?: URI): Promise<IAgentSkill[] | undefined>;
124
+ findAgentSkills(token: CancellationToken): Promise<IAgentSkill[] | undefined>;
128
125
  /**
129
126
  * Event that is triggered when the list of skills changes.
130
127
  */
131
128
  readonly onDidChangeSkills: Event<void>;
132
129
  /**
130
+ * Event that is triggered when the effective hook availability or configuration changes.
131
+ */
132
+ readonly onDidChangeHooks: Event<void>;
133
+ /**
133
134
  * Gets all hooks collected from hooks.json files.
134
- * The result is cached and invalidated when hook files change.
135
- * @param sessionResource Optional session resource to scope debug logging to a specific session.
135
+ * The result is cached and invalidated when the effective hook availability or configuration changes.
136
136
  */
137
- getHooks(token: CancellationToken, sessionResource?: URI): Promise<IConfiguredHooksInfo | undefined>;
137
+ getHooks(token: CancellationToken): Promise<IConfiguredHooksInfo | undefined>;
138
138
  /**
139
- * Gets all instruction files, logging discovery info to the debug log.
140
- * @param sessionResource Optional session resource to scope debug logging to a specific session.
139
+ * Gets all instruction files
141
140
  */
142
- getInstructionFiles(token: CancellationToken, sessionResource?: URI): Promise<readonly IPromptPath[]>;
141
+ getInstructionFiles(token: CancellationToken): Promise<readonly IInstructionFile[]>;
143
142
  /**
144
- * Fired when a discovery-related log entry is produced.
145
- * Listeners (such as a debug bridge) can forward these to IChatDebugService.
143
+ * Returns the cached discovery info for the given prompt type.
146
144
  */
147
- readonly onDidLogDiscovery: Event<IPromptDiscoveryLogEntry>;
145
+ getDiscoveryInfo(type: PromptsType, token: CancellationToken): Promise<IPromptDiscoveryInfo>;
148
146
  }
@@ -8,6 +8,8 @@ import { IChatSlashCommandService } from "../participants/chatSlashCommands.serv
8
8
  import { IPromptsService } from "../promptSyntax/service/promptsService.service.js";
9
9
  import { IToolAndToolSetEnablementMap } from "../tools/languageModelToolsService.js";
10
10
  import { IParsedChatRequest } from "./chatParserTypes.js";
11
+ export declare const agentReg: RegExp;
12
+ export declare const variableReg: RegExp;
11
13
  export declare const slashReg: RegExp;
12
14
  export interface IChatParserContext {
13
15
  /** Used only as a disambiguator, when the query references an agent that has a duplicate with the same name. */
@@ -258,4 +258,4 @@ let ChatRequestParser = class ChatRequestParser {
258
258
  };
259
259
  ChatRequestParser = ( __decorate([( __param(0, IChatAgentService)), ( __param(1, IChatVariablesService)), ( __param(2, IChatSlashCommandService)), ( __param(3, IPromptsService))], ChatRequestParser));
260
260
 
261
- export { ChatRequestParser, slashReg };
261
+ export { ChatRequestParser, agentReg, slashReg, variableReg };
@@ -19,6 +19,7 @@ export interface IQuestionOption {
19
19
  export interface IQuestion {
20
20
  readonly header: string;
21
21
  readonly question: string;
22
+ readonly message?: string;
22
23
  readonly multiSelect?: boolean;
23
24
  readonly options?: IQuestionOption[];
24
25
  readonly allowFreeformInput?: boolean;
@@ -45,6 +46,15 @@ export declare class AskQuestionsTool extends Disposable implements IToolImpl {
45
46
  invoke(invocation: IToolInvocation, _countTokens: CountTokensCallback, progress: ToolProgress, token: CancellationToken): Promise<IToolResult>;
46
47
  prepareToolInvocation(context: IToolInvocationPreparationContext, _token: CancellationToken): Promise<IPreparedToolInvocation | undefined>;
47
48
  private getRequest;
49
+ /**
50
+ * Resolves the terminal execution ID for the request.
51
+ * Prefer structured metadata and fall back to legacy message parsing for
52
+ * old sessions that may not carry the metadata yet.
53
+ * As a final fallback, search completed runInTerminal tool invocations in
54
+ * the response for the terminal ID (foreground/timeout path where the
55
+ * model calls ask_questions from the same turn as runInTerminal).
56
+ */
57
+ private extractTerminalId;
48
58
  private toQuestionCarousel;
49
59
  private toChatQuestion;
50
60
  protected convertCarouselAnswers(questions: IQuestion[], carouselAnswers: IChatQuestionAnswers | undefined, idToHeaderMap: Map<string, string>): IAnswerResult;
@@ -6,6 +6,7 @@ import { Disposable } from '../../../../../../base/common/lifecycle.js';
6
6
  import { hasKey } from '../../../../../../base/common/types.js';
7
7
  import { generateUuid } from '../../../../../../base/common/uuid.js';
8
8
  import { localize } from '../../../../../../nls.js';
9
+ import { IChatToolInvocation } from '../../chatService/chatService.js';
9
10
  import { IChatService } from '../../chatService/chatService.service.js';
10
11
  import { ChatQuestionCarouselData } from '../../model/chatProgressTypes/chatQuestionCarouselData.js';
11
12
  import { ChatPermissionLevel, ChatConfiguration } from '../../constants.js';
@@ -17,6 +18,7 @@ import { ToolDataSource } from '../languageModelToolsService.js';
17
18
  import { ThemeIcon } from '../../../../../../base/common/themables.js';
18
19
  import { Codicon } from '../../../../../../base/common/codicons.js';
19
20
  import { raceCancellation } from '../../../../../../base/common/async.js';
21
+ import { TerminalToolId } from '../terminalToolIds.js';
20
22
 
21
23
  const AUTOPILOT_ASK_USER_RESPONSE = "The user is not available to respond and will review your work later. Work autonomously and make good decisions.";
22
24
  const AskQuestionsToolId = "vscode_askQuestions";
@@ -59,6 +61,10 @@ function createAskQuestionsToolData() {
59
61
  type: "boolean",
60
62
  description: "Allow freeform text answers in addition to option selection. Defaults to true; set to false to restrict to predefined options only."
61
63
  },
64
+ message: {
65
+ type: "string",
66
+ description: "Optional markdown message to display below the question text, providing additional context or details."
67
+ },
62
68
  options: {
63
69
  type: "array",
64
70
  description: "Optional list of selectable answers. If omitted, the question is free text.",
@@ -102,9 +108,9 @@ function createAskQuestionsToolData() {
102
108
  legacyToolReferenceFullNames: [AskQuestionsToolId, "vscode/askQuestions"],
103
109
  canBeReferencedInPrompt: false,
104
110
  icon: ThemeIcon.fromId(Codicon.question.id),
105
- displayName: ( localize(7640, "Ask Clarifying Questions")),
111
+ displayName: ( localize(7750, "Ask Clarifying Questions")),
106
112
  userDescription: ( localize(
107
- 7641,
113
+ 7751,
108
114
  "Ask structured clarifying questions using single select, multi-select, or freeform inputs to collect task requirements before proceeding."
109
115
  )),
110
116
  modelDescription: "Use this tool to ask the user a small number of clarifying questions before proceeding. Provide the questions array with concise headers and prompts. Use options for fixed choices, set multiSelect when multiple selections are allowed. Users can always provide a freeform text answer alongside options unless you set allowFreeformInput to false.",
@@ -130,7 +136,7 @@ let AskQuestionsTool = class AskQuestionsTool extends Disposable {
130
136
  this.logService.trace(`[AskQuestionsTool] Invoking with ${questions?.length ?? 0} question(s)`);
131
137
  if (!questions || questions.length === 0) {
132
138
  throw ( new Error(( localize(
133
- 7642,
139
+ 7752,
134
140
  "No questions provided. The questions array must contain at least one question."
135
141
  ))));
136
142
  }
@@ -153,6 +159,7 @@ let AskQuestionsTool = class AskQuestionsTool extends Disposable {
153
159
  carousel,
154
160
  idToHeaderMap
155
161
  } = this.toQuestionCarousel(questions);
162
+ carousel.terminalId = this.extractTerminalId(request);
156
163
  carousel.data = this.buildAutopilotCarouselAnswers(questions, carousel, idToHeaderMap);
157
164
  carousel.isUsed = true;
158
165
  this.chatService.appendProgress(request, carousel);
@@ -162,13 +169,28 @@ let AskQuestionsTool = class AskQuestionsTool extends Disposable {
162
169
  carousel,
163
170
  idToHeaderMap
164
171
  } = this.toQuestionCarousel(questions);
172
+ carousel.terminalId = this.extractTerminalId(request);
173
+ this.logService.trace(
174
+ `[AskQuestionsTool] request=${request.id} terminalExecutionId=${request.terminalExecutionId ?? "undefined"} carousel.terminalId=${carousel.terminalId ?? "undefined"}`
175
+ );
165
176
  this.chatService.appendProgress(request, carousel);
166
177
  const answerResult = await raceCancellation(carousel.completion.p, token);
167
178
  if (token.isCancellationRequested) {
168
179
  throw ( new CancellationError());
169
180
  }
181
+ if (carousel.dismissedByTerminalInput && carousel.terminalId) {
182
+ this.logService.info(
183
+ `[AskQuestionsTool] Carousel dismissed because user typed directly in terminal ${carousel.terminalId}`
184
+ );
185
+ return {
186
+ content: [{
187
+ kind: "text",
188
+ value: `The user is replying to the terminal prompts directly. Do not ask more questions or send input to the terminal. You will be automatically notified when the command in terminal ${carousel.terminalId} completes.`
189
+ }]
190
+ };
191
+ }
170
192
  progress.report({
171
- message: ( localize(7643, "Analyzing your answers..."))
193
+ message: ( localize(7753, "Analyzing your answers..."))
172
194
  });
173
195
  const converted = this.convertCarouselAnswers(questions, answerResult?.answers, idToHeaderMap);
174
196
  const {
@@ -206,14 +228,14 @@ let AskQuestionsTool = class AskQuestionsTool extends Disposable {
206
228
  } = parameters;
207
229
  if (!questions || questions.length === 0) {
208
230
  throw ( new Error(( localize(
209
- 7642,
231
+ 7752,
210
232
  "No questions provided. The questions array must contain at least one question."
211
233
  ))));
212
234
  }
213
235
  for (const question of questions) {
214
236
  if (question.options && question.options.length === 1) {
215
237
  throw ( new Error(( localize(
216
- 7644,
238
+ 7754,
217
239
  "Question \"{0}\" must have at least two options, or none for free text input.",
218
240
  question.header
219
241
  ))));
@@ -222,8 +244,8 @@ let AskQuestionsTool = class AskQuestionsTool extends Disposable {
222
244
  }
223
245
  const questionCount = questions.length;
224
246
  const headers = ( questions.map(q => q.header)).join(", ");
225
- const message = questionCount === 1 ? ( localize(7645, "Asking a question ({0})", headers)) : ( localize(7646, "Asking {0} questions ({1})", questionCount, headers));
226
- const pastMessage = questionCount === 1 ? ( localize(7647, "Asked a question ({0})", headers)) : ( localize(7648, "Asked {0} questions ({1})", questionCount, headers));
247
+ const message = questionCount === 1 ? ( localize(7755, "Asking a question ({0})", headers)) : ( localize(7756, "Asking {0} questions ({1})", questionCount, headers));
248
+ const pastMessage = questionCount === 1 ? ( localize(7757, "Asked a question ({0})", headers)) : ( localize(7758, "Asked {0} questions ({1})", questionCount, headers));
227
249
  return {
228
250
  invocationMessage: ( new MarkdownString(message)),
229
251
  pastTenseMessage: ( new MarkdownString(pastMessage))
@@ -257,6 +279,36 @@ let AskQuestionsTool = class AskQuestionsTool extends Disposable {
257
279
  sessionResource: chatSessionResource
258
280
  };
259
281
  }
282
+ extractTerminalId(request) {
283
+ if (request.terminalExecutionId) {
284
+ return request.terminalExecutionId;
285
+ }
286
+ const match = request.message.text.match(/\[Terminal (?<termId>\S+) notification:/);
287
+ if (match?.groups?.termId) {
288
+ return match.groups.termId;
289
+ }
290
+ const response = request.response;
291
+ if (response) {
292
+ const parts = response.response.value;
293
+ for (let i = parts.length - 1; i >= 0; i--) {
294
+ const part = parts[i];
295
+ if (part.kind === "toolInvocation" && part.toolId === TerminalToolId.RunInTerminal) {
296
+ const state = part.state.get();
297
+ if (state.type === IChatToolInvocation.StateKind.Completed && state.contentForModel) {
298
+ for (const item of state.contentForModel) {
299
+ if (item.kind === "text") {
300
+ const idMatch = item.value.match(/terminal ID ([0-9a-fA-F-]+)/);
301
+ if (idMatch) {
302
+ return idMatch[1];
303
+ }
304
+ }
305
+ }
306
+ }
307
+ }
308
+ }
309
+ }
310
+ return undefined;
311
+ }
260
312
  toQuestionCarousel(questions) {
261
313
  const idToHeaderMap = ( new Map());
262
314
  const mappedQuestions = ( questions.map(question => this.toChatQuestion(question, idToHeaderMap)));
@@ -289,6 +341,7 @@ let AskQuestionsTool = class AskQuestionsTool extends Disposable {
289
341
  type,
290
342
  title: displayTitle,
291
343
  message: question.question,
344
+ detailedMessage: question.message,
292
345
  options: question.options?.map(opt => ({
293
346
  id: opt.label,
294
347
  label: opt.description ? `${opt.label} - ${opt.description}` : opt.label,